- Зачем:
- уточнены границы ответственности координатора и правила работы с effort.
- Что:
- добавлено принятие результата как обязанность координатора.
- уточнена рекомендация по смене effort внутри треда.
- сохранены выводы из прогона t2-ml-forecast.
- Проверка:
- git diff --check.
- Зачем:
- уточнены роли моделей и подход к их выбору в конвейере субагентов.
- Что:
- добавлена матрица цены, интеллекта, вкуса и качества текста.
- Terra назначена отправной точкой для технических задач.
- дополнены наблюдения о ревью и длительных сессиях Claude.
- Проверка:
- git diff --cached --check.
- Зачем:
- при делегировании нужно учитывать стоимость модели и явно задавать effort.
- Что:
- добавлена памятка о соотношении стоимости Astra, Sol, Terra и Luna.
- добавлено требование явно указывать уровень effort в поручении.
- Проверка:
- git diff --check.
- Зачем:
- устранено противоречивое разделение ролей в инструкции сопровождения субагентов.
- Что:
- закреплено использование одной Luna для механических работ и внешней линии.
- убраны устаревшие указания об отдельном помощнике и свободной роли.
- Проверка:
- git diff --check.
- Зачем:
- снизить стоимость внешнего сопровождения ревью без потери его роли.
- Что:
- указано, что отдельная Luna с effort medium для внешней линии очень предпочтительна.
- Проверка:
- git diff --check.
- Зачем:
- снизить ресурсоемкость внешнего сопровождения субагентов без потери его роли.
- Что:
- для Luna внешней линии указан уровень effort medium вместо high.
- Проверка:
- git diff --check.
- Зачем:
- сократить лишние обращения к координатору при ожидании ревью и передаче материалов.
- Что:
- уточнены оценка объема Git и трекерных операций, самостоятельное ожидание и прямой файловый обмен.
- сохранены предпочтения владельца по отдельному помощнику для Claude и передаче материалов.
- добавлено предпочтение Opus для независимого ревью с заменой на Astra при недоступности.
- Проверка:
- проверены локальные ссылки и git diff --check.
- штатный валидатор до и после правок отклоняет существующий ключ disable-model-invocation; режим вызова сохранен.
- Зачем:
- Зафиксировать единые правила выбора глубины Luna для технических поручений и сопровождения внешнего ревью.
- Что:
- Указана отправная настройка `high` для технических поручений Luna.
- Уточнено, что Luna готовит краткие итоги внешнего Claude-ревью и может продолжать сохранённую сессию.
- Проверка:
- git diff --check.
- Проверены состав изменений и формат сообщения Conventional Commits.
- Зачем:
- сохранить в основной ветке согласованный способ экономить контекст и сопровождать ревью.
- Что:
- добавлены правила изоляции и выбора Luna для механики Claude;
- закреплены факты прогона, передача отчетов и границы наблюдения.
- Проверка:
- git diff --check;
- проверено слияние двух коммитов feature-ветки без конфликтов.
- Зачем:
- связать выбор помощника и глубины с фактической ценой ошибки и сохранять контекст координатора.
- Что:
- уточнен свободный выбор `high` для Luna и выделение отдельного помощника для долгой линии Claude;
- описаны события наблюдения, необязательный минутный опрос и прозрачная передача результата;
- добавлены подтвержденные факты прямой передачи девяти находок и предпочтения Luna `high`.
- Проверка:
- `git diff --check`;
- проверены только три разрешенных файла и ссылки на комментарии #236:2840 и #236:2845;
- ранее пройдены адресные проверки и нормализованный `quick_validate`.
- Зачем:
- экономить контекст координатора, сохраняя проверяемость внешних ревью и объемных операций.
- Что:
- описана механика Luna для шумного вывода, необязательного Opus-ревью и коротких отчетов;
- уточнены изоляция контекста помощника, жизненный цикл Claude и передача разрешения и отчетов;
- добавлены наблюдения прогона и границы для частоты опроса и приема результатов.
- Проверка:
- git diff --check;
- проверены ссылки и настройки навыка;
- quick_validate на нормализованной копии без неподдерживаемого валидатором ключа `disable-model-invocation`.
- Зачем:
- Обновлена координация задач с защитой замысла, контекста и бюджета работы.
- Что:
- Ветка refactor/codex-subagent-playbook включена через merge --no-ff.
- Добавлены актуальные роли, переиспользование агентов, осмысленный триаж и отчеты партнёру.
- Сохранен текущий handoff, архивирована старая эмпирика и обновлены исключения скиллов.
- Проверка:
- Основной рефакторинг прошел независимое ревью и ограниченный поведенческий прогон.
- Финальные документы проверены на ссылки, YAML и ошибки форматирования.
- Рабочие заметки удалены из дерева; история решений сохранена в коммитах.
- Зачем:
- Рабочая зона .scratch не переносится в master по правилам репозитория.
- Что:
- Удалены спецификация и отчет проверки из текущего дерева ветки.
- Ссылки на их версии в истории сохранены в актуальном handoff скилла.
- Проверка:
- Сверены состав .scratch и доступность обеих версий документов в Git.
- Зачем:
- Завершена текущая работа и подготовлено продолжение без старых записок.
- Что:
- Три прежних handoff заменены актуальной запиской со ссылками на решения и проверки.
- Включены пользовательские исключения для установленных сторонних скиллов.
- Проверка:
- Проверены 53 относительные ссылки, 11 якорей, YAML и обе политики включения.
- Подтверждены сохранность 11 игнорируемых каталогов и доступность документов в Git.
- Пройден git diff --check.
- Зачем:
- Исполнитель и ревьюер получают полезные приемы по месту применения.
- Что:
- Добавлена условная ссылка на /tdd по имени скилла в поручении исполнителю.
- Из code-review Мэтта Покока перенесены названия запахов как подсказки для суждения.
- Подключена линза сопровождаемости с учетом правил проекта и соразмерности изменений.
- Проверка:
- Сверены двенадцать названий запахов с исходным скиллом.
- Проверены 61 относительная ссылка, 11 якорей и git diff --check.
- Зачем:
- Необязательный переход к шаблонам позволял пропустить границы вложенного делегирования.
- Что:
- Добавлен явный переход к мандату Sol и Terra при поручении реализации.
- Убраны повтор про пользу агента и дублирующее пояснение ссылки на роли.
- Проверка:
- Сверены накопленные изменения скилла после основного рефакторинга.
- Проверены 60 относительных ссылок, 10 якорей, YAML и git diff --check.
- Зачем:
- Область применения приема ограничена переданной группой тикетов.
- Что:
- Добавлен выбор готовых тикетов по существующим зависимостям.
- Указана проверенная и доступная зависимому исполнителю работа предшественника.
- Проверка:
- Проверены формулировка границ и git diff --check.
- Зачем:
- Скилл поддерживает выбранную пользователем модель координатора, включая Sol.
- Что:
- Вступление и описание интерфейса адресованы ответственному координатору.
- Sol и Terra указаны как обычные исполнители с выбором глубины по сложности.
- Приведены в соответствие роли, шаблон поручения и текущие вопросы журнала.
- Проверка:
- Проверены YAML, явное включение скилла, 60 относительных ссылок и якоря.
- Пройден git diff --check; сверены полномочия координатора и исполнителя.
- Зачем:
- Устаревшие наблюдения отделены от вопросов текущей редакции без потери истории.
- Что:
- Июльский lessons.md дословно сохранен в архиве.
- Рабочий журнал обновлен под Astra и дополнен условиями переноса старых периодов.
- Добавлен условный переход к эмпирике из итогового разбора координатора.
- Проверка:
- Подтверждено побайтовое сохранение прежнего файла в архиве.
- Проверены 60 относительных ссылок, 9 якорей и git diff --check.
- Зачем:
- Партнер видит ход автономной работы и может вовремя вмешаться.
- Что:
- Добавлены периодические сводки о состоянии и отклонениях.
- Уточнена остановка зависимой работы для решений за пределами полномочий.
- Добавлен итоговый разбор пользы делегирования и затрат с разделением измерений и оценок.
- Проверка:
- Проверены согласованность с правилами триажа и git diff --check.
- Зачем:
- Ревьюер может передать ограниченную механику и объемный вывод помощнику.
- Что:
- В мандат добавлено делегирование Luna с сохранением границ и независимости.
- Оценка доказательств, находки и итоговый отчет оставлены ревьюеру.
- Проверка:
- Проверены итоговый мандат и git diff --check.
- Зачем:
- Исполнитель получает границы самостоятельного делегирования вместе с задачей.
- Что:
- Добавлен блок для Sol с вспомогательной работой Luna и ответственностью за запись.
- Дополнительный исполнитель уровня Sol и переразбиение задачи отнесены к координатору.
- Уточнен запас контекста на реализацию, проверки и исправления.
- Проверка:
- Проверены размещение блока и git diff --check.
- Зачем:
- Сохранено полезное понимание области при переходе к соседней задаче.
- Что:
- Добавлен выбор существующего агента с обновлением цели и границ.
- Указаны основания для свежего контекста, включая независимость проверки.
- Проверка:
- Проверены итоговый абзац и git diff --check.
- Зачем:
- Актуализирована координация под Astra с сохранением замысла и бюджета контекста.
- Что:
- Разделены роли Astra, Sol и Luna; выбор приемов оставлен координатору.
- Сохранены независимое ревью, триаж и проверка соразмерности исправлений.
- Обновлены нативные механики и необязательная линия Claude CLI.
- Проверка:
- Проверены Markdown-ссылки, YAML и git diff --check; описано ограничение валидатора.
- Пройден поведенческий сценарий с тремя тестами и независимое ревью Claude.
- Перепроверены находки и фактическое продолжение фоновой сессии Claude.
- Зачем:
- сохранить замысел самостоятельного скилла для Astra-координатора.
- Что:
- описаны роли, защита контекста и выбор приёмов по задаче.
- сохранены отдельный триаж и защита от несходящегося ревью.
- Проверка:
- выполнен горячий обзор против обсуждения и действующего договора триажа.
- проверены локальные ссылки и git diff --cached --check.
- Зачем:
- запуск Claude без полного доступа ломает дальнейший процесс ревью и делает работу субагентов бессмысленной.
- Что:
- в раздел «Запуск Claude-субагентов» добавлено предупреждение о режиме доступа.
- Проверка:
- git diff agents/.agents/skills/codex-subagent-playbook/SKILL.md.
- Зачем:
- при выборе модели для письменных задач нужна оценка качества текста на русском языке.
- Что:
- в легенду model-matrix.md добавлено определение literacy.
- в таблицу добавлена колонка literacy с оценками моделей.
- Проверка:
- git diff agents/.agents/skills/claude-subagent-playbook/references/model-matrix.md.
- Зачем:
- на прогоне #158 (clickstream v2) три линии ревью дали ноль находок
на реальной ошибке формы: агрегация ключевого зерна в Python,
57 567 ключей через границу ClickHouse -> Airflow. Линза из одних
запахов читает исполнение и не видит решений, а ревью от диффа
принимает раскладку исполнителя как оглавление.
- Что:
- в line-taste.md добавлен блок Shape: набросок ожидаемой формы из
одной постановки до открытия диффа, список недиктованных решений,
вердикт каждому; набросок и список предъявляются как checks run
даже при нуле находок.
- правило оценки распространено на shape-находки; указатели в
prompt-templates.md называют линзу формой и вкусом.
- в lessons.md записана эмпирика прогона #158.
- Проверка:
- вычитка diff линзой writing-for-agents; боевая — следующий прогон
конвейера: shape-артефакты видны в отчете линии уместности.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- эгресс-политика Codex требует явного разрешения владельца на отправку
diff внешнему сервису; на прогоне вопрос пришёл в середине ревью, а
запасные Codex-ревьюеры молча потеряли разнообразие семейств.
- Что:
- в запуске Claude-субагентов: разрешение на передачу кода запрашивать
до начала реализации, одним вопросом на весь прогон.
- в режимах ревью разведены причины недоступности внешней линии:
техническая — работать доступными, согласийная — сначала спросить
владельца, замена односемейными теряет основание линии дефектов.
- Проверка:
- вычитка diff; боевая — следующий прогон конвейера: вопрос о передаче
кода до реализации, ревью-линии без ручного вмешательства.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- на прогоне #156 правило «при расхождении побеждает базовый» снесло
назначение Fable на вкусовую линию — Codex переключился на craftsman/Opus
по карте ролей базового плейбука, потребовалось ручное вмешательство.
- Что:
- приоритет базового ограничен общими механиками конвейера; запуск Claude
и назначение моделей линиям действуют как записаны в этом файле.
- у выбора Fable на вкусовую линию названо «почему»: базовый держит Fable
для оркестрации только на стороне Claude, со стороны Codex она свободна.
- Проверка:
- вычитка diff; боевая — следующий прогон конвейера без ручной правки
выбора моделей.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Зачем:
- README писался моделью, и в нем остались знаки, которых нет на
клавиатуре: их некому было подставить, потому что markdown правят
в редакторе кода, а не в Word с автозаменой.
- декоративные эмодзи в заголовках в русском тексте вне переписки
не ставят вовсе, это самый однозначный след генерации.
- Что:
- сняты эмодзи с шести заголовков и из комментария в блоке кода.
- 21 длинное тире заменено на дефис, 3 пары елочек на прямые кавычки,
7 стрелок на ->, буква "е" приведена к авторскому стилю в 14 словах.
- в разделе "Дизайн-решения" отглагольные существительные развернуты
в глаголы: "форсирование и изменение может сломать" стало
"если форсировать и менять, можно сломать".
- Проверка:
- якорных ссылок на заголовки ни внутри README, ни снаружи нет,
переименование ничего не ломает.
- блоки кода не тронуты: ни одно тире не попало внутрь фенсов,
10 фенсов и 62 строки таблиц на месте.
Co-Authored-By: Claude <noreply@anthropic.com>
- Зачем:
- калибровка была неверной в обе стороны: скилл снимал находку в
статье, считая, что текст прошел через редактор с автозаменой, и
одновременно ловил букву «ё», которая маркером не является вовсе.
- в режиме правки не было запрета доводить текст до идеала, поэтому
вычитка делала его ровнее и машиннее исходника.
- Что:
- линза Клавиатура переписана вокруг простой причины: этих знаков нет
на клавиатуре. Главным тестом стало не наличие тире, а равномерность:
умный редактор подставляет неровно, модель безупречно везде.
- markdown отделен от статьи в Word: подставлять знаки там нечему,
поэтому тире и елочки в .md машинные сразу.
- «ё» выведена из маркеров как личная стилистика; вместо нее записано
предпочтение владельца скилла ее не писать, с исключениями на
смыслоразличение и имена.
- эмодзи вне переписки подняты до безусловного маркера и вместе с
тире в markdown вынесены в блок «везде, среда роли не играет».
- в Решетку добавлен третий слой, ровность правильности; в границы
правки добавлены «не вычищать до блеска» и запрет добавлять ошибки.
- Проверка:
- прогон скилла на секции «Дизайн-решения» из README.md, который и
вскрыл обе ошибки калибровки.
Co-Authored-By: Claude <noreply@anthropic.com>
- Зачем:
- каталог из 29 паттернов писался, когда модели были слабее; сейчас
потребители скилла — Opus 5 и GPT 5.6 Sol, которые знают эти правила
по умолчанию, и 578 строк платили контекстом за no-op.
- каталог закрыт: он стареет вместе со slop'ом и провоцирует checklist
theater вместо суждения.
- Что:
- references/patterns.md удалён, 29 ID сведены к пяти линзам:
Клавиатура, Голос, Решётка, Вода, Ассистент; скилл ужался с 661
строки до 145.
- severity 29x3 сжата в профили трёх сред: красные ячейки
группируются по среде, а не по паттерну, плюс «не X, а Y» везде.
- основным режимом стала правка, отчёт вынесен во вторую ветку;
Голос не правится молча и предъявляется первым, потому что требует
мнения, случая и цифр автора, которых у скилла нет.
- каталожную проверку заменил гейт человеческого дубля, плотность
переведена из гейта в интерпретацию вердикта.
- Проверка:
- слепой прогон новой версии на трёх входах: AI-проза для статьи,
AI-сообщение в мессенджер, живое человеческое сообщение.
- на человеческом тексте ноль ложных находок; десять дефектов
инструкции, найденных прогоном, исправлены до коммита.
Co-Authored-By: Claude <noreply@anthropic.com>
- Зачем:
- линтер умел только вычитать маркеры, а текст без авторского голоса
палится не хуже текста с em dash'ами: после чистки оставался
безлико правильный результат.
- у прогона не было критерия завершения, поэтому проверка сводилась
к тому, что бросилось в глаза.
- Что:
- T03 развёрнут в три срабатывания (перечисление без вывода, безличные
конструкции, абстрактная оценка) с требованием назвать, что конкретно
добавить, вместо совета «добавить позицию автора».
- добавлен шаг самоаудита поверх закрытого каталога: находки X01, X02
с тестом «нельзя записать ни под один ID» и разрешением нулевого
результата.
- Шаг 2 получил критерий «каждый паттерн применён к тексту», quick scan
сведён к паттернам с механической детекцией.
- S04 стал единственным владельцем однородности ритма; удалены дубль
T03b, неоперационализируемый T03e, шаг «Ответить на вопросы» и девять
перефразировок одной ветки в description.
- Проверка:
- тестов на скиллы в репозитории нет, прогон ручной: вызвать скилл
на абзаце AI-прозы и на коротком сообщении в мессенджер.
- git show --stat HEAD: SKILL.md и references/patterns.md.
Co-Authored-By: Claude <noreply@anthropic.com>
- Зачем:
- приложение должно явно работать через прокси и сохранять настройку после обновлений.
- Что:
- добавлены отдельный ярлык ChatGPT Proxy и запускатель на основе proxy-client.
- исключено смешение прямого и проксированного режимов существующего процесса.
- установка, документация и автоматические проверки дополнены новым Stow-пакетом.
- Проверка:
- bash tests/test_chatgpt_proxy_launcher.sh.
- bash tests/test_proxy_launchers.sh.
- bash tests/test_install.sh.
- Зачем:
- предыдущая запись предлагала написать тест сверки копий NO_PROXY, хотя
tests/test_proxy_env_sync.py делает ровно это с момента появления копий.
- Что:
- запись переписана: дублирование под охраной, но на Windows проверка
падает с ModuleNotFoundError: fcntl, потому что грузит proxy-client
через runpy.
- задача заменена на «дать тесту читать константу без исполнения модуля».
- сохранён нерешённый вопрос про замещение no_proxy_extra: эта ветка не
покрыта тестом вообще.
- Проверка:
- python tests/test_proxy_env_sync.py -v — 1 ok, 1 ERROR (fcntl), то есть
поведение, описанное в записи.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Зачем:
- машинный конфиг, собранный копированием примера, молча выкидывает
из обхода .concept-software.ru и Gitea, а обрыв всплывает как TLS-ошибка.
- Что:
- в README уточнено, что no_proxy_extra замещает DEFAULT_NO_PROXY_EXTRA
целиком, а не дополняет его.
- предупреждение продублировано в обоих примерах конфига, рядом с полем.
- в TODO.md записано дублирование списка в пяти windows-файлах и
отсутствие теста синхронности с источником.
- Проверка:
- bash tests/test_proxy_launchers.sh — 8 проверок пройдено.
- configparser читает оба примера, значение no_proxy_extra не изменилось.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Зачем:
- новые скиллы не должны отображаться как неотслеживаемые файлы.
- Что:
- в agents/.agents/skills/.gitignore добавлены to-questionnaire/, wait-what/, wizard/, writing-for-agents/.
- Проверка:
- git status --short больше не показывает эти директории как untracked.
- Зачем:
- расширить методологию ревью артефактов после мозгового штурма.
- Что:
- добавлен абзац о cold review и порядке работы с его находками в SKILL.md.
- Проверка:
- git show HEAD:agents/.agents/skills/brainstorm-with-docs/SKILL.md | grep -A 5 'cold review'
- Зачем:
- после правки симптом `No prompt provided via stdin` висел только на
сломанной среде; читатель в нормальной среде, закрывший вход по правилу
фонового запуска, прогонит самотест, увидит «непусто» и останется без
диагноза — этот отказ уже был, запись 2026-08-02 (#39).
- Что:
- в хвост правила `< /dev/null` вернулась сцепка с сообщением:
«закроешь — получишь то же сообщение».
- Проверка:
- `grep -n 'No prompt provided' references/codex-exec.md` — симптом назван
один раз, обе причины стоят рядом в одном пункте.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
- Зачем:
- под предполётом стоял пункт «stdout/stderr — редиректами» без оговорки,
и при беглом чтении побеждала ближайшая инструкция; вход ломается той же
поломкой дескриптора, а правило звало подавать промпт редиректом из файла.
- Что:
- пункт про промпт ведёт каналом (`cat prompt.md | codex exec … -`) —
форма работает в любой среде; редирект из файла назван как симптом.
- хвост про stdout/stderr отсылает к предполёту вместо голого редиректа.
- самотест читается как «пусто/непусто», а не «18 байт»: номер версии
подрастёт на знак, проверка от этого не зависит.
- Проверка:
- `grep -n 'stdin\|редиректами' references/codex-exec.md` — противоречащих
указаний в «Сквозных правилах» не осталось.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
- Зачем:
- среда сама отвечает за пять секунд, теряет она унаследованный файловый
дескриптор или нет, поэтому документ несёт проверку, а не ответ; форма
сбора вывода за вечер менялась дважды и не должна жить в двух местах.
- Что:
- в «Сквозные правила» codex-exec.md добавлен предполёт: самотест
`codex --version > f; wc -c f`, ветка «ноль байт» с раздельными каналами
и `set -o pipefail`, оговорка про `wait`.
- предполётная проверка песочницы переехала туда же из пункта про AppArmor,
три рецепта не тронуты — их POSIX-форма и код возврата остались честными.
- урок 2026-08-06 отдал самотест и форму предполёту, оставил находки:
дефект `2>&1 | cat`, съеденный каналом код возврата, ненужный `script`.
- Проверка:
- `false | cat > f; echo $?` — 0, с `set -o pipefail` — 1.
- `bash -c 'echo "{}"; echo err >&2' 2> >(cat > e) | cat > o` — потоки
в разных файлах, `jq` по логу проходит.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
- Зачем:
- «изнутри харнесса» читалось как «в любом агенте»: в Claude Code CLI
2.1.223 на той же машине и версии всё штатно, и читатель пошёл бы
чинить работающее. И советованный `2>&1 | cat` кладёт stderr в JSONL:
`jq` спотыкается, а первой строкой вместо thread.started может встать
предупреждение конфига.
- Что:
- отказ назван свойством T3 Code, а не Bash Клода; читателю дан
самотест `codex --version > f; wc -c f` вместо веры в ярлык.
- форма сбора вывода заменена на раздельную: stderr через подстановку
процесса, stdout каналом; добавлена оговорка про `wait`.
- Проверка:
- раздельная форма прогнана целиком: лог 6 строк, `jq -r .type`
проходит по всем, thread_id из первой строки, command_execution — 2,
stderr отдельным файлом, отчёт -o на месте.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Зачем:
- первая редакция объявляла отказ свойством codex-cli 0.146.0. Чистые
0.146.0 и 0.146.1 на этой же машине пишут в перенаправленный файл
штатно, значит запись вела следующего читателя чинить рецепты от
несуществующей поломки.
- Что:
- запись 2026-08-06 переписана: ось не «терминал против всего», а файл
против канала, и живёт она в харнессе, а не в версии; одна причина на
обе прежние находки, обход — канал вместо псевдотерминала.
- методическая часть усилена: среда — тоже параметр серии, и первый
подозреваемый при расхождении с документацией инструмента.
- ловушка недоверенного каталога сохранена.
- Проверка:
- изнутри харнесса на 0.146.1: `codex --version > f` — 0 байт,
`| cat > g` — 18; `exec --json … > log` — пусто, `2>&1 | cat > log` —
7 строк с thread_id и двумя command_execution; без песочницы то же.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Зачем:
- на 0.146.0 вызов Кодекса из Bash оркестратора теряет весь stdout, и
три механизма рецептов слепнут молча: thread_id, сторож застоя и
проверка отписки. Новый агент со скиллом на входе наткнётся на это
в первом же прогоне.
- Что:
- запись 2026-08-06 в lessons.md: отказ и его цена для конвейера,
промпт только каналом (файл на входе даёт то же сообщение, что и
закрытый stdin), два проверенных обхода — псевдотерминал и журнал
прогона Кодекса с thread_id в имени.
- там же назван кандидат в механизм: рецепты codex-exec.md держат
правило stdin и приём проверки отписки в нерабочей редакции.
- Проверка:
- четыре контрольных прогона codex-cli 0.146.0, различающихся одним
параметром; обходы проверены до записи.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
- Зачем:
- три случая одной формы за месяц: правило стоит на месте, а
рассуждение берёт себе исключение — отказ стоит описать до того, как
он повторится в четвёртый раз.
- Что:
- запись 2026-08-04 в lessons.md: песочница ревьюера и лечение
значением, восстановление скретчпада из транскрипта сессии с ценой
и границами приёма, диагноз владельца про краткость исполнителя.
- третий открытый вопрос handoff'а закрыт решением владельца и заменён
ссылкой на журнал.
- Проверка:
- git log --oneline c18472e.. ; новых строк длиннее 80 символов нет.
- Зачем:
- индексы находок жили в скретчпаде и умирают вместе с сессией; из
прозы handoff'а нельзя было понять, какая находка закрыта, а какая
ещё ждёт решения.
- Что:
- FIT-5 убрана из списка оставленных: закрыта коммитом 10f55f3.
- открытым проставлены номера и довод линии — TECH-3, FIT-4, FIT-11,
FIT-12; вопросы владельцу помечены как FIT-3 и FIT-10.
- счётчик коммитов заменён командой: HEAD с тех пор уехал.
- Проверка:
- git log --oneline c18472e.. ; строк длиннее 80 символов в handoff нет.