Аудит схемы 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.
## Контекст и результат
Аудит схемы `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` чистый.
Продолжение: единообразие спецификаций по 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`.
Добавлен 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-процедур.
Во временном изолированном 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 — без замечаний.
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.
Изменения пока не закоммичены.
По запросу владельца «давай сначала исправим твои замечания» продолжаю в ветке 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.
Изменены два файла: 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:
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.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Контекст и результат
Аудит схемы
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 с исправленной семантикой.Acceptance Criteria
openspec/schemas/wealth-ledger-sdd-lab/нет исполняемых файлов; нет ссылок наcheck.cjs.rejected/changes requestedснимают approval; artifact засчитывается только на своём gate.openspec schema validate wealth-ledger-sdd-labпроходит;git diff --checkчистый.Продолжение: единообразие спецификаций по 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:
Рабочая ветка остаётся
refactor/66-sdd-lab-no-scripts.Результат продолжения по 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.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 сохранены.npm run verify,git diff --check, отдельная whitespace-проверка нового Markdown — без замечаний.Изменения пока не закоммичены.
Исправления по review f2a625f
По запросу владельца «давай сначала исправим твои замечания» продолжаю в ветке
refactor/66-sdd-lab-no-scripts.Scope: уточнить профиль автора/reviewer и шаблон Specs. Недоказанный межмодельный эффект остаётся предметом пилота; подготовка протокола не считается его результатом.
Acceptance Criteria:
openspec schema validate wealth-ledger-sdd-lab --verbose,npm run verifyиgit diff --checkпроходят; сохранение строки источника проверено native validate/archive во временном изолированном root.Результат исправлений по review f2a625f
Изменены два файла:
openspec/schemas/wealth-ledger-sdd-lab/spec-writing.mdиtemplates/spec.md.openspec schema validate wealth-ledger-sdd-lab --verbose— valid.npm run verifyиgit diff --check— exit 0. Npm выводит существующее предупреждение о пользовательской настройке//registry.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.