канон: «почему» больше не отправляется в architecture.md
Три документа — CLAUDE.md, паспорт и openspec/config.yaml — велели писать причину отвергнутого решения в architecture.md. По канону дом «почему» это design.md изменения и промоут в docs/adr/, а architecture.md переезд как раз опустошает: обоснования шли ровно туда, откуда их вычищают. Раздел «Процесс» в CLAUDE.md пересказывал шаги пайплайна дословно — тот же второй дом, что уже вычищен из config.yaml. Осталось три вещи, которые действительно проектные: автономность, prior art, «поток не останавливается». config.yaml пересказывал паспорт и инвариант безопасности — стали ссылками. docs/review.md ссылался на healthlog-review-rubric и healthlog-task-pipeline, удалённые вместе с проектными копиями. Первое — указание на будущее, поэтому исправлено на проходы rubric и ops; второе оставлено историей с пометкой. README.md называл architecture.md домом «принятых решений» и не упоминал database.md и adr/ вовсе. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
+2
-1
@@ -120,7 +120,8 @@ HAE), а сырой архив получает право быть подчищ
|
||||
> **Развилка или вопрос — сперва prior art.** Прежде чем проектировать своё,
|
||||
> посмотреть, как это сделано в проектах ниже и в интернете. Готовое решение
|
||||
> либо берётся, либо отвергается **с названной причиной** — и тогда причина
|
||||
> идёт в [architecture.md](architecture.md), а не теряется.
|
||||
> идёт в `design.md` изменения, а оттуда промоутом в [adr/](adr/README.md),
|
||||
> а не теряется.
|
||||
|
||||
Формулировка «у всех так, а у нас иначе, потому что…» — это готовое
|
||||
обоснование решения. Формулировка «я придумал вот так» — ещё нет.
|
||||
|
||||
+4
-2
@@ -191,7 +191,7 @@
|
||||
«`import + replay` даёт то же состояние» ни один из них не проверял на
|
||||
конкретном правиле: он записан в архитектуре как свойство системы, а не как
|
||||
критерий для каждого узла, читающего состояние.
|
||||
- **Что меняем:** в рубрику `healthlog-review-rubric` и в проход `ops` — вопрос
|
||||
- **Что меняем:** в проходы `rubric` и `ops` — вопрос
|
||||
«читает ли узел состояние, которое сам же меняет, и остаётся ли он функцией
|
||||
от префикса журнала». Дешевле правила: любой запрос к `delivery` из свёртки
|
||||
обязан иметь границу по `received_at` разбираемой доставки. Тест сходимости
|
||||
@@ -227,7 +227,9 @@
|
||||
## 2026-08-02 — чекпоинт кода прошёл без трёх проходов, и ровно они нашли всё [проскочил]
|
||||
|
||||
- **Где:** конвейер, а не код: коммит `f8200f7` («тренировки и записи с
|
||||
собственным `id`»), шаг 7 скилла `healthlog-task-pipeline`, профиль `deep`.
|
||||
собственным `id`»), шаг 7 пайплайна задачи (тогда — проектная копия
|
||||
`healthlog-task-pipeline`, ныне `av-dev-pipeline:task-pipeline`), профиль
|
||||
`deep`.
|
||||
- **Симптом:** изменение было закоммичено и заархивировано как прошедшее ревью.
|
||||
Дозапуск трёх пропущенных проходов на **уже закоммиченном** коде дал девять
|
||||
причин, семь из которых пошли в работу с прогнанными оракулами: скелет из
|
||||
|
||||
Reference in New Issue
Block a user