From 79727de9ffe61f36fbaca866e2993bde6243eace Mon Sep 17 00:00:00 2001 From: Sergey Krylov Date: Wed, 26 Aug 2026 10:14:16 +0300 Subject: [PATCH] docs: record OpenSpec resilience evidence --- development/audit-remediation.md | 26 +++++++------- development/completion-evidence.md | 57 ++++++++++++++++++++++++++++++ 2 files changed, 69 insertions(+), 14 deletions(-) diff --git a/development/audit-remediation.md b/development/audit-remediation.md index 711144c..fcea6a8 100644 --- a/development/audit-remediation.md +++ b/development/audit-remediation.md @@ -21,20 +21,18 @@ ## Текущее состояние workflow - Bootstrap change: [`2026-08-23-establish-audit-remediation-workflow`](../../specs/openspec/changes/archive/2026-08-23-establish-audit-remediation-workflow/) — `archived`; это process foundation и не закрывает ни одного Audit ID. -- Последний завершённый audit remediation change: [`2026-08-26-harden-openspec-sdd-quality`](../../specs/openspec/changes/archive/2026-08-26-harden-openspec-sdd-quality/) — `archived`; SDD26-01–SDD26-03, SDD26-09, SDD26-12, SDD26-17, SDD26-21 и SDD26-28–SDD26-30 закрыты. -- Единственный active change: [`harden-openspec-sdd-agent-resilience`](../../specs/openspec/changes/harden-openspec-sdd-agent-resilience/) — schema v3, deterministic planning failures и повторный SDD review. +- Последний завершённый audit remediation change: [`2026-08-26-harden-openspec-sdd-agent-resilience`](../../specs/openspec/changes/archive/2026-08-26-harden-openspec-sdd-agent-resilience/) — `archived`; SDD26R2-01–SDD26R2-06 закрыты. +- Единственный active change: отсутствует. ## Текущая задача -Завершить `harden-openspec-sdd-agent-resilience`, выполнить affected-area gates, -semantic verification и independent review, затем архивировать change. +Создать следующий remediation change, когда владелец выберет продолжение. ## Следующая рекомендуемая задача -`assess-auth-platform-options` для AUD24-02 остаётся следующим planned item, но -не запускается параллельно active remediation change. Change применит Solution -Assessment к существующей реализации и зрелым auth platforms, включая Better -Auth, и не предрешает миграцию. +`assess-auth-platform-options` для AUD24-02. Change применит Solution Assessment +к существующей реализации и зрелым auth platforms, включая Better Auth, и не +предрешает миграцию. ## Реестр findings @@ -47,12 +45,12 @@ Auth, и не предрешает миграцию. | Audit ID | Нормализованный claim | Sources | Disposition | Remediation status | Evidence, rationale или review trigger | | --- | --- | --- | --- | --- | --- | -| SDD26R2-01 | Сократить и визуально приоритизировать instructions, сохранив самодостаточные critical rules и единый основной язык. | [D2], [Gr2], [Z2] | confirmed | active | `harden-openspec-sdd-agent-resilience`: schema v3 начинает каждую instruction с `Critical Rules`, устраняет длинные повторения и оставляет English для exact OpenSpec tokens. | -| SDD26R2-02 | Delta Spec template не должен предрешать `ADDED` и должен показывать все допустимые operations без активных пустых sections. | [K2] | confirmed | active | `harden-openspec-sdd-agent-resilience`: neutral comment-only guide; operation sections создаются только по фактической delta. | -| SDD26R2-03 | Planning verifier должен отличать defect артефакта от неверного invocation и failure окружения. | [Z2], [Q2] | confirmed | active | `harden-openspec-sdd-agent-resilience`: отдельные result prefixes и exit statuses; только `artifact-validation` разрешает менять artifact. Retry counter отклонён владельцем как лишнее состояние. | -| SDD26R2-04 | Apply должен читать точные native `contextFiles` и локальные правила affected repositories. | [K2] | confirmed | active | `harden-openspec-sdd-agent-resilience`: CLI-resolved `contextFiles` + repository-local `AGENTS.md`; отдельный context mapping не вводится. | -| SDD26R2-05 | `N/A` rationale должно объяснять техническую необходимость, но его смысл нельзя надёжно валидировать простым text heuristic. | [Q2] | confirmed | active | `harden-openspec-sdd-agent-resilience`: verifier отклоняет пустой, separator-only и unresolved placeholder; semantic sufficiency остаётся owner/reviewer responsibility. | -| SDD26R2-06 | Граница mechanical Apply fix должна явно исключать Requirement, Scenario, architecture и Verification changes. | [Q2], [Z2] | confirmed | active | `harden-openspec-sdd-agent-resilience`: schema v3 перечисляет допустимые mechanical edits и semantic reapproval boundary. | +| SDD26R2-01 | Сократить и визуально приоритизировать instructions, сохранив самодостаточные critical rules и единый основной язык. | [D2], [Gr2], [Z2] | confirmed | done | 2026-08-26; [archive](../../specs/openspec/changes/archive/2026-08-26-harden-openspec-sdd-agent-resilience/); specs `8462a3ba75d6dda491b9221699357c58d8f8e3cc`, `779a1e1305f8c209a4f98fae7f87718e48d61b37`; docs `d80e2e32b2ebadcd93a53105e1ac337fe2c1f4f6`; commands/results: [Completion Evidence](completion-evidence.md#2026-08-26-harden-openspec-sdd-agent-resilience). | +| SDD26R2-02 | Delta Spec template не должен предрешать `ADDED` и должен показывать все допустимые operations без активных пустых sections. | [K2] | confirmed | done | 2026-08-26; тот же [archive](../../specs/openspec/changes/archive/2026-08-26-harden-openspec-sdd-agent-resilience/), delivery commits и [Completion Evidence](completion-evidence.md#2026-08-26-harden-openspec-sdd-agent-resilience). | +| SDD26R2-03 | Planning verifier должен отличать defect артефакта от неверного invocation и failure окружения. | [Z2], [Q2] | confirmed | done | 2026-08-26; тот же [archive](../../specs/openspec/changes/archive/2026-08-26-harden-openspec-sdd-agent-resilience/), delivery commits и [Completion Evidence](completion-evidence.md#2026-08-26-harden-openspec-sdd-agent-resilience). Retry counter отклонён владельцем как лишнее состояние. | +| SDD26R2-04 | Apply должен читать точные native `contextFiles` и локальные правила affected repositories. | [K2] | confirmed | done | 2026-08-26; тот же [archive](../../specs/openspec/changes/archive/2026-08-26-harden-openspec-sdd-agent-resilience/), delivery commits и [Completion Evidence](completion-evidence.md#2026-08-26-harden-openspec-sdd-agent-resilience); отдельный context mapping не введён. | +| SDD26R2-05 | `N/A` rationale должно объяснять техническую необходимость, но его смысл нельзя надёжно валидировать простым text heuristic. | [Q2] | confirmed | done | 2026-08-26; тот же [archive](../../specs/openspec/changes/archive/2026-08-26-harden-openspec-sdd-agent-resilience/), delivery commits и [Completion Evidence](completion-evidence.md#2026-08-26-harden-openspec-sdd-agent-resilience); semantic sufficiency оставлена owner/reviewer. | +| SDD26R2-06 | Граница mechanical Apply fix должна явно исключать Requirement, Scenario, architecture и Verification changes. | [Q2], [Z2] | confirmed | done | 2026-08-26; тот же [archive](../../specs/openspec/changes/archive/2026-08-26-harden-openspec-sdd-agent-resilience/), delivery commits и [Completion Evidence](completion-evidence.md#2026-08-26-harden-openspec-sdd-agent-resilience). | | SDD26R2-07 | Exact Requirement heading в `Covers` нужно копировать дословно и проверять детерминированно. | [Z2] | already-covered | accepted | 2026-08-26; SDD26-12 уже требует exact heading, а planning verifier отклоняет неизвестную reference и uncovered Requirement. Review trigger: удаление или ослабление exact-reference check. | | SDD26R2-08 | Добавить `Target Repositories` в Proposal или расширить owner area произвольными repository paths. | [G2], [Gr2] | rejected | accepted | 2026-08-26; Proposal сохраняет intent без implementation topology; фиксированная Delivery Map отражает фактические четыре repos. Пересмотреть только при добавлении новой delivery area в workspace. | | SDD26R2-09 | Хранить machine-readable approval markers внутри versioned artifacts. | [Gr2], [K2] | rejected | accepted | 2026-08-26; approval identity принадлежит разговору с Change Owner. Marker дублировал бы external state и мог бы ложно выглядеть действующим после upstream change. Review trigger: воспроизводимый случай ложного approval после потери conversation state. | diff --git a/development/completion-evidence.md b/development/completion-evidence.md index 469f97e..770752b 100644 --- a/development/completion-evidence.md +++ b/development/completion-evidence.md @@ -7,6 +7,63 @@ delivery commits, точные verification commands с наблюдёнными итог independent read-only review. Записи добавляются после archive и являются неизменяемой историей поставки. +## 2026-08-26-harden-openspec-sdd-agent-resilience + +**Change:** harden-openspec-sdd-agent-resilience (schema `wealth-ledger-sdd` v3) +**Archive path:** `specs/openspec/changes/archive/2026-08-26-harden-openspec-sdd-agent-resilience` +**Specs sync:** три новых и три изменённых Requirements слиты в +`openspec-authority-and-lifecycle` и `multi-repository-delivery`; post-archive +strict validation — 20 main specs и 32 archived changes без ошибок. + +### Delivery Map + +| Area | Status | Outcome | +| --- | --- | --- | +| frontend | N/A | Client behavior, implementation и local gate не менялись | +| backend | N/A | API behavior, implementation и local gate не менялись | +| specs | affected | Schema v3, operation-neutral template, failure taxonomy, controlled fixtures, Delta Specs и archive/sync поставлены | +| docs | affected | Шесть reports сохранены одним snapshot, claims triaged, lifecycle/ADR/registry синхронизированы | + +### Delivery commits + +| Repo | Commit | Subject | +| --- | --- | --- | +| specs (implementation) | `8462a3ba75d6dda491b9221699357c58d8f8e3cc` | feat: harden OpenSpec agent resilience | +| specs (archive/sync) | `779a1e1305f8c209a4f98fae7f87718e48d61b37` | docs(specs): archive OpenSpec resilience change | +| docs (as-built) | `d80e2e32b2ebadcd93a53105e1ac337fe2c1f4f6` | docs: record second OpenSpec schema review | +| docs (evidence) | current evidence commit | docs: record OpenSpec resilience evidence | + +### Verification + +| Command (repo) | Наблюдённый результат | +| --- | --- | +| `bash scripts/verify-openspec-planning.test.sh` (specs, RED before implementation) | failed as expected: прежний verifier не выдавал `artifact-validation`, schema оставалась v2 | +| `bash scripts/verify-openspec-planning.sh definitely-missing-change` (specs, review reproduction) | до fix: exit 1 `artifact-validation`; после fix: exit 2 `Planning invocation failed` | +| `bash scripts/verify-openspec-planning.test.sh` (specs) | pass; positive stage cases, controlled ADDED/MODIFIED/REMOVED/RENAMED, artifact/invocation/environment failures, N/A и instruction contracts | +| `bash scripts/verify-openspec-authority.test.sh` (specs) | pass; controlled-invalid authority cases отклонены по ожидаемым причинам | +| `PATH=/Users/ksv741/.nvm/versions/node/v22.21.0/bin:$PATH bash specs/scripts/verify-workspace-change.sh harden-openspec-sdd-agent-resilience` (workspace, pre-archive) | pass; specs/docs affected, frontend/backend/runtime-openapi N/A; schema/change valid, 20/20 main specs, docs 37 Markdown files / 0 issues | +| `openspec archive harden-openspec-sdd-agent-resilience --yes --store wealth-ledger-specs` (specs) | pass; archived as `2026-08-26-harden-openspec-sdd-agent-resilience`; +3/~3 Requirements synced | +| `openspec validate --specs --strict --store wealth-ledger-specs` (specs, post-archive) | pass; 20 passed, 0 failed | +| `openspec validate --archived --strict --store wealth-ledger-specs` (specs, post-archive) | pass; 32 passed, 0 failed | +| `openspec schema validate wealth-ledger-sdd --verbose` (specs, post-archive) | pass; dependency graph and templates valid | +| `bash scripts/verify-openspec-authority.sh` (specs, post-archive) | pass; OpenSpec CLI 1.10.0, authority `wealth-ledger-specs` | +| `PATH=/Users/ksv741/.nvm/versions/node/v22.21.0/bin:$PATH npm run verify` (docs) | pass; Node 22.21.0, 37 Markdown files, 0 issues | +| `git diff --check` (specs/docs) | pass | + +Schema instruction source уменьшился с 348 строк / 22,215 bytes до 209 строк / +14,197 bytes без числового blocking threshold. Все 12 Tasks завершены до +archive; semantic verification сопоставила delivery со всеми 6 Requirements и +20 Scenarios. + +### Independent read-only review + +Verdict: **PASS**. Итог после remediation review findings: Critical — 0, +Important — 0, Minor — 0. Reviewer подтвердил schema v3 и `Critical Rules`, +operation-neutral template и four-operation fixture, три failure category, +structural/semantic границу `N/A`, native `contextFiles` + local `AGENTS.md`, +cascade/mechanical assertions и snapshot/registry/as-built consistency без +scope creep. + ## 2026-08-25-align-domain-model-and-money-contract **Change:** align-domain-model-and-money-contract (schema `wealth-ledger-sdd`)