- Зачем: - сохранить состояние сессии ревью спеки #17 на случай сбоя инфраструктуры (ADR-0003: handoff'ы живут в .scratch/handoffs/). - Что: - добавлена записка 20260730-1003: состояние спеки, открытые вопросы владельцу, рецепт запуска ревью Сола, грабли с 529. - Проверка: - чтение записки в свежей сессии по шагам раздела «Дальше». Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
5.8 KiB
5.8 KiB
Handoff: спека «Боевой реализм стенда (v2)» — ревью и приёмка (#17)
Дата: 2026-07-30 10:03. Сессия работала над issue #17 (Gitea, CLI tea):
сборка спеки из резолюций карты #10.
Состояние
- Спека:
docs/specs/2026-07-30-stand-v2-realism.md(Draft). Файл untracked — при сбое машины git его не защитит; владельцу предложен WIP-коммит. - Источники истины: резолюции в комментариях issues #14, #15, #16, #18;
карта #10 (там же решение: v2 — новый пустой репозиторий, рабочее имя
clickstream-data-platform, v1 замораживается). Фактура:docs/research/2026-07-26-yandex-clickstream-format.md.
Что сделано
- Спека собрана и прошла четыре волны правок (всё уже в файле):
владельца (v2 — новый репозиторий; доки переосмыслить, не копировать;
лабы с нуля, вне скоупа; генератор с нуля), вычитки (термины,
Kтолько как окно), сверки с резолюциями (12 правок: бюджет 16 ГБ, «ландшафт итогом», потерянные отклонения, помеченные отступления) и грилинга (17 решений: расщеплённый дедуп заказов, пересборка K+1 партиций, сессии по границе суток, обязательный заказ с каждой куки двухкукового, сверка по сравнимой базе, строгий приём JSON,dds.v_event,SAMPLE BY, «схема как контракт», объём ~80–110 файлов, этапы слиты и дополнены этапом Airflow). - Решение владельца по генератору: Python с производительной архитектурой; компилируемый язык — только если замеры не пройдут (в спеке, раздел 11).
Открытые вопросы владельцу (спека их пометила как отступления)
- Порядок страховочных срезов: #15 предписывал 1→2→3, спека применяет 3 и 2, срез 1 (статусы) держит в резерве.
Signна хитах: исследование советовало взять колонку, спека не берёт.VisitIDоставлен в событии как эталон самопроверки лабы сессий.
В полёте на момент записки
- Sonnet-агент довносил 17 правок грилинга: маркеры всех правок в файле
уже есть; свежей сессии — убедиться, что файл цел (маркеры:
skip_unknown_fields,_ingested_at,dds.v_event,SAMPLE BY, «сравнимой базе», «80–110», «Схема как контракт», «каждой куки»). - Слепое ревью спеки Кодексом подготовлено, НЕ запущено. Промпт собран в
$SCRATCH/spec-review/review-prompt.md(скретчпад сессии в /tmp — мог не пережить сбой). Пересборка: параметрический блок (роль: ревью постановки, не реализации; префикс находок SOL; вне скоупа — стиль и вкусовщина) +references/prompts/review-boilerplate.mdиз скиллаclaude-subagent-playbook. Запуск — по ветке «ревьюер»references/codex-exec.md:codex exec, модельgpt-5.6-sol, effort high, фоновым Bash, вердикт в-o-файл. Песочница проверена — жива. Предупреждение владельца: у Сола плохой вкус и тяга к деталям реализации раньше времени — рамка в промпте это прижимает, остаток фильтровать на триаже.
Дальше (по порядку)
- Проверить целостность 17 правок; финальное сквозное чтение спеки.
- Запустить ревью Сола, триаж находок (вкусовые — отклонять), правки.
- Вердикт владельца по трём открытым вопросам → статус Accepted.
- Коммит (
/conventional-commits), комментарий-резолюция в #17. - Разбиение через /to-tickets — уже отдельным заходом (спека и карта переедут в v2-репозиторий после его создания).
Грабли сессии
- Дважды 529 Overloaded на Opus-субагентах: правки терялись ДО записи. Рецепт: проверять маркеры в файле, затем возобновлять агента SendMessage'ем; после второго падения — свежий Sonnet-агент с самодостаточным списком правок (сработало).
Suggested skills
/claude-subagent-playbook— продолжить конвейер ревью (этапы 4–6)./conventional-commits— при коммите спеки./grilling— если владелец захочет добить три открытых вопроса.- Контракт трекера —
docs/agents/issue-tracker.md(Gitea,tea).