# Полигон, пакет-7, ФАЗА B′ — доводка после адверсариальной ревизии: контроль правила транскрипции · годность слепой оценки · разброс прогона > **Статус: ПРЕ-РЕГИСТРАЦИЯ ЗАПИСАНА ДО ВЫЗОВОВ.** Секции §0 (замысел, пороги, смета) написаны прежде > первого платного запроса; секции §1–§4 (результаты) дописываются после. Пре-регистрация после > старта НЕ правится — как и в фазе B. > **Основание:** ревизия §B6 отчёта [`POLYGON_TERM_RESEARCH_B_2026-07-26.md`](POLYGON_TERM_RESEARCH_B_2026-07-26.md) > опровергла три вывода фазы B; санкция владельца на доводку получена 26.07.2026. > **Зоны:** пишу в `eval/pkg7/` и в этот отчёт. `backend/` не тронут. Не коммичу. --- ## §0. ПРЕ-РЕГИСТРАЦИЯ (записана до трат) ### 0.1 Что именно чиню и почему это три РАЗНЫХ замера Ревизия §B6 оставила три вопроса, и ни один не закрывается рассуждением: | # | вопрос | почему фаза B на него не ответила | |---|---|---| | **T** | правило «имя собственное → транскрипция» — вредит или нет | правило лежало в общей части промпта, то есть во ВСЕХ шести армах: контраста не существовало | | **J** | слепая оценка вообще годна или нет | 35 термов из 80 состояли из семи одинаковых строк; контроль отбраковки был неизмерим (строка `GOLD` не уникальна ни разу) | | **R** | насколько твёрд вывод «контексты решают» | каждый арм гонялся ОДИН раз; разброс прогона от эффекта арма неотделим | ### 0.2 Замер T — контрольный арм без правила **Арм `P5` = `P2` минус одна строка** («если термин — имя собственное, передавай его транскрипцией, а не переводом смысла»). Всё остальное — контексты, черновики, жанровый словарь, Палладий, лемма — идентично `P2` побайтно. Набор тот же, что в фазе B (80 термов), модель та же. | мера | как считается | что подтверждает | **что ОПРОВЕРГАЕТ** | |---|---|---|---| | **T1** качественная | `春秋蝉` и `Silversaint` у `P5` против `P2` | `P5` даёт смысловой перевод там, где `P2` транслитерирует | `P5` транслитерирует так же ⇒ правило ни при чём | | **T2** прокси | доля целиком несловарных dst, `P5` против `P2`, по всем 80 | разница ≥ 0.05 в пользу `P5` | \|разница\| < 0.05 ⇒ эффекта нет | | **T3** контроль вреда | совпадение с подписью владельца на 19 эталонных | `P5` не хуже `P2` (≥ 17/19) | `P5` < 17/19 ⇒ снятие правила ломает другое | **Решающее правило, названное заранее:** Z-B3 считается ИЗМЕРЕННОЙ, только если T1 и T2 подтверждаются ОБА. Если подтверждается лишь T1 (два терма) — рекомендация остаётся редакторским суждением, и я так и запишу. ### 0.3 Замер J — слепая оценка на ПОЧИНЕННОМ наборе Чиню сборку набора, а НЕ инструмент: ревизия показала, что негоден был набор. 1. **Дедупликация кандидатов.** Одинаковые строки схлопываются в ОДИН вариант; арм-источники хранятся в ключе. Судья больше не сравнивает строку с ней же. 2. **Только термы с вариативностью** — где после дедупликации ≥2 различных варианта. 3. **ДЕКОЙ — то, чего в фазе B не было и без чего контроль §A2.4 п.4 неизмерим.** В каждый набор вслепую подкладывается заведомо неверный вариант: dst ДРУГОГО терма той же выборки (рецепт WMT23, перенесённый с глоссария на кандидата). Декой уникален по построению, поэтому вопрос «отличает ли судья годное от случайного» становится измеримым, чего нельзя было сделать через `GOLD`. **Контроли годности судьи (пороги названы сейчас):** | контроль | замер | судья ОТБРАКОВЫВАЕТСЯ, если | |---|---|---| | **C1** | доля термов, где ДЕКОЙ назван лучшим по K1 | > 0.10 | | **C2** | катастроф на декое против катастроф на `GOLD` | катастроф на `GOLD` ≥ чем на декое | | **C3** | воспроизводит ли судья объективный слой | `P0b` НЕ в нижней трети по K1 | **Что этот замер решает:** если судья проходит C1 и C2 — слепая оценка ГОДНА, и дефект фазы B был в наборе (моя ревизия права). Если проваливает — инструмент действительно негоден, и прав был исходный отчёт. **Оба исхода публикую одинаково**, включая исход «моя ревизия ошиблась». ### 0.4 Замер R — разброс прогона `P0b`, `P1`, `P2` × **3 независимых повтора** на выборках с эталоном (S1 + S5, 19 термов с подписью). - мера: совпадение с подписью владельца в каждом повторе; - **подтверждает:** межарменный разрыв `P0b`↔`P1` (в фазе B это 5 термов из 15 на S1) БОЛЬШЕ внутриармового разброса по трём повторам; - **ОПРОВЕРГАЕТ:** разрыв укладывается внутрь разброса ⇒ вывод «контексты решают» не установлен и держится только на объективном совпадении, а не на сравнении армов. ### 0.5 Свои гипотезы (мандат свободы; пре-регистрирую отдельно) - **H6.** Вырожденность — свойство ТЕРМА, а не арма: доля термов, где все армы совпали, выше на подписанных (S1) термах, чем на неподписанных книгах (S2–S4). Меряю долей вырожденных по выборкам. Опровергается отсутствием разницы. *Практический смысл: если верно — предпрогон-скрин отбирает информативные термы дёшево, и судить надо только их.* - **H7.** Декой ловится судьёй ЛУЧШЕ, чем различаются армы: разрыв «декой против медианы» больше разрыва «лучший арм против худшего». Опровергается обратным. *Смысл: показывает, где предел разрешающей способности — грубые ошибки инструмент видит, тонкие нет.* ### 0.6 Деньги и дисциплина - Цены — из `backend/configs/models.yaml` (read-only), расход — из фактического `usage`, сырьё каждого вызова сохраняется **вместе с `usage` и `finish_reason`** (дефект записи фазы B, §B6 R7.2, чиню). - **Смета печатается ДО вызовов** (`--dry-run`), факт — до цента. - Ориентир, названный владельцу: **≈$0.15**. Останов и пинг при выходе за **$0.30** (это доводка, а не новая фаза; санкционированный коридор фазы B израсходован на 11.9%). - Квирки: консолидатор `deepseek-v4-flash` — thinking ВКЛЮЧЁН, `max_tokens` 8000, `temperature`/`top_p` не шлём. Судьи — `gpt-5-mini` (`reasoning_effort:"minimal"`, `max_completion_tokens`) и `grok-4.3` (явный `reasoning_effort`), оба из чужих семейств относительно консолидатора (D13.3). ### 0.7 Чего замер НЕ решает (сказано заранее) Не даёт человеческого эталона для en/ja · не снимает V0 по `修炼` (нужно тело изданий, недоступно) · не проверяет ja-жанровый лексикон · не трогает роль терминолога в коде. --- ## §1. Замер T — правило транскрипции: причинность доказана, агрегатный эффект НЕТ Арм `P5` проверен исполнением ДО трат: его промпт отличается от `P2` **ровно одной строкой** (18641 против 18556 символов, diff = одна удалённая строка). Прогон: 10 вызовов, 80 консолидаций, 0 пустых, $0.01560. ### T1 — подтверждён, и сильнее, чем ожидалось | терм | эталон / изданный перевод | `P2` (правило есть) | `P5` (правило снято) | |---|---|---|---| | `春秋蝉` | **Весенне-осенняя цикада** (подпись владельца) | Чуньцючань ❌ | **Весенне-осенняя цикада** ✅ | | `Silversaint` | «среброносец / Серебряный Святой» (класс улики понижен, §B6 R5) | Сильверсейнт | **Серебросвят** (калька) | Снятие ОДНОЙ строки вернуло точный канон владельца. Причинность правила на этом терме доказана в чистом виде: всё остальное в промпте совпадает побайтно. ### T2 — ПРОВАЛЕН по порогу, названному до трат | арм | P0b | P0 | P1 | P2 | P3 | P4 | **P5** | |---|---|---|---|---|---|---|---| | доля целиком несловарных dst (80 термов) | 0.212 | 0.125 | 0.188 | 0.188 | 0.212 | 0.200 | **0.175** | `P2 − P5 = +0.013` при пороге **0.05** ⇒ **систематического сдвига нет.** Почему — видно в 19 расхождениях `P2`↔`P5`, и это самое ценное в замере: | куда правило вредит (снятие ПОМОГАЕТ) | куда правило нужно (снятие ВРЕДИТ) | |---|---| | `春秋蝉` Чуньцючань → **Весенне-осенняя цикада** (канон) | `月光蛊` «гу Лунного света» (канон) → **«Лунный свет»**: потеряна вершина `蛊` | | `Ashdrinker` Эшдринкер → Пепелитель | `王婆` «Ван По» → **«Старуха Ван»**: антропоним переведён смыслом | | `Silversaint` Сильверсейнт → Серебросвят | `西门庆` «Си Мэнь Цин» → «Симынь Цин» | | `ハイエルフ` хай-эльф → высокий эльф | `提刑` «судья» → **«тисин»**: без правила, наоборот, ТРАНСЛИТЕРИРОВАЛ | ### T3 — пройден Совпадение с подписью владельца: `P5` **18/19** при пороге ≥17 — ровно как `P2`. В разрезе: S1 14/15 (потерян `月光蛊`), **S5 4/4** (лучший результат среди всех армов, за счёт `春秋蝉`). ### Вердикт T по решающему правилу §0.2 Требовались **T1 и T2 оба**. T2 провален ⇒ **Z-B3 остаётся редакторским суждением, а не измеренным эффектом**, и я это фиксирую против собственной рекомендации. Но данные поддержали именно **узкую** формулировку правки — «транскрипция для людей и мест, смысл для предметов, приёмов и существ»: у обеих её половин теперь есть замеренный контрпример из противоположного лагеря. Исходная же широкая формулировка отчёта B («правило систематически уводит») **опровергнута**. --- ## §2. Замер J — слепая оценка: инструмент видит грубое и не видит тонкое Починенный набор: **45 термов** (вместо 80 с половиной вырожденных), **3–6 вариантов** на терм (вместо ровно семи, часто одинаковых), декой в 45 из 45. Судьи — 45/45 вердиктов каждый, 0 ошибок. | | `gpt-5-mini` | `grok-4.3` | |---|---|---| | **C1** декой назван лучшим | **0/45 = 0.000** (порог ≤0.10) → ПРОШЁЛ | **0/45 = 0.000** → ПРОШЁЛ | | **C2** катастрофы: декой против подписи | **43 против 0** → ПРОШЁЛ | **45 против 0** → ПРОШЁЛ | | **C3** `P0b` в нижней трети | НЕТ | ДА | | **C3-бис** ранговая корреляция с объективным слоем | ρ = **+0.429** | ρ = **−0.107** | | счёт `GOLD` по K1 | +0.000 | **+0.625 — выше ВСЕХ армов** | | разброс между армами | 0.200 | 0.200 (в фазе B было 0.088) | | счёт декоя | **−0.933** | **−0.978** | **Три вывода, и один из них против моей же ревизии.** 1. **Отбраковка судей в фазе B была неправомерна — подтверждено замером.** Оба судьи проходят оба контроля с запасом, а находка, на которой стояла отбраковка («судья назвал подпись владельца катастрофой 6 раз из 19»), **не воспроизводится**: на починенном наборе подпись не помечена катастрофой НИ РАЗУ ни одним судьёй. `grok-4.3` вообще ставит подпись выше всех машинных армов. 2. **Но практический вывод отчёта B устоял — по другой причине.** Ранговое согласие с объективным слоем ничтожно (+0.43 и −0.11), судьи расходятся между собой (у одного `P0` первый, у другого предпоследний). **Ранжировать армы слепой оценкой по-прежнему нельзя.** 3. **H7 подтверждена на обоих судьях** (разрыв «медиана армов − декой» 1.267 и 1.422 против межарменного 0.200): инструмент уверенно ловит ГРУБУЮ ошибку и не разрешает ТОНКУЮ разницу. Это и есть его правильная роль — катастроф-экран, а не ранжирование. --- ## §3. Замер R — разброс прогона: главный вывод фазы B устоял Три независимых повтора, `P0b`/`P1`/`P2` на 19 термах с подписью владельца: | арм | повторы | медиана | размах | |---|---|---|---| | `P0b` (без контекстов) | 11 · 12 · 12 | 12.0 | 1 | | `P1` (с контекстами) | **19 · 18 · 18** | 18.0 | 1 | | `P2` | 18 · 18 · 18 | 18.0 | **0** | **Разрыв `P0b`↔`P1` = 6 термов при внутриармовом размахе 1 терм ⇒ ВЫВОД УСТОЯЛ.** «Контексты — главный рычаг» теперь имеет оценку разброса, а не одну точку. Побочно объяснилась аномалия фазы B: там `P0` дал 19/19 и выглядел «лучшим армом». В повторах `P1` тоже выдаёт 19/19 в одном прогоне из трёх — то есть 19/19 лежит внутри шума прогона, и никакого превосходства случайного глоссария не было. ### H6 — подтверждена частично Доля вырожденных термов: S1 0.53 · **S2 0.13** · S3 0.47 · S4 0.53 · S5 0.40. Гипотеза («подписанные термы вырожденнее неподписанных книг») верна против 金瓶梅, но не против ja/en. Настоящий предиктор не «подписан/нет», а **класс терма**: у имён собственных 金瓶梅 много равноправных вариантов транскрипции, поэтому армы там расходятся вчетверо чаще. Практический смысл прежний: дешёвый предпрогон-скрин отбирает информативные термы, и судить надо только их — иначе половина бюджета уходит на сравнение строки с самой собой. --- ## §4. Деньги фазы B′ — до цента | статья | вызовов | вход, ток | выход, ток | USD | |---|---:|---:|---:|---:| | арм `P5` (контроль правила) | 10 | 56 427 | 28 991 | **0.01560** | | повтор 1 | 12 | 64 206 | 27 563 | **0.00801** | | повтор 2 | 12 | 64 206 | 27 900 | **0.00811** | | повтор 3 | 12 | 64 206 | 26 771 | **0.00779** | | судья `gpt-5-mini` | 45 | 45 981 | 6 140 | **0.02378** | | судья `grok-4.3` | 45 | 50 313 | 5 583 | **0.07685** | | **ИТОГО** | **136** | **345 339** | **122 948** | **$0.14013** | - Смета до вызовов: **$0.1689**. Факт **$0.14013** — на 17.0% ниже. Стоп-порог $0.30 не достигнут. - Ошибок вызовов **0 из 136**, `finish=stop` везде, пустых консолидаций 0 из 395, вердиктов 90/90. - Брака нет: пере-прогонов из-за дефектов подачи в этой фазе не было. - Суммарно по пакету-7: фаза B $0.31030 + фаза B′ $0.14013 = **$0.45043** при санкционированном коридоре $1.20–2.60. **Дефекты записи фазы B, починенные здесь:** сырьё судей теперь хранит `usage` и `finish_reason` (§B6 R7.2) · весь объективный слой считается скриптами `score_b2.py`/`audit_phaseB.py`, а не разовыми командами (R7.1) · потерянные из-за многословных ключей вердикты (`K1 верность концепту` вместо `K1`) восстановлены нормализацией разбора из сохранённого сырья, без повторных вызовов. --- ## §5. Что теперь на владельце — обновление §Z отчёта B | # | было | стало после B′ | |---|---|---| | **Z-B3** | «принять правку промпта» → понижено ревизией до гипотезы | **Проверено. Широкая формулировка ОПРОВЕРГНУТА (T2), узкая ПОДДЕРЖАНА замером.** Предлагаю принять формулировку §B3.2 как редакторское решение с оговоркой: правило обязано различать антропонимы/топонимы (транскрипция) и предметы/приёмы/существ (смысл), потому что снятие правила целиком ломает `月光蛊` и `王婆` | | **Z-B5** | «нужен ли другой инструмент оценки» | **Другой инструмент НЕ нужен.** Нужна другая СБОРКА набора: дедуп кандидатов + декой + отбор расходящихся термов. На починенном наборе оба судьи проходят контроли | | **Z-B7** | «отбраковка снята» | **Подтверждено замером:** находка, обосновывавшая отбраковку, не воспроизводится. Но ранжировать армы слепой оценкой всё равно нельзя (ρ = +0.43 / −0.11): её роль — катастроф-экран | | **Z-B8** (новое) | — | **«Контексты — главный рычаг» установлено с разбросом**: разрыв 6 термов против размаха 1. Это самый твёрдый количественный результат пакета-7 | > ⚠ **ПОПРАВКА 26.07 (после сдачи B′): жанровый словарь ОТМЕНЁН владельцем как класс.** > На замеры B′ это не влияет и перепрогонов не требует — проверено по каждому выводу: `P0b`↔`P1` (главный > результат и повторы) идёт по армам, где словаря нет вовсе; `P5`↔`P2` несёт одинаковые шесть инертных > строк в обоих плечах; судейские контроли с декоем от словаря не зависят. **Беспредметным становится > только арм `P0`** — контроль «правильный словарь против случайного», $0.01362. > Сняты Z-B2 и вторая половина Z-B4, переформулирован Z-B6 (см. отчёт B). Развязка — записка №10. **Чего B′ по-прежнему НЕ покрывает:** V0 по `修炼` (нужно тело изданий) · человеческий эталон для en/ja · японский жанровый лексикон · роль терминолога в коде. Повторы сделаны только на zh-выборках с подписью; для ja/en разброс не мерен.