Take the second door-to-file run into the record: what the book cost, where its two measures of waste disagree, how much of the paid output was thinking, and where the consistency instrument misreads an inflected name

This commit is contained in:
heaven 2026-09-11 23:42:30 +03:00
parent 5b581b6aee
commit 90cda1e014
7 changed files with 684 additions and 7 deletions

View file

@ -3,7 +3,7 @@
> **Единственный трекер проекта.** Здесь живут строки, на которые доки, промты и D-ноты ссылаются словами «строка N» / «строка бэклога N»: **ID строки стабилен навсегда**, не перенумеровывается и не переиспользуется (D39.80). Правки — только через оркестратора; каждая петля обязана иметь диспозицию: решено / отложено-с-записью / отклонено.
> ⚠ **Это НЕ бэклог зоны `docs/`, а бэклог ПРОЕКТА.** У зон свои, с другими неймспейсами ID, и единый их строк не принимает (D39.84): платформа — [../platform/BACKLOG.md](../platform/BACKLOG.md) (`П-N`) и её регистр дефектов `platform/docs/DEFECT_REGISTER.md` (`PD-N`); фронт — [../frontend/docs/BACKLOG.md](../frontend/docs/BACKLOG.md) (`Ф-N`).
> ⚠ **Состояние проекта — не здесь.** Очередь, курс, CURRENT-STATE, состояние паков и живая хроника — шапка [PROGRESS.md](PROGRESS.md). Здесь только долг и его диспозиции.
> - **СЧЁТ ОЧЕРЕДИ на 11.09 (скриптом по таблице — `python3 docs/scripts/counts.py`; обновлять при каждом лендинге):** всего **318** строк · зона бэкенд **154** строго / **207** широко (⚠ колонки счётчик читает С КОНЦА — испр. D39.116) · **блокеров очереди 0** (236 закрыта D39.175; **371** — актом D39.233, **360** — актом D39.232, обе 10.09), платные прогоны разблокированы · «скоро» **163** (перечень — грепом по таблице, рукописный список снят D39.126) · гейт-строка эксп-22: 153 (плюс 150 — руки владельца; ⚠ 55 из гейтов СНЯТА — D39.198 п.5); строка 5 — остаток гейчен ре-пробой 74, носитель события теперь строка 188 (аудит D39.140); остальное «когда-нибудь». ⚠ Счёт — НИЖНЯЯ граница долга, не потолок (разбор — легенда таблицы ниже).
> - **СЧЁТ ОЧЕРЕДИ на 11.09 (скриптом по таблице — `python3 docs/scripts/counts.py`; обновлять при каждом лендинге):** всего **321** строк · зона бэкенд **157** строго / **210** широко (⚠ колонки счётчик читает С КОНЦА — испр. D39.116) · **блокеров очереди 0** (236 закрыта D39.175; **371** — актом D39.233, **360** — актом D39.232, обе 10.09), платные прогоны разблокированы · «скоро» **166** (перечень — грепом по таблице, рукописный список снят D39.126) · гейт-строка эксп-22: 153 (плюс 150 — руки владельца; ⚠ 55 из гейтов СНЯТА — D39.198 п.5); строка 5 — остаток гейчен ре-пробой 74, носитель события теперь строка 188 (аудит D39.140); остальное «когда-нибудь». ⚠ Счёт — НИЖНЯЯ граница долга, не потолок (разбор — легенда таблицы ниже).
> - ⚠ **Переезд 06.09 (D39.218):** таблица вынесена из `PROGRESS.md` ДОСЛОВНО и ни один ID не сдвинут — **с единственным исключением: две ячейки (строки 220 и 306) тронуты РОВНО в номере якоря `docs/scripts/counts.py:566`→`:569` и `:592`→`:595`**, потому что цель сдвинул этот же коммит; текст ячеек не менялся, длины равны. В `PROGRESS.md` на прежнем месте оставлен заголовок-указатель, поэтому ссылки «секция „Бэклог“» доезжают в один хоп.
## Бэклог (ЕДИНЫЙ, собран 26.07, актуализация 04.08 D39.99/D39.101; правки — только через оркестратора)
@ -354,3 +354,6 @@
| 433 | ⛔ **ЛЕКАРСТВО ОТ ДВОЙНОЙ ОПЛАТЫ ПОСТРОЕНО И СТОИТ ВЫКЛЮЧЕННЫМ — и помогает ОДНОМУ случаю из четырёх.** Пак 11.09 закрыл НАБЛЮДАЕМОСТЬ (видно, сколько и на что) и построил ЛЕЧЕНИЕ (ступень усилия ниже при том же бюджете на классе `FlagEmpty`), но ручка `retries.lower_effort_on_empty` лендится с дефолтом `false`: **деньги продолжают течь**, и ничто в дереве этого не остановит, пока ключ не поставят в `true`. ⚠ Дефолт выбран не из робости: включение двигает форму попытки ≥1, а бамп версии политики потолка стоил бы пере-перевода **989 единиц на 24 книгах, $9.99 уже оплаченного** (дедуплицированный замер зоны). ⛔ **И охват уже — из четырёх двойных оплат прогона A лекарство достаёт ОДНУ:** `edit` ($0.071009 = 67 % потери) стоит на `off`, у которого шаг вниз есть; три черновых ($0.035463 = 33 %) уже на `low`**дне эмитирующей шкалы, и лекарства для них в паке НЕТ**. ⇒ условие включения одно и измеримое: **эхо-контроль ИМЕННО В РЕДАКТОРСКОЙ РОЛИ на плотном CJK, парным дизайном на повторах.** ⚠ Прежняя оценка риска цитировала НЕ ТУ РОЛЬ: «1 чистый китайский выход из 16» — это `flash` как ПЕРЕВОДЧИК, а единственная стадия, которую ручка двигает, — РЕДАКТОР, и квирки прямо говорят, что его эхо-безопасность при `low` на CJK **не мерена**. Ошибку нашёл направленный читатель зоны, не я и не она. ⚠ Вторичный исход того же замера, стоящий $0 сверх прогона: **растёт ли размышление вместе с потолком на `low`** — ровно тот вопрос, который `D39.90` п.9 объявил непроверенным, и он решает, рычаг ли флор | бэкенд/владелец | **скоро** | эхо-контроль в РЕДАКТОРСКОЙ роли на CJK ⇒ ручка в `true`; плюс лечение для дна шкалы | пак «за одну единицу платим дважды», 11.09 |
| 434 | ⛔ **ПРИБОР КОНСИСТЕНТНОСТИ НЕ НАХОДИТ ПЕРЕДАЧУ У 26 ТЕРМОВ ИЗ 69 И МОЛЧА СЧИТАЕТ ИХ КОНСИСТЕНТНЫМИ.** Замер оркестратора 11.09 на артефактах прогона A (`~/tm-coldrun-a/evidence/spread.json`, 69 записей; контроль печатает сам прибор: «terms rendered at all: 40, control: terms considered 69»): у **29** термов `renderings={}`, и для **26 из 29** ФИНАЛЬНАЯ форма банка РЕАЛЬНО стоит в отгруженном тексте — `三转` «третий оборот» · `三转蛊师` · `丫头片子` · `五更天` · `仙师` · `侧室` · `十大奇蛊` · `古月一族` · `唐诗宋词` · `四更时` · `宗族祠堂` · `宗祖祠堂` · `开窍` · `怀璧之罪` · `方之一脉` · `方家` · `更夫` · `梆子` · `正派` · `白家寨` · `老嬷嬷` · `话事人` · `邪魔` · `雪盐` · `魔道` · `魔道巨擘`. ⇒ **`spread=0` у них значит «передачи НЕ НАШЁЛ», а читается как «форма одна»**, и итоговая строка «TERMS SHIPPED IN MORE THAN ONE SHAPE: 0» посчитана по 40 термам, а не по 69. ⚠ Матчер ловит СЛОВО, а не форму: у `高脚吊楼` он вернул «Свайные», тогда как текст несёт «свайного дома / свайные дома / свайных домов». ⛔ Это приоритет №1 владельца и ЕДИНСТВЕННЫЙ прибор, который его меряет; сегодня он отвечает за 58 % книги, а отчитывается за 100 %. Носитель разбора — эррата 11.09-з | бэкенд | **скоро** | знаменатель печатается ВСЕГДА («нашёл у M из N»), ненайденные проверяются текстом, а не засчитываются в консистентные; матчер сверяется формой, а не словом | приёмка прогона A, пере-снято 11.09 |
| 435 | **ЭСКАЛАЦИЯ НЕ МОЖЕТ ИСПОЛНИТЬСЯ НИ НА ОДНОМ БОЕВОМ КОНФИГЕ — построена, ратифицирована и выключена данными.** `backend/configs/pipeline-c1.yaml:223`=`budget_usd: 0`, и комментарий строкой выше говорит прямо: «budget_usd=0 ⇒ эскалация НЕ исполняется (НИ chains, НИ stage.escalate_to)… **Приёмочная сессия 蛊真人 ОБЯЗАНА выставить budget_usd>0**, иначе echo-эскалация черновика (D18) не выстрелит. Дефолт 0 держит CI/Ф0 зелёными без gemini/mistral-ключей». ⇒ дефолт выбран под ЗЕЛЕНЬ CI, а не под продукт, и требует ручного оверрайда, которого не сделал ни прогон A (его §10 п.2 честно пишет «эскалация не исполнялась ни разу»), ни прогон B (решение оркестратора 11.09: НЕ трогать, чтобы сохранить байт-в-байт тождество покупающего файла A↔B — сравнимость денег дороже одного непроверенного пути). ⛔ Значит путь эскалации не исполнялся живьём ДВА прогона подряд, и его первое живое исполнение стоит отдельного дешёвого замера, а не контаминации сквозного прогона. ⚠ Класс тот же, что у ряда 433: **механизм лендится выключенным, и выключенность живёт в ДАННЫХ, где её не видит ни один гейт** | бэкенд | скоро | адресный $0.03-замер пути эскалации отдельным прогоном ЛИБО решение владельца о боевом дефолте | прогон B, пре-рег 11.09 |
| 436 | ⛔ **ИМЯ ВЕРДИКТА `split` УТВЕРЖДАЕТ БОЛЬШЕ, ЧЕМ МЕРЯЕТ ЕГО ПРЕДИКАТ — и первым же живым прогоном он оболгал подписанное имя героя.** Предикат (`backend/internal/pipeline/bookconsistency.go`, греп `func (v *verdictAcc) observe`) ставит `split`, когда в главе **попаданий МЕНЬШЕ, чем срабатываний** источника, либо не найдено ни одного. Читающий отчёт видит «термин разъехался», а сказано «нашли не каждое срабатывание» — это РАЗНЫЕ утверждения. ⛔ Замер прогона B: вердикт `split` по `方源` во всех трёх главах, тогда как в отгруженном тексте **58 вхождений в четырёх падежах и НОЛЬ конкурирующих транслитераций** (пере-снято оркестратором; голые «Фан» принадлежат другим термам банка — `方正`, `方之一脉`, `方家`, `方老魔`). ⇒ **самая тревожная строка приоритета №1 оказалась артефактом**, и владельцу её понесли бы как расхождение. ⚠ Родня ряду **434** (прибор не находит передачу у 26 термов из 69): вместе они означают, что **числа консистентности прогона B базовой линией НЕ являются до починки** | бэкенд | **скоро** | вердикт зовётся тем, что утверждает («не каждое срабатывание покрыто»), либо предикат усиливается до настоящего разъезда; падеж не считается второй передачей | прогон B, акт `D39.252` п.3 |
| 437 | **САМАЯ КРУПНАЯ ХУДОЖЕСТВЕННАЯ ПОТЕРЯ ПРОГОНА ИЗМЕРИМА ОДНИМ ВЫЧИТАНИЕМ, КОТОРОГО НИКТО НЕ ДЕЛАЕТ.** Замер оркестратора на прогоне B: абзацев в оригинале **233**, в отгруженном переводе **162** — сжатие **30 %** (контроль: 9021 знак оригинала против 30 283 перевода). Движок печатает `sentences/narrative-paragraph` и знает число абзацев только В ПЕРЕВОДЕ; числа абзацев ИСХОДНИКА у него нет, поэтому порога нет и флага нет. ⚠ Для ранобэ, где абзац — единица ритма и реплики, схлопывание трёх абзацев в один меняет темп сильнее, чем любая лексическая правка, и читатель это чувствует раньше, чем термины. ⇒ дешевле всех прочих приборов качества: две величины и одно деление | бэкенд | скоро | счёт абзацев ИСХОДНИКА рядом со счётом перевода + порог, при котором сжатие флагуется | прогон B, акт `D39.252` п.5 |
| 438 | ⛔ **БАНК-РОЛИ ИДУТ МИМО ОБЕИХ ВЕТВЕЙ ЛЕЧЕНИЯ: у черновой стадии лекарство есть, у терминолога нет ни лекарства, ни счётчика.** Обе ветви живут в цикле `runStage` (`backend/internal/pipeline/stagerun.go`, греп `regenerating with less thinking` и `regenerating with a larger budget`), а `terminologist.go` (греп `return r.runAttempt`) зовёт попытку НАПРЯМУЮ. ⛔ Замер прогона B: на попытке 1 классификатор дал `asked=22 answered=4` (`length`, $0.012646) и `asked=24 answered=0` (`empty`, $0.012133) — **42 терма из 66 без машинного типа, оба провальных батча ОПЛАЧЕНЫ, регенерации не было**; у черновой стадии та же мина вылечена 5 раз из 5. ⚠ **Это СТОХАСТИКА, а не регрессия** (сказала сама зона): на резюме тот же классификатор ответил 22/22 · 19/19 · 24/24, у прогона A все три батча чисты. ⚠ И вторая половина — НАБЛЮДАЕМОСТЬ: итоговая строка печатает `classify_batches_dropped=0 unanswered=0`, и это не ложь, а ОТСУТСТВИЕ — счётчик считает батчи, выброшенные БЮДЖЕТОМ (комментарий `terminologist.go` сам предупреждает, что «unanswered читается как вердикт о ТЕРМАХ, когда он отчасти вердикт о ДЕНЬГАХ»), а счётчика доли ОТВЕТОВ нет ни одного; единственный носитель факта — WARN посреди прохода | бэкенд | **скоро** | банк-роль получает ту же ветвь регенерации, что черновая стадия, ПЛЮС счётчик доли ответов в итоговой строке | прогон B, акт `D39.252` п.9 |

View file

@ -25,7 +25,7 @@
| Роль | Активный промт | Статус |
|---|---|---|
| **Бэкенд · КУПЛЕНО — ЗНАЧИТ ДОСТАВЛЕНО** | [BACKEND_BOUGHT_MEANS_DELIVERED_SESSION_PROMPT.md](BACKEND_BOUGHT_MEANS_DELIVERED_SESSION_PROMPT.md) | ✍️ **написан 11.09**, выдаётся `textmachine-b1`. Предмет решён владельцем (`D39.204`): отказ резервации на РЕТРАЕ деградирует во флаг с отдельной причиной. Сегодня он уходит наверх из цикла попыток раньше `UpsertChunkStatus` ⇒ юнит виден `pending` НАВСЕГДА, прогон уходит `exit 4` при доставленных купленных юнитах. Платформенная половина — отдельным промтом, акт ОДИН на две. $0 |
| **Сквозной · ХОЛОДНЫЙ ПРОГОН B** | [COLD_RUN_B_SESSION_PROMPT.md](COLD_RUN_B_SESSION_PROMPT.md) | ✍️ **написан 11.09**, выдаётся `textmachine-82`. ⛔ **ПЛАТНЫЙ, санкция владельца получена** («разрешаю»): ждём ≈$0.42, кап ≈$2.5 холда. Покупает первое ЖИВОЕ исполнение миграций `v17`+`v18`, числа консистентности с прогона (а не с пере-скана), платформенный пак сквозь и вторую точку по денежной дыре с ПРЕ-РЕГИСТРИРОВАННЫМ знаменателем (по ЕДИНИЦАМ: на A — 4 из 17 = 23.5 %). Кода не правит |
| Сквозной · ХОЛОДНЫЙ ПРОГОН B | активного НЕТ | пак ОТРАБОТАН и **ПРИНЯТ 11.09** — акт **D39.252**; промт в [archive/prompts/](archive/prompts/COLD_RUN_B_SESSION_PROMPT.md) с баннером-исходом. Книга второй раз от двери до ФАЙЛА, факт **$0.396657**. ⭐ Две меры денежной дыры разошлись в РАЗНЫЕ стороны на одних данных; **85.7 % оплаченного выхода — размышление, а не текст**. ⛔ Прибор приоритета №1 солгал вердиктом по подписанному имени героя. Качество впервые судилось по ОРИГИНАЛУ рядом с переводом: 26 находок, 1 крит |
| Оркестратор | [ORCHESTRATOR_SESSION_PROMPT.md](ORCHESTRATOR_SESSION_PROMPT.md) | роль и нормы; счётчик роли — CURRENT-STATE |
| Бэкенд · ДВЕ ОСТАНОВКИ | активного НЕТ | пак ОТМЕНЁН ВЛАДЕЛЬЦЕМ 10.09 до лендинга — акт **D39.240**; промт в `archive/prompts/` с баннером. Причина — размах правки, не качество. ⚠ Предмет ЗАМЕНЁН и сузился: остановка остаётся жёсткой, **деньги терять допустимо**, но она обязана быть КОРРЕКТНОЙ (без гонок, без половинчатых состояний, верное возобновление). ⭐ Пак успел купить `D39.236``D39.238` и строку **385** |
| Платформа · ДВЕ ОСТАНОВКИ | активного НЕТ | пак ОТМЕНЁН ВЛАДЕЛЬЦЕМ 10.09 до лендинга — акт **D39.240**; промт в `archive/prompts/` с баннером. Причина — размах правки, не качество. ⚠ Предмет ЗАМЕНЁН и сузился: остановка остаётся жёсткой, **деньги терять допустимо**, но она обязана быть КОРРЕКТНОЙ (без гонок, без половинчатых состояний, верное возобновление). ⭐ Пак успел купить `D39.236``D39.238` и строку **385** |

View file

@ -1,4 +1,4 @@
# Реестр D-нот — карта актуальности v2 (D1D39.251; титул — носитель головы, бампать при каждом аппенде)
# Реестр D-нот — карта актуальности v2 (D1D39.252; титул — носитель головы, бампать при каждом аппенде)
> ⚠ **Колонку «тело» `counts.py --check` НЕ сторожит по устройству:** он сверяет полноту НОМЕРОВ, а не
> место тела, поэтому колонка держится дисциплиной лендинга. Не нашёл тело по колонке — иди в слайсы,
@ -310,3 +310,4 @@
| D39.249 | 11.09 | **АКТ: бэкенд-пак «КОНСИСТЕНТНОСТЬ, КОТОРУЮ МОЖНО ПРЕДЪЯВИТЬ» ПРИНЯТ С ДОФИКСОМ** (26 путей, $0). ⭐ Приоритет №1 впервые ИЗМЕРИМ по отгруженному тексту: `I1`/`I2` с печатаемыми знаменателями, прогон A — 69 судимо, 236/221 вхождений. ⛔ Первый круг приёмки: **шесть посадок из шести выжили**, худшая — единственный провод между прибором и прогоном не запинен ничем (`.Consistency` в тестах 0 хитов при 227 файлах). Порядок колонок ратифицирован и отменён в тот же день — правило и ДВА триггера пере-открытия в ряду 406. Числа: каталог **169/169 RED, выживших 0** (оркестратор, скоуп без потолка cgroup — 26 убийств `CONSTRAINT_MEMCG` у зоны), батарея 19 ok · 0 FAIL · 4 названных скипа. Пять классов в `CLAUDE.md`, четыре зона нашла у себя | бэкенд/приёмка |
| D39.250 | 11.09 | **АКТ: платформенный пак «ОТВЕТ ДВЕРИ НЕ ЗАВИСИТ ОТ ПОРЯДКА» ПРИНЯТ С ДВУМЯ ДОФИКСАМИ**, минор **0.15.0** (27 путей, 24 новых теста, $0). ⭐ Предмет ПЕРЕ-ОПРЕДЕЛЁН замером зоны до первой правки: не редкая гонка, а ОРДИНАРНЫЙ путь. ⛔ **Оба денежных предохранителя проверены не тем прибором** — гард судил шаблон, а проба рендерит свой $0-пайплайн строкой выше; рецепт проверен сканом вместо загрузчика (`EXIT=10`). Лечение — СНОС рецепта, а не починка: он существовал под ошибку. ⭐ Ответ лежал в дереве комментарием того же хелпера. Выжившая одна, названа с классом; харнесс зоны читал ненулевой выход как «поймано» — три ложных RED, назван, положен в дерево | платформа/приёмка |
| D39.251 | 11.09 | **АКТ: бэкенд-пак «ЗА ОДНУ ЕДИНИЦУ ПЛАТИМ ДВАЖДЫ» ПРИНЯТ С ДОФИКСОМ** (22 пути +947/66, 8 новых тестовых, +27/0 тестов, $0). ⭐ Наблюдаемость двойной оплаты построена, **лекарство лендится ВЫКЛЮЧЕННЫМ** и достаёт 1 случай из 4 — сказано словом зоны до приёмки. ⛔ **Посылка пака была перевёрнута, и сняла её зона ДО первой правки:** `empty` ×3 = $0.094835 = 89 % против `length` ×1 = $0.011637; `off` у ReasoningNone — ВЕРХ шкалы. ⛔ `reasoning_tokens` ронял НАШ адаптер (провайдер шлёт 35 из 35). Приёмка: «лендинг инертен» было обещанием, а не свойством (посадка в 4 конфига — батарея зелена); ни одна из 22 мутаций не была помечена `battery`. Числа мои: 23 пакета · 19 ok · 0 FAIL · vet 4 · lint 0 · gofmt 0 · мутации **195 RED / 1 выжившая / 0 неизмеренных**, якорей 0 из 407; деньги — двумя независимыми путями по сырому леджеру, $0.106472 = 25.4 %. ⛔ Выжившая — ЧУЖАЯ и краснеет по удаче (8/8 на дереве против **7/8** на посадке) ⇒ первое число ряду **379(б)** | бэкенд/приёмка |
| D39.252 | 11.09 | **АКТ: СКВОЗНОЙ ПРОГОН B ПРИНЯТ** — книга второй раз от двери до ФАЙЛА, факт **$0.396657** при ожидании ≈$0.42 (санкция владельца «разрешаю» получена ДО траты). ⭐ **Две меры денежной дыры разошлись в РАЗНЫЕ стороны на одних данных:** по ЕДИНИЦАМ 23.5 %→**41.2 %**, по ДЕНЬГАМ 25.4 %→**21.1 %**; первичной объявлена замороженная пре-регом мера по единицам. ⭐ **85.7 % оплаченного выхода книги — РАЗМЫШЛЕНИЕ, а не текст** (153 942 из 179 613; у 5 из 7 выброшенных потолок съеден целиком) ⇒ ряд 422 закрыт числом. ⛔ **Прибор приоритета №1 солгал на первом живом прогоне:** вердикт `split` по подписанному имени героя при 58 вхождениях в 4 падежах и НУЛЕ конкурентов — имя вердикта утверждает больше, чем меряет предикат ⇒ числа консистентности B базовой линией НЕ являются. ⭐ Качество впервые судилось по ОРИГИНАЛУ рядом с переводом: 26 находок (1 крит — подмена референта, пере-проверен мною), адъюдикация цитат 10/10, три числа читателя исправлены. Скаляр оценки — ЦИТАТОЙ с четырьмя границами, не ратификацией. Ряды 434, 436, 437, 438 | полигон/приёмка |

View file

@ -1,4 +1,4 @@
# Журнал решений оркестратора — контракт D1D39.251 (живой файл: карта · эрраты · живые тела · голова D39.124+ (подрезка D39.139); тела закрытых эр — в слайсах `docs/archive/architecture/`, указатель ниже; реестр всех нот — `05-decisions-index.md`)
# Журнал решений оркестратора — контракт D1D39.252 (живой файл: карта · эрраты · живые тела · голова D39.124+ (подрезка D39.139); тела закрытых эр — в слайсах `docs/archive/architecture/`, указатель ниже; реестр всех нот — `05-decisions-index.md`)
> **КАРТА АКТУАЛЬНОСТИ (ревизия D31, продлена до D38.2 [12.07]; исторические записи ниже НЕ переписываются — дисциплина D23.3).** Работая с контрактом (греп номера: живой файл → слайсы, целиком НЕ читать — D39.125), держи под рукой, что чем перекрыто:
> ⚠ **Эррата 09.08 (D39.125):** D39.111 п.1 предписывал промту S3 «максимум = баланс МИНУС открытые холды» — формула ОШИБОЧНА (вычитание дважды), исправлена D39.115 п.2(а): максимум = Balance КАК ЕСТЬ; тело D39.111 — в слайсе `../archive/architecture/05-decisions-D39-106-123.md` (испр. 05.09: прежнее «живёт ниже в этом файле» протухло подрезкой D39.139) (голова D39.106+).
@ -3715,3 +3715,29 @@ bought NOTHING». ⇒ **`tmctl manifest` есть НИЖНЯЯ граница,
**9. ГРАНИЦЫ ВЕРДИКТА — ЧЕСТНО.** Живого платного прогона в паке не было и не требовалось: всё судимо детерминированно. ⛔ Поэтому ДВА утверждения пак НЕ доказывает и доказать не мог: **(а)** что ступень усилия ниже не ломает эхо-безопасность редактора на плотном CJK — это замер, и он стоит денег (ряд 433); **(б)** что доля 25.4 % имеет ВЕЛИЧИНУ, а не только знак — она снята с одного прогона, а квирки §3д прямо говорят, что смета DeepSeek с одиночного вызова ошибается на порядок. ⇒ пак принят как МЕХАНИЗМ (ни одного удвоения без вердикта о вырождении; каждая выброшенная попытка — строкой леджера с причиной), а не как пропорция, ровно по поправке старшего коллеги к пункту 8 горизонта.
## D39.252 — АКТ: СКВОЗНОЙ ПРОГОН B ПРИНЯТ. Книга второй раз дошла от двери до файла ($0.396657), две меры денежной дыры разошлись в РАЗНЫЕ стороны на одних данных, 85.7 % оплаченного выхода оказалось размышлением, а прибор приоритета №1 солгал на первом же живом прогоне (11.09, оркестратор №23) ✅
**Что принято.** `docs/experiments/25-door-to-file-b.md` — пре-рег (заланден `4ee7f03` ДО первого цента) плюс блок результатов (+638 строк, **0 удалений: пре-рег не тронут, сверено мною командой**); `eval/cold_run_b/` — драйвер, прибор денег, README. Исполнитель — `textmachine-82`. **Факт траты `$0.396657`** при ожидании ≈$0.42, стоп-правиле сессии $1.00 и машинном капе ≈$2.5. **Санкция владельца получена ДО траты, дословно «разрешаю», 11.09**, носитель — `docs/NEAR_TERM_PLAN.md` §«Решения владельца». Фриз: клон (не воркри) на `baa06ce`, три бинаря со штампом `vcs.revision`+`vcs.modified=false` и негативным контролем.
**1. ⭐ ГЛАВНОЕ ДЛЯ МЕТОДА: ДВЕ МЕРЫ ОДНОГО СОБЫТИЯ РАЗОШЛИСЬ В ПРОТИВОПОЛОЖНЫЕ СТОРОНЫ НА ОДНИХ И ТЕХ ЖЕ ДАННЫХ.** Выброшенные оплаченные попытки: по ЕДИНИЦАМ **23.5 % → 41.2 %**, по ДЕНЬГАМ **25.4 % → 21.1 %**. B выбросил вдвое больше единиц, но дешёвых — пять черновых чанков по ~$0.012 против одного редакторского за $0.071 у A. ⇒ **подмена одной меры другой сказала бы здесь ровно противоположное правде**, и это первый случай в проекте, где расхождение мер видно НА ДАННЫХ, а не в рассуждении. ⛔ **Первичной объявлена мера ПО ЕДИНИЦАМ — она заморожена пре-регом ДО прогона**, вторая печатается рядом. Выбор знаменателя постфактум был бы подгонкой, и пре-рег существует ровно против неё. ⚠ Величина по-прежнему не заявляется: **n = 2**, и квирки §3д требуют повторов (×2.0 за 22 пары), а не двух розыгрышей. Пере-снято мною на своей копии её замороженного прибора: числа сошлись до знака.
**2. ⭐ 85.7 % ОПЛАЧЕННОГО ВЫХОДА КНИГИ — РАЗМЫШЛЕНИЕ, А НЕ ТЕКСТ.** Замер мой, по колонке `reasoning_in_completion`, впервые заполненной живым провайдером: **153 942 из 179 613 выходных токенов**; по ролям — классификатор **97.6 %**, терминолог **92.5 %**, черновик **85.3 %**, редактор **75.2 %**. У семи выброшенных вызовов размышление съело потолок: **пять из семи — ЦЕЛИКОМ**, 8496 из 8496 и 8000 из 8000. ⚠ **Это не открытие, а подтверждение пина, который с 25.07 лежит в ДАННЫХ:** `backend/configs/models.yaml`, блок `deepseek-v4-pro`, замер мини-прогона «разница в длине РАЗМЫШЛЕНИЯ… `max_output_ratio` этого не знает и знать не может». Новое здесь — что класс верен на боевых настройках всей книги и что доля названа числом. **Ряд 422 закрыт со ссылкой на пин конфига**, иначе следующая смена откроет его заново.
**3. ⛔ ПРИБОР ПРИОРИТЕТА №1 СОЛГАЛ НА ПЕРВОМ ЖЕ ЖИВОМ ПРОГОНЕ — и это носитель, а не абзац.** Пункт 9 плана покупал «первые числа `I1`/`I2` С ЖИВОГО прогона». Первое, что они показали: **вердикт `split` по ПОДПИСАННОМУ имени героя** (`方源`) во всех трёх главах. Пере-снял руками: в отгруженном тексте **58 вхождений в четырёх падежах** («Фан Юань» 36 · «Фан Юаня» 19 · «Фан Юаню» 2 · «Фан Юанем» 1), **конкурирующих транслитераций НОЛЬ**, а все голые «Фан» принадлежат ДРУГИМ термам банка (`方正`, `方之一脉`, `方家`, `方老魔`). ⛔ **И механизм я вскрыл точнее гипотезы: `split` НЕ утверждает «две передачи».** Предикат (`backend/internal/pipeline/bookconsistency.go`, греп `func (v *verdictAcc) observe`) ставит `split`, когда в главе **попаданий МЕНЬШЕ, чем срабатываний** источника. ⇒ **имя вердикта утверждает больше, чем меряет предикат**, и читающий отчёт видит «термин разъехался» там, где сказано «нашли не каждое срабатывание». Складывается со вторым замером той же смены (эррата 11.09-з): прибор **не находит передачу у 26 термов из 69**. ⇒ **числа консистентности этого прогона БАЗОВОЙ ЛИНИЕЙ НЕ ЯВЛЯЮТСЯ до починки прибора.** Ряды **434** (не найдено 26 из 69) и **436** (имя вердикта).
**4. ⛔ КАЧЕСТВО — ВПЕРВЫЕ СУДИЛОСЬ ПО ОРИГИНАЛУ РЯДОМ С ПЕРЕВОДОМ, и вот что акт говорит СВОИМ голосом.** Читатель (отдельный опус, миллионный контекст, весь перевод 30 283 знака и весь оригинал 9021 знак целиком, доказательство дочитывания напечатано) дал **26 находок: 1 крит · 11 мажоров · 14 миноров**, по приоритетам владельца 7/6/7/6. **Крит пере-проверен МНОЮ по обоим текстам и подтверждён:** `对她来讲,自己前途光明,甲等资质的可能性极大` — перевод отдал светлое будущее и задатки первого разряда СЛУЖАНКЕ («Для неё самой будущее было светлым…»), после чего «если удастся стать наложницей Фан Юаня, она сможет из рабыни превратиться в госпожу» не следует ни из чего. **Подмена референта, разрушена причинная связь абзаца.****Адъюдикация исполнена, а не обещана:** сессия механически сверила цитаты десяти находок по обоим файлам — **10 из 10 присутствуют дословно, выдуманных нет**, — и сама исправила ТРИ числа своего читателя, считанные стеммом («род 48» → **32**: в счёт попали «родители» и «родился»; «клан 7» → **6**: один был «робко **кланя**ясь»). **Существо всех трёх устояло, числа — нет.**
**СКАЛЯР ОЦЕНКИ ПРИВОДИТСЯ ЦИТАТОЙ, А НЕ РАТИФИЦИРУЕТСЯ.** Читатель сказал: «приличный любительский, на верхней границе». **Границы, в которых это сказано, называются в том же предложении: ОДИН читатель · ОДИН прогон · книга, узнаваемая моделями 4 из 5 · адъюдикация цитат исполнена.** ⚠ И различение, которое я сперва потерял, а старший коллега вернул: **адъюдикация закрывает претрейн-риск ЧИТАТЕЛЯ (он не выдумал находок), а НЕ риск ПЕРЕВОДЧИКА** — модель, знающая книгу, переводит её не так, как незнакомую, и на этой книге это не закрывается ничем. Канон прямой: эмпирика на знакомых претрейну текстах — **предварительная**. ⇒ **делает скаляр замером не рассуждение, а два дешёвых хода:** второй читатель ДРУГОГО семейства по тем же четырём единицам (author≠reviewer) и следующий платный прогон на книге, которой в претрейне НЕТ (выбор книги — вопрос владельцу).
**5. ⭐ СВЕРКА «ПРИБОР ПРОТИВ ЧИТАТЕЛЯ» РАСПАЛАСЬ НА ЧЕТЫРЕ КЛЕТКИ, и это честнее любого общего счёта.** Свалить всё в «приборы пропустили 24 из 26» значило бы отчитаться за приборы, которых нет и не предполагалось. **(а) Прибор есть, терма нет в его популяции — молчал МАЙНЕР, не энфорсер:** восьми термов, на которых читатель поймал разнобой, в банке НЕТ вовсе, включая крупнейшую находку приоритета №1 — `家族/族` «род ↔ клан». **(б) Форма банка доехала, а дефект В САМОМ БАНКЕ:** `方家 → «род Фан»` и `方之一脉 → «ветвь Фан»` обе в банке и обе отгружены, прибор доволен — но «род» в этой книге занят кланом. ⇒ **прибор спрашивает «доехала ли форма банка» и по построению НЕ МОЖЕТ спросить «верна ли сама форма»: содержание банка не судит ничто.** **(в) Прибор знает конструкцию поимённо и по ратифицированному решению её не судит:** чекер `DC2 千万` своим комментарием объявляет класс неразрешимым офлайн — а читатель с оригиналом решил его одной строкой. Это не дыра, а ТОЧНАЯ ГРАНИЦА детерминированного гейта, и её цена теперь названа в тексте. **(г) Прибора для класса нет вовсе — 20 находок из 26:** подмена референта · согласование рода · кальки идиом · регистр · утрата эха реплики · дописанный образ.
**И один прибор ИЗМЕРИЛ предмет, но не имеет порога:** сжатие абзацев (мой счёт: **233 → 162, 30 %**) — движок печатает предложений на абзац, но знает число абзацев только в ПЕРЕВОДЕ. **Самая крупная художественная потеря прогона измерима одним вычитанием, которого никто не делает.** Ряд **437**.
**6. ЧИСЛА, С УКАЗАНИЕМ ЧЬИМ ПРИБОРОМ.** **Мои, пере-снятые на артефактах прогона:** 35 строк · 28 вызовов · 7 бесплатных подстановок · `$0.396657` · числитель-1 **7 из 17 = 41.2 %** единиц при `$0.083587 = 21.1 %` денег · числитель-2 `$0.026771` / `$0.023834` · оба денежных пути совпали · размышление 153 942 из 179 613 · 58 вхождений имени в 4 падежах при 0 конкурентах · абзацы 233 → 162 · пре-рег +638/0. **Её, приняты с названным прибором:** `wave_selection` 10 строк = 6 `draft` + 4 `edit` над РАЗНЫМИ снапшотами (у черновика инъекция пуста, у редактора 21/26/23/26 попаданий) — **число сошлось с пре-регом**; `reasoning_in_completion` трёхзначно **NULL 7 · 0 = 0 · >0 = 28**, и все семь `NULL` — ровно бесплатные подстановки, где провайдера не спрашивали; банк 66 строк, судимых 65, `I1 = 6`, `I2 = 7`; 17 узлов пре-рег-таблицы ✅; каждый из 4 отгруженных юнитов найден в скачанном файле подстрокой ровно один раз, смещения возрастают, **остаток разобран ДО НУЛЯ** (46 знаков — заголовок и переводы строк). ⛔ **И собственный аудит отчёта перед сдачей: 17 несущих чисел из 17 пере-выводятся из артефактов, ни одного «по памяти».**
**7. ⛔ ЧЕГО ПРОГОН НЕ КУПИЛ — секцией, а не умолчанием.** **Эскалация не исполнялась** (решение моё: `budget_usd: 0` не трогать ради байт-в-байт тождества покупающего файла с прогоном A; ряд **435**). **Идемпотентный резюм и терминальное состояние упражнены ЧАСТИЧНО:** резюм был один, объявленный, прогон не останавливали потолком ⇒ «не упражнялось», а не «проверено». **Один гость, без второй пары, фронт заморожен.** **Судьи на пути нет** (`role: judge` живёт только в `c2`), гейт `coverage` выключен ⇒ из пяти гейтов работали четыре. **`epubcheck` не гонялся** — `java` на хосте нет; EPUB судился структурно. ⛔ **И деньги: `$0.396657` — НАША МОДЕЛЬ, а не счёт вендора.** Прогон шёл в ОФФ-ПИК, а леджер осознанно считает по ПИКОВОЙ цене (`D39.136`) ⇒ настоящий счёт за B примерно вдвое меньше, за A — нет (A шёл внутри пика). Сравнение ЛЕДЖЕРОВ честное, фраза «мы заплатили» — нет. **Назвала это сессия, до прогона.**
**8. ⭐ ВРЕМЯ У ЭКРАНА ВПЕРВЫЕ ЗАМЕРЕНО: 20 мин 06 с на 4 единицы.** `ПТ-19` называет скорость киллерфичей, а времени у экрана никто не мерил. ⚠ Экстраполяция на книгу требует знаменателя ПО ЕДИНИЦАМ, а не по главам, и здесь единиц четыре.
**9. ⭐ ЧТО СЕССИЯ СДЕЛАЛА ЛУЧШЕ ЗАКАЗА — три вещи, каждая стоила бы круга приёмки.** **(1)** Возразила составу §4.8 ДО прогона: дёрганье API на измеряемом прогоне САМО производит число, которое потом предъявляется как свойство движка ⇒ все формы ушли на $0-руку, в платном остался один объявленный резюм. **(2)** Обе миграции она исполнила живьём на ДЫМУ и **честно не приписала это B**, а пере-формулировала, что B покупает — поведение колонки на провайдере, который поле шлёт; сверх того проверила миграцию на ЗАПОЛНЕННОЙ базе (33 строки, 69 термов, `NULL` на всех ранее написанных), потому что пустая база о данных не говорит ничего. **(3)** Назвала стохастику стохастикой: классификатор дал 42 терма из 66 без типа на попытке 1, а на резюме — 22/22 · 19/19 · 24/24; **писать «регрессия» было бы верным результатом при неверной гипотезе.** ⚠ И находка оттуда же, предъявленная кодом: **банк-роли идут МИМО обеих ветвей лечения**`terminologist.go` зовёт попытку напрямую, а лекарства живут в цикле `runStage`; счётчика доли ответов классификатора нет ни одного. Ряд **438**.
**10. МОИ ОШИБКИ СМЕНЫ, названные здесь, чтобы не повторились.** **(1)** Указал сессии неверный источник ключей: сказал «значение в `env.sh`», а там КОММЕНТАРИЙ «is NOT set here either» — совпадение пришло из рекурсивного грепа по другому файлу, и я приписал его первому в списке. Класс мой и известный: **счёт по подстроке — не счёт по владению.** **(2)** Поднял ложную тревогу «один терм тремя формами», а это оказались ДВА РАЗНЫХ исходных терма (`宗族祠堂` и `宗祖祠堂`), которые банк различает верно; снял через минуты, до того как сессия понесла её читателю. **(3)** Назвал адъюдикацию цитат закрытием претрейн-риска — она закрывает риск ЧИТАТЕЛЯ, не ПЕРЕВОДЧИКА; поправил старший коллега. **(4)** Прогнал её замороженный прибор по базе без платных строк и получил `ZeroDivisionError`**непроверенная ветвь, которую прибор сам объявлял непроверенной, упала на первом же исполнении**; правка лендится отдельным коммитом как объявленная девиация фриза.

View file

@ -1,5 +1,14 @@
# Промт: сквозной пак «ХОЛОДНЫЙ ПРОГОН B — платформа → бэкенд → ФАЙЛ, ВТОРОЙ раз»
> ✅ **АРХИВ — ПАК ОТРАБОТАН И ПРИНЯТ 11.09: акт `D39.252`.** Книга второй раз дошла от двери до ФАЙЛА,
> факт **$0.396657** при ожидании ≈$0.42; пре-рег заландился ДО первого цента (`4ee7f03`) и не тронут
> (+638/0). ⭐ Две меры денежной дыры разошлись в РАЗНЫЕ стороны на одних данных (единицы 23.5→41.2 %,
> деньги 25.4→21.1 %). ⭐ **85.7 % оплаченного выхода книги — размышление, а не текст.** ⛔ Прибор
> приоритета №1 солгал вердиктом `split` по подписанному имени героя при 58 вхождениях и нуле
> конкурентов. Качество впервые судилось по ОРИГИНАЛУ рядом с переводом: 26 находок, 1 крит.
> Ряды 434 · 436 · 437 · 438. ⛔ **Инструкции отсюда НЕ ИСПОЛНЯЮТСЯ** — читать только как историю.
> Выдан оркестратором №23 (сессия `textmachine-11`) 11.09. Пак **ПЛАТНЫЙ**, санкция владельца получена
> дословно («разрешаю») на прямой вопрос с числами: **ждём ≈$0.42, машинный кап ≈$2.5 холда**. Носитель
> санкции — `docs/NEAR_TERM_PLAN.md` §«Решения владельца, уже полученные».

View file

@ -206,3 +206,641 @@ M · пусто у K, и K проверяется ТЕКСТОМ**, а не пр
целы (33 и 69), `wave_selection` создана пустой, **`reasoning_in_completion` = `NULL` на всех 33
ранее написанных строках** — ровно то, что миграция обещает. Оригинал не тронут (sha сверена
до и после). Пустая база про данные не говорит ничего; эта — говорит.
---
# РЕЗУЛЬТАТЫ (дописано ПОСЛЕ прогона; ничего выше не правлено)
> ⚠ **О НУМЕРАЦИИ.** Секции РЕЗУЛЬТАТОВ нумеруются своим рядом и с §5 по §8 совпадают номерами с
> секциями пре-регистрации — та заморожена фриз-коммитом и правке не подлежит, поэтому вместо
> пере-нумерации замороженного текста здесь разведены ССЫЛКИ: ссылка на пре-рег всегда пишется
> «§N пре-рега», ссылка на секцию результатов с номером 58 — «§N результатов», а §9 и дальше
> однозначны сами по себе (в пре-реге таких номеров нет).
**Книга дошла до файла.** `蛊真人`, главы 13, zh→ru, прогон `run_Q6DSXGS7TW52TFNO` над книгой
`bk_NH6275ZIRFFTLZHG`: старт **22:48:38**, финиш **23:08:44** (**20 мин 06 с**), две попытки
(банк-стоп exit 3 и резюм exit 0), `status = ready`, `paused_reason` пусто, `failure_reason` пусто.
Все **4** юнита `translated`, обе выгрузки `complete = t`, оба файла скачаны и прочитаны.
**Цена доведённой до конца книги: $0.396657.**
## 5. ДЕНЬГИ ПРЕ-РЕГИСТРИРОВАННОЙ МЕРОЙ — и меры разошлись в РАЗНЫЕ стороны
Прибор — `eval/cold_run_b/measure.py`, тот же, что перед прогоном пере-снял КАЖДОЕ опубликованное
число прогона A на его собственной базе (`--selfcheck` → PASSED).
| | прогон A | прогон B |
|---|---|---|
| цена книги | $0.419423 | **$0.396657** (5.4 %) |
| строк `request_log` / вызовов / бесплатных подстановок | 33 / 27 / 6 | 35 / 28 / 7 |
| единиц всего / платных | 17 / 17 | 17 / 17 |
| **ЧИСЛИТЕЛЬ 1 — по ЕДИНИЦАМ** | 4 из 17 = **23.5 %** | 7 из 17 = **41.2 %** |
| **ЧИСЛИТЕЛЬ 1 — по ДЕНЬГАМ** | $0.106472 = **25.4 %** | $0.083587 = **21.1 %** |
| ЧИСЛИТЕЛЬ 2 (пере-майнинг банка), «все кроме первого» | $0.028742 = 6.9 % | $0.026771 = **6.7 %** |
| ЧИСЛИТЕЛЬ 2, «все кроме последнего» | $0.035723 = 8.5 % | $0.023834 = 6.0 % |
| два денежных пути (`degraded` · `ok=0 AND cost>0`) | совпали | **совпали** |
| длительность | 25 мин 31 с | 20 мин 06 с |
**ГЛАВНОЕ В ЭТОЙ ТАБЛИЦЕ — ДВЕ СРЕДНИЕ СТРОКИ, И ОНИ ИДУТ В РАЗНЫЕ СТОРОНЫ.** Доля ЕДИНИЦ почти
удвоилась (23.5 → 41.2 %), а доля ДЕНЕГ УПАЛА (25.4 → 21.1 %). Причина видна поимённо: B выбросил
БОЛЬШЕ единиц, но ДЕШЁВЫХ — пять черновых чанков по ~$0.012 против одного редакторского вызова за
$0.071 у A. **Подменить одну меру другой здесь значило бы сказать ровно противоположное правде**, и
это первый случай в проекте, где расхождение двух мер видно НА ДАННЫХ, а не в рассуждении. Ровно
поэтому мера и пре-регистрировалась.
**ВЕЛИЧИНА НЕ ЗАЯВЛЯЕТСЯ.** n = 2. Квирки §3д: при sd логарифма 0.82 парный дизайн ловит ×2.5 за
13 пар. Установлен ЗНАК: на обоих прогонах доля выброшенного лежит в первой четверти цены книги, и
обе меры на обоих прогонах ненулевые.
**И ТРЕТЬЕ ЧИСЛО, СВОЁ У ДВИЖКА.** Его собственная новая строка `MONEY BY WHAT IT BOUGHT` даёт:
отгруженный текст $0.254510 (10 вызовов) · терминология книги $0.034726 (7) ·
**superseded-by-a-later-call $0.107421 (11) = 27.1 %** · bought-nothing-shippable $0.000000 (0).
Это ТРЕТЬЕ определение («вытеснено поздним вызовом»), оно ШИРЕ моего числителя-1, и складывать три
определения нельзя. Самая крупная одиночная потеря, названная самим движком:
`book/batch0/terminology/classifier` — $0.012646.
## 6. ⭐ ОБЕ МИГРАЦИИ ПРЕДЪЯВЛЕНЫ ДАННЫМИ
### 6.1 `v17 wave_selection` — 10 строк, и волны стоят над РАЗНЫМИ банками
Пре-рег (узел 21) требовал **10 = 6 `draft` + 4 `edit`**. Факт: **ровно так.**
| волна | строк | snapshot_id | что показали |
|---|---|---|---|
| `draft` | 6 | `fef36e1dd642b8c4…` | `injected_srcs` = `[]` на ВСЕХ шести, `n_exact_hits = 0` |
| `edit` | 4 | `9ae4e88aa354fb3b…` | `n_exact_hits` = 21 · 26 · 23 · 26, инъекция 124159 байт |
Контроль рядом: `retrieval_state` = 6 строк, различных черновых чанков в `request_log` = 6.
⇒ **ось, которой у `retrieval_state` нет, отвечает: черновой волне не показали НИЧЕГО, редакторской —
весь обогащённый банк.** До v17 второй половины этого ответа в схеме не существовало.
### 6.2 `v18 reasoning_in_completion` — ТРЁХЗНАЧНО, и третье значение оказалось несущим
**`NULL` = 7 · `0` = 0 · `>0` = 28 · сумма 35 = числу строк `request_log`.**
И семь `NULL` — это РОВНО семь бесплатных подстановок из чекпойнтов (`tm_hit = 1`, `cost = 0`), то
есть строки, где провайдера не спрашивали вовсе. Это дословно семантика, которую обещает комментарий
миграции: «NULL = the question was not answered». Устаревшая колонка `reasoning_tokens` при этом
равна 0 на всех 35 строках — как и объявлено, ПО ПОСТРОЕНИЮ.
⭐⭐ **И ВОТ ЧТО ЭТА КОЛОНКА ПОКАЗАЛА ВПЕРВЫЕ — РЯД 422 ЗАКРЫТ ЧИСЛОМ, А НЕ МЕХАНИЗМОМ.**
Доля РАЗМЫШЛЕНИЯ в выходе, за который уже заплачено:
| стадия · роль | вызовов | выходных токенов | из них размышление | доля |
|---|---|---|---|---|
| `draft` · translator | 11 | 88 586 | 75 569 | **85.3 %** |
| `edit` · editor | 4 | 41 879 | 31 477 | **75.2 %** |
| `terminology` · classifier | 6 | 27 754 | 27 097 | **97.6 %** |
| `terminology` · terminologist | 7 | 21 394 | 19 799 | **92.5 %** |
**на БОЕВЫХ настройках подавляющая часть купленного выхода — думанье, а не текст.** И у всех семи
выброшенных вызовов размышление съело ПОЛНЫЙ потолок: 8496/8496 ×3, 8496/7110, 8496/8496, 8000/7966,
8000/8000. Мина видна в НАШЕЙ собственной телеметрии впервые за жизнь проекта.
## 7. ⛔ НАХОДКА, КОТОРОЙ НЕ БЫЛО НИ У КОГО: БЭНК-РОЛИ НЕ ЗАВЕДЕНЫ НА ЛЕКАРСТВО
**Что видел.** На попытке 1 классификатор терминологии: `batch=0 asked=22 answered=4` (`length`,
$0.012646) и `batch=2 asked=24 answered=0` (`empty`, $0.012133). **42 терма из 66 остались без
машинного типа, оба провальных батча ОПЛАЧЕНЫ, регенерации не было.**
**Чем предъявлено, что лечение существует и бэнк-роли на него не заведены.** Регенерация живёт в
`runStage` (`backend/internal/pipeline/stagerun.go:39`), и там её ДВЕ ветви: «regenerating with less
thinking at the SAME budget» (ручка `lower_effort_on_empty`, лендится выключенной — `D39.251`) и
«stage flagged, regenerating with a larger budget» (`stagerun.go:235` — работает, и на этом прогоне
вылечила **5 черновых из 5**). Бэнк-роли идут МИМО `runStage`: `runBankAttempt` зовёт
`r.runAttempt(...)` напрямую (`backend/internal/pipeline/terminologist.go:832`). Комментарий рядом
объясняет, почему у них нет обязательного ожидания, — про лечение он не говорит ничего.
⇒ **одна и та же задокументированная вендорская мина: у ЧЕРНОВОЙ стадии лекарство есть, у БЭНК-РОЛИ
нет ни лекарства, ни счётчика.**
**ЧЕМ ЭТО НЕ ЯВЛЯЕТСЯ, и я говорю это прежде, чем меня спросят.** На резюме тот же классификатор
ответил **22/22 · 19/19 · 24/24** — та же книга, тот же конфиг, четыре минуты спустя. Контроль по
прогону A: у него все три батча чисты (23/23, 21/21, 25/25). ⇒ **это СТОХАСТИКА провайдера, а не
регрессия между A и B**, и назвать это регрессией значило бы получить верный результат при неверной
гипотезе. Механизм задокументирован: разброс размышления ×163 при побайтно одном входе (квирки п.2).
**ВТОРАЯ ПОЛОВИНА — ПРО НАБЛЮДАЕМОСТЬ, и она хуже первой.** Итоговая строка стадии печатает
`classify_batches_dropped=0 unanswered=0 bad_lines=0 consolidated=66 declined=0`. Это НЕ ложь, а
ОТСУТСТВИЕ: `ClassifyBatchesDropped = crun.dropped` (`terminologist.go:420`) считает батчи,
выброшенные СВОИМ БЮДЖЕТОМ, а `unanswered`/`bad_lines` принадлежат РЕНДЕР-проходу.
**Счётчика доли ответов классификатора нет ни одного**, и единственный носитель факта — WARN посреди
прохода. Бюджет ни при чём: лимит $1.00, потрачено $0.029749.
## 8. КОНСИСТЕНТНОСТЬ — ВПЕРВЫЕ С ЖИВОГО ПРОГОНА, СО ВСЕМИ ЗНАМЕНАТЕЛЯМИ
Прибор движка (`QualityReport().Consistency`, печатает `tmctl report`), по ОТГРУЖЕННОМУ тексту:
```
population: bank rows=66 · judgeable (a dst to look for)=66 · no dst=0 · shipped units read=4
of the judgeable: key never fired in the source=1 · spoiler-window blocked=0 · fired and judged=65
occurrences: bank keys fired and judged=268 · accepted renderings found in the text=276
I1 ONE FORM PER TERM: more than one rendering=6 · a single rendering=52
I2 THE BANK'S FORM IS THE ONE SHIPPED (D39.104): never reached the reader=7
NESTED ROWS EATEN BY A LONGER KEY whose own rendering did not reach the text=1
⚠ under the post-check's OWN equality the same book reads: absent=13 · more than one=10 · single=42
```
**Поимённая таблица вердиктов, которую прибор печатает сам (с ГЛАВАМИ):** `absent` ×6
(`九族` «девять поколений рода» · `华夏` «Китай» · `时辰` «шичэнь» · `话事人` «распорядитель» ·
`熊家寨` «крепость рода Сюн» · `穿越众` «попаданец» · `管家` «домоправительница») · `split` ×6
(`古月族长` · `家老` · **`方源` «Фан Юань», подписанный, 63 сработки / 58 отгружено, strict 36, split
внутри глав 1, 2 и 3** · `牌位` · `舅父` · `沈翠`) · `covered` ×1 (`魔道`, съеден более длинным ключом
в главах 2 и 3).
**Самое дорогое в этой таблице — строка `方源`.** Это ПОДПИСАННЫЙ мною терм, имя главного героя, и
прибор говорит `split` по всем трём главам: 63 сработки ключа, 58 найденных передач, а под строгим
равенством — 36. То есть **даже подписанная форма расходится внутри книги**, и это ровно приоритет
№1 владельца, замеренный на отгруженном тексте.
**Мой независимый прибор** (`~/tm-coldrun-b/tools/shipped.py`, тот же, что перед прогоном
пере-снял артефакты A): передача найдена у **62 из 66**, пусто у **4**, и все четыре напечатаны
поимённо (`九族` · `时辰` · `熊家寨` · `管家`). ⚠ Он НАЗЫВАЕТ, какой банк прочёл — ФИНАЛЬНЫЙ, — и это
не формальность: см. §8.1.
### 8.1 ⭐ ВТОРАЯ ТОЧКА К ЭРРАТЕ `D39.247` §4: пере-майнинг двигает ~20 % банка
Сравнение предложения банка НА СТОПЕ с ФИНАЛЬНЫМ банком того же прогона:
| прогон | термов в банке | передач СДВИНУЛОСЬ между стопом и финалом |
|---|---|---|
| A | 69 | **12** (и 12 из 12 уехали читателю в ФИНАЛЬНОЙ форме) |
| B | 66 | **14** |
Примеры с B: `开窍大典` «великая церемония раскрытия апертуры» → «церемония открытия апертуры» ·
`管家` «домоправитель» → «домоправительница» · `舅母` «жена дяди по матери» → «тётя по матери» ·
`赤铜香炉` «курильница из красной меди» → «медная курильница».
⇒ **прибор, сверяющий отгруженный текст с банком СТОПА, на каждом пятом терме сверяется не с тем
банком.** На A это дало шесть ложных «⛔ отдано не банковской формой»; здесь оно названо ДО замера,
и прибор B читает финальный банк.
### 8.2 ⛔ ПОСТ-ЧЕК МОЛЧИТ ТАМ, ГДЕ ПРИБОР КНИГИ ГОВОРИТ
`retrieval_state.n_postcheck_miss = 0` на ВСЕХ шести чанках — при том, что прибор книги на том же
тексте называет 6 расходящихся термов и 7 не доехавших. Причина названа комментарием самого движка
(`bookconsistency.go`): пост-чек считает ТОЛЬКО промах `Confirmed`-строки, а `Confirmed` — это
`status='approved'`, которых в банке **2 из 66**. ⇒ **счётчик решает на единице, которой в продукте
нет** (`D39.144`: пер-термной подписи не существует, банк подписывается целиком). Это не дефект
счётчика — это дефект ЕДИНИЦЫ, на которой он построен, и сегодня он даёт ноль там, где текст
расходится.
## 9. ИСХОД КАЖДОЙ СТРОКИ ПРЕ-РЕГ-ТАБЛИЦЫ
| # | Узел | ФАКТ | Сошлось |
|---|---|---|---|
| 1 | стенд мой | `tmplatformd` pid 2337390 на 8098; на 11434 не слушает НИКТО (контроль: 8 слушателей на хосте) | ✅ |
| 2 | код из фриза | у ПЯТИ бинарей `vcs.revision=baa06ce…`, `modified=false`, строк `vcs.*` = 3; негативный контроль из главного дерева даёт `modified=true` | ✅ |
| 3 | гость и деньги | ОТДЕЛЬНАЯ платная учётка `u_RR5RMQNSX2KZMNXL`, грант 2 500 000 µUSD одной строкой; **ледждер-строк у ЭТОЙ учётки 1 при 30 у всех** | ✅ |
| 4 | интейк | 201, `chapter_count: 3`; `character_count: 9677` (приблизительный счёт интейка), точный `source_chars = 8759` — как и предсказано в пре-реге | ✅ |
| 5 | срез совпал | `units_total = 4`, по главам **2/1/1**, `chunks_total = 6` | ✅ |
| 6 | цена и бонд | `funded: true`, `covers_all`, `affordable_chapters: 3`, `expected 84 122`, холд **2 241 631** — до микро-доллара как в пре-реге | ✅ |
| 7 | старт | 202, `translating`, `ordered_chapters: 3`, `runs.bond_funded = t`; **и ответ старта сказал `term_consistency_funded: false`** — находка 7 прогона A ВОСПРОИЗВЕДЕНА | ✅ (включая предсказанную аномалию) |
| 8 | ключи живы | первый платный вызов оплачен ($0.012048), отказов по авторизации 0 из 35 | ✅ |
| 9 | кадры | **51 кадр шести типов**: `hello` 2 · `progress` 10 · `spend` 28 · `unit_done` 8 · `bank_stop` 1 · `finished` 2 | ✅ |
| 10 | банк-стоп | `awaiting_bank`, exit **3**, `.bank.json` несёт `proposed[]` = **66** и `terms: []` — ряд 224 воспроизведён | ✅ |
| 11 | проекция банка | **0** строк `bank_terms` в момент стопа, **66 (2 approved)** после закрытия | ✅ |
| 12 | дверь правок | preview → 200, `preview: true` в теле, на диске НИЧЕГО (sha `mined-delta.yaml` до и после); apply → оба `state: applied`, файл 906 байт появился | ✅ **с носителем, которого у A не было** |
| 13 | резюм (РОВНО ОДИН) | 202, попытка 2, `exit_code = 0` | ✅ |
| 14 | книга переведена | 4 из 4 `translated` (контроль: юнитов книги — 4) | ✅ |
| 15 | сборка | `complete: true`, `pending/withheld/incomplete/stale/ghost = 0`, `stale_unknown: false`, `config_drift: false`, `total_units: 4` | ✅ |
| 16 | выгрузка | txt 54 848 байт `complete = t`; epub 20 546 байт `complete = t`; длина скачанного = `size_bytes` | ✅ |
| 17 | ФАЙЛ | txt sha `43b3cc4f…`; epub sha `2560f9f2…`, `testzip() = None`, 7 записей zip, `container.xml``OEBPS/content.opf`, `nav` объявлен, **3** itemref, оглавление «Глава 1/2/3» | ✅ |
| 18 | человек прочитал | первый разворот — связный русский текст, цитата ниже | ✅ |
| 19 | деньги сошлись | Σ `request_log` = **396 657** µUSD = Σ `settlement` этой учётки = (грант баланс) = 2 500 000 2 103 343; открытых резерваций 0 | ✅ |
| 20 | ничего не реплеено | `distinct model_actual` = `deepseek-flash`, `deepseek-v4-pro`**`local-*` нет**; `tm_hit=1` у 7 строк, разбивка ПО ПОПЫТКАМ из `trace_id`: попытка 1 — **0**, попытка 2 — **7**, все по $0 | ✅ |
| 21 | `wave_selection` | **10 = 6 `draft` + 4 `edit`**, разные снапшоты, §6.1 | ✅ |
| 22 | `reasoning_in_completion` | **`NULL` 7 · `0` 0 · `>0` 28**, сумма 35 = строкам, §6.2 | ✅ |
| 23 | консистентность | I1/I2 со всеми знаменателями, §8; прибор НАЗЫВАЕТ прочитанный банк | ✅ |
**Первый разворот отгруженного файла (узел 18), дословно:**
> Пусть тело погибнет — сердце демона не раскается
>
> — Фан Юань, послушно отдай Цикаду Весны и Осени, и я подарю тебе быструю смерть!
>
> — Старый демон Фан, не надейся сопротивляться. Сегодня мы, великие школы праведного пути,
> объединились, чтобы разрушить твоё демоническое логово.
### 9.1 ⭐ ПРОВЕРКА, КОТОРОЙ У ПРОГОНА A НЕ БЫЛО: остаток разобран ДО НУЛЯ
Каждый из **4** отгруженных юнитов найден в скачанном файле **подстрокой, ровно один раз**, смещения
строго возрастают (37 · 5874 · 11284 · 21895), ни один не найден дважды. Σ юнитов **30 237** знаков,
файл **30 283****остаток 46 знаков, и он напечатан целиком**: строка заголовка книги плюс
переводы строк между блоками. ⇒ **между тем, что оплачено, и тем, что скачано, не потеряно и не
добавлено ничего.**
## 10. КОД, КОТОРЫЙ ОТРАБОТАЛ НА ЭТОЙ КНИГЕ (§4.7 пака)
**Что реально бежало:** черновая волна (`draft`/translator, `deepseek-v4-flash`, 6 чанков, 11 платных
вызовов) → контур банка (`terminology`/classifier + terminologist, `deepseek-v4-flash`, 13 платных
вызовов за два захода) → банк-стоп и дверь правок → редакторская волна (`edit`/editor,
`deepseek-v4-pro`, 4 юнита, 4 вызова) → четыре детерминированных $0-гейта → сборка → выгрузка.
**Что НЕ бежало и почему:**
* **эскалация — 0 хопов**, `escalation.budget_usd: 0` в боевом `pipeline-c1.yaml` (§6.1 пре-рега).
`escalated = 0` во всех 10 строках `chunk_status`. ⇒ о работе эскалации прогон B, как и A, не
говорит НИЧЕГО — **второй боевой прогон подряд.**
* **судья**`role: judge` живёт только в `c2`, на этом пути его нет вовсе.
* **гейт `coverage`**`enabled: false`; работали четыре гейта из пяти.
* **ручка `lower_effort_on_empty`** — лендится выключенной (`D39.251`), поэтому первая ветвь лечения
в `runStage` не сработала ни разу; сработала вторая (удвоение потолка), 5 раз из 5.
**Исход каждого чанка — `disposition = ok` у ВСЕХ десяти строк `chunk_status`**, а история сохранена
в `first_flag_reason`: `empty` ×5, `length` ×1, чисто ×1 на черновике; на редактуре флагов нет.
⇒ **путь не рвался ни разу; он дорожал.**
**Три следа, и они НЕ три свидетеля.** Postgres платформы МАТЕРИАЛИЗУЕТСЯ из `events.jsonl` движка,
а текст и файл платформа берёт вербами `tmctl`. По-настоящему независимы:
**(а)** скачанные байты и их sha256 и **(б)** маркеры выхода systemd
(`run_Q6DSXGS7TW52TFNO-1.exit``status: "3"`, `-2.exit``status: "0"`), то есть выход прогона
подтверждён ОПЕРАЦИОННОЙ СИСТЕМОЙ вне цепочки платформы. Биллинга провайдера у нас нет вовсе.
**Воспроизведённые находки прогона A** (то же поведение, другой прогон, другой движок):
`err` пуст на ВСЕХ 35 строках, включая семь провальных — **аудит, написанный через `err`, прочитает
этот прогон как идеально чистый** (A, находка 15) · `model_actual = deepseek-flash` на **31** строке
из 35 при `model_requested = deepseek-v4-flash` (ряд 413) — ⭐ **и здесь B отличается от A: движок
теперь САМ кричит об этом на каждом вызове** WARN'ом «priced by a model that did not answer: the
answering slug is not in the catalogue … priced_by=requested», которого в журнале A нет ни разу ·
ответ старта говорит `term_consistency_funded: false` при уже выставленном `bond_funded = t`
(A, находка 7) · `409 not_priced` сразу после интейка — гонка материализации цены (A, находка 8).
## 11. ДЕВИАЦИИ — объявлены, не подразумеваются
1. ⛔ **ПРИБОР ПРАВЛЕН ПОСЛЕ ФРИЗА, и нашла это не я.** `measure.py` падал с `ZeroDivisionError`
(`measure.py:83`) на базе, где платных единиц НОЛЬ, — то есть **ровно на той ветви, которую его
собственный вывод объявляет непроверенной** («the paid filter removed nothing — its behaviour is
still unexercised»). Нашла приёмка, прогнав прибор по ДЫМОВОЙ базе; я воспроизвела, прежде чем
чинить. Правка: деление загорожено, и ноль печатается читаемо — «share UNDEFINED — no unit was
paid for at all (not the same statement as 0%)». **Числа прогона B этим не тронуты** (пере-снято
после правки: 35/28/7, $0.396657, 7 из 17 = 41.2 %, $0.083587 = 21.1 %), и `--selfcheck` по базе
прогона A по-прежнему PASSED. Правка идёт ОТДЕЛЬНЫМ коммитом после фриза, как требует норма.
2. **Инструменты стенда переиспользованы из фриза прогона A без единой правки** (`eval/door_to_file/stub`
и `.../zeropipe`), но собраны ИЗ КЛОНА B и несут его VCS-штамп. ⇒ девиация §12.5 отчёта A («два
моих инструмента собраны не из фриза») здесь закрыта построением, а не повторена.
3. **Дымовая рука шла на ОТДЕЛЬНОЙ книге и ОТДЕЛЬНОЙ учётке, но в ТОЙ ЖЕ базе Postgres.** Выбор
объявлен в пре-реге: холодность живёт на `book_id`, поэтому другая книга защищает её полностью, а
общая база означает, что платная рука едет по базе, которую дым уже прогрел. Факторов между дымом и
платной рукой сменилось четыре: пайплайн · книга · `models.yaml` (дымовой несёт номинальную цену
локальной модели, без которой книга не продаётся) · учётка.
4. **`TM_PLATFORM_BACKUP_DIR` и `TM_PLATFORM_PGRESTORE_BIN` заведены мной на платной руке** — на
дымовой их не было. Довод: без них демон печатает WARN «this deployment keeps NO restore point of
the paid translations or of the credit ledger». Путь проверен на $0-руке до того, как на него
положились. Это правка КАССЫ, не покупающего файла ⇒ пере-фриза не требует (§4.2 пака).
5. **`epubcheck` не гонялся** — `java` на хосте нет и поставить нельзя; пак это разрешает. EPUB судится
структурно.
## 12. ⭐ НАХОДКИ ВНЕ ЗАКАЗА (§4.10 пака) — криты · мажоры · регрессии · баги · точки улучшения
Каждая — что видел · чем предъявлено · почему это не вкусовщина · чего стоит.
### 12.1 МАЖОР. Учётка, которой не хватает на книжный бонд, покупает УРЕЗАННЫЙ продукт ПО ТОЙ ЖЕ ЦЕНЕ, а решающая пара контракта об этом молчит
**Что видел** ($0-рука, воспроизводимо, тела обоих ответов в `evidence/http/`):
| баланс учётки | `verdict` | `affordable_chapters` | `blocked` | `term_consistency_funded` | `hold_micro_usd` | `expected_micro_usd` |
|---|---|---|---|---|---|---|
| $2.50 | `covers_all` | 4 | `null` | **`true`** | **2 004 553** | 2324 |
| $0.05 | `covers_all` | 4 | `null` | **`false`** | **4 553** | 2324 |
Старт при балансе $0.05 **ПРИНЯТ (202)**, прогон дошёл до `ready`.
**Почему это не вкусовщина.** Реальность ТРЁХСОСТОЯННА — «заказ невозможен» · «заказ возможен
УРЕЗАННЫМ» · «заказ возможен полностью», — а решающая пара контракта (`verdict` + `blocked`)
ДВУХСОСТОЯННА, и третье состояние выражено булевым полем ВНЕ решающего пути. Из холда молча исчезает
двухдолларовый бонд контура терминологии, **цена при этом та же** (2324 µUSD в обоих случаях), и
`affordable_chapters` тоже тот же. То есть покупателю называют ту же цену и тот же объём за продукт,
у которого выключена консолидация терминов — приоритет №1 владельца.
**Чего это стоит и чего НЕ стоит — обе половины.** Запись факт НЕСЁТ: `runs.bond_funded = f` у
деградированного прогона против `t` у контрольного, и `term_consistency_funded` едет на проводе ⇒
пост-фактум это аудируемо, «невидимо навсегда» сказать нельзя. ⛔ **А размер эффекта НЕ ИЗМЕРЕН:** на
дымовой книжке с тремя термами контур всё равно отработал (1 классификатор + 1 терминолог против
2 + 2 на профинансированной), и на трёх термах эти два числа различаться не могут. **«Контур не
исчез» доказывает, что механизм ЕСТЬ, а не что урезание безвредно.**
**Ратифицировано ли.** Греп `docs/architecture/05-decisions-log.md` по `term_consistency_funded` и
`bond_funded` даёт только контрактную nullability (`D39.…`, минор 0.13.1) и отчёт прогона A. Дизайна
«непрофинансированная учётка получает урезанный контур с булевым сигналом» в журнале решений НЕТ.
**это вопрос о ФОРМЕ КОНТРАКТА владельцу с рекомендацией, а не доказанный дефект.** Рекомендация:
категория «принят с урезанным объёмом» в `verdict`, а не булево поле сбоку; `blocked: null` при этом
СВОЁ значение несёт верно («заказ возможен») и менять его не надо.
### 12.2 МАЖОР (наблюдаемость). У контура банка нет счётчика доли ответов — см. §7 результатов
Цена на этом прогоне: **$0.024779 и 42 терма из 66 без машинного типа**, при итоговой строке стадии,
которая говорит «всё чисто». Лечение существует и стоит в соседнем цикле (`stagerun.go:235`), бэнк-роли
на него не заведены (`terminologist.go:832`).
### 12.3 МИНОР (упрочнение). Битый процент-эскейп в параметре запроса отвечается как ОТСУТСТВИЕ параметра
**Механизм различён ТРЕМЯ пробами, а не одной:** `GET /v0/books?cursor=not-a-real-cursor`
**400 `cursor_invalid`** (механизм ЖИВ, `decodeCursor` в `platform/internal/pgstore/books.go:1325`
отвергает по-настоящему) · `GET /v0/books?cursor=%zz`**200 и полная первая страница** · контроль
без курсора → тот же 200. Причина не в `decodeCursor`: `r.URL.Query()` молча выбрасывает параметр с
неразбираемым эскейпом и не отдаёт ошибку разбора никому, так что `Get("cursor")` возвращает `""`.
Класс системный — то же на `limit` (там безвредно: «выброшен» = «дефолт»).
**Размер называю честно: МАЛЫЙ.** Курсор — base64url, `%` в корректно переданном курсоре не
встречается; реальный триггер — двойное кодирование или прокси. Это упрочнение, не денежный путь. Но
«неразбираемый запрос отвечается как другой, валидный» — тот класс, ради которого у платформы и
заведена машинная модель ошибок, и этот путь её минует.
### 12.4 МИНОР (контракт). Внутри ПРЕВЬЮ пер-элементный `state` называется `applied`
Ответ двери правок при `preview: true` несёт `"state": "applied"` у каждого элемента. Различитель
есть и стоит ПЕРВЫМ полем тела (`"preview": true`), и на диск превью действительно не пишет —
проверено sha `mined-delta.yaml` до и после. ⇒ информация не теряется, но слово выбрано неудачно:
`would_apply` сказало бы правду, а `applied` внутри превью читается как подтверждение совершённого.
**И я обязана назвать, как чуть не завела здесь ЛОЖНУЮ находку:** первый раз я прочитала ответ
ГРЕПОМ по нескольким ключам, увидела `state: applied` у превью и почти записала «превью врёт о том,
что применило». Пошла в сохранённое ТЕЛО целиком — и там первым полем стоит `preview: true`.
**Спасло ровно то, что харнесс пишет тела в файл: грепу я верила, файлу проверила.**
### 12.5 ТОЧКА УЛУЧШЕНИЯ. Механизм эскалации не может исполниться ни на одном боевом конфиге
`pipeline-c1.yaml:223` несёт `escalation.budget_usd: 0`, а комментарий строкой `:221` гласит:
«Приёмочная сессия 蛊真人 ОБЯЗАНА выставить budget_usd>0, иначе echo-эскалация не исполнится».
Дефолт держится за зелень CI без чужих ключей. ⇒ **два боевых прогона подряд (A и B) прошли с нулевой
эскалацией, и построенный, ратифицированный механизм не исполнялся живьём ни разу.** Это тот же класс,
что «лекарство лендится выключенным» (ряд 433): механизм есть, условие его включения — ручная правка,
которой никто не делает.
### 12.6 НАБЛЮДЕНИЕ О ДЕНЬГАХ, которого не заказывали: 85 % оплаченного выхода — думанье
См. §6.2 результатов. Это не дефект и не вердикт о настройках — это ВЕЛИЧИНА, которой у проекта не было, и она
меняет то, как читается любая смета: «выходные токены» и «текст» на боевых настройках расходятся в
шесть-семь раз. Ряд **422** закрывается числом, а не механизмом.
### 12.7 ⚠ ПРО МОЙ СОБСТВЕННЫЙ ПРИБОР — две аномалии, оказавшиеся о НЁМ, а не о предмете
**(а)** Первые пробы «второй старт при идущем прогоне» и «стоп» дали «не как ожидалось» (202 и 409).
Разбор: я спросила ПОСЛЕ того, как прогон уже кончился — $0-заглушка проходит четырёхюнитную книгу за
~15 секунд. Пере-снято залпом без пауз (три вызова за 0.27 с): **409 `run_in_flight`** и **202** со
`stop_requested: true`. ⇒ **аномалия была о приборе.** Не пере-сними я её — в отчёт уехали бы две
несуществующие находки о дверях.
**(б)** Прибор `shipped.py` на первом прогоне по базе A дал терму `蛊` → «гу» **27 попаданий**, среди
которых «губ», «губы», «гул», «густое». Правило стема для короткого слова с суффиксным подстановочным
знаком ловит обычные русские слова. Починено (одно-словный терм короче 4 букв матчится ТОЧНО), стало
10 попаданий и все — «гу». ⇒ **инструмент, который пере-матчит, докладывает книгу консистентной по
терму, который он ни разу не нашёл.**
## 13. ЧТО НЕ УДАЛОСЬ, НЕ ПРОВЕРЕНО И НЕ ИЗМЕРЕНО
1. **ВЕЛИЧИНА доли выброшенного НЕ установлена и установлена быть не могла.** n = 2. Квирки §3д:
парный дизайн ловит ×2.5 за 13 пар. Установлен ЗНАК и показано, что две меры одного явления могут
разойтись в противоположные стороны.
2. **Эскалация не исполнялась** (`budget_usd: 0`). Второй прогон подряд не говорит о ней ничего.
3. **Судейская стадия отсутствует на этом пути**, гейт `coverage` выключен: четыре гейта из пяти.
4. **`epubcheck` не гонялся** — `java` на хосте нет. Валидность EPUB по спецификации НЕ измерена;
измерена структура (zip · `container.xml` · `nav` · 3 itemref · оглавление).
5. **Стоп-правила и потолки НЕ СТРЕЛЯЛИ.** Книжный потолок $1.25, дневной $2.50, стоп сессии $1.00 —
при трате $0.396657. Они стояли заряженными и ни разу не сработали ⇒ **их поведение этим прогоном
не проверено**, и записывать их в актив нельзя. (На $0-руке подсадками проверены отказные пути
двери, но не потолки движка.)
6. **Размер эффекта урезанного бонда (§12.1) НЕ ИЗМЕРЕН** — см. там же.
7. **Атрибуция стохастики.** Провал двух классификаторных батчей и его исчезновение на резюме
объяснены вендорским разбросом, потому что тот задокументирован и потому что резюм на той же книге
дал чистый результат. **Но это ОБЪЯСНЕНИЕ, а не замер:** чтобы отделить «вендор» от «наши 118
коммитов», нужен парный дизайн, которого этот прогон не покупал.
8. **Один прогон, одна книга, одна пара, три главы, четыре юнита.** Всё, что здесь названо
«воспроизвелось», воспроизвелось ОДИН раз.
## 14. ГДЕ ПРИБОР СЛЕП, И Я ЭТО ЗНАЮ
* **Пост-чек считает на единице, которой в продукте нет** (§8.2 результатов): 16 записанных отклонений, счётчик 0,
потому что `Confirmed` = `approved`, а таких 2 из 66. Данные ЕСТЬ, число НОЛЬ. Не чиню — чужая зона
и отдельный заказ; назвать обязана.
* **I2 — нижняя граница, и прибор говорит это сам:** передача засчитывается ГДЕ УГОДНО в юните, так
что обычное слово вдали от своего терма может закрыть настоящее отсутствие. Прибор печатает и
популяцию, где это возможно (11 термов).
* **Мой `shipped.py` матчит префиксным стемом** и поэтому слеп к эллипсису в перечислении: «в
крепостях рода Бай и рода Сюн» несёт ДВА терма под одной вершиной, и `熊家寨` уходит в «пусто».
На прогоне A это ровно тот случай, который я сперва посчитала «не доехал», а он доехал.
**все пустые печатаются поимённо и разбираются глазами**, а не засчитываются в консистентные.
* **Долларов провайдер нам не сообщал.** Он сообщил ТОКЕНЫ; доллары умножены нами по пину
`models.yaml`, и на 11.09 пин flash был выше вендорской страницы на 13 % (`D39.247` п.3).
«$0.396657» — это то, что насчитала НАША модель цен.
* **Пик/офф-пик.** Прогон шёл 19:4820:08 UTC в пятницу, то есть в ОФФ-ПИК DeepSeek, а леджер
осознанно считает по ПИКОВОЙ цене (`D39.136`). ⇒ **настоящий счёт вендора за B примерно ВДВОЕ
меньше записанного, а за A — нет** (A шёл внутри пикового окна). Сравнение ЛЕДЖЕРОВ от этого не
страдает; фраза «мы заплатили столько-то» — страдает вдвое.
* **«Три следа» — не три свидетеля** (§10): Postgres материализуется из потока движка. Независимы
только скачанные байты с их sha и маркеры выхода systemd.
## 15. ДЕНЬГИ СОШЛИСЬ — шестью счётами, и все шесть отфильтрованы по ОДНОЙ учётке
| путь | µUSD |
|---|---|
| движок: Σ `request_log.cost_usd` | 396 657 |
| движок: Σ `checkpoints.cost_usd` | 396 657 |
| движок: последний кадр `spend` в `events.jsonl` | **396 657** |
| платформа: Σ `settlement` учётки `u_RR5RMQNSX2KZMNXL` | **396 657** |
| платформа: грант баланс той же учётки | **396 657** |
| платформа: `run_attempts.spend_micro_usd` ПОСЛЕДНЕЙ попытки | **396 657** |
Открытых резерваций **0** (контроль: резерваций этой учётки 2, обе `settled`).
**И сразу честно про эти шесть: независимый среди них ОДИН.** `request_log`, `checkpoints` и кадр
`spend` — три записи одного вычисления движка; `settlement` и баланс — два чтения одного леджера,
который взял число У ДВИЖКА через `run_attempts`. Сходимость доказывает, что по дороге ничего не
потеряно и не удвоено, — и ровно это, не больше.
**ЛОВУШКА ПРОГОНА A ВОСПРОИЗВЕДЕНА КАК КОНТРОЛЬ:** `run_attempts.spend_micro_usd` — величина
НАКОПЛЕННАЯ. Сумма по попыткам даёт **566 850** µUSD, то есть **+43 %** к цене книги. Кто просуммирует
эту колонку, получит завышение и не заметит.
**И ещё одна ловушка, названная пре-регом и сработавшая:** все шесть счётов отфильтрованы по платной
учётке. Без фильтра в леджере стенда лежат **36 строк** по двум учёткам, и дымовые деньги вошли бы в
цену книги. Прогон A на этом и споткнулся (§14.2 его отчёта); здесь учётки разведены пре-регом, а
фильтр напечатан рядом с каждым числом.
## 16. ЧТО СКАЗАЛИ ПРИБОРЫ ДВИЖКА ОБ ЭТОМ ТЕКСТЕ — инвентарь ДО сверки с читателем
Записан ДО того, как пришёл отчёт читателя, чтобы сверка §4.6 пака не подгонялась под находки.
| прибор | что сказал | где живёт |
|---|---|---|
| эхо-гейт `cjk_artifact` | **0** на черновике, **0** на редактуре | `checks`, порог `cjk_share > 0.15` |
| косметический санитайзер | **0** юнитов | `STRIPS/ECHO` отчёта |
| стиль-гейты (тире диалога, ё, транслит-междометия, 万/億, reflow) | **0** суммарно | `STYLE GATES` |
| `glossary-misses` · `number-drift` · `degenerate-loops` · `trust-gated` | **0 · 0 · 0 · 0** | `SIGNALS` |
| пост-чек банка (`n_postcheck_miss`) | **0** на всех 6 чанках — при **16 ЗАПИСАННЫХ отклонениях** рядом | `retrieval_state`, §8.2 результатов |
| банкнотный канал | 93 строки на 6 чанках из 6, parse-fail 0, обрезано 0 | `BANKNOTE` |
| `degraded` | `empty` ×5 · `length` ×2 · пусто ×28 | `request_log` |
| `chunk_status.disposition` | **`ok` у всех десяти**; история — в `first_flag_reason` | `chunk_status` |
| структура абзацев | 2.44 предложения на повествовательный абзац (285 / 117) | `STRUCTURE` |
| следование банку | модель следовала **73 из 89** проверенных строк = **82 %** | `UNSIGNED BANK` |
| **консистентность книги** | **I1 = 6 термов более чем одной передачей · I2 = 7 не доехали · 1 съеден длинным ключом** | §8 результатов |
⇒ **Все приборы, кроме одного, говорят «чисто». Единственный, который говорит не «чисто», — прибор
консистентности книги, и он называет 1314 термов поимённо и с главами.**
### 16.1 ⛔ И ОДНУ ИЗ ЕГО СТРОК Я ПРОВЕРИЛА РУКАМИ ПРЕЖДЕ, ЧЕМ НЕСТИ ЧИТАТЕЛЮ — она ЛОЖНАЯ ТРЕВОГА
Самая громкая строка прибора: **`方源` («Фан Юань»), ПОДПИСАННЫЙ мною терм, вердикт `split`, «split
inside: 1,2,3»** — то есть разнобой по всем трём главам в имени главного героя. Счёт по отгруженному
тексту:
```
«Фан Юань» 36 · «Фан Юаня» 19 · «Фан Юаню» 2 · «Фан Юанем» 1 = 58
конкурирующих транслитераций: 0 (голое «Фан» ×4 — это ДРУГИЕ термы:
«Старый демон Фан» 方老魔 · «ветвь Фан» 方之一脉 · «род Фан» 方家)
```
**это одно имя в четырёх падежах, а не две передачи.** Разрыв 63 сработки → 58 передач закрывается
местоимениями, что для русской прозы норма. Прибор сам печатает оговорку («fewer shipped than fired is
an upper bound on renderings, not a proof of two»), но вердикт в колонке стоит `split`, и читатель
таблицы возьмёт именно его. **В склоняющем языке падеж — не вторая передача, и самый тревожный ряд
отчёта оказался тревогой прибора, а не дефектом текста.**
А вот эти две строки того же прибора проверку руками ПРОШЛИ и остаются настоящими:
* **`家老` («старейшина рода»)**: в тексте преобладает КОРОТКАЯ форма «старейшины», полная —
единицы. Тот же дефект нашёл и прогон A на своём тексте.
* **`古月族长` («глава рода Гу Юэ»)**: в тексте «глава рода» без «Гу Юэ».
## 17. ⭐ ВЫЧИТКА ВСЕГО ТЕКСТА (§4.5 пака)
**Форма:** ОДИН читатель на opus, на ВЕСЬ текст сразу. Довод: объём крошечный (оригинал 9021 знак,
перевод 30 283), а **консистентность банка по построению не видна тому, кто читает главу отдельно**
находки [2][5] и [13][15] все межглавные. Делить было нечего и незачем.
**Доказательство дочитывания — напечатано читателем, и оно сошлось:** оригинал `wc -m` = **9021**
(со снятым CR — **8782**, разница ровно 239 = числу строк, то есть CRLF); перевод **30 283** обеими
манерами счёта. Последнее предложение оригинала — «只要不阻碍我赶路,那就一边玩自己的蛋去,踩都不屑踩。»,
последнее предложение перевода — «Даже наступить на них — и то неохота.» Файлы прочитаны в три
захода с ПЕРЕКРЫТИЕМ, стыки прочитаны дважды.
**Итог: 26 находок — 1 крит · 11 мажоров · 14 миноров**, по приоритетам владельца 7 / 6 / 7 / 6.
### 17.1 ⛔ АДЪЮДИКАЦИЯ: находка читателя — это УТВЕРЖДЕНИЕ, а не факт, и я проверила его сама
Претрейн-опасность закрывается не обещанием, а сверкой. **Проверено МНОЙ по обоим файлам,механически:
ВСЕ проверенные пары цитат присутствуют в выданных файлах дословно — ни одной выдуманной.**
Проверены обе цитаты находок [1] (крит), [2], [3], [5], [8], [9], [17], [18], [19], [23]:
`对她来讲,自己前途光明…` ×1 · `方家两兄弟` ×1 · `方之一脉` ×2 · `你退下罢` **×2** · `杀了千万人的性命` ×1 ·
`诛了我的九族` ×1 · `十万八千里` ×1 · `绣花鞋` ×1 · `蹬蹬蹬` ×1 — и соответствующие русские фрагменты
все по разу. ⇒ **ни одного «воспоминания из претрейна» в отчёте нет.**
⛔ **ТРИ ЧИСЛА ЧИТАТЕЛЯ ПРИ ЭТОМ НЕВЕРНЫ, и я их правлю, а не пересказываю:**
* [2] «род 48 против клан 7» → на самом деле **32 против 6**. 48 — это счёт по СТЕМУ, куда попали
«родители», «родился», «родного», «родственных»; а из семи «клан» один — «робко **кланя**ясь».
**Существо находки при этом устояло:** обе цитаты на месте, и разнобой внутри одной реплики
(«единству клана» — «старейшин рода») подтверждён.
* [11] «230 абзацев оригинала → 155 перевода» → пере-считано: **230 → 158**, отношение 0.69.
Направление и величина сжатия подтверждены, число уточнено.
* [14] риск слипания «старой нянюшки» с «нянюшкой Шэнь» — подтверждён составом БАНКА: там стоят
РАЗНЫЕ строки `老嬷嬷 → «старая нянюшка»` и `沈嬷嬷 → «нянюшка Шэнь»`, то есть два персонажа
действительно получили однокоренные имена.
⇒ **Доля подтверждённых по цитатам: 10 из 10 проверенных. Доля числовых утверждений, потребовавших
правки: 3.** Это и есть цена того, что находку читателя нельзя брать на слово, — и одновременно
доказательство, что предмет он видел.
## 18. ⭐⭐ СВЕРКА ПРИБОРОВ С ЧИТАТЕЛЕМ (§4.6 пака) — ради этого прогон и стоил своих денег
**КЛЕТКА «ПРИБОР СМОЛЧАЛ» РАЗДЕЛЕНА НА ЧЕТЫРЕ, И БЕЗ ЭТОГО ДЕЛЕНИЯ ОНА БЫ СОЛГАЛА.** Свалить в
неё translationese, ритм и согласование значило бы отчитаться «приборы пропустили 24 дефекта из 26»
— тогда как для большинства из них прибора не существует и существовать не предполагалось.
| | **читатель нашёл** | **читатель не нашёл** |
|---|---|---|
| **прибор сказал** | **1**: `家老` «старейшина рода» → в тексте преобладает короткая «старейшины» (I1 `split`, главы 1 и 3; читатель этого терма не назвал отдельно, но назвал тот же класс) | ⛔ **ЛОЖНАЯ ТРЕВОГА ×1: `方源`** — самый громкий ряд отчёта, вердикт `split` по всем трём главам на ИМЕНИ ГЕРОЯ. Руками: «Фан Юань» 36 + «Фан Юаня» 19 + «Фан Юаню» 2 + «Фан Юанем» 1 = 58, конкурирующих транслитераций **0**; четыре голых «Фан» — это ДРУГИЕ термы банка (`方老魔`, `方之一脉`, `方家`). **В склоняющем языке падеж — не вторая передача.** Читатель, читавший текст глазами, её не назвал — и был прав |
| **прибор смолчал** | ⛔ **СЛЕПЫЕ ПОВЕРХНОСТИ — см. разбор ниже** | согласие: пропусков нет (читатель сверил 230 абзацев к 230), эхо 0 при гейте 0, выдумок уровня предложения 0 |
### 18.1 Четыре РАЗНЫЕ причины молчания, и лечатся они в разных местах
**(а) ПРИБОР ЕСТЬ, ТЕРМ В ЕГО ПОПУЛЯЦИЮ НЕ ПОПАЛ — молчал МАЙНЕР, а не энфорсер.** Прибор
консистентности судит СТРОКИ БАНКА. Проверено по банку прогона: из терминов, на которых читатель
поймал разнобой, **в банке НЕТ восьми**: `家族/族` (род↔клан — самая крупная находка приоритета №1) ·
`炼制`/`炼成` (создать↔выплавить) · `楼阁`/`阁楼` (башня↔павильон) · `老妈子` · `先机`
(преимущество первого хода↔первому) · `丫头片子` · `怀璧之罪`. ⇒ **энфорсер не молчал — ему не о чем
было говорить.** Это дефект ПОЛНОТЫ МАЙНИНГА, и лечится он там, а не в гейте.
**(б) ПРИБОР ЕСТЬ, ТЕРМ В БАНКЕ, ФОРМА БАНКА ДОЕХАЛА — А ДЕФЕКТ В САМОМ БАНКЕ.** `方家 → «род Фан»`
и `方之一脉 → «ветвь Фан»` ОБА в банке, обе формы отгружены, прибор доволен. Но «род» в этой книге
занят кланом (`род Гу Юэ`, `род Бай`, `род Сюн`), и «братья из рода Фан» делают ветвь четвёртым
самостоятельным родом — находка [3]. То же у `九族 → «девять поколений рода»` (находка [19]: 九族 —
девять степеней родства, а не девять поколений). ⇒ **прибор спрашивает «доехала ли форма банка», и
по построению НЕ МОЖЕТ спросить «а верна ли сама форма».** Содержание банка не судит ничто.
**(в) ПРИБОР ЕСТЬ, КОНСТРУКЦИЮ ЗНАЕТ ПОИМЁННО — И ПО РАТИФИЦИРОВАННОМУ РЕШЕНИЮ ЕЁ НЕ СУДИТ.**
Находка [17]: `杀了千万人` → «десятки миллионов» (千万 = десять миллионов). У движка есть чекер ровно
на эту конструкцию — `DC2 千万`, — и его собственный комментарий говорит дословно
(`backend/internal/checks/cheapgates.go:90-93`):
> «DC2 千万: the live hit (杀了千万人 → «тысячи и тысячи людей») is shape-identical to the ratified TRUE
> positive (千万生灵 → «тысячи жизней»). Hyperbole and magnitude are not separable offline here — the
> rule's header says so (§5-A4) — so the hit is the class's accepted ambiguity, not an implementation bug.»
⇒ **прибор встретил ЭТУ ЖЕ конструкцию, признал её неразрешимой ОФФЛАЙН и по решению оставил в
покое — а читатель с оригиналом в руках решил её одной строкой.** Это не дыра в реализации; это
точная граница того, что детерминированный гейт умеет, и цена этой границы теперь названа в тексте.
**(г) ПРИБОРА ДЛЯ КЛАССА НЕТ ВОВСЕ — и это БОЛЬШИНСТВО находок.** Ни один $0-гейт не судит:
подмену референта (крит [1]: 自己 отдано служанке, и мотивировка сцены рухнула) · согласование рода
([8] «Наделила … небо», [9] «нашлось бы не одна сотня» — две настоящие грамматические ошибки) ·
кальку идиом ([7] «жёлтые цветы уже остынут», [12] «сила девяти быков и двух тигров», [16]
«преступление владения яшмой», [25]) · регистр ([20] «девчонка-маломерка», [22] «апертура» в молитве
предкам, [26] «молвил» + «рассеянно») · утрату эха реплики ([5] `你退下罢` дважды в оригинале, две
разные реплики в переводе) · дописанный образ ([6] «очки с глаз упали», [23] «каблучками» при
вышитых туфельках). **Это 20 находок из 26.**
**И ОДИН ПРИБОР ИЗМЕРИЛ ПРЕДМЕТ, НО НЕ ИМЕЕТ ПОРОГА.** Находка [11] — сжатие абзацев 230 → 158.
Движок это ЧИСЛО печатает: `STRUCTURE … sentences/narrative-paragraph = 2.44 (285 / 117)`. Но это
наблюдаемость без порога и без сравнения с ИСХОДНИКОМ: прибор знает, сколько абзацев в ПЕРЕВОДЕ, и
не знает, сколько их было в оригинале. ⇒ **самая крупная художественная потеря прогона измерима
одним вычитанием, которого никто не делает.**
## 19. ЧТО ЧИТАТЕЛЬ СКАЗАЛ О КАЧЕСТВЕ ТЕКСТА — и это ответ на вопрос владельца
**Оценка читателя: «приличный любительский, на верхней его границе».** Довод, который он привёл сам:
издательское качество не допускает ни одной ошибки согласования и ни одного места, где абзац теряет
смысл, — здесь их три, и все три ловятся обычной редакторской вычиткой БЕЗ сверки с оригиналом.
Машинным текст назвать нельзя: «машина не выбирает „попаданец“, не строит „в отблесках заката вдруг
приобрело чарующий оттенок“ и не держит одиннадцать вхождений термина без сбоя».
**Что он назвал сильным:** сцена жертвоприношения в родовом храме, утренняя сцена с Шэнь Цуй,
пересуды сверстников по дороге — «читается как нормальная русская проза, без запинок»; диалог
старейшин звучит как разговор пожилых интриганов, а не как подстрочник.
**Три системные слабости, названные им:** (1) **ритм** — 230 абзацев оригинала сплавлены в 158, в
главе 2 почти вдвое, и фирменные однофразовые удары автора («大局已定,今日必死无疑», «简而言之,就是重生»,
«恨吗?») стали придаточными внутри потока; (2) **идиомы** — там, где китайский оборот стёрт до
служебного значения, перевод его РИСУЕТ, и читатель спотыкается там, где автор не просил
останавливаться; (3) **терминология не сведена** — «род/клан, ветвь Фан/род Фан, создать/выплавить,
„Ступай“/„Можешь идти“ — следы текста, который никто не вычитывал единым проходом с глоссарием».
**Его три первоочередные правки:** абзац про Шэнь Цуй (крит) · свести глоссарий одним проходом
(закрывает почти весь приоритет №1) · вернуть абзацную разбивку и переписать четыре кальки по смыслу.
**И честная рамка вокруг этой оценки.** Она снята ОДНИМ читателем на ОДНОЙ книге из трёх глав, без
второго независимого суждения о качестве (адъюдикация §17.1 проверяла ЦИТАТЫ и ЧИСЛА, а не вкус).
Шкала «издательское / приличное любительское / машинное» — его, не наша ратифицированная.
## 20. СОСТОЯНИЕ СДАЧИ
**Сделано и предъявлено:** книга проведена от двери до файла и прочитана ($0.396657, 20 мин 06 с) ·
исход есть у каждой из 23 машинных строк пре-рег-таблицы (§9 результатов), а две последние её строки — 24 «вычитка» и 25 «сверка приборов» — закрыты §17 и §18 · деньги сведены шестью счётами с
названной оговоркой про независимость (§15 результатов) · обе миграции предъявлены ДАННЫМИ, и v18
дала числу ряда 422 первое значение (§6 результатов) · денежная мера пре-регистрирована, прибор
само-проверен на прогоне A до применения, и две меры одного явления разошлись в разные стороны
(§5 результатов) · вычитка всего текста опус-читателем с доказательством дочитывания и адъюдикацией
цитат (§17) · сверка приборов с читателем разделена на четыре РАЗНЫЕ причины молчания (§18) · находки
вне заказа с носителями (§12 результатов) · девиации объявлены, включая правку моего прибора после
фриза (§11 результатов) · что не удалось и где прибор слеп (§1314 результатов).
**Где артефакты:**
| Что | Где | В git |
|---|---|---|
| Инструменты (драйвер, прибор денег, прибор отгруженного текста, пакет читателя) | `eval/cold_run_b/` | фриз `4ee7f03` + правка `measure.py` отдельным коммитом |
| Пре-регистрация и этот разбор | `docs/experiments/25-door-to-file-b.md` | пре-рег`4ee7f03`; результаты лендит оркестратор |
| Стенд, следы, 54 сохранённых HTTP-тела, копии БД, отгруженные файлы | `~/tm-coldrun-b/` (вне git, вне `/tmp`) | нет |
| Живой журнал прогона («время · что увидел · чего ожидал · что это значит») | `~/tm-coldrun-b/evidence/live-journal.md` | нет |
| Ожидания §4.8, написанные ДО проб, и исход каждой | `~/tm-coldrun-b/evidence/checks/api-expectations.md` | нет |
**Что оставлено включённым:** стенд жив (`tmplatformd` на `127.0.0.1:8098`, pid в
`~/tm-coldrun-b/stand/daemon.pid`, база `tm_coldrun_b` в кластере `/tmp:55433`, клон фриза в
`~/tm-coldrun-b/freeze`) — чтобы любое число этого отчёта можно было пере-снять теми же командами.
Гасить по слову оркестратора и **только по pid**.
**Чего я не делала и не буду:** не чинила ничего из найденного — ни в движке, ни в платформе, ни в
банке. Пак запрещает прогону чинить, и это правильно: прогон, чинящий найденное, перестаёт быть
холодным и теряет право сравниваться с A. Единственная правка кода за пак — мой СОБСТВЕННЫЙ прибор
после фриза, и она объявлена девиацией (§11 п.1 результатов).
**Работа завершена, править не планирую.**

View file

@ -61,7 +61,7 @@
| бэкенд | `BACKEND_BOUGHT_MEANS_DELIVERED_SESSION_PROMPT.md` | **textmachine-b1** | ✅ **ВЫДАН 11.09** после опровергателя (21 утверждение проверено, 4 опровергнуто, 4 умолчания дописаны); жду эхо |
| платформа | — | — | 🟢 **СЛОТ СВОБОДЕН** — пак принят актом `D39.250`, минор 0.15.0 |
| полигон | — | — | ⛔ **ЗАКАЗ СНЯТ ВЛАДЕЛЬЦЕМ 11.09** («полигон не надо выдавать»); промт готов и лежит, пере-выдача — только его словом |
| сквозной (вне кодовых зон) | `COLD_RUN_B_SESSION_PROMPT.md` | **textmachine-82** | ✅ **ВЫДАН 11.09**, ПЛАТНЫЙ, санкция в носителе. Опровергатель: 32 утверждения, 27 подтверждено, **3 опровергнуто** (имя колонки v18 · sha у `CheckMiningContrast` · артефакт книги — срез, а не весь файл). Жду эхо |
| сквозной (вне кодовых зон) | — | — | ✅ **ЗАКРЫТ актом `D39.252`** 11.09; промт в архиве с баннером. Стенд поднят до конца приёмки, гасить по pid |
| фронт | заморожен | — | разморозка по критерию `NEAR_TERM_PLAN.md` |
**Резерв израсходован: `textmachine-61` получила пак о падениях 11.09, как только слот освободился актом `D39.249`.**
@ -77,7 +77,7 @@
В акте будет сказано, ЧЬИМ прибором снята каждая половина: полный гейт 169/169 · RED=167 · выживших 1 ·
UNKNOWN 1 — её, дошёл один раз до правок; десять пере-снятий и стенд — мои.
**ДОЛГ ЛЕНДИНГА ЗАКРЫТ 11.09:** голова поехала в CURRENT-STATE вместе с лендингом бэкенд-пака, как и планировалось — сейчас все пять носителей головы (`05-decisions-log` шапка и тело, титул реестра, строка реестра, CURRENT-STATE) стоят на `D39.251`, и `counts.py --check` зелёный.
**ДОЛГ ЛЕНДИНГА СНОВА ОТКРЫТ (акт `D39.252`): голова бампнута в ДВУХ носителях из трёх.** Шапка `05-decisions-log.md` и титул реестра стоят на `D39.252`; **CURRENT-STATE — НЕТ**: в `docs/PROGRESS.md` лежит секция бэкенд-сессии на 151 строку из 152, и коммит файла целиком унёс бы её под моим сообщением — ровно инцидент `54f8f6c`, повторять нельзя. ⇒ бамп CURRENT-STATE едет ВМЕСТЕ с лендингом бэкенд-пака. До тех пор `counts.py --check` краснеет по голове — это ЗНАЕМОЕ расхождение, а не находка.
**В очереди, написано и ждёт слота:** `BACKEND_FAILURE_YOU_CAN_SEE_SESSION_PROMPT.md`, **редакция 2**
выдаётся СВЕЖЕЙ бэкенд-сессии, как c9 закроется актом. ⛔ **Опровергатель нашёл 17 находок, и первая
@ -103,7 +103,7 @@ UNKNOWN 1 — её, дошёл один раз до правок; десять
| 7 | платформа | ответ, не зависящий от везения (`PD-448` · `162` · `466` · `139`) | textmachine-37 | ✅ своими словами, 3 опасности + возражение | ✅ закрыт актом `D39.250`, минор 0.15.0 |
| 8 | бэкенд | за одну единицу платим дважды | textmachine-61 | ✅ своими словами, 4 возражения — и первое ПЕРЕВЕРНУЛО посылку пака | ✅ закрыт актом `D39.251` с дофиксом |
| 9 | бэкенд | купленное доставлено (ряд 291 + приложение 379) | textmachine-b1 | ждётся | выдан 11.09 |
| 10 | сквозной | ХОЛОДНЫЙ ПРОГОН B, платный, с вычиткой всего текста | textmachine-82 | ждётся | выдан 11.09 |
| 10 | сквозной | ХОЛОДНЫЙ ПРОГОН B, платный, с вычиткой всего текста | textmachine-82 | ✅ своими словами, 5 опасностей — три исправили промт | ✅ **ПРИНЯТ актом `D39.252`**, факт $0.396657 |
**ПОЛИГОН СНЯТ ВЛАДЕЛЬЦЕМ 11.09.** Я предлагал пак трижды — `ed`, `5c` (обе отработавшие, отказались ПО НОРМЕ и были правы) и свежей `37`, — после чего владелец сказал «полигон не надо выдавать». Выдача `37` ОТОЗВАНА тем же часом. ⚠ Урок не про полигон: **я трижды искал адресата для заказа, приоритет которого не подтверждал у владельца.** Слот зоны свободен ≠ работу зоны надо заказывать.