оси: перечень получил дом, две бездомные оси переехали в shared

Слияние ничего из идей не тронуло, но сделало дешёвым дом для правила, натянутого
между скиллами. Заведён shared/axes.md — дом перечня, а не значений: девять осей,
их адреса и чего каждая не решает. Механика остаётся у владельца.

Целиком сюда переехали две оси, у которых владельца не было. Коды выхода
объявлялись общим словарём в одиннадцати местах, и каждое объявление называло
свой набор соседей; машина их не сверяла, потому что copies.py смотрит markdown,
а перечни лежали в docstring'ах. Теперь дом один, скрипты держат указатель, а три
SKILL.md — помеченную копию, потому что на кодах они ветвятся. Режим прогона
(с меткой, без метки) был размазан по четырём файлам и осью назван не был, хотя
в уставе review-basics задаёт саму возможность запуска.

Разведены два значения слова «стадия»: ступени 1-5 внутри прогона кода, стадии
дизайна и кода снаружи.

Карта нашла ошибку в себе: клетка «категория документа × метка» пустой не была —
review-basics приёмник проектных тем при любой метке. Пустой оказалась соседняя:
на прогоне без метки план фиксирован, и своих тем проекта в нём нет вовсе.
Обе оставшиеся пустоты названы вслух, а не заполнены наугад.
This commit is contained in:
av
2026-08-13 12:16:38 +03:00
parent 7333953b1e
commit b411d4edb8
18 changed files with 308 additions and 83 deletions
+55
View File
@@ -3983,3 +3983,58 @@ change по нему не будет никогда, — и такое реше
221. **Формат служебного файла выбирается по тому, кто его читает.** Читает
человек в чужом репозитории через полгода — значит комментарии, значит
TOML, значит построчная правка вместо перезаписи.
## 65. Перечень осей получил дом; две оси жили без владельца (2026-08-13)
Слияние плагинов не тронуло ни одной идеи процесса — типы записей, метки, три
сценария, категории документов, severity находок остались как были. Но оно
сделало дешёвым то, что раньше было дорого: правило, натянутое между задачами и
ревью, теперь имеет достижимый дом, а не помеченную копию через границу.
**Ось — закрытый перечень значений, по которому что-то ветвится.** Признак
проверяемый, и он отсекает похожее: темы ревью и документы проекта — списки
**открытые**, их пополняет проект. Модель прохода — не ось, а цена прогона.
Осей по этому признаку девять, и дом теперь у каждой.
**АЕАКЛ. Две оси были бездомными, и обе машинные.** Коды выхода объявлялись
«общим словарём» в **одиннадцати** местах, и каждое объявление перечисляло свой
набор соседей: «тот же, что у `tasks.py`», «тот же, что у `tasks.py`, `docs.py` и
`copies.py`». Ни одно не было домом — все списки по памяти, и машина их не
сверяла, потому что `copies.py` смотрит markdown, а перечни лежали в docstring'ах
скриптов. Режим прогона (с меткой · без метки) завёлся накануне слияния и разошёлся
по четырём файлам, ни в одном не будучи назван осью, — при том что в уставе
`review-basics` он задаёт **саму возможность запуска** прохода.
**АЕАКМ. Слово «стадия» значило в одном файле две разные вещи.** «Стадия 1 —
Автотесты … Стадия 5 — Triage» — ступени внутри прогона кода, наружу не
выходящие; «метка правит обе стадии ревью» — дизайн и код, то есть членение,
которое видит вызывающий скилл. Разведено: ступени внутри, стадии снаружи.
**АЕАКН. Дом перечня — не дом значений.** `shared/axes.md` держит только сами
оси, их адреса и **чего каждая не решает**. Механика остаётся у владельца:
второй пересказ разошёлся бы с первым, а вот перечень нужен целиком и в одном
месте — вопрос «а не задаёт ли это метку» задают из скилла, который метку не
ведёт. Целиком сюда переехали ровно две оси, у которых владельца нет.
**Карта нашла ошибку в самой себе, и это её главный довод.** Первая редакция
объявила пустой клетку «категория документа × метка»: якобы проект вправе
завести тему, под которую ни одна метка не отряжает прохода. Проверка показала
обратное — `review-basics` приёмник проектных тем при **любой** метке. Пустой
оказалась соседняя клетка: на прогоне **без метки** план фиксирован сценарием, и
своих тем проекта в нём нет вовсе. Найти это можно было только сведя оси в одну
таблицу.
### Что из этого следует
222. **Словарь, объявленный «общим» в каждом потребителе, — это перечень по
памяти, а не дом.** Признак вырожденности проверяемый: каждое объявление
называет свой набор соседей, и ни одно не называет владельца.
223. **Копия в docstring'е скрипта машиной не сверяется, потому что `copies.py`
смотрит markdown.** Значит, прозе в коде дом нужнее, чем прозе в документах:
там расхождение ловит гейт, здесь — никто.
224. **Пустая клетка в таблице осей — находка, а не пробел оформления.** Она
называет случай, для которого процесс не сказал ничего, и до сведения осей
в таблицу такой случай неотличим от продуманного умолчания.
225. **Слово, занятое дважды в одном файле, дороже неточного слова.** Читатель,
пришедший за термином, получает два ответа и не знает, что их два.