Files
portal/docs
Дмитрий 82503073cc docs схема: сторож стережёт все бумаги про базу, а не одну
Прежняя версия читала один db/schema.sql. Дыра хуже, чем пропущенный
файл: два из семи мест лжи, которые эта же работа и чинила, жили в
db/CHANGELOG_schema.md. Сторож берёг ту бумагу, где ложь уже поправлена,
и не берёг ту, где она жила.

Список бумаг больше не память, а замер: берётся с диска — всё под db/,
что sql или md, включая вложенные папки с сырыми миграциями. Сегодня это
14 бумаг. Новая бумага попадёт под охрану сама, править сторожа не надо.
Пропускаются скрытые файлы и временные слепки tmp.sql, иначе дубль
канона считался бы второй бумагой и удваивал долг.

Журнал схемы помнит прошлое, и первая версия правила покраснела на моей
же честной записи v9.71. Глушить сторожа не стал: правило простое и
проверяемое — кто называет несуществующее имя, тот пишет НЕ СУЩЕСТВУЕТ
тем же куском текста. В SQL кусок это подряд идущие комментарии, в
разметке абзац, причём строка таблицы стоит сама за себя. Запись v9.71
переписана по этому правилу.

Имена кусков кода теперь ищутся не только в app/app, но и по карте
классов Composer. Без неё QueryException из фреймворка попадал в наш
долг, то есть сторож врал про чужой класс.

Перечень известного долга пересчитан по всем бумагам: девять имён вместо
трёх, у каждого сказано где живёт и почему не поправлено.

Показан красным пятью ножами: schema_modules, журнал схемы, сырая
миграция, schema.sql и отдельно снятие пометки с моей честной строки.
Отдельно назвал границу мерки: ложь ВНУТРИ честного куска проходит
зелёным, и это выбрано сознательно.

Полный прогон: 5011 проверок, красных 0. Число не изменилось —
проверок по-прежнему две, они просто читают больше.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-06 07:48:47 +03:00
..