textmachine/eval/dovodka/SESSION-30-08.md

314 lines
35 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.

# СЕССИЯ 2930.08 — ЖУРНАЛ И ПРОМТ ВОССТАНОВЛЕНИЯ ПОСЛЕ КОМПАКТА
> ⚠⚠ **ЭТОТ ФАЙЛ — ПРОМТ ДЛЯ СЕССИИ ПОСЛЕ КОМПАКТА.** Заведён по слову владельца 30.08 («контекст
> приближается к компакту, напиши себе скратчпад»). Читать ЦЕЛИКОМ, не грепом. Норма D39.121:
> сохраняются список изменённых файлов · незакрытые находки и диспозиции · обязательства и
> открытые вопросы · команды.
> ⚠ Персист, не scratch (норма владельца 01.08): файл лежит в зоне и коммитится, потому что
> эфемерный scratchpad умирает вместе с сессией.
## 0-ЧЕТЫРЕ. ⭐⭐ СОСТОЯНИЕ НА 01.09 — САМОЕ СВЕЖЕЕ, ЧИТАТЬ ПЕРВЫМ
**Твой план — `eval/dovodka/PLAN-01-09.md`, РЕДАКЦИЯ 4.** Это пре-регистрация, а не намерения.
Редакции 13 отвергнуты консилиумом; их разбор сохранён в §8 плана как класс ошибок.
**ЧТО ДЕЛАЕМ:** ратифицированную пробу редактора по ЧЕТЫРЁМ осям (D39.184 п.5 — ⚠ нота в `main`,
в `polygon` реестр обрывается на D39.170). Крест 2×2 внутри юнита: промпт по SHA × эффорт
`off`/`low`. Исполняется ДВИЖКОМ, отдельным профилем книги.
**ВЛАДЕЛЕЦ РЕШИЛ 01.09: ВАРИАНТ A — 17 ГЛАВ, ПОТОЛОК $8.6** (дословно «17 глав разрешаю»).
⛔ Потолок в ПИКОВЫХ терминах и сессией НЕ ПОДНИМАЕТСЯ: срабатывание гарда = стоп и вопрос
владельцу, добор после чисел запрещён. К владельцу за этим решением ходить НЕ НАДО — оно принято.
**ДВЕ ДЫРЫ ПРИБОРА, без которых замер не измерит свой предмет:**
1. **Движок НЕ ВИДИТ размышление DeepSeek** (`provider_openai.go:23``ReasoningTokens stays 0`).
Лечение: `R̂ = completion_tokens 0.3644·len(response_text)`; коэффициент пере-снят независимо
(0.3644 ток/знак, n=16, sd 0.0069).
2. **У движка нет проводного артефакта** — только снапшот-провенанс (4 разных `snapshot_id`) и
сигнатура `Δprompt_tokens` (на en дважды ровно 79).
**КАК ИСПОЛНЯТЬ — §9 «ПРОЦЕДУРА» плана.** Там команды, коды выхода и три места, где домысливание
стоит денег. Читать его ДО всего остального в плане.
**Стенд обязан смотреть в `/home/ubuntu/projects/textmachine-main/`** для `models`,
`langpack_root` и `prompts_root`: в `polygon` НЕТ `backend/configs/langpacks/ru`, а загрузчик молча
возвращает умолчания — русский слой читателя потеряется тихо.
**Образец стенда**`~/books/gu-zhenren/coldrun-v16/` (конфиги), рабочий каталог — НОВЫЙ.
**Резалка исходника**`eval/dovodka/narezka.py` (её не существовало до 02.09; формат GB18030 +
CRLF + первая строка обязана быть заголовком).
**Мина нумерации:** движок не умеет смещение глав — срез 2642 пронумеруется как 117.
**ПОСТОЯННЫЙ КОНСИЛИУМ ПОДНЯТ И ЖИВ** — архитектор замера · скептик · казначей. ⭐ Не поднимать
новых: у них загружен контекст фазы, писать `SendMessage`. ⚠ После рестарта окружения `ListAgents` их НЕ вернёт — тогда поднимать заново с онбордингом (норма CLAUDE.md). Норма владельца 01.09: **один `fable`
на самое тяжёлое, остальные дешевле**.
**ОДИННАДЦАТЬ ОШИБОК ЗА ЧЕТВЕРО СУТОК, КЛАСС ОДИН** — показания инструмента, собственной памяти
или своей ветки приняты за факт о мире. Реестр — §Д52.5 и §8 плана. Из свежих и дорогих:
* «движок ручку не шлёт» — простояло сутки, разошлось по трём носителям и двум сессиям; на деле
`capability.go:236` шлёт `low|medium|high`, доказано НА ПРОВОДЕ;
* «контур ни разу не ездил целиком» — `coldrun-v16` прошёл НАКАНУНЕ (Д53);
* «канон мерен на 12 главах» — я сам намерил на 25 сутками раньше;
* якорь на строку со СТАРОЙ оценкой sd вместо строки с эрратой.
**ЛЕЧЕНИЕ, ВЫВЕДЕННОЕ ИЗ ОДИННАДЦАТИ:** отрицательный результат предъявляется с ПОЛОЖИТЕЛЬНЫМ
контролем; прежде «этого нет» — смотреть **каталог артефактов** (`ls ~/books/<книга>/`), а не только
доки своей ветки: три репозитория, два рабочих дерева, один общий каталог артефактов (Д53.4).
**ВИСИТ НА ВЛАДЕЛЬЦЕ:** (1) потолок пробы; (2) **слияние `polygon` → `main`** — весь отчёт фазы
(+2685 строк) и правки квирков только у нас, `main` до сих пор учит, что `low` на `pro` не работает;
оркестратор №22 (`textmachine-main-0e`) ждёт ответа и сам мержить не будет.
## 0-ТРИ. ⭐⭐ СОСТОЯНИЕ НА ВЕЧЕР 30.08 — САМОЕ СВЕЖЕЕ, ЧИТАТЬ ПЕРВЫМ
**Стадия 0 п.1 ИСПОЛНЕНА.** Разбор — **Д50 и Д51** в `docs/experiments/23-editor-tier.md`, прибор —
`eval/dovodka/bank.py` (в git намеренно), поправки к курсу — врезка в шапке `KONSILIUM-30-08.md`.
1.**Банк держит термины.** Взвешенная доля промахов CONFIRMED 0.231.29% при пороге 2%;
эффективная консистентность 99.3100%. Гипотеза в терминной половине НЕ ОПРОВЕРГНУТА.
2. ⭐⭐ **Главное найдено не замером, а на диске.** Лежат: более боевой прогон `rerun`; **БОЕВОЙ
профиль `rerun2-dspro` (редактор `deepseek-v4-pro`, 5 глав)**; июльский замер того же вопроса;
**отсуженная на КИТАЙСКОЙ паре тройка редакторов** (dspro 0.679 > glm 0.589 >> mistral 0.232).
3. ⭐⭐ **Ратифицированный вход фазы Д, висевший с 15.08, исполнен (Д51).** D39.117: жилец редактора —
вопрос ЦЕНЫ. D39.137: посылка «dspro ×2 дешевле glm» перевёрнута. Замер на одной нагрузке
собственными токенами: **в пике dspro дороже glm в 1.62.1×**, в офф-пик от ×1.07 дороже до ×0.81
дешевле. Дешёвый ход без смены модели — **гнать редакторскую волну в офф-пик** (÷2).
4.**Пинги, сданные секцией (чужие зоны, сам не правил):** `pipeline-c1.yaml:65` и
`pipeline-arm-glm.yaml:6` обосновывают выбор устаревшим «×2 дешевле glm»; `docs/PROGRESS.md:610`
несёт снятую сильную форму «полей пола в банке нет вовсе, механизма не существовало».
5.**ПЯТАЯ тихая поломка переезда:** июльские скрипты замера (`d10_consistency.py` и др.) были ВНЕ
git и погибли. Класс: **что вне git, то переезд убивает молча.**
6.**Четыре ложные тревоги собственного прибора, пойманные чтением, — Д50.4.** Из них главная:
**прибор напечатал «гипотеза не опровергнута» на НУЛЕВОМ знаменателе**, когда парсер не понял
формат. Заведён гейт `assert_measured` (код 2). Плюс: непереведённые чанки · односимвольные
ханьские ключи вне автомата · регистр и чередование согласных.
⚠ И поправка к себе: «долг полигона по мн.ч. не выполнен» — НЕВЕРНО, есть `guzhenren-seed-v2.yaml`;
читал первый найденный файл, не проверив, единственный ли он.
**Остаток Стадии 0:** п.2 (разбор диффов по категориям) · п.3 (позиционный аудит панелей + латинский
квадрат) · п.5 (базис Жаккара) · п.6 (уборка). П.4 — греп исполнен, находка в п.4 выше.
## 0-БИС. ⭐⭐ ГЛАВНОЕ ПОСЛЕ КОНСИЛИУМА 30.08 — ОСТАЛЬНОЕ НИЖЕ ИСТОРИЧНО
**Твой курс лежит в `eval/dovodka/KONSILIUM-30-08.md`.** Там итог шести раундов с архитектором,
четырёх со скептиком и одного с разведкой: что установлено, что СНЯТО, план по стадиям, и что
осталось на владельце. Читать его целиком; всё, что ниже в этом файле, — состояние ДО консилиума.
**Начинать со Стадии 0.** ⚠ Её заголовок в консилиум-документе уточнён ревью: **«$0» держится**;
**«ноль агент-сессий» — для пп. 1, 3, 4, 5**, а классификация правок (п.2) есть труд суждения и
может стоить сессию (свободно 4 из 220); **«не требует решений владельца» — только если постоянный
приёмочный гейт остаётся ПРЕДЛОЖЕНИЕМ**, а не пунктом плана.
1. **аудит `~/books/gu-zhenren/acceptance/guzhenren-acc-a.db`** (130 чекпоинтов, из них 119
непустых; 25 глав движковым путём; глоссарий 49 записей). ⛔ **Профиль НЕ боевой:** редактор
`glm-5` с погашенным размышлением, прогон 10.07.2026, июльские промты.
**Он НЕ заменяет Шаг 7:** закрывает **терминную** половину Вопроса 0 на июльском профиле;
**голосовая половина не закрывается ПО ПОСТРОЕНИЮ**`first_person` и `speech` в глоссарии
пусты (0 из 49), а Д32.16 предупреждает, что без засева характер-листов замер даёт
ложноотрицательный результат;
2. **разбор диффов редактора по категориям** — канон/вёрстка/проза; если механических 80%, редактор
заменяется детерминированным слоем, и спор о ярусе закрыт бесплатно;
3. **позиционный аудит всех ~150 купленных панелей** + латинский квадрат по построению;
4. эрраты и уборка (списки — в консилиум-документе §5).
**Чего НЕ делать:** панели за $1015 с ранговым эндпойнтом · ручку размышления · Шаг 7 в прежнем
виде · резать редакторскую стадию решением сессии.
⚠ **Четыре вещи, которые сегодня оказались НЕ ТАК. Атрибуция честная, потому что «ищи ниже» уже
дважды показывало не туда:** «повторов нет» — записано **ниже по этому файлу**; «вдвое дешевле» и
«полей пола нет» жили в `docs/experiments/23-editor-tier.md` и сняты баннерами там; «платим за
переписывание неизменного» — в ПЕРВОЙ редакции консилиум-документа, снято там же.**
* «однопроходка вдвое дешевле связки» — **неверно**, ≈×1.3 (медиана двугорбого; книга есть сумма);
* «редактор выдаёт главу целиком ⇒ платим за переписывание неизменного» — **неверно**: видимая
глава лишь **7%** completion-токенов стадии, 93% это размышление; дифф-интерфейс режет ~$8 на
книгу у `pro`, а не $100;
* «в корпусе нет чистых повторов одного промта» — **их шестнадцать**, шум размышления **×2.8**,
и наши ×38 суть 2.5 sd, а не «1 из 500»;
* «полей пола в банке нет» — **верно только про эвал-банк**; движок поля имеет, и они **засеяны
сидом** (`source='seed'` 49/49). ⚠ Сам движок их не пополнял (ревизий 0), голосовые колонки
`first_person`/`speech` пусты, `until_ch`=0 у всех.
**И методическая мина, стоившая мне сегодня публикации ложного вывода:**
`difflib.SequenceMatcher` по умолчанию (`autojunk=True`) на текстах длиннее 199 знаков объявляет
«мусором» каждый символ чаще 1% — для русского это все частые буквы и пробел. Дистанция раздувается
вчетверо. **Всегда `autojunk=False`.**
## 0. КТО ТЫ И ГДЕ
Полигон-сессия TextMachine **с полномочиями оркестратора в зоне полигона** (слово владельца 29.08:
можешь коммитить). Зона записи: `eval/` + `docs/experiments/` + секция «Полигон» в `docs/PROGRESS.md`.
Ветка **`polygon`**, дерево держи чистым.
**Подпись коммитов.** 30.08 владелец сменил имя в `gitconfig` на `heaven <vojochatdev@gmail.com>`
и попросил перегенерить локальные коммиты ветки. Сделано `filter-branch`-ем по диапазону
`28c2d0f..polygon`: 35 коммитов пере-подписаны, **хеш дерева HEAD не изменился** (`24bb72e4…` до и
после — доказательство, что содержимое цело), авторские даты сохранены, `origin/polygon` остался
предком (push пройдёт без force). Бэкап: `~/tm-backup-2026-08-30/polygon-before-rewrite.bundle`,
старая история в `refs/original/refs/heads/polygon`.
## 1. ⛔ ЧТО БЕЖИТ ПРЯМО СЕЙЧАС — ПОКУПКА, САНКЦИОНИРОВАННАЯ И НЕ СДЕЛАННАЯ
**Владелец 30.08 дословно: «Да, по поводу дипсика — бери».**
Пре-рег **Д45** отчёта `docs/experiments/23-editor-tier.md`**заморожен коммитом `87dd124`**.
Арм `RNL` заведён в `rol.py` (`ARMS` + `THINK_LEVEL["RNL"]="low"`), провод прочитан вслух, промт
сверен побайтно с `RN` (`True`). Фильтр `--only=` добавлен, селфтесты зелены. **Клетки НЕ куплены.**
**Следующая команда, ровно она:**
```
eval/.venv/bin/python eval/dovodka/rol.py --buy en RNL --only=001e6ac4
```
**ПРАВИЛО РЕШЕНИЯ ПО ЭТОЙ ОДНОЙ КЛЕТКЕ (записано ДО неё, Д45.1) — не пере-открывать:**
* `reasoning_tokens` **< 5 000** ручка работает, покупаешь остальные 15: `--buy en RNL`;
* **≥ 10 000** ручка НЕ работает, СТОП, 15 клеток не покупаются, пинг в квирк-бюллетень
«вендор-дока разошлась с поведением»;
* **5 00010 000** СТОП и вопрос владельцу.
⛔⛔ **ПОКУПКА ЗАБЛОКИРОВАНА 30.08 — И НЕ ДЕНЬГАМИ.** `--buy` упал на `KeyError: 'DEEPSEEK_API_KEY'`.
Причина найдена и НЕ обойдена: **в `eval/.env` у ВСЕХ СЕМИ ключей пропали подчёркивания**
`DEEPSEEKAPIKEY` вместо `DEEPSEEK_API_KEY`, и так же `GEMINI`/`OPENAI`/`XAI`/`ZAI`/`KIMI`/`MISTRAL`.
Код читает `os.environ["DEEPSEEK_API_KEY"]` (`roster.py:41,45`), `load_dotenv` отрабатывает, но
имени такого нет. Значения ключей я не читал и не читаю снято только СПИСОК ИМЁН и признак
непустоты. **Файл владельца НЕ ТРОГАЮ, обёртку-переименовалку НЕ пишу:** это ровно тот молчаливый
workaround, который канон запрещает ошибка тихо становится нормой»). Чинит владелец одной
правкой; после этого команда покупки та же, что выше.
**Это ТРЕТЬЯ тихая поломка от переезда машины**, после путей `~/books` (65 вхождений в 31 файле)
и обнулённых mtime (Д35.2). Класс один: **переезд ломает окружение молча, и каждая поломка
обнаруживается только исполнением.**
**КЛЮЧИ ПОЧИНЕНЫ ВЛАДЕЛЬЦЕМ 30.08, ПРОБА КУПЛЕНА.** Все семь имён в `eval/.env` восстановлены,
живой вызов прошёл. **Результат пробы — СРЕДНЯЯ ПОЛОСА: `reasoning_tokens` = 7 748** (правило
5 00010 000) **СТОП, пятнадцать клеток НЕ куплены, вопрос владельцу.** Разбор Д45.5.
Коротко: ручка на `pro` ДЕЙСТВУЕТ (размышление ×2.52 вниз, цена ×2.16, промт побайтно тот же),
но не на порядок, как ждал пре-рег. Эхо не пере-вооружилось (кириллица 1.000, латиницы 0).
Денег на пачку впритык: свободно $0.247, оценка $0.180.56 (проба была ХУДШЕЙ главой панели).
⛔⛔ **ПОСЛЕ КОМПАКТА 30.08 ДОБАВЛЕНЫ СЕКЦИИ Д46 и Д47, И ОНИ МЕНЯЮТ ДИСПОЗИЦИЮ.**
1. **Бесплатная улика важнее купленной.** При побайтно одинаковых `messages` вызов без параметра
дал `prompt_tokens` **3270**, с `low` **3191**: **79**, серверная реакция. Два контроля
детерминизма: замер 05.08 (дефолт и `low` дали ОДИНАКОВЫЕ 2124) и пред-полётные пробы рига
(`84 · 84 · 84 · 84`, четвёртая 30.08, через смену сервинга). **параметр ДОХОДИТ до модели**,
и это стоило $0. Квирк-бюллетень: новая запись **3г**, статус закрыт в части «доходит ли».
2. **Пре-рег Д45 конфаундирован и НЕ дрейфом, как я написал сначала, а СМЕНОЙ ВЕНДОРСКОГО
СЕРВИНГА** между 21.08 и 30.08 (её же зафиксировала вахта Д44). Дрейф второй и слабее: у него
есть знак, и он работает против нуля. Лечение у обоих одно: **оба арма в ОДНОМ блоке, вперемежку**.
3. **Неконфаундированный замер КУПИТЬ МОЖНО, и он вчетверо дешевле замороженного** дизайн Д:
интерливинг `RN2` против `RNL` на восьми дешёвых главах, **$0.0780.133** при свободных $0.2472,
n=8, минимальный двусторонний p = 0.0078. Пре-регистрация **Д47**, **не куплено**.
⛔⛔ **Д47 ЗАПУЩЕН ПО СЛОВУ ВЛАДЕЛЬЦА («Запускай») И ОСТАНОВЛЕН ГАРДОМ ПОСЛЕ ПЕРВОЙ ЖЕ ПАРЫ.**
Списано **$0.134804**, ФД-N теперь 3.187585 из 3.30 (свободно $0.1124), потолок НЕ поднимался.
**Результат:** побайтно один промт, одна глава, ручка не слалась ни разу 21.08 модель думала
**466** токенов, 30.08 **17 757**, то есть **×38**. ⚠⚠ **Причина НЕ УСТАНОВЛЕНА** (Д47.7): по
лучшей оценке разброса (sd логарифма 0.82 одно sd = ×2.3) это 3.1 sd редко, но возможно;
«модель сдвинулась» и «выпал хвост» обе живы, чистых повторов одного промта на роли `onepass` в
корпусе НЕТ. Устояло то, что важнее: **одиночные розыгрыши сравнивать нельзя ни при какой
гипотезе** это осуждает и дизайн А, и мой дизайн Д. Внутри блока ручка дала ×1.40 (меньше, чем ×2.52 через девять дней конфаунд эффект
РАЗДУВАЛ); годных пар 1 из 8, p=1.0 **величина НЕ УСТАНОВЛЕНА**, добор глав запрещён. Побочно:
`prompt_tokens` = 3256 и 21.08, и 30.08, а `low` двигает их ровно на 79 Клейм 1 подтверждён на
боевом промте. **Цена ответов посчитана (Д47.8):** эффект ×2.5 13 пар (≈$1.1), ×2.0 22 (≈$1.8),
×1.4 93 (≈$7.6); «сдвиг или кости» 4 повтора без ручки, ≈$0.31. **Приоритет не сюда:**
ручка даёт ×1.42.5, а смена модели на луну ×711, и она упирается в кап сессий (нужно 16,
свободно 14), а не в деньги. Разбор **Д47.6**,
носитель вывода `eval/dovodka/stupen.py` (написан ДО клеток).
**Операционное:** отказ гарда возвращает код 1, но в ФОНОВОМ shell `set -e` цикл не остановил
семь итераций отработали вхолостую ($0). Следующий цикл покупок несёт `|| break` в теле.
**Прежняя развилка (закрыта):** (а) пятнадцать клеток по фризу Д45
**НЕ покупать** ни при каком ответе; (б) Д47 по его слову. **Величина среза остаётся НЕ
УСТАНОВЛЕННОЙ, и так и записана.**
**Первая редакция Д46 утверждала «ни один неконфаундированный дизайн не влезает» ЭТО БЫЛО
НЕВЕРНО** (пропущена дешёвая восьмёрка). Сломал адверсариальный проход, разбор Д46.6. Там же
единственная находка прохода, которую я ОТКЛОНИЛ (корреляция по порядку вызовов: у всех 16 клеток
`RN` один mtime, порядка не существует).
**Зачем замер (одной фразой):** развести конфаунд Д44.6 весь разрыв «`luna` дешевле якоря в 8.1×»
снят с якоря, которому ручку размышления **не слали вовсе** (= вендор-дефолт `high`), против
испытуемого на явном `low`. По норме Д28 это разные армы.
**Деньги:** касса ФД-N, потрачено $3.014505 при потолке $3.30, свободно **$0.285**, смета ~$0.16.
Потолок сессией НЕ поднимать. Гард остановит сам порядок «одна клетка, потом пачка» для этого.
**Ранговый эндпойнт (слепое чтение) в этой сессии НЕ снимается и объявлен таким ДО покупки:**
он стоит 16 агент-сессий, свободно **14 из 200** (израсходовано 186). Кап слово владельца 20.08,
поднимать решением сессии запрещено. Панель эмитируется и передаётся, либо владелец поднимает кап.
## 2. ЧТО СДЕЛАНО ЭТОЙ СЕССИЕЙ (секции отчёта — единственный носитель)
| секция | что там |
|---|---|
| **Д35** | переезд машины: окружение поднято · **mtime обнулены ⇒ гейты на mtime не пере-снимаются** · Gemini выбрасывает ПЕРВОЕ системное (улика `sysmsg.py`) |
| **Д36** | **Шаг 4 плана 22.08 ЗАКРЫТ**: вес ролевого промта 1.3 порога, и он на ПРОЗЕ, не на браке |
| **Д36.8а** | блокер приёмки: **декой не оказался последним**, буква фриза требовала аннулировать панель диспозиция за приёмкой |
| **Д37** | третий круг панели-0: **шум прибора 0.34 порога**, долг Д34.5 закрыт |
| **Д38** | **ОТВЕТ на два главных вопроса владельца** + статус Вопроса 0 |
| **Д39** | сдача: сверка `--final` КРАСНАЯ, диагноз на каждую из трёх строк |
| **Д40** | приёмка исполнением своей же работы: 1 блокер + 6 важных, все с диспозициями |
| **Д41** | деньги: связка $127/книга, **90% — редактор**, замена редактора $20 |
| **Д42** | сплошное чтение корпуса: «$11 за книгу» = июльский прайс · смена черновика = 6% · конфликт приборов |
| **Д43** | **реестр потерянного**: ~25 намерений, растерянных между планами |
| **Д44** | у якоря НЕ БЫЛО выключателя размышления · **живая вахта 30.08: вендор изменил таблицу, `low→low` теперь и у `pro`** · `temperature` на dspro молча игнорируется |
| **Д45** | пре-рег покупки (см. §1) |
## 3. ⛔ ОБЯЗАТЕЛЬСТВА И ВОПРОСЫ, ВИСЯЩИЕ НА ВЛАДЕЛЬЦЕ
0. **Ручка размышления: запускать ли Д47** интерливинг на восьми дешёвых главах, $0.0780.133,
влезает в свободные $0.2472 без поднятия потолка. Пятнадцать клеток по фризу Д45 не покупать
ни при каком ответе. Если Д47 не запускается фаза закрывается на «параметр доходит (замерено),
величина среза не установлена (и записана как неустановленная)».
1. **Диспозиция по декою (Д36.8а)** считать Шаг 4 закрытым по цели или пере-собирать панель по букве.
2. **Кап агент-сессий**: 186/200, ранговый эндпойнт Д45 требует 16.
3. **Шаг 7 (~$2 + движковый прогон)** единственный прибор под Вопрос 0; в резерв $1.26 не влезает.
4. **Пере-выбор ЧЕРНОВОЙ роли** (`PLAN-17-08.md:105-119`) его собственная развилка, потерянная
всеми планами; приз 6%, разбор в Д42.5а.
5. Прочее Д43.1 (семь развилок).
## 4. ⛔ ЧЕГО НЕ ДЕЛАТЬ
* **Не править реестр `eval/dovodka/requirements.md`** ни строки. Три красных в `--final` (R37,
R71, R77) диагностированы в Д39.2 как ПРОТУХШИЕ УЛИКИ, а не невыполненная работа. Правка улик в
момент сдачи = «дописать таблицу под результат».
* **Не чинить гейты под зелень** (`verify22.py` не тронут ни одним коммитом сессии проверяемо).
* **Не пере-эмитировать существующие теги** (`p0`, `p4`, `arch2`, `vendor2`): раскладка есть функция
соли и НАБОРА армов, пере-эмиссия превращает уже полученные ответы в мусор.
* **Не поднимать потолки касс и кап сессий** решением сессии.
* **Не читать `.env`.**
* Не считать `cost_usd` в клетках списанными деньгами: `roster.cost()` вычисляет их из пина;
весь леджер фазы оценка (Д32.11, долг В21 перенесён с доказательством невозможности).
## 5. КОМАНДЫ ⛔ ОСТОРОЖНО: ЭТО КОМАНДЫ РИГА, А НЕ ТЕКУЩЕЙ РАБОТЫ
⛔⛔ **НЕ НАЧИНАЙ ОТСЮДА.** Ниже команды полигонного рига фазы Д (август), и одна из них помечена
«НЕ ЗАПУСКАТЬ НИКОГДА». Текущая работа ДВИЖКОВАЯ проба; её команды в
`eval/dovodka/PLAN-01-09.md` §9 «ПРОЦЕДУРА». Сюда смотреть только за историей.
```
eval/.venv/bin/python eval/dovodka/rol.py --selftest # ОБЯЗАТЕЛЕН перед покупкой
eval/.venv/bin/python eval/dovodka/rol.py --wire en --arm=RNL
eval/.venv/bin/python eval/dovodka/rol.py --buy en RNL --only=001e6ac4 # ← пробная клетка
eval/.venv/bin/python eval/dovodka/rol.py --buy en RNL # ⛔ НЕ ЗАПУСКАТЬ НИКОГДА: дизайн А, конфаундирован
# Д47, ТОЛЬКО по слову владельца — интерливинг по главе, пара за парой, восемь глав из Д47.2:
# for u in b065a92dc0 5a8f48d24a 100b088f71 49ca859c94 8e50448cea c3517980c7 3bd6481182 26c3bff1d4; do
# rol.py --buy en RN2 --only=$u && rol.py --buy en RNL --only=$u ; done
eval/.venv/bin/python eval/dovodka/schet.py --report RNL RN RL # П2, $0
eval/.venv/bin/python eval/dovodka/money_d.py --report | --selftest
eval/.venv/bin/python eval/dovodka/runs.py --report
eval/.venv/bin/python eval/dovodka/sysmsg.py # улика квирка Gemini
eval/.venv/bin/python eval/conformance.py eval/dovodka/requirements.md --final
python3 docs/scripts/counts.py --lint | grep ✗ # якоря доков
```
Окружение на чистой машине: `ln -s <репо>/books ~/books` + venv (`eval/README.md`, врезка про переезд).
## 6. ЧТО Я НАПУТАЛ ЗА СЕССИЮ — чтобы не повторить
1. Объявил дефект движка живым, **не посмотрев в код** он был закрыт лендингом `7d0c6f2` 28.08.
2. Напечатал контроль декоя пройденным **по критерию, которого не было во фризе** (блокер приёмки).
3. Свалил `luna` и `gemini` в одну строку «цензур-ось не мерена» у gemini она **мерена и против него**.
4. Подал «однопроходка дешевле» без границы «прибор читает ОДНУ главу», хотя блокер про банк нашёл
сам владелец 16.08.
5. Написал «плана про луну нет» план есть, `PLAN-17-08.md` §1б, и его потеряли все.
6. Чуть не позеленил гейт R77 тем, что **процитировал строку, которую гейт грепает**.
7. Три неточности чисел (знаки в матрице, описание метода класса Б, ложная точность) поймал
адверсариальный пере-счёт.
**Общее у всех семи: вывод публиковался раньше, чем проверялся первоисточник.** Ловили их
адверсариальные опровергатели и сплошное чтение корпуса, а не мои гейты.