снимка нет — числа не сняты прибором scripts/snimok.py
Exocortex
внешний мозг · рабочее место Александра
[ метод ]
Я ставлю систему на место ручной работы.
Метод — это порядок, а не вдохновение. Что делаю → зачем → чем доказано. Третье поле обязательное. Без него первые два — пересказ.
заголовок — docs/promty/2026-09-11-dizayn-nadbavka.md
Чертёж · «готово» на четыре шага
- 1Правка подготовлена
- 2Доступные проверки пройдены
- 3Типы и сборка на маке
- 4Прод проверен
Метод — как устроена система
Ворота сдачи
«Готово» у меня живёт только на четвёртом шаге из четырёх.
1
Правка подготовлена
2
Доступные проверки пройдены
3
Типы и сборка на маке
4
Прод проверен
Как ставится задача
Критерий провала пишется до работы. Не после.
Зачем: 26.08 трижды сдано правдоподобное — перебор вместо индекса, шум вместо ответа.
Проверка обязана уметь покраснеть.
Зачем: проверка ключей годами показывала зелёное из-за непарной кавычки.
Зелёный лог — не годный выход.
Зачем: линза прошла «успешно», а 1307 карточек вышли без заголовка.
PRAVILA.md · «Ворота сдачи», «Цены поломок»
Три центра · карточка разбора — не один из них
центр 1 · /mashina
Машина без человека
Доказательство, что система работает, пока меня нет у стола.
/mashina →Зачем. Сначала я поставил в середину карточку, и сайт построили вокруг неё. Это была моя ошибка. Карточки — законченный слой: конвейер делает их сам, ночью.
Чем доказано. Решение принято мной 11.09 на обходе макетов: страницы /pult /mashina /zhizn /baza /kartochka и новый экран /izolyator, главная — редирект на /pult. Сборка в app/ — тикет 36.
центры — docs/promty/2026-09-11-dizayn-nadbavka.md · решение — content/resheniya.md, запись «Fable · вид» · docs/zadachi/36-sborka-vida-krug-4.md
Реестры · чат не хранилище: итог дописывается строкой в файл сразу, а не в конце сессии
Решения
Что закрыто и чего больше не делать. Отрицательный результат нигде больше не оседает, и через месяц кто-то — чаще агент — предлагает уже отвергнутое.
content/resheniya.mdМоя просьба висит открытой, пока не закрыта фактом: коммит, ссылка, работающая вещь. 10.09 я перевёл 81 открытую просьбу в архив одним ходом — не удалил.
content/prosby.mdПровал строкой: что сломалось → как проявилось → правило → чем ловится. Наступили один раз — дальше ловит машина, а не память.
content/miny.mdРост
Про меня, а не про систему. Строка пишется только с доказательством: коммит, файл, прогон прибора, число. «Понял» и «осознал» сюда не пишутся.
content/rost.mdКоды возврата · каждый наш скрипт отвечает одним из трёх
0
СДЕЛАНО
Результат есть, постусловие выполнено.
1
НЕ ВЫПОЛНЕНО
Сломано: сеть, 429, потолок расхода, исключение, неверный вызов.
2
ПУСТО
Прибор отработал, результата нет по штатной причине: нечего искать, список пуст, «не знаю».
Зачем. Без контракта «ничего не нашёл» и «сломался» выглядят одинаково. argparse на неверном вызове выходит кодом 2 — и опечатка в ключе читалась как штатный пустой прогон. Поэтому неверный вызов у меня — 1, а не 2.
Граница. Код 2 — «пусто» только у одиночной строки python3 scripts/<имя>.py без конвейера. У grep, diff, ls код 2 — ошибка.
Код 0 — тоже не доказательство. git commit вернул 1, git push вернул 0, и оба «прошли». Поэтому в заявке пишется, что обязано лежать на диске после команды: «# ожидаю: <путь> существует». Исполнитель отвечает ДОКАЗАНО или НЕ ДОКАЗАНО.
scripts/kody.py · константы SDELANO = 0, NE_VYPOLNENO = 1, PUSTO = 2 · scripts/ispolnitel.sh · функция postuslovie
Очередь исполнителя · shina/ochered/ · git — только через очередь
- очередьshina/ochered/<имя>.cmd — одна команда на строку, # — комментарий
ждёт сейчас: —
- исполнительscripts/ispolnitel.sh на маке разбирает файл
- результатshina/logi/ochered/<имя>.out
файлов .out: —
- разобрано—
shina/ochered-sdelano/в отказе—shina/ochered-otkaz/
Зачем. Агент из облака мак руками не трогает. Git — только через очередь.
Правила, по порядку разбора
- Белый списокКоманда вне списка не выполняется и не пропускается молча: в .out строка ОТКАЗ с точной причиной. Запрещены
&&,;,$(...), обратные кавычки,>,<,sudo,&. - Стоп на ошибкеСтрока с кодом не 0 останавливает файл. Остальные строки не выполняются, файл уезжает в
shina/ochered-otkaz. До 11.09 файл шёл дальше после любого кода. - Потолки10 файлов за прогон, 300 секунд на команду. Шапкой файла потолок поднимается не выше 1800 секунд. Код 137 — обрыв по потолку.
- ЗамкиПрогон пишет свой pid в
shina/logi/ochered/ispolnitel.zamok. Второй экземпляр при живом первом пишет ЗАНЯТО и выходит. Мёртвый замок снимается сам, иначе очередь встала бы навсегда и промолчала. - РубильникПока лежит файл
shina/ochered/STOP, очередь не разбирается. - КвитанцияОтказ не глухой:
scripts/kvitanciya.pyпишет строку вshina/logi/kvitancii.jsonlи говорит в телеграм. До 07.09 так пропали 27 отказов — автор заявки не узнавал ничего. - Честная строкаФайл лёг — значит «принято, ждёт мак». Не «запущено».
- Стоп на входеБольше 3 невыполненных в очереди — новое дело не кладётся. Решение 11.09. В боте команда /use это считает. Кнопка на сайте пока держит только потолок 10 дел в час, общего стопа >3 на ней ещё нет.
Текст задачи в команду не попадает никогда — только в строки-комментарии. Исполнитель выполняет строки через eval, и одна кавычка в тексте поменяла бы, что выполнится.
scripts/ispolnitel.sh · шапка, PREDEL_FAJLOV, PREDEL_SEKUND · scripts/kvitanciya.py · app/lib/ochered.ts · CHASOVOJ_POTOLOK · scripts/bot.py · USE_STOP_BOLSHE · START.md · «Мины среды»
Изолятор · что система отбила
Зачем. Отказ, которого никто не видит, повторяется.
- Заявки в отказе — —.
shina/ochered-otkaz - Память отказов агента — —. Перед задачей её читает
python3 scripts/shina.py nachni. Запись становится памятью, только когда предупреждение сработало до повторения.
нет в снимке: квитанции (shina/logi/kvitancii.jsonl) · остановленные .out со строкой «# СТОП» · отказы ядра (memory/otkazy.jsonl)
Что из прежнего текста не вошло
Прежний метод назывался «Гермес»: девять способностей, колода на 9 недель, акт ремонта. Его числа сняты на дату той страницы и с реестрами не сверены. Здесь я их не повторяю.