docs: record second OpenSpec schema review
This commit is contained in:
@@ -22,20 +22,57 @@
|
||||
|
||||
- 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: отсутствует.
|
||||
- Единственный active change: [`harden-openspec-sdd-agent-resilience`](../../specs/openspec/changes/harden-openspec-sdd-agent-resilience/) — schema v3, deterministic planning failures и повторный SDD review.
|
||||
|
||||
## Текущая задача
|
||||
|
||||
Создать следующий remediation change, когда владелец выберет продолжение.
|
||||
Завершить `harden-openspec-sdd-agent-resilience`, выполнить affected-area gates,
|
||||
semantic verification и independent review, затем архивировать change.
|
||||
|
||||
## Следующая рекомендуемая задача
|
||||
|
||||
`assess-auth-platform-options` для AUD24-02. Change применяет Solution
|
||||
`assess-auth-platform-options` для AUD24-02 остаётся следующим planned item, но
|
||||
не запускается параллельно active remediation change. Change применит Solution
|
||||
Assessment к существующей реализации и зрелым auth platforms, включая Better
|
||||
Auth, и не предрешает миграцию.
|
||||
|
||||
## Реестр findings
|
||||
|
||||
### Повторный multi-source review WealthLedger SDD v2 26.08.2026
|
||||
|
||||
Шесть исходных reports находятся в [immutable snapshot set](../audits/2026-08-26-wealth-ledger-sdd-v2-review/README.md).
|
||||
Сокращения: [D2] — DeepSeek, [G2] — Gemini, [Gr2] — Grok, [K2] — Kimi,
|
||||
[Q2] — Qwen, [Z2] — Z.AI. Оценки и предложенные patches не принимаются без
|
||||
сопоставления с воспроизводимым project invariant.
|
||||
|
||||
| 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-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. |
|
||||
| SDD26R2-10 | Добавить отдельные verify/archive/DoD artifacts или phase. | [Gr2], [K2] | already-covered | accepted | 2026-08-26; SDD26-11 уже закрыт dispatcher, semantic verification, independent review, hard archive blockers и post-archive Completion Evidence без второго workflow artifact. Review trigger: доказанный terminal gap, который эти gates не выражают. |
|
||||
| SDD26R2-11 | Ослабить последовательность Specs → Design для exploratory feasibility. | [Gr2] | rejected | accepted | 2026-08-26; production change сохраняет утверждённый behavior до architecture. Throwaway feasibility work допустима вне Apply, но не становится versioned parallel plan. Review trigger: повторяемый change, где безопасная feasibility work блокируется текущим graph. |
|
||||
| SDD26R2-12 | Вынести Solution Assessment в отдельный artifact. | [Gr2] | rejected | accepted | 2026-08-26; conditional section остаётся в Design, где сравнение вариантов непосредственно обосновывает architecture; отдельный artifact усложнил бы graph без нового invariant. Review trigger: появление independently reusable assessment с отдельным approval owner. |
|
||||
| SDD26R2-13 | Требовать отдельную workspace-task для semantic review каждого change. | [Gr2] | already-covered | accepted | 2026-08-26; terminal semantic verification и independent read-only review обязательны; workspace task создаётся в Tasks для orchestration, когда она нужна delivery plan. Review trigger: semantic review, пропущенный из-за отсутствия task-level representation. |
|
||||
| SDD26R2-14 | Добавить Success Metrics в Proposal. | [Gr2] | rejected | accepted | 2026-08-26; observable acceptance принадлежит Requirements и Scenarios. Универсальные metrics в intent artifact создавали бы неподтверждённые цели без измеримого project need. Review trigger: утверждённая product metric, которую нельзя выразить Requirements/Scenarios. |
|
||||
| SDD26R2-15 | Вести schema changelog рядом с version field. | [Gr2] | rejected | accepted | 2026-08-26; versioned Git history, OpenSpec change и archive уже фиксируют rationale и diff. Второй changelog не добавляет authority. Review trigger: наблюдаемая невозможность восстановить schema migration из canonical history. |
|
||||
| SDD26R2-16 | Добавить CI/CD validation. | [D2] | deferred | deferred | 2026-08-26; текущий contract сознательно использует canonical local gates под Node 22. Review trigger: появление project CI. |
|
||||
| SDD26R2-17 | Добавить dependencies между changes, sizing задач и commit convention. | [K2] | already-covered | accepted | 2026-08-26; dependencies остаются deferred в SDD26-15 до реального conflict; sizing отклонён в SDD26-16, commit convention — в SDD26-19. Review triggers наследуются из этих записей; повторный report не даёт нового evidence. |
|
||||
| SDD26R2-18 | Exact schema version и criteria Solution Assessment отсутствуют или недостаточны. | [D2] | already-covered | accepted | 2026-08-26; `.cli-version`, schema version, controlled upgrade contract и explicit assessment trigger areas уже закреплены schema/governance. Review trigger: assessment, для которого текущие trigger areas не дают однозначного решения. |
|
||||
|
||||
[D2]: ../audits/2026-08-26-wealth-ledger-sdd-v2-review/deepseek-audit.md
|
||||
[G2]: ../audits/2026-08-26-wealth-ledger-sdd-v2-review/gemini-audit.md
|
||||
[Gr2]: ../audits/2026-08-26-wealth-ledger-sdd-v2-review/grok-audit.md
|
||||
[K2]: ../audits/2026-08-26-wealth-ledger-sdd-v2-review/kimi-audit.md
|
||||
[Q2]: ../audits/2026-08-26-wealth-ledger-sdd-v2-review/qwen-audit.md
|
||||
[Z2]: ../audits/2026-08-26-wealth-ledger-sdd-v2-review/zai-audit.md
|
||||
|
||||
### Multi-source assessment WealthLedger SDD 26.08.2026
|
||||
|
||||
Raw external reports и checksums находятся в
|
||||
|
||||
@@ -26,14 +26,24 @@ agent workflow, store resolution и hard blockers; historical archives
|
||||
|
||||
## Project-local schema
|
||||
|
||||
Новые changes по умолчанию используют schema `wealth-ledger-sdd` version 2 из
|
||||
Новые changes по умолчанию используют schema `wealth-ledger-sdd` version 3 из
|
||||
`specs/openspec/schemas/wealth-ledger-sdd`. Её граф:
|
||||
|
||||
```text
|
||||
proposal → specs → design → tasks → apply
|
||||
```
|
||||
|
||||
OpenSpec обеспечивает structural order, а явное решение Change Owner — переход между артефактами. Agent создаёт один текущий artifact и останавливается для approval. Роли артефактов и cascade rules определены в governance policy; исполняемые templates и instructions принадлежат schema.
|
||||
OpenSpec обеспечивает structural order, а явное решение Change Owner — переход
|
||||
между артефактами. Agent создаёт один текущий artifact и останавливается для
|
||||
approval. Роли артефактов и cascade rules определены в governance policy;
|
||||
исполняемые templates и instructions принадлежат schema. Каждая instruction
|
||||
начинается компактным блоком `Critical Rules`; основной explanatory prose
|
||||
написан по-русски, а exact OpenSpec headings, tokens и normative keywords
|
||||
сохраняются на английском.
|
||||
|
||||
Delta Spec template является operation-neutral comment guide. Он перечисляет
|
||||
`ADDED`, `MODIFIED`, `REMOVED` и `RENAMED`, но не создаёт активную operation
|
||||
section. Автор добавляет только применимые sections и не оставляет пустых.
|
||||
|
||||
До запроса approval выполняется доступная stage-aware проверка:
|
||||
|
||||
@@ -43,9 +53,11 @@ bash specs/scripts/verify-openspec-planning.sh <change>
|
||||
|
||||
Proposal проверяется без ложного объявления полного change success; по мере
|
||||
появления Specs, Design и Tasks добавляются strict validation, Delivery Map,
|
||||
rollback, area ownership и exact Requirement coverage. Технический format
|
||||
failure исправляется и проверяется повторно; structural success не означает
|
||||
approval.
|
||||
rollback, area ownership и exact Requirement coverage. Planning result имеет
|
||||
три категории: `artifact-validation` (exit 1), `invocation` (exit 2) и
|
||||
`environment` (exit 3). Только первая разрешает менять проверяемый planning
|
||||
artifact; две остальные требуют исправить invocation или prerequisite.
|
||||
Structural success не означает approval.
|
||||
|
||||
Project-local schema проверяется из `specs`:
|
||||
|
||||
@@ -83,7 +95,16 @@ bash specs/scripts/verify-workspace-change.sh <change>
|
||||
Перед affected-area gates dispatcher повторяет planning verifier. Tasks имеют
|
||||
формат `X.Y [area] action` и indented `Covers`/`Verification`; каждый Delta
|
||||
Requirement покрывается точной ссылкой хотя бы один раз, а `workspace` остаётся
|
||||
только owner orchestration/verification.
|
||||
только owner orchestration/verification. Для `N/A` verifier отклоняет пустой,
|
||||
separator-only или unresolved placeholder, а содержательность rationale
|
||||
подтверждается semantic review.
|
||||
|
||||
Apply читает planning artifacts только из `contextFiles`, возвращённых native
|
||||
`openspec instructions apply --json`, затем repository-local `AGENTS.md`
|
||||
affected areas. Второй context mapping не поддерживается. Без reapproval можно
|
||||
исправить только Markdown heading, typo без изменения нормативного смысла или
|
||||
table alignment; Requirement, Scenario, architecture и planned Verification
|
||||
являются semantic changes.
|
||||
|
||||
Перед archive отдельно подтверждаются structural и semantic gates:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user