From c5aa02c8ecfc51212d2220b5c74cb762ea3206ce Mon Sep 17 00:00:00 2001 From: Andrey Epifancev Date: Tue, 6 Oct 2026 17:36:35 +0400 Subject: [PATCH] =?UTF-8?q?openspec:=20=D1=80=D0=B5=D1=88=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=E2=84=9617=E2=80=9320=20(=D0=BF=D1=80=D0=BE?= =?UTF-8?q?=D0=B2=D0=B5=D1=80=D0=BA=D0=B0=20=D1=81=D0=BE=D0=BE=D1=82=D0=BD?= =?UTF-8?q?=D0=BE=D1=88=D0=B5=D0=BD=D0=B8=D0=B9:=20=D1=86=D0=B5=D0=BB?= =?UTF-8?q?=D1=8C,=20=D1=81=D0=BB=D0=BE=D0=B2=D0=B0=D1=80=D1=8C,=20=D0=B4?= =?UTF-8?q?=D0=BE=D0=BF=D1=83=D1=81=D0=BA=20=D0=BF=D0=BE=D0=B4=D1=81=D1=82?= =?UTF-8?q?=D1=80=D0=BE=D0=BA,=20=D0=B2=D0=B0=D0=BB=D0=B8=D0=B4=D0=B0?= =?UTF-8?q?=D1=86=D0=B8=D1=8F=20=D0=BA=D0=BE=D0=B4=D0=BE=D0=B2)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Refs #14 Co-Authored-By: Claude Claude-Session: cedd7915-2efe-41e5-988c-a9117033598b --- openspec/changes/slice-2b-statement-parser/design.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/openspec/changes/slice-2b-statement-parser/design.md b/openspec/changes/slice-2b-statement-parser/design.md index 095ec78..4e12e5e 100644 --- a/openspec/changes/slice-2b-statement-parser/design.md +++ b/openspec/changes/slice-2b-statement-parser/design.md @@ -216,3 +216,7 @@ Unit (`tests/unit/parser/statements/`) на `gridbuilder`; property (`tests/fixt | 14 | 2026-10-06 | Golden `schema_version` 1.1 → 1.2 (113 файлов) пересозданы сразу и закоммичены в ветку `feat/14-statements-golden` worktree `fixtures-wt` (шаг 1 задачи 13 выполнен раньше), симлинк `fixtures` переключён на worktree; основной checkout fixtures не тронут | смена `CONTRACT_VERSION` ломала golden до задачи 14, `make check` был бы красным на задачах 4–13 | коммит в fixtures-ветке раньше плана; откат — reset ветки (R-3) | | 15 | 2026-10-06 | `docs/contracts/**` после задачи 1 заморожены: в задаче 16 не правятся; T1.1/T2.1/T2.2/T2.3 остаются deferred и уходят в follow-up | копии схемы в arm-core#27 и scan-gateway#5 на ревью и должны остаться байт в байт равными docs/contracts на main | три косметических замечания живут до следующего MINOR (R-4, указание координатора) | | 16 | 2026-10-06 | Находка T6.I1 (osv.py не знает SheetKind.STATEMENT_CONTINUATION) не чинится в задаче 6, закрывается заменой osv.py::parse на BookParser в задаче 7 | реальные фикстуры ОСВ листов-продолжений не содержат, промежуточное состояние невидимо | если T7 не покроет — поймает финальное ревью (R-5) | +| 17 | 2026-10-06 | Task 11: соотношение проверяется в колонке, только если присутствует его цель (строка-итог); отсутствующие члены = 0; подстрочные правила — когда подстроки есть | код и тесты плана противоречили друг другу (тесты 1/4 требуют пропуска цели); фрагменты форм (страница 1 ОФР без 2200) не должны давать ложных нарушений | итоговая строка, пропущенная при наличии членов, этим соотношением не ловится (R-6) | +| 18 | 2026-10-06 | Task 11: словарь `statement_checks.yaml` не ослаблен — жёсткие соотношения ББ 1100…1500 и ОФР 2100…2300 остаются `strict: true`; данные теста плана исправлены | спека D-7 и решение №7; ослабление словаря ради зелёного теста — не решение исполнителя | меняется одна строка yaml (R-7) | +| 19 | 2026-10-06 | Task 11: для подстрок «сумма подстрок = родитель» действует общий допуск ±1, не нулевой | спека: допуск ±1 без исключений; формы в тыс. руб. округляются построчно | расхождение в 1 единицу у подстрок не ловится (R-8) | +| 20 | 2026-10-06 | Task 11: `_RELATION/_TERM` допускают пятизначные коды справа (предписано планом), но явные правила из yaml валидатор загрузки ограничивает четырёхзначными | подстрочные правила генерируются кодом; спека: словарь — только четырёхзначные | пятизначный код в yaml отвергается при загрузке (R-9) |