wealth-ledger-sdd-lab: убрать check.cjs и исправить находки schema-audit #66

Closed
opened 2026-10-30 07:58:03 +03:00 by codex-bot · 4 comments
Owner

Контекст и результат

Аудит схемы wealth-ledger-sdd-lab (6 независимых отчётов) выявил дефекты check.cjs (ложный OK apply без design/qa-analysis, игнор rejected/changes requested, approval на чужом gate, пустая Coverage Matrix проходит) и пробелы в инструкциях. Решение владельца: схема состоит только из schema.yaml и Markdown-шаблонов, без скриптов.

Scope

  • Удалить check.cjs; правила profile/порядка/gates/readiness перенести в инструкции как явный Readiness Checklist с исправленной семантикой.
  • Gates честно advisory: проверяет агент и independent reviewer.
  • Развести pre-G1 research; снять жёсткую зависимость failure-model/nfr/observability от hub; уточнить границу Small.
  • Few-shot эталоны в шаблонах; delivery-компакция design; guide-маркеры.

Acceptance Criteria

  • В openspec/schemas/wealth-ledger-sdd-lab/ нет исполняемых файлов; нет ссылок на check.cjs.
  • Последнее решение gate определяет состояние; rejected/changes requested снимают approval; artifact засчитывается только на своём gate.
  • Apply readiness требует все обязательные и выбранные artifacts.
  • Coverage засчитывается только по строкам Coverage Matrix / Covers.
  • openspec schema validate wealth-ledger-sdd-lab проходит; git diff --check чистый.
## Контекст и результат Аудит схемы `wealth-ledger-sdd-lab` (6 независимых отчётов) выявил дефекты `check.cjs` (ложный `OK apply` без design/qa-analysis, игнор `rejected`/`changes requested`, approval на чужом gate, пустая Coverage Matrix проходит) и пробелы в инструкциях. Решение владельца: схема состоит только из `schema.yaml` и Markdown-шаблонов, без скриптов. ## Scope - Удалить `check.cjs`; правила profile/порядка/gates/readiness перенести в инструкции как явный Readiness Checklist с исправленной семантикой. - Gates честно advisory: проверяет агент и independent reviewer. - Развести pre-G1 research; снять жёсткую зависимость failure-model/nfr/observability от hub; уточнить границу Small. - Few-shot эталоны в шаблонах; delivery-компакция design; guide-маркеры. ## Acceptance Criteria - [ ] В `openspec/schemas/wealth-ledger-sdd-lab/` нет исполняемых файлов; нет ссылок на `check.cjs`. - [ ] Последнее решение gate определяет состояние; `rejected`/`changes requested` снимают approval; artifact засчитывается только на своём gate. - [ ] Apply readiness требует все обязательные и выбранные artifacts. - [ ] Coverage засчитывается только по строкам Coverage Matrix / Covers. - [ ] `openspec schema validate wealth-ledger-sdd-lab` проходит; `git diff --check` чистый.
Author
Owner

Продолжение: единообразие спецификаций по sdd-spec-quality

По запросу владельца исследованы 9 исходных работ и 3 сводных отчёта из audit-results/sdd-spec-quality. Проверены первоисточники NASA Appendix C, INCOSE GtWR v4 Summary, EARS, BCP 14 и Cucumber.

Дополнение scope: компактный Markdown-профиль написания и ревью требований, на который ссылаются инструкции lab schema; эталонные сценарии, таблицы решений/переходов по необходимости; единые термины, явные неизвестные и проверка итогового набора требований.

Дополнительные AC:

  • В профиле заданы единая форма обязательства, правила терминов, условий/величин и Scenario; есть примеры и антипримеры.
  • Ревью различает качество отдельного требования и полноту/согласованность набора; выводы фиксируются в существующем Gate Log.
  • QA Coverage Matrix показывает, какие Scenarios/ветви правила проверены; при skip_specs используется регрессионный baseline.
  • Сохранены native Markdown delta format, analysis/ и существующие gates; нет новых скриптов, REQ-ID или SHA-процедуры.
  • Источники и пределы адаптации записаны в профиле; схема и учебные примеры проверены установленным OpenSpec CLI.

Рабочая ветка остаётся refactor/66-sdd-lab-no-scripts.

## Продолжение: единообразие спецификаций по sdd-spec-quality По запросу владельца исследованы 9 исходных работ и 3 сводных отчёта из `audit-results/sdd-spec-quality`. Проверены первоисточники NASA Appendix C, INCOSE GtWR v4 Summary, EARS, BCP 14 и Cucumber. Дополнение scope: компактный Markdown-профиль написания и ревью требований, на который ссылаются инструкции lab schema; эталонные сценарии, таблицы решений/переходов по необходимости; единые термины, явные неизвестные и проверка итогового набора требований. Дополнительные AC: - [ ] В профиле заданы единая форма обязательства, правила терминов, условий/величин и Scenario; есть примеры и антипримеры. - [ ] Ревью различает качество отдельного требования и полноту/согласованность набора; выводы фиксируются в существующем Gate Log. - [ ] QA Coverage Matrix показывает, какие Scenarios/ветви правила проверены; при skip_specs используется регрессионный baseline. - [ ] Сохранены native Markdown delta format, analysis/ и существующие gates; нет новых скриптов, REQ-ID или SHA-процедуры. - [ ] Источники и пределы адаптации записаны в профиле; схема и учебные примеры проверены установленным OpenSpec CLI. Рабочая ветка остаётся `refactor/66-sdd-lab-no-scripts`.
Author
Owner

Результат продолжения по sdd-spec-quality

Добавлен openspec/schemas/wealth-ledger-sdd-lab/spec-writing.md: единый профиль автора и reviewer, семантическая атомарность, определения терминов внутри Requirement, явные условия/единицы/границы, EARS-каркасы, нормы перед примерами, таблицы решений/переходов по необходимости. Есть 3 учебных образца, антипримеры, два прохода Review, ссылки на проверенные первоисточники и границы адаптации.

Профиль подключён к инструкциям Specs, process-record и QA. QA-матрица явно показывает Scenarios/ветви правила и регрессионный baseline при skip_specs. NFR дополнены контекстом измерения. Никаких новых gates/скриптов/REQ-ID/SHA-процедур.

Проверки (Node 24.22.1, OpenSpec 1.15.0):

  • openspec schema validate wealth-ledger-sdd-lab --verbose — valid.
  • Во временном изолированном store: openspec validate profile-examples --type change --strict --no-interactive → openspec archive profile-examples --yes → openspec validate example-report --type spec --strict --no-interactive — все exit 0, 3 требования перенесены; таблицы, определения и GIVEN сохранены.
  • Первоначально два образца давали native warning >500 символов (511/522), что блокировало --strict. Сокращены повторы без потери условий, повторная проверка успешна. Это ограничение CLI, не новый инженерный критерий.
  • npm run verify, git diff --check, отдельная whitespace-проверка нового Markdown — без замечаний.
  • Независимое review итогового diff/profile — approve.
  • QA-разбор 8 контрольных случаев: разная допустимая формулировка принимается, неясный баланс/выдуманный порог/пересечение таблицы/потеря Scenario/новое округление в Scenario выявляются. Это проверка применимости инструкции, не межмодельный benchmark; план такого пилота есть в Trial.

Изменения пока не закоммичены.

## Результат продолжения по sdd-spec-quality Добавлен `openspec/schemas/wealth-ledger-sdd-lab/spec-writing.md`: единый профиль автора и reviewer, семантическая атомарность, определения терминов внутри Requirement, явные условия/единицы/границы, EARS-каркасы, нормы перед примерами, таблицы решений/переходов по необходимости. Есть 3 учебных образца, антипримеры, два прохода Review, ссылки на проверенные первоисточники и границы адаптации. Профиль подключён к инструкциям Specs, process-record и QA. QA-матрица явно показывает Scenarios/ветви правила и регрессионный baseline при skip_specs. NFR дополнены контекстом измерения. Никаких новых gates/скриптов/REQ-ID/SHA-процедур. Проверки (Node 24.22.1, OpenSpec 1.15.0): - `openspec schema validate wealth-ledger-sdd-lab --verbose` — valid. - Во временном изолированном store: `openspec validate profile-examples --type change --strict --no-interactive` → `openspec archive profile-examples --yes` → `openspec validate example-report --type spec --strict --no-interactive` — все exit 0, 3 требования перенесены; таблицы, определения и GIVEN сохранены. - Первоначально два образца давали native warning >500 символов (511/522), что блокировало --strict. Сокращены повторы без потери условий, повторная проверка успешна. Это ограничение CLI, не новый инженерный критерий. - `npm run verify`, `git diff --check`, отдельная whitespace-проверка нового Markdown — без замечаний. - Независимое review итогового diff/profile — approve. - QA-разбор 8 контрольных случаев: разная допустимая формулировка принимается, неясный баланс/выдуманный порог/пересечение таблицы/потеря Scenario/новое округление в Scenario выявляются. Это проверка применимости инструкции, не межмодельный benchmark; план такого пилота есть в Trial. Изменения пока не закоммичены.
Author
Owner

Исправления по review f2a625f

По запросу владельца «давай сначала исправим твои замечания» продолжаю в ветке refactor/66-sdd-lab-no-scripts.

Scope: уточнить профиль автора/reviewer и шаблон Specs. Недоказанный межмодельный эффект остаётся предметом пилота; подготовка протокола не считается его результатом.

Acceptance Criteria:

  • AND продолжает предыдущий тип шага (GIVEN/WHEN/THEN); правило согласовано с примерами.
  • Для спорного или выведенного при анализе Requirement сохраняется явная ненормативная ссылка на конкретное согласованное решение/контракт. Reviewer проверяет, что источник поддерживает норму; ссылка остаётся пригодной после native archive.
  • В шаблоне показан формат ссылки; обоснование и approval не подменяются одной ссылкой.
  • Trial описывает сравнение baseline/candidate на одинаковых входах, независимое чтение и заранее заданные критерии оценки. Вывод об эффекте требует фактических результатов.
  • openspec schema validate wealth-ledger-sdd-lab --verbose, npm run verify и git diff --check проходят; сохранение строки источника проверено native validate/archive во временном изолированном root.
## Исправления по review f2a625f По запросу владельца «давай сначала исправим твои замечания» продолжаю в ветке `refactor/66-sdd-lab-no-scripts`. Scope: уточнить профиль автора/reviewer и шаблон Specs. Недоказанный межмодельный эффект остаётся предметом пилота; подготовка протокола не считается его результатом. Acceptance Criteria: - [ ] AND продолжает предыдущий тип шага (GIVEN/WHEN/THEN); правило согласовано с примерами. - [ ] Для спорного или выведенного при анализе Requirement сохраняется явная ненормативная ссылка на конкретное согласованное решение/контракт. Reviewer проверяет, что источник поддерживает норму; ссылка остаётся пригодной после native archive. - [ ] В шаблоне показан формат ссылки; обоснование и approval не подменяются одной ссылкой. - [ ] Trial описывает сравнение baseline/candidate на одинаковых входах, независимое чтение и заранее заданные критерии оценки. Вывод об эффекте требует фактических результатов. - [ ] `openspec schema validate wealth-ledger-sdd-lab --verbose`, `npm run verify` и `git diff --check` проходят; сохранение строки источника проверено native validate/archive во временном изолированном root.
Author
Owner

Результат исправлений по review f2a625f

Изменены два файла: openspec/schemas/wealth-ledger-sdd-lab/spec-writing.md и templates/spec.md.

  • AND продолжает предыдущий тип GIVEN/WHEN/THEN; профиль и шаблон согласованы с существующим примером.
  • Спорные/выведенные требования сохраняют ненормативный источник: конкретное решение Change Owner в Issue или пункт согласованной редакции контракта. Ссылка должна оставаться пригодной после archive; она не заменяет норму, обоснование или approval.
  • В шаблоне есть формат ссылки; смысловое review проверяет, что источник действительно подтверждает норму.
  • Trial уточнён: одинаковые задания и фиксированные входы, сравнение прежних/новых инструкций минимум на двух авторах/моделях, независимое чтение, критерии до запуска, сохранение результатов. Фактический межмодельный эффект остаётся непроверенным до выполнения пилота.
  • Проверки выполнены на Node 24.22.1 / OpenSpec 1.15.0:
    • openspec schema validate wealth-ledger-sdd-lab --verbose — valid.
    • npm run verify и git diff --check — exit 0. Npm выводит существующее предупреждение о пользовательской настройке //registry.
    • В изолированном временном root: openspec validate profile-source-reference --type change --strict --no-interactive → openspec archive profile-source-reference --yes → openspec validate example-report --type spec --strict --no-interactive — exit 0. MODIFIED сохранил строку источника перед Scenario, GIVEN/AND и остальные требования. Источник fixture синтетический (example.org); проверялось сохранение формата, а не подлинность продуктового решения.

Итоговый diff проверен на согласованность роли источника, шаблона, review и ограничений Trial. Изменения локальные, без commit/PR.

## Результат исправлений по review f2a625f Изменены два файла: `openspec/schemas/wealth-ledger-sdd-lab/spec-writing.md` и `templates/spec.md`. - [x] AND продолжает предыдущий тип GIVEN/WHEN/THEN; профиль и шаблон согласованы с существующим примером. - [x] Спорные/выведенные требования сохраняют ненормативный источник: конкретное решение Change Owner в Issue или пункт согласованной редакции контракта. Ссылка должна оставаться пригодной после archive; она не заменяет норму, обоснование или approval. - [x] В шаблоне есть формат ссылки; смысловое review проверяет, что источник действительно подтверждает норму. - [x] Trial уточнён: одинаковые задания и фиксированные входы, сравнение прежних/новых инструкций минимум на двух авторах/моделях, независимое чтение, критерии до запуска, сохранение результатов. Фактический межмодельный эффект остаётся непроверенным до выполнения пилота. - [x] Проверки выполнены на Node 24.22.1 / OpenSpec 1.15.0: - `openspec schema validate wealth-ledger-sdd-lab --verbose` — valid. - `npm run verify` и `git diff --check` — exit 0. Npm выводит существующее предупреждение о пользовательской настройке `//registry`. - В изолированном временном root: `openspec validate profile-source-reference --type change --strict --no-interactive` → `openspec archive profile-source-reference --yes` → `openspec validate example-report --type spec --strict --no-interactive` — exit 0. MODIFIED сохранил строку источника перед Scenario, GIVEN/AND и остальные требования. Источник fixture синтетический (`example.org`); проверялось сохранение формата, а не подлинность продуктового решения. Итоговый diff проверен на согласованность роли источника, шаблона, review и ограничений Trial. Изменения локальные, без commit/PR.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: WealthLedger/specs#66