# ПЛАН 22.08 — ДОВЕСТИ ЭКСПЕРИМЕНТ ДО АРХИТЕКТУРНОГО ВЕРДИКТА > ⚠⚠ **ЭТОТ ФАЙЛ — ПРОМТ ДЛЯ СЕССИИ ПОСЛЕ КОМПАКТА.** Он написан так, чтобы читающий его с нуля мог > продолжить работу, не восстанавливая контекст из разговора. Читать ЦЕЛИКОМ, не грепом. > Заведён по слову владельца 22.08: «составим план… это как промт. Я этот промт скормлю тебе же > после компакта (ты потеряешь кучу контекста, и придётся восстанавливать его)». > > **Прежде чем что-либо делать — прочитай §0 и §1. Там записано, кто ты и во что не наступать.** --- ## 0. КТО ЧИТАЕТ ЭТОТ ФАЙЛ Ты — **полигон-сессия TextMachine**. Зона записи: `eval/` и `docs/experiments/`. Чужие зоны (`backend/`, `frontend/`, `platform/`) — только чтение. Коммитишь ТОЛЬКО пре-рег-фризы, формой `git commit -m "…" -- <явные пути>`; `git add -A` и `git commit -a` запрещены. Разговор с владельцем — по-русски, код и комментарии — по-английски. Владелец с бэкграундом C++/userver; Go-решения объясняются по существу, не ссылкой на «так принято». **Онбординг, если контекст пуст:** `CLAUDE.md` → этот файл → `eval/dovodka/KONSILIUM-22-08.md` (итог консилиума двух экспертов, на нём стоит весь этот план) → `eval/dovodka/REVIEW-21-08.md` (51 дефект глобального ревью) → отчёт `docs/experiments/23-editor-tier.md`, секции Д24–Д30 (⚠ файл огромный, читать выборочно по секциям). --- ## 1. ЗАЧЕМ ВСЁ ЭТО: три вопроса владельца **Вопрос 0 (метавопрос, главный):** живой художественный русский перевод **с консистентными терминами по ВСЕЙ книге** (1000+ глав). Победить translationese; удержать имена, термины и голоса на протяжении книги. **Вопрос 1:** оптимальная архитектура пайплайна. **Вопрос 2:** связка моделей для неё — **без привязки к одному вендору**. Дословно владелец: «архитектура от вендора не зависит никак… даже на худших вендорах наша архитектура должна отрабатывать лучше, чем худшие вендоры на другой архитектуре». ⛔ **ГЛАВНОЕ, ЧТО НАДО ПОНЯТЬ ПРО СОСТОЯНИЕ ЗНАНИЯ:** на вопрос 0 **не отвечает ни один наш прибор**. Все панели мерят художественность ОДНОЙ главы; консистентность тысячи — ортогональная ось, и она не мерилась ни разу. Это вывод консилиума, с ним согласны оба эксперта. --- ## 2. ЕДИНИЦА ИЗМЕРЕНИЯ — «ГЛАВА ГУ». Решение владельца 22.08 «Глава» у нас не единица: китайская и английская отличаются вдвое. Эталон — глава «Мастера Гу»: ``` 1 глава Гу = 3 326 ЗНАКОВ исходника с пунктуацией (из них иероглифов ~2 690) медиана; источник — ~/books/gu-zhenren/guzhenren-utf8.txt, сплит по заголовкам глав ⚠ пере-счёт скептика другим сплитом дал 2 301 главу и квартили 3 293–3 490; медиана сходится в пределах 1.5%, но СПЛИТ НАЗВАТЬ при следующем использовании наша китайская единица = 2 156 знаков (иероглифов ~1 797) = 0.65 главы Гу пере-счёт яблоки-к-яблокам: 0.67–0.68 — расхождение ≤5%, не влияет наша английская единица = 1 642 знака = 0.49 — ⛔ СМЕШЕНИЕ АЛФАВИТОВ, см. ниже ``` ⛔ **ОТКРЫТОЕ РЕШЕНИЕ ВЛАДЕЛЬЦА, БЕЗ КОТОРОГО СТАНДАРТ ДВУСМЫСЛЕН.** Коэффициент 0.49 получен делением английских знаков на китайские — это разные алфавиты. По объёму СМЫСЛА английская единица ближе к 1/5 главы Гу, и тогда **«стандарт 15 глав Гу» на английском = 50–75 единиц, а не 30**. **Какая конверсия правит стандартом — знаковая или смысловая — решает владелец.** До решения английская панель «стандартного размера» рискует молча оказаться вдвое меньше замышленной. ⚠ По объёму СМЫСЛА английская единица ближе к 1/5 главы Гу (1 642 знака ≈ 280 слов). ⚠ **Мощность движется числом независимых ЧТЕНИЙ, а не объёмом текста.** Главы Гу — ценник владельца, не физика прибора. **Следствие, которое надо помнить:** все прошлые панели были **7.4–7.8 главы Гу**, а не «12–15 глав». Номинальный объём наших вердиктов был завышен вдвое. **СТАНДАРТ ПАНЕЛИ — 6 ГЛАВ ГУ. Решение владельца 22.08** («15 глав на китайском слишком много… давай опустим до 6 глав мастера Гу, а то оценка фаблом на несколько архитектур, языков и вендоров — это взрыв кардинальности»). В единицах: **9 китайских · 12 английских**. **Конверсия — ЗНАКОВАЯ** (смысловая дала бы 30 английских единиц и противоречила бы самой цели сокращения). ⚠ Английская единица по содержанию беднее китайской: межпарные АБСОЛЮТНЫЕ сравнения этим загрязнены, внутрипарные контрасты — нет. ⚠⚠ **И это НЕ экономия, а честное следствие — записать именно так.** 6 глав Гу дают разрешение 2.61 места (zh) и 3.39 (en) — ХУЖЕ уже прогнанных панелей (7.8 главы Гу: 2.26 и 2.94). Принято потому, что **ранговый прибор безнадёжен при ЛЮБОМ разумном размере**: эффект в одно место стоит 40–68 глав Гу. Разница между 2.26 и 1.63 — это разница между «не различаем» и «не различаем». ⇒ **ранговый эндпойнт объявляется ОПИСАТЕЛЬНЫМ по построению, несущим становится СЧЁТНЫЙ** — при 6 главах Гу он работает для частых классов. ⚠ **Драйвер расхода — число ПАНЕЛЕЙ, а не глав в панели.** Сессий израсходовано 98 из 200; запланированные бесплатные шаги съедят ещё ~62. Урезание главы экономит единицы, отказ от лишней панели — десятки. **Вторые чтения гнать на подвыборке 6 глав Гу, не на всей панели.** ⚠ Стандарт — для ПОКУПАЕМЫХ ранговых панелей. Бесплатные природные эксперименты (Шаги 1 и 4) идут на 7.8 главы Гу — именно поэтому их ранговый эндпойнт заранее объявлен ОПИСАТЕЛЬНЫМ. --- ## 3. КАРТА: ГДЕ ЧТО ЛЕЖИТ ``` eval/dovodka/KONSILIUM-22-08.md итог консилиума — ОСНОВАНИЕ ЭТОГО ПЛАНА eval/dovodka/REVIEW-21-08.md 51 дефект глобального ревью (11 блокеров) eval/dovodka/PLAN-21-08.md прошлый план: реестр дефектов и что уже починено (§6) docs/experiments/23-editor-tier.md отчёт: Д24 en-панель · Д26 zh-панель · Д27 аудит · Д28 вендоры · Д29 сводные таблицы · Д30 ЭРРАТА ревью docs/experiments/00-provider-quirks.md вендор-ловушки. ЧИТАТЬ ПЕРЕД любой правкой вызовов eval/dovodka/rol.py главный инструмент: сборка промтов, покупка, панели, своды eval/dovodka/zakhod.py армы Z8/Z8R/Z1/Z7/ZF, отбор единиц, гейт цены eval/dovodka/contour.py склейка ZP, критик, фиксер, банк, канон-гейт eval/dovodka/money_d.py касса: фазы, потолки, фриз-гейт eval/dovodka/runs.py журнал агент-сессий (кап 200) ~/books/dovodka/dv-*.json клетки моделей (сырьё) ~/books/dovodka/blind-keys-rol/ ключи слепых панелей + READERS-*.json ~/books/chtenie-rol/ пакеты чтения и ответы читателей ``` **Команды, которые понадобятся:** ```bash eval/.venv/bin/python eval/dovodka/rol.py --selftest # гейты починок, ОБЯЗАТЕЛЕН eval/.venv/bin/python eval/dovodka/rol.py --wire en [--arm=X] # ЧТО УХОДИТ В МОДЕЛЬ, читать вслух eval/.venv/bin/python eval/dovodka/rol.py --emit-read <пара> --panel=A,B,C --tag=<тег> --each --n=16 eval/.venv/bin/python eval/dovodka/rol.py --verify-read <пара> --tag=<тег> # сверка сборки eval/.venv/bin/python eval/dovodka/rol.py --score-arch <пара> --tag=<тег> [--anchor=RN] [--drop=uid8] eval/.venv/bin/python eval/dovodka/rol.py --buy <пара> <АРМ> [--n=N] eval/.venv/bin/python eval/dovodka/money_d.py --report | --selftest eval/.venv/bin/python eval/dovodka/runs.py --claim <прогон> <проход> <ток…> | --done N | --report ``` --- ## 4. ЧТО УЖЕ РЕШЕНО КОНСИЛИУМОМ (не пере-открывать без нового основания) | решение | статус | |---|---| | **«Второй проход нужен» — СНЯТО как конфаунд.** Верно: «каждого слова обязана коснуться дорогая пишущая модель; число проходов — вопрос цены» | замерено | | Дефолт — **одно дорогое письмо** с банком-законом; черновая стадия — конфиг профиля пары, причина пишется как «модель × длина входа × потолок вывода» | **принято ПО ЦЕНЕ при неразличимости схем** (не замер); причинность черновика — замерено (В6) | | «Какая схема второго прохода» — **рычаг не подтверждён при разрешении прибора**. НЕ «схемы равны» | замерено | | **Главный механизм качества — детерминированный слой**: узкий канон-фиксер + гейты на хвосты + ре-ген красной главы (~$0.03) | фиксер замерен; ре-ген принят без замера | | Минимакс владельца: по браку несут **гейты**, по прозе — **ростер** | принято | | ⛔ ЦЕЛЕВАЯ ФОРМА (не факт): «худший жилец — ДОРОЖЕ при том же браке; **по прозе деградирует честно и видимо**» | **ГИПОТЕЗА, решает Шаг 1; действительна лишь при идеально работающем слое. До закрытия Шага 1 НЕ основание для решений** | | Вердикт о вендоре — **конъюнкция** порога И знакового p<0.05 | принято | | **«Вендор-дефолт» как продуктовая конфигурация ЗАПРЕЩЁН** — только явный пин уровня | принято | | Дефолт письма — `deepseek-v4-pro`; запасной — `glm-5` с размышлением (**втрое-вчетверо дороже**, полосой) | замерено; **финальная формулировка — в Д31 после Шага 2** | | Дешёвая линия (`gemini` на low, `luna`) — **кандидаты, НЕ прод** до цензур-оси, zh-клеток и второго чтения | принято | | `grok` в роли письма: **high — хуже, но НА ГРАНИ (+1.93 при MDE 1.93, знаковый p≈0.035, одно семейство); low — одним прибором из двух** (p=0.0923, по конъюнкции НЕ закрыт) | **ожидает второго чтения; финальный вердикт — только в Д31 после Шага 2** | **КРИТЕРИЙ ПРИЁМКИ (в главах Гу). ⚠ Это НОРМАТИВ, а не замер:** * **класс А** (пол · термин/имя · кусок исходного языка · полнота сцены · родство/ранги): **≤1 фатала на 100 глав Гу по каждой оси, ПОСЛЕ гейтов и ре-гена** = ≤15 на книгу 1500 глав. ⛔ Счётчиков рода, родства и голосов **ЕЩЁ НЕ СУЩЕСТВУЕТ**; частота проверяема только гейтами прод-прогонов ≥100 глав Гу, НЕ панелями. * **класс Б** (доля глав, названных читателем машинными): **≤1 на 25 глав Гу**. База не грунтована — пере-снимается Шагом 5.1 ДО печати нормы. * ⚠ **Редкий класс (ломается в ~10% глав) при 15 главах Гу НЕ РАЗРЕШАЕТСЯ** — по редким печатать частоту с интервалом, а не вердикт. ⚠ **Цена детерминированного слоя, которую нельзя прятать:** канон-фиксер несёт замеренный однонаправленный штраф читаемости **0.58 места (6 глав хуже / 0 лучше, p≈0.03)**. --- ## 5. ШАГИ. ПОРЯДОК ВАЖНЕЕ СОДЕРЖАНИЯ ### ⭐ ШАГ 1 — ПАНЕЛЬ-0: «архитектура × слабый жилец». $0. ПЕРВЫМ **Отвечает на минимаксный вопрос владельца.** На диске лежит природный эксперимент: арм `E6` (glm-5 РЕДАКТОРОМ над боевым черновиком, `dv-g-e6-*`) и арм `RG` (тот же glm-5 ОДНОПРОХОДКОЙ, `dv-n-rg-*`) — **одни и те же 16 английских глав, один жилец, у обоих `reasoning=0`, `finish=stop` 16/16**. Единственный варьируемый фактор — топология. Предварительный сигнал по клеткам (глава `001e6ac4`, окончания глаголов 1 л., жен/муж): `D0` черновик 3/1 · `E6` редактор **3/2 — пол сохранён** · `RG` однопроходка **0/5 — пол сломан**. Обратная сторона (`197f98eb`): разрядку «Т Е Р П Е Н И Е» потерял сам черновик → потеряли и `E6`, и `RG`. ⇒ **буфер чинит только то, что черновик донёс.** ⛔ **НЕ ПЕРЕНОСИТЬ ЭТОТ ПРЕДВАРИТЕЛЬНЫЙ СИГНАЛ В ПАКЕТЫ ЧИТАТЕЛЕЙ.** Пакет не имеет права называть ни вердикт другого прибора, ни существование контроля (§6). **Пре-рег (записать в отчёт ДО сборки пакетов):** 0. ⛔ **БЛОКЕР СБОРКИ: `rol.py` НЕ ЗНАЕТ арм `E6`** — единственное его вхождение там комментарий, клетки `dv-g-e6-*` читают `contour.py`/`en_axis.py`, и **схема клеток другая** (нет полей `pair` и `podacha`, `role=editor3`). Команда `--emit-read --panel=RG,E6,…` в текущем коде НЕ соберётся. Сперва правка сборки: зарегистрировать источник `dv-g-e6-*`, учесть иную схему, уронить селфтест на заведомо больном входе. Зона твоя, править можно. **Старые теги не пере-эмитировать.** ⚠ Промт `E6` для «wire-аналога» (п.5) берётся из рига фазы **ФД-G**, не из `rol.py`. 1. Состав панели: `RG` · `E6` · `Z0` · `ZF`. 16 английских глав пересечения, uid-список зафиксирован ДО чтения. **Тег новый; существующие теги не пере-эмитировать.** 2. В шапке пре-рега напечатать: оба арма — glm-5, `reasoning=0` на 16/16, `finish=stop` 16/16. 3. **ПЕРВИЧНЫЙ ЭНДПОЙНТ — ДЕФЕКТ-КЛАССЫ, НЕ МЕСТА.** Грепы объявить и снять ДО сборки пакетов: пол рассказчика (окончания глаголов 1 л.) · авторские приёмы (разрядки) · куски исходного языка · термины банка. Тест — парный знаковый по главам. 3а. **Эталон грепов фиксируется ДО снятия**, иначе их можно подогнать под увиденное: для КАЖДОЙ главы таблицей — применим ли класс и какое значение верно по исходнику (пол рассказчика и т.п.). Грепы валидируются на `D0`/`E0` с известным полом и **печатают строки-совпадения, не только счёт**. 3б. **Правило решения первичного эндпойнта:** первичная величина — **число глав с ≥1 фаталом из списка** (агрегат), парный знаковый тест p<0.05. По-классовые разбивки — вторичные. 4. Вторичный эндпойнт — ранги (`RG`↔`E6`). При 7.8 главы Гу MDE≈2 места ⇒ **заранее объявляется ОПИСАТЕЛЬНЫМ**. 5. Сверки до чтения: исходник побайтно тот же (у `E6` нет поля `podacha` — риг другой фазы); потолки вывода напечатать; промт `E6` распечатать `--wire`-аналогом и **прочесть вслух**. 6. `--verify-read` EXIT=0; ключ до ответов; раскладка своя на каждую главу. **Критерий готовности шага:** свод напечатан, дефект-классы посчитаны, вердикт сформулирован как **«интеракция архитектура × жилец на ИСПЫТАННЫХ жильцах»** — не «минимакс» (худший редактор не искался; связка двухвендорна). ### ⭐ ШАГ 2 — ВТОРОЕ ЧТЕНИЕ `vendor2`. $0. БЛОКИРУЕТ ВЕРДИКТ ПО ВЕНДОРАМ ⛔ **БЛОКЕР, ЕСЛИ СДЕЛАТЬ НАИВНО: путь файла ответа ВПЕЧАТАН В САМ ПАКЕТ.** Значит «ответы в другой каталог» невозможно без правки пакета, а правка пакета померяет разницу промтов, а не разброс прибора. И читатель-2 получил бы путь к ответу читателя-1 — перезаписал бы его либо увидел, и согласие читателей оказалось бы **сфабриковано молча**. **Правильная процедура:** ДО запуска перенести ответы первого чтения в `r1/` (счёт файлов до и после — ни один не потерян). **Пакеты не трогать вовсе**; читатели пишут по прежнему впечатанному пути. После прогона собрать новые ответы в `r2/`. Ключи НЕ пере-эмитировать. Новые сессии. Промт чтения — тот же байт в байт. Метрики, объявленные ДО: (i) корреляция порядков читатель-1/читатель-2 по главе; (ii) пере-счёт всех контрастов на втором чтении, счёт перевёрнутых вердиктов, отдельно маржевые `RK`/`RE`; (iii) доля дисперсии разностей читателей в дисперсии парной разности — **это и есть «сколько в пороге прибора»**; (iv) держится ли p у `RKT`. ⚠ Одно семейство меряет ШУМ, не ВКУС. Вкус закрывают только якорные главы владельца. **Вердикт Д31 по вендорам НЕ ПЕЧАТАТЬ до метрики (ii).** ### ⭐ ШАГ 3 — ВТОРОЕ ЧТЕНИЕ `arch2`. $0 То же самое на архитектурной панели. Без него **ни одно «неразличимо» не имеет паспорта разрешения**. ### ⭐ ШАГ 4 — ДУЭЛЬ «промт против без промта». $0 16 клеток `dv-n-re-*.БЕЗ-ПРОМТА.json` (gemini перевёл их вообще без инструкции — вендор молча выбросил второе системное сообщение) уже оплачены и лежат в карантине. ⛔ **Стандартный загрузчик их НЕ ПРОЧТЁТ**: суффикса `.БЕЗ-ПРОМТА` в `rol.py` нет нигде. Завести **псевдо-арм под нейтральным именем** (например `RQ`) со своим загрузчиком карантинного суффикса. ⚠ Строк «БЕЗ-ПРОМТА» не должно быть ни в пакете, ни в ключе. Гейт правильности файлов: у карантинных `prompt_tokens` ≈515 против ≈2951 у нормальных. `--verify-read` прогнать на новом теге. Панель: `RE` · `RQ` (карантин) · `Z0` · `ZF`, 16 глав. **«Родство пары не прятать» относится к СВОДУ: пакет о родстве молчит, как и обо всём прочем.** Решает **систематический знак**, а не величина разрыва. Сверить у карантинных клеток `finish=stop` и `prompt_tokens` ≈ 515 против ≈ 2951 у нормальных. ⇒ Даёт **вес ВСЕГО промта в единицах прибора**. Если даже полный промт не даёт устойчивого знака — у прибора нет разрешения для промт-инженерных выводов, и это печатается рядом с каждым «не хуже». ### ⭐ ШАГ 5 — ДВЕ БЕСПЛАТНЫЕ ПЕРЕ-СНЯТИЯ БАЗЫ 1. **База класса Б не грунтована.** «6% машинных глав» надо пере-снять из **40 уже лежащих ответов** читателей, объявив формулировку вопроса. До этого норму класса Б не печатать. 2. **Счётчики отладить на купленных срезах** (род по морфологии · удержание канона по позиции · голоса · девизы). ⛔ **Покупать 15 глав Гу с несуществующими счётчиками — купить сырьё без прибора** (класс В20 ревью: оплаченные клетки, которых не прочёл ни один прибор). ### ШАГ 6 — ПОЧИНКА ПРОВЕНАНСА РИГА. $0. ДО ЛЮБЫХ ПОКУПОК * Клетки обязаны хранить `call_kwargs` и `reasoning_text` — сейчас **прямого доказательства того, что ушло по проводу, на диске нет**, только косвенность по токенам. * Свод обязан печатать **паспорт разрешения** под каждым вердиктом: ``` ПАСПОРТ: прибор=ранговый · слепое чтение fable-5 · 1 чтение/глава · семейств 1 n=15 ед (7.4 глав Гу) · k=10 армов · sd контраста 4.2 · MDE 3.07 места пол |Z0−ZF|=2.80 (случайное 4.0; НИЖНЯЯ граница: общий черновик, читатель опознаёт родство) правило: |Δ|>MDE И знаковый p<0.05 · клетки: [теги] слеп к: эффектам Т2>Т1>Т4, «в книгу Т3» у обоих), а **ось ВЕРНОСТИ разошлась радикально** — владелец ставит смелый текст по верности ПЕРВЫМ, прибор ПОСЛЕДНИМ («больше всех вольностей»). Наши панели ранжируют по правилу смысл→брак→художественность, то есть ось расхождения стоит ПЕРВОЙ. **Риск: прибор системно топит смелое письмо там, где владелец бы не топил** | | дозная калибровка | $0–0.1 | карта «дефекты ↔ места». Порченым клеткам свой префикс и помета «в своды не брать» | --- ## 6. ГАРДРЕЙЛЫ И ЛОВУШКИ — читать перед каждым шагом **Деньги. ⛔ СОСТОЯНИЕ НА 22.08: пакетный резерв $1.26 (17.04 из 18.30), в ФД-N свободно $0.29.** Шаг 7 (~$2) и Шаг 8 целиком (~$1.1–1.65) в резерв НЕ ВЛЕЗАЮТ — нужна НОВАЯ фаза и слово владельца ДО начала. Это штатный вопрос, а не авария: сессия после компакта иначе упрётся в гард на первой же покупке и не поймёт, почему. Потолки фаз поднимать решением сессии ЗАПРЕЩЕНО: называть сумму и ждать слова владельца. Пакетный потолок не трогать вовсе. Срабатывание гарда = СТОП и вопрос. Фриз-гейт отказывает покупке из незакоммиченного файла и из stdin — это правильно, фризить ПЕРЕД покупкой. **Панели.** Пере-эмиссия с другим составом армов переписывает раскладку уже прочитанной панели — ответы становятся мусором молча. Новый состав = новый тег, всегда. Резать панель, ось или кандидата решением сессии ЗАПРЕЩЕНО. **Читатели.** Идентичность в файл ДО запуска · `runs.py --claim` ДО запуска · аудит транскриптов ПОСЛЕ (⚠ **инструмента `--audit-read` НЕ СУЩЕСТВУЕТ** — либо руками по образцу Д24: вызовов/путей/глав на читателя, либо построить его Шагом 6) · пакет не имеет права называть ни вердикт другого прибора, ни существование контроля · один читатель на главу (главы большие). **Провод.** Аномалия (флейк, 404 живой модели, новый `finish_reason`, игнор параметра) → сперва **официальная дока вендора**, потом диагноз. Не гадать. DeepSeek: НИКОГДА не отключать thinking. Слаг ≠ модель: веса меняются молча. **Класс дефекта, который поймал нас пять раз за два дня — «реализация не то, чем названа»:** промт нёс мандат чужой пары · размышление молча гасилось нашим кодом · вендор молча терял второе системное сообщение · опубликованные числа не совпадали с сырьём · два арма панели оказались одним текстом. **Ни один гейт этого не поймал — ловит только чтение того, что реально уходит в модель.** ⇒ `--wire` перед каждой покупкой, и прочесть вслух в отчёте. ⚠ **Нулевые выводы — единственные, которым дефекты этого класса ПОМОГАЮТ:** любой такой дефект раздувает разброс и производит «неразличимость». Прежде чем печатать «схемы неразличимы», спроси себя, не куплена ли эта неразличимость дефектом. **⛔ EXIT=0 и «СБОРКА ГОДНА» — НЕ СЕРТИФИКАТ.** `--verify-read` печатает побайтно совпадающие армы, но сборку НЕ роняет; `--score-arch` возвращает 0 всегда. Дубли и контроли свода читать ГЛАЗАМИ — именно так панель из 11 армов однажды показывала читателю 10 текстов. **Мандат самопроверки (решение владельца 12.07).** Каждый шаг закрывается ревью ИСПОЛНЕНИЕМ: своего кода · сформированных запросов к моделям · полученных результатов. Полигон регулярно ошибается, и это искажает эксперименты. **Тесты и гейты под зелень не подгонять.** Несогласие с тестом — вопрос владельцу, не правка. --- ## 7. ЧЕМ ЗАКРЫВАЕТСЯ РАБОТА Эксперимент считается доведённым до архитектурного вердикта, когда: 1. **Шаг 1 закрыт** — известно, буферизует ли топология слабого жильца, и вердикт назван в терминах интеракции на испытанных жильцах. 2. **Шаги 2–3 закрыты** — у каждого «неразличимо» есть паспорт разрешения, и известно, сколько в пороге от прибора, а сколько от текста. 3. **Шаг 4 закрыт** — известен вес всего промта в единицах прибора. 4. **Шаг 7 закрыт** — у вопроса 0 впервые появился прибор. 5. Долг по английской базе `ZP` либо закрыт покупкой, либо **явно объявлен условным**. 6. Отчёт получил секцию **Д31** с вердиктом по вендорам (по конъюнкции!) и паспортом. 7. **Долг В21 — сверка кассы ДВУМЯ путями** — закрыт либо ЯВНО перенесён (несведённого $10.44, потолки Д17.5 врут в 6×). В прошлом плане он был, в этот не переехал — после компакта о нём не вспомнит никто. 8. Пинг в `docs/PROGRESS.md`, секция «Полигон» — там уже висит пинг №19 о движковом дефекте (Gemini теряет глоссарий на эскалации), ответа нет. ## 8. ЧЕГО НЕ ДЕЛАТЬ * **Не покупать новые главы ради различения схем середины.** Цена: эффект 1.0 места ≈ 40 глав Гу (zh) / 68 (en); эффект 0.5 места ≈ 160 / 271. Там решают цена и хвосты, а не чтение. * **Не печатать «схемы равны»** — только «рычаг не подтверждён при разрешении прибора». * **Не называть английские армы продакшеном** — английского пар-пакета в `backend/prompts/` нет вовсе, он живёт только в полигоне. * **Не чинить `contour.base_a0` гашением текста** — проверено исполнением: единица выпадает из отбора, и `chosen()` молча подставляет другую. Гейт годности стоит на СБОРКЕ панели. * **Не лезть в `backend/`** — пинговать оркестратора.