11 KiB
11 KiB
Audit remediation registry
Назначение
Это versioned реестр текущего состояния remediation для findings из технического аудита 20.08.2026. Аудит — неизменяемый source of facts; этот документ хранит только приоритет, статус, путь продолжения и evidence последующих решений.
Правила работы
- Каждая audit-derived запись имеет один статус:
planned,active,done,deferredилиaccepted. - Одновременно допускается не более одного
activeremediation change. При отсутствии active change раздел «Следующая задача» содержит ровно один рекомендуемый change. doneтребует даты, archive path OpenSpec change, commit для каждого затронутого Git-репозитория и точных non-mutating verification commands с observed results.deferredиacceptedтребуют даты, rationale и review trigger либо ссылки на явное решение владельца.- При смене статуса обновляется только этот реестр; versioned audit snapshot не редактируется.
Текущее состояние workflow
- Bootstrap change:
2026-08-23-establish-audit-remediation-workflow—archived; это process foundation и не закрывает ни одного Audit ID. - Active audit remediation change:
stabilize-frontend-query-and-strict-contracts—activeдля WL-P1-01 и WL-P1-02.
Следующая задача
Выбор следующего remediation change отложен до terminal status активного stabilize-frontend-query-and-strict-contracts. Его scope: исправить query cache identity, включить strict TypeScript, устранить 16 strict errors и добавить поведенческие regression tests.
Реестр findings
P1
| Audit ID | Цель | Репозитории | Статус | Связанный change | Следующее действие | Terminal evidence |
|---|---|---|---|---|---|---|
| WL-P1-01 | Один владелец React Query cache identity. | frontend | active | stabilize-frontend-query-and-strict-contracts |
Выполнить согласованные OpenSpec tasks. | — |
| WL-P1-02 | Сделать strict TypeScript исполняемым gate и устранить 16 ошибок. | frontend | active | stabilize-frontend-query-and-strict-contracts |
Выполнить вместе с WL-P1-01. | — |
| WL-P1-03 | Установить единственный canonical OpenSpec root. | specs | planned | harden-openspec-authority-and-lifecycle (ещё не создан) |
Запланировать после P1 frontend change. | — |
| WL-P1-04 | Сделать archive lifecycle доказательством завершённости. | specs, docs | planned | harden-openspec-authority-and-lifecycle (ещё не создан) |
Запланировать вместе с WL-P1-03. | — |
| WL-P1-05 | Разделить non-mutating lint check и auto-fix backend. | backend | planned | make-local-verification-agent-safe (ещё не создан) |
Запланировать после P1 lifecycle work. | — |
P2
| Audit ID | Цель | Репозитории | Статус | Связанный change | Следующее действие | Terminal evidence |
|---|---|---|---|---|---|---|
| WL-P2-01 | Ограничить размер и eviction operations cache. | backend | planned | harden-auth-and-cache-concurrency (ещё не создан) |
Уточнить policy cache в design. | — |
| WL-P2-02 | Вернуть предсказуемый 409 при конкурентной регистрации. | backend | planned | harden-auth-and-cache-concurrency (ещё не создан) |
Добавить parallel integration scenario. | — |
| WL-P2-03 | Сделать refresh rotation атомарной. | backend | planned | harden-auth-and-cache-concurrency (ещё не создан) |
Выбрать CAS/transaction policy. | — |
| WL-P2-04 | Синхронизировать runtime, OpenAPI и auth success statuses. | backend, frontend | planned | align-api-contract-and-client-resilience (ещё не создан) |
Выбрать единый status contract. | — |
| WL-P2-05 | Восстановить runnable backend e2e gate. | backend | planned | make-local-verification-agent-safe (ещё не создан) |
Диагностировать schema-engine failure. | — |
| WL-P2-06 | Добавить проходящий app/test TypeScript gate backend. | backend | planned | make-local-verification-agent-safe (ещё не создан) |
Разделить app и test compilation. | — |
| WL-P2-07 | Сохранять cached data во время background refetch. | frontend | planned | align-api-contract-and-client-resilience (ещё не создан) |
Зафиксировать stale-data scenarios. | — |
| WL-P2-08 | Нормализовать cold-start refresh failure. | frontend | planned | align-api-contract-and-client-resilience (ещё не создан) |
Добавить failure test. | — |
| WL-P2-09 | Проверять backend runtime OpenAPI против frontend snapshot. | backend, frontend | planned | make-local-verification-agent-safe (ещё не создан) |
Спроектировать read-only contract gate. | — |
| WL-P2-10 | Актуализировать onboarding и постоянную документацию. | docs, frontend, backend, specs | planned | refresh-project-documentation-and-agent-entrypoints (ещё не создан) |
Сверить docs с delivered features. | — |
| WL-P2-11 | Зафиксировать одинаковый local bootstrap frontend/backend. | frontend, backend, docs | planned | make-local-verification-agent-safe (ещё не создан) |
Описать Node/npm policy и npm ci. |
— |
| WL-P2-12 | Проверить применимость high dependency advisories. | frontend, backend | planned | address-dependency-advisories-and-repo-hygiene (ещё не создан) |
Исследовать call paths до обновления версий. | — |
| WL-P2-13 | Дать одному agent workflow единый local verify interface. | frontend, backend, specs, docs | planned | make-local-verification-agent-safe (ещё не создан) |
Спроектировать workspace verifier. | — |
P3
| Audit ID | Цель | Репозитории | Статус | Связанный change | Следующее действие | Terminal evidence |
|---|---|---|---|---|---|---|
| WL-P3-01 | Сделать unknown request fields явной ошибкой или документированной policy. | backend | planned | tighten-backend-request-feedback (ещё не создан) |
Выбрать validation policy. | — |
| WL-P3-02 | Устранить shared i18n import cycle. | frontend | planned | tighten-frontend-quality-guardrails (ещё не создан) |
Добавить cycle rule и leaf import. | — |
| WL-P3-03 | Восстановить FSD public API boundary. | frontend | planned | tighten-frontend-quality-guardrails (ещё не создан) |
Расширить dependency rule. | — |
| WL-P3-04 | Исправить базовые language/loading accessibility semantics. | frontend | planned | tighten-frontend-quality-guardrails (ещё не создан) |
Добавить semantic status primitive. | — |
| WL-P3-05 | Ввести пропорциональный bundle regression budget. | frontend | planned | tighten-frontend-quality-guardrails (ещё не создан) |
Проверить route splitting boundaries. | — |
| WL-P3-06 | Добавить coverage ratchet только как regression signal. | frontend | planned | tighten-frontend-quality-guardrails (ещё не создан) |
Зафиксировать baseline после risk tests. | — |
| WL-P3-07 | Защитить рабочий .env от случайного commit. |
frontend | planned | address-dependency-advisories-and-repo-hygiene (ещё не создан) |
Уточнить .env/example policy. |
— |
| WL-P3-08 | Исключить runtime SQLite DB из Git. | backend | planned | address-dependency-advisories-and-repo-hygiene (ещё не создан) |
Проверить безопасный relocation/ignore. | — |
История registry
Terminal evidence добавляется сюда только после завершения соответствующего change. На момент создания registry завершённых audit-derived changes нет.
2026-08-23 — bootstrap verification: establish-audit-remediation-workflow
Этот process change не закрывает Audit ID. Перед archive выполнены следующие read-only checks:
cmp -s audit-20-08-2026.md docs/audits/audit-20-08-2026.md— exit 0; versioned snapshot byte-for-byte совпадает с исходной локальной копией.openspec validate establish-audit-remediation-workflow --type change --store wealth-ledger-specs—Change ... is valid.- Структурная проверка registry — 26 records, 26
planned, 0active, 0done, одна «Следующая задача»; все четыре agent pointers и оба registry links разрешаются. git diff --checkв frontend, backend, specs и docs — exit 0.- Независимый read-only review registry-to-audit mapping, OpenSpec links, instruction discoverability и scope diff —
findings: none. opsx-verifyдоступен как OpenCode command, но не установлен как shell executable в этой среде; выполнена эквивалентная процедура из.opencode/skills/openspec-verify-change/SKILL.mdс теми же dimensions completeness, correctness и coherence.- Change синхронизирован в main specs и архивирован в
specs/openspec/changes/archive/2026-08-23-establish-audit-remediation-workflow.