Files
dev-skills/decisions/65-axes-registry-home.md
T
av bf6a173115 журнал решений: разложен по теме на файл, метки решений стали номерами
- DECISIONS.md (4040 строк, 65 тем) → decisions/, файл на тему плюс указатель;
- буквенные метки решений заменены сквозными Р1–Р234, следствия получили
  префикс С при прежних номерах: схема букв выродилась до пятибуквенных и
  сломалась — `АЕАКЛ` была занята и темой 53, и темой 65;
- 42 перекрёстные ссылки переписаны под новые номера и стали живыми; где номер
  означал тему, а слово стояло «решение», формулировка исправлена.
2026-08-13 12:40:56 +03:00

57 lines
5.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 65. Перечень осей получил дом; две оси жили без владельца (2026-08-13)
Слияние плагинов не тронуло ни одной идеи процесса — типы записей, метки, три
сценария, категории документов, severity находок остались как были. Но оно
сделало дешёвым то, что раньше было дорого: правило, натянутое между задачами и
ревью, теперь имеет достижимый дом, а не помеченную копию через границу.
**Ось — закрытый перечень значений, по которому что-то ветвится.** Признак
проверяемый, и он отсекает похожее: темы ревью и документы проекта — списки
**открытые**, их пополняет проект. Модель прохода — не ось, а цена прогона.
Осей по этому признаку девять, и дом теперь у каждой.
**Р232. Две оси были бездомными, и обе машинные.** Коды выхода объявлялись
«общим словарём» в **одиннадцати** местах, и каждое объявление перечисляло свой
набор соседей: «тот же, что у `tasks.py`», «тот же, что у `tasks.py`, `docs.py`
и `copies.py`». Ни одно не было домом — все списки по памяти, и машина их не
сверяла, потому что `copies.py` смотрит markdown, а перечни лежали в
docstring'ах скриптов. Режим прогона (с меткой · без метки) завёлся накануне
слияния и разошёлся по четырём файлам, ни в одном не будучи назван осью, — при
том что в уставе `review-basics` он задаёт **саму возможность запуска** прохода.
**Р233. Слово «стадия» значило в одном файле две разные вещи.** «Стадия 1 —
Автотесты … Стадия 5 — Triage» — ступени внутри прогона кода, наружу не
выходящие; «метка правит обе стадии ревью» — дизайн и код, то есть членение,
которое видит вызывающий скилл. Разведено: ступени внутри, стадии снаружи.
**Р234. Дом перечня — не дом значений.** `shared/axes.md` держит только сами
оси, их адреса и **чего каждая не решает**. Механика остаётся у владельца:
второй пересказ разошёлся бы с первым, а вот перечень нужен целиком и в одном
месте — вопрос «а не задаёт ли это метку» задают из скилла, который метку не
ведёт. Целиком сюда переехали ровно две оси, у которых владельца нет.
**Карта нашла ошибку в самой себе, и это её главный довод.** Первая редакция
объявила пустой клетку «категория документа × метка»: якобы проект вправе
завести тему, под которую ни одна метка не отряжает прохода. Проверка показала
обратное — `review-basics` приёмник проектных тем при **любой** метке. Пустой
оказалась соседняя клетка: на прогоне **без метки** план фиксирован сценарием, и
своих тем проекта в нём нет вовсе. Найти это можно было только сведя оси в одну
таблицу.
## Что из этого следует
**С222. Словарь, объявленный «общим» в каждом потребителе, — это перечень по
памяти, а не дом.** Признак вырожденности проверяемый: каждое объявление
называет свой набор соседей, и ни одно не называет владельца.
**С223. Копия в docstring'е скрипта машиной не сверяется, потому что `copies.py`
смотрит markdown.** Значит, прозе в коде дом нужнее, чем прозе в документах: там
расхождение ловит гейт, здесь — никто.
**С224. Пустая клетка в таблице осей — находка, а не пробел оформления.** Она
называет случай, для которого процесс не сказал ничего, и до сведения осей в
таблицу такой случай неотличим от продуманного умолчания.
**С225. Слово, занятое дважды в одном файле, дороже неточного слова.** Читатель,
пришедший за термином, получает два ответа и не знает, что их два.