chore(polish): svg drift cleanup, stale comments, placeholder mechanics #94
Loading…
Reference in a new issue
No description provided.
Delete branch "chore/polish/svg-drift-cleanup"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Что сделано
cover-*.svg(14 файлов) в клоне уже отсутствуют — в.opencode/draw-image/templates/остался только trackedcover.svg, untracked пуст. Коммитить их было нельзя (расширило бы набор шаблонов без ADR). ⚠️ На хосте после мержа удалить вручную: те же файлы есть в live-конфиге (bind-mount, untracked,git pullих НЕ удалит) — путь/root/.config/opencode/draw-image/templates/cover-*.svg(в контейнере).tests/test_pipeline_status_ci.py— «up to 5 minutes»/«default 300s» → фактические 420s/7 мин (3 места).get_next_action()/format_bootstrap()в pipeline-status.py переведены с гологоreplace("N", ...)на точечную замену полных токенов (#N→#<num>,pr_number=N→pr_number=<num>) через новый хелпер_substitute_pr_number(). Добавлен регрессионный тест: посторонняя заглавная «N» в шаблоне не затрагивается. Тест bootstrap переведён на хелпер. Поведение оракула и выводимые строки NEXT не изменились..opencode/skills/memory/SKILL.md—PR#N→PR#<PR_NUMBER>+ пояснение подстановки реального номера (унифицировано с memory-syncer.md)..opencode/skills/issue/SKILL.md(feature-spec gate) — добавлено: Q&A проходит в main chat; исполнителю/сабагенту передаются ГОТОВЫЕ ответы и сформированный body; исполнитель Q&A не ведёт.Почему
Аудит после PRs #80-#84 выявил пакет мелких дефектов (issue #87): дрифт шаблонов вне git, устаревшие комментарии о таймаутах, хрупкая замена плейсхолдера (заменит ЛЮБУЮ будущую «N» в шаблонах NEXT) и несогласованная нотация receipt в скиллах.
Watch out
/root/.config/opencode/draw-image/templates/cover-*.svg— git pull их не удалит (untracked).Pending
—
Closes #87
Code Review Summary
Полиш-пакет из issue #87: токен-замена плейсхолдера PR-номера вместо хрупкого
replace("N"), обновление устаревших комментариев таймаутов (300s→420s), унификация нотации receiptPR#<PR_NUMBER>в memory-скилле и уточнение про место Q&A в issue-скилле. Все изменения аккуратные, тесты зелёные (53 passed), CI green.Positives
_substitute_pr_numberпокрывает оба реальных плейсхолдера (#N,pr_number=N) во всех 6 шаблонах NEXT_ACTIONS + NEXT_BOOTSTRAP — проверил, других формNв шаблонах нет.test_substitute_pr_number_leaves_stray_capital_nточно воспроизводит кейс issue #87 (посторонняя заглавная N в шаблоне не затрагивается).CI_WAIT_TIMEOUT = 420(pipeline-status.py:68) — дрифт устранён.PR#<PR_NUMBER>в memory/SKILL.md уже совпадает с memory-syncer.md (writer) и regexcheck_memory(reader, pipeline-status.py:893) — парсит реальный номер, формат не менялся.rg "PR#N"в обоих файлах пуст.Suggestions (info, not blocking)
get_next_actionстал длиннее 88 символов — можно перенести на следующую строку, но ruff в CI не ругается, не блокирует._substitute_pr_numberнапрямую — приемлемо для юнит-теста хелпера, альтернатива — тестировать через публичныеget_next_action/format_bootstrap.Verdict: APPROVE