textmachine/docs/experiments/20-editor-role.md

41 KiB
Raw Blame History

20. Роль редактора в пайплайне: что он покупает и можно ли купить это дешевле

Полигон-сессия 05.08.2026. Продолжение эксп-19 по расширенной санкции владельца: «не понимаю, какую роль занимает редактор… если редактору приходится переписывать весь текст, то в чём смысл чернового перевода… как выстроить эксп, чтоб понять, как добьёмся максимальной эффективности и дешевизны». Зона: eval/editor_harness/ + этот файл + пинг в docs/PROGRESS.md. Потолок $2.00 (поднимался дважды, оба раза объявлено ДО прогона — §1.3).

РЕВЬЮ-ШАПКА ПРИЁМКИ (оркестратор №15, D39.108, 06.08) — ПРИНЯТ С ОГОВОРКАМИ. Санкция пересмотра постановки и подъёмы потолка подтверждены владельцем 06.08; эксп шёл БЕЗ пре-рег-фриза (единственный из трёх) — принят как exploratory под расширенной санкцией. Оговорки и поправки приёмки: (1) решающий замер §5.2 НЕ персистирован — вердикты Claude-судьи существуют только в транскрипте сессии; таблица §5.2 и позиционная проверка 10:8 имеют статус «СО СЛОВ СЕССИИ». Направление «на боевой паре второй проход отрицателен» держит персистированный второй судья (§5.3: dp один проход 2:0 среди устойчивых, знак совпал у всех трёх моделей); величина — не держится ничем. (2) §3.1: цена раунда починки (-fix вызовы) не входила в цену diff-harnessс ней строка lu/ON 0.887→1.082 (знак переворачивается), lu/OFF 1.011→1.059, gl/ON 0.858→0.909: «дифф дороже — свойство только deepseek» ослаблен до «у luna — паритет/чуть дороже». Колонка «×к full» — медиана отношений, не отношение медиан (у dp 3.54 тем способом); «правок/вызов» — ops_total с двойным счётом переподанных операций. (3) §5.5: парсер судьи молча выбросил валидный голос jx-lu-w3-d — устойчивость: верность 8/12 = 67%, полнота 3/4 = 75%, чистота 4/5 = 80%, общий 15/23 = 65%; победители (русский 10:2, общий 8:7) не двигаются. (4) ИТОГ: «вся сессия $2.1793» включает $0.107335 сырья ПРЕДЫДУЩЕЙ сессии (research/24); фактическая цена 18+19+20 = $2.0720. (5) §3.3: locate/repair у luna = 4.53×, не «×5»; «в 56 раз» относится к dp. (6) §5.6: вердикт «боевой гейт этого не поймает» ОПРОВЕРГНУТ исполнением боевого Go-кода — санитайзер (detectCJKLeak, класс вердикт-гейта D30.3, включён в c1) флагает все 6 утёкших финалов и вырезает утечку из экспорта; реальная дыра — сноска-примечание без слова-заголовка («[1] …») мимо детектора примечаний + условность тройки isFinal (строка 46). (7) §6 п.2 (пинг о банкноте): наблюдения верны, вердикт «тихо выключен» — нет: блока в боевом translator.md не было никогда, канал жив ратифицированным путём D39.42 п.4 (ран-локальный конфиг книги — им и собраны 56/128); реальный дефект — декларация «+банкнота» в CURRENT-STATE при shipping-конфиге без канала (строка 140). (8) §5.4 мерил разброс только dp-судьи на dp-материале в прямой ориентации — порог экстраполирован; дисперсия Claude-судьи не мерена (сам отчёт это фиксирует).

Роль редактора измерена и оказалась узкой. В бейк-оффе «перевод с нуля против редактуры черновика» (24 пары, чужая модель-судья, зеркальная раскладка) второй проход доказанно выигрывает ОДНУ ось из шести — русскую прозу (10:2 при 80% устойчивости). Верность — ничья 4:4, общий вердикт — ничья 8:7. Это совпадает с ратифицированным замыслом D32.1(г): «ось решения для черновика — верность, не стиль; стиль редактор переписывает». ⇒ схема не сломана, но и не даёт того, что ей часто приписывают.

Цену редакторского вызова держит ПОИСК, а не правка. Три независимых замера сходятся: арм «только найди, ничего не чини» стоит 2.14× от полного переписывания; починка по УКАЗАННОМУ месту дешевле поиска в 56 раз; сужение мандата режет число правок вдвое, а размышление не режет вовсе.

Точечная починка по флагу работает и стоит копейки: 12/12 дефектов снято на обеих проверенных моделях, 7/8 восстановлено строго, по $0.000173 за починку у gpt-5.6-luna — в 6 раз дешевле, чем переписать тот же кусок. Это механизм, который есть у конкурентов (AiNiee ProofreadTask.py:250, LinguaGacha) и которого у нас нет: research/22:176 фиксирует «у нас НЕТ — флагаем, не чиним».

РЕШАЮЩИЙ ЗАМЕР: гипотеза «мандат в промпте заменяет второй проход» ОПРОВЕРГНУТА. Механический показатель её обещал — один проход транслятора с дословным блоком дискурс-перевёрстки даёт ту же сборку абзацев, что связка (у deepseek-v4-pro 6 против 6). Но слепой суд 18 окон показал, что число абзацев было ПРОКСИ, а не качеством: русский язык 3:12 и вёрстка 5:10 в пользу связки. Позиционная проверка пройдена — предвзятости нет. ⚠ Перекрёстная проверка чужой моделью (§5.3) дала вдвое меньшую величину (русский 6:4, общий 5:4), а замер разброса судьи (§5.4) показал, что такая разница лежит ВНУТРИ его шума ⇒ перекрёстная проверка §5.2 не подтверждает и не опровергает. Крупные перевесы §5.2 кратно больше шума и устояли, но собственная дисперсия Claude-судьи НЕ мерена.

И главное — ответ ЗАВИСИТ ОТ МОДЕЛИ и переворачивается. У glm-5 второй проход отрабатывает как обещано (общий 5:1, вёрстка 6:0 — чистый свип). У deepseek-v4-pro, который стоит редактором в pipeline-c1.yaml СЕЙЧАС, второй проход ВРЕДИТ: один проход берёт общий вердикт 5:1 и верность 5:1, а обе целевые оси — ровно 3:3, то есть переписывание черновика не купило ничего и при этом ломало фактуру (сорванные шкалы процентов, потерянные реалии 蛊虫/家老). ⇒ «нужен ли редактор» — не свойство архитектуры, а свойство пары «модель × роль», и на боевой паре ответ отрицательный.

Отозвано из эксп-19 дважды. (1) Вывод «дифф дороже full-regen» сужен до одной модели И одного целевого языка: у deepseek-v4-pro отношение 2.83 на русской цели и 0.67 на английской (§3.4). (2) Объяснение, которым эксп-19 снял арм E («виновато обеднённое зеркало промпта»), ОПРОВЕРГНУТО репликацией с выверенным по проводу зеркалом — эффект 6.7× сохранился. Исходная формулировка: При включённом мышлении у всех отношение дифф/full: glm-5 0.86 · grok-4.3 0.66 · gpt-5.6-luna 0.89 · и deepseek-v4-pro 2.83. Это свойство конкретной модели, а не думающих моделей как класса, и не артефакт выключенного мышления.

ГЛАВНАЯ ОГОВОРКА, обесценивающая часть выводов ЭТОГО ЖЕ отчёта. Разброс судьи измерен (§5.4): на ИДЕНТИЧНОМ входе три повтора единогласны лишь в 56% клеток, а на несущих осях — русский язык и общий вердикт — в 33%. ⇒ судейская методика не разрешает разницу меньше ~2:1. Числа перекрёстной проверки (§5.3) лежат внутри этого шума и понижены до «не разрешает». Крупные перевесы §5.2 шумом не объясняются, но собственная дисперсия Claude-судьи НЕ мерена. Порядок работ был неверным: инструмент надо было померить ДО того, как им мерить.

Деньги: эксп-20 $1.2285 при потолке $2.00; вся сессия (18+19+20) $2.1793.


§1. Дизайн

1.1 Что было не так с эксп-19

Эксп-19 спрашивал «какая форма контракта лучше» и сравнивал дифф с full-regen. Рамка неверна по двум причинам, обе вскрыты этой сессией:

  1. Полное переписывание — это и есть ратифицированная работа редактора (D32.1г, research/11-gap-3.md:10: «финальный стиль задаёт МОДЕЛЬ-РЕДАКТОР»). Дифф физически не может её делать: кальки и канцелярит — дефект РАСПРЕДЕЛЁННЫЙ, он в каждом втором предложении, и якорь на него не ставится. Спан-инструмент чинит ЛОКАЛИЗОВАННОЕ.
  2. Дифф испытывался не в том слоте. Его место — не замена прозаического прохода, а починка того, что уже нашли детерминированные гейты.

1.2 Контракты (все на одном материале: 6 окон, те же черновики, тот же блок закона)

Контракт Что делает Промпт
full переписывает черновик целиком боевой zh-ru/editor.md, FEWSHOT дропнут как в проде
diff-strict точечные правки, уникальность якоря с первого раза editor_contract/prompts/editor-diff.md (эксп-19)
diff-harness то же, но с правом на ошибку и раундом починки — копия харнеса prompts/editor-diff-harness.md
locate ТОЛЬКО находит дефекты, ничего не чинит и не форматирует prompts/editor-locate.md
direct переводит исходник с нуля, черновика нет боевой zh-ru/translator.md
direct-reflow то же + ДОСЛОВНЫЙ блок перевёрстки из editor.md prompts/translator-reflow.md (собран скриптом из двух боевых)
repair чинит ОДНО указанное предложение по названному типу ошибки prompts/repair.md

diff-harness скопирован с настоящих харнесов, а не сочинён: opencode tool/edit.txt («Found multiple matches… provide a larger string»), gemini-cli tools/edit.ts + llm-edit-fixer.ts (отдельный дешёвый LLM чинит промахнувшийся якорь). Ключевое отличие от эксп-19 — у модели НЕТ обязанности гарантировать уникальность якоря заранее.

1.3 Девиации, объявленные до прогонов

  • Потолок поднимался дважды: $0.60 → $1.00 (добавлен арм с включённым мышлением, чтобы сравнение моделей не смешивало модель с режимом) → $2.00 (на $1.00 проекционный гард заблокировал РЕШАЮЩИЙ арм direct-reflow). Оба раза объявлено владельцу ДО запуска.
  • translator-reflow.md собран СКРИПТОМ из двух боевых промптов, а не написан руками — чтобы блок перевёрстки совпадал с редакторским дословно и расхождение нельзя было внести опечаткой.
  • Гардрейл соблюдён: у DeepSeek мышление не гасится ни при каких условиях (эхо-мина); риг на попытку падает намеренно, это проверяется самотестом.

§2. Селф-ревью рига: шесть дефектов, пойманных ДО и ВО ВРЕМЯ прогонов

Требование владельца — проверять код на адекватность до запуска. Поймано:

Дефект Когда Последствие, если бы прошёл
1 неверный эндпоинт glm-5 (open.bigmodel.cn вместо api.z.ai) до трат прогон упал бы
2 раунд починки читал ApplyResult.details как словари, а это список строк до трат главная фича арма умерла бы на первом отказе
3 мой модуль probe затенялся одноимённым из editor_contract до трат импортировался чужой файл
4 арм full уехал с блоком ---FEWSHOT---, который в проде дропается В ХОДЕ прогона база сравнения была не боевым контрактом; 7 вызовов удалены и пересняты
5 nothink выставлялся только для механизма disable, а grok/luna используют effort_none на первом вызове grok/luna ехали бы с ВКЛЮЧЁННЫМ мышлением под видом выключенного
6 у 4 посадок из 12 эталон fix_rx совпадал с испорченным предложением ДО починки до трат бездействие модели засчиталось бы как успех

Плюс два расхождения, уравненных до прогона: user-сообщения армов direct и direct-reflow отличались одним переносом строки; метрика reasoning_chars СЛЕПА для OpenAI-семейства (провайдер не возвращает текст размышления, только счётчик) — для этих моделей считается reasoning_tokens.


§3. Экономика: что именно стоит денег

3.1 Отношение дифф/full по моделям и режимам (медианы 6 окон)

Модель режим full diff-harness × к full правок/вызов
deepseek-v4-pro мышление НЕСЪЁМНО $0.001316 $0.004661 2.83 2.5
glm-5 OFF $0.003837 $0.002368 0.64 4.5
glm-5 ON $0.028886 $0.025068 0.86 4.8
grok-4.3 OFF $0.004142 $0.002445 0.60 0.5
grok-4.3 ON $0.004185 $0.002674 0.66 1.8
gpt-5.6-luna OFF $0.001122 $0.001096 1.01 16.0
gpt-5.6-luna ON $0.001592 $0.001643 0.89 9.7

⇒ «дифф дороже» — свойство deepseek-v4-pro, а не режима и не класса моделей. Побочно: glm-5 с мышлением стоит в 7.5× больше и как редактор экономически неприемлем.

⚠ Цену за вызов нельзя сравнивать между моделями без поправки на объём работы: grok дёшев потому, что делает 0.5 правки на вызов (почти везде «менять нечего»), а luna — 16.

3.2 Из чего состоит выход (медианы, deepseek-v4-pro)

контракт размышление, зн. видимый текст, зн. доля размышления
full 2 523 1 838 58%
diff-strict 12 570 434 97%
diff-harness 12 326 426 97%
locate (только найти) 8 062 584 93%

Копия харнеса не помогла: 2.83 против 2.87 у строгого контракта, размышление то же. Право на ошибку и раунд починки против несъёмного мышления бессильны — раундов починки не потребовалось ни одного, якоря попадали с первого раза во всех 12 вызовах.

3.3 Поиск дороже починки в 56 раз

deepseek-v4-pro gpt-5.6-luna
починка по флагу $0.000625 $0.000173
«только найти» ×6 дороже починки ×5 дороже
переписать весь кусок ×2 дороже ×6 дороже
дефект снят 12/12 12/12
восстановлен строго 7/8 7/8

Обе модели чинят одинаково при разнице цены в 3.7× ⇒ на этой задаче дорогая модель не покупает ничего. ⚠ Арм меряет починку при ИДЕАЛЬНОЙ детекции; гейта на «несуществующее слово» и на смысловую инверсию у нас нет, поэтому это ВЕРХНЯЯ ГРАНИЦА схемы, а не её цена в проде.

3.4 АНГЛИЙСКАЯ ЦЕЛЬ: знак переворачивается от смены языка

Тот же материал, те же контракты, английские черновики (fp-draft-E*, 0 кириллицы) и зеркала промптов, выверенные по проводу: системный промпт ru 3071 зн. против en 3195 (отношение 1.04), дифф 2104 против 2172 (1.03), locate 1314 против 1347 (1.03); черновики 1840 против 2068 зн. То есть конфаунд эксп-19 (обеднённое en-зеркало без блока перевёрстки) здесь устранён.

модель цель full diff-harness × к full locate × к full правок
deepseek-v4-pro ru $0.001316 $0.004661 2.83 2.14 2.5
deepseek-v4-pro en $0.004356 $0.003015 0.67 0.94 1.7
gpt-5.6-luna ru $0.001122 $0.001096 1.01 0.72 16.0
gpt-5.6-luna en $0.000851 $0.000616 0.74 0.66 9.3

На одной и той же модели знак переворачивается от смены целевого языка: 2.83 → 0.67. Причина видна в проводе — размышление deepseek-v4-pro при переписывании:

цель вход выход размышление видимый текст
ru 2232 ток. 1466 ток. 2 523 зн. 1 838 зн.
en 1596 ток. 4529 ток. 16 989 зн. 2 008 зн.

САМО-ОПРОВЕРЖЕНИЕ. Эксп-19 намерил ровно это отношение 6.7× и списал его на обеднённое зеркало промпта (§6.5 отчёта 19: «прорежение асимметрично именно по контрактам»). С выверенным зеркалом эффект сохранился ⇒ та причина была неверной. Отзыв вердикта арма E остаётся в силе (арм действительно был неконтролируем), но его ОБЪЯСНЕНИЕ опровергнуто лучше контролируемой репликацией. Правильная формулировка: deepseek-v4-pro тратит на редактуру в английскую цель в 6.7× больше обдумывания, чем в русскую, и это свойство пары «модель × целевой язык».

Побочно: утечка исходника у gpt-5.6-luna при английской цели практически исчезает — 1 знак против 19 (full) и 16 (diff) на русской. Микро-утечка тоже язык-зависима.

⇒ Ни «дифф дороже», ни «поиск дорог» не являются свойствами контракта. Оба — свойства тройки контракт × модель × целевой язык, и любое обобщение через эту тройку эмпирически ложно.


§4. Что редактор реально меняет в тексте

совпало знаков с черновиком слов дожило абзацев было → стало
full (deepseek-v4-pro) 81% 65% 13 → 6
full (glm-5) 89% 83% 13 → 8
diff-harness (обе) 9899% 98% 13 → 1213

Полное переписывание меняет треть слов и вдвое схлопывает абзацы; дифф трогает 2%. Это объясняет судейский счёт по русскому языку без всякой мистики.


§5. Слепое судейство

5.1 Методика и её исправления

Первый раунд судейства был методически дефектен, и дефект найден вопросом владельца («какой смысл давать 24 агентам одно и то же, если это одна модель?»). Пакеты были разные — 24 сравнения, а не 24 повтора, — но судья один, значит систематическая ошибка общая и от числа агентов не убывает. Симптом: позиция «А» победила 18 раз из 24, а редактура — 12/12 в позиции А против 6/12 в Б.

Исправления, внесённые во второй и третий раунды:

  1. зеркальная раскладка — каждый пакет судится дважды, с переставленными А и Б;
  2. чужая модель-судья (deepseek-v4-pro через тот же провод, что и эксперимент);
  3. раскладка расцеплена с армому каждой модели свой сдвиг чётности, иначе позиция и арм коррелируют по набору (дефект первого раунда);
  4. вёрстка вынесена в отдельную ось — раньше тонула внутри «русского языка»;
  5. чистота вывода — отдельная ось, потому что luna роняет иероглифы в русский текст;
  6. судьям сказано, что слияние построчных абзацев — ТРЕБОВАНИЕ, а не вольность: в первом раунде они штрафовали за исполнение мандата, которого не видели.

5.2 РЕШАЮЩИЙ ЗАМЕР: один проход с мандатом перевёрстки против связки (18 окон)

Гипотеза сессии ОПРОВЕРГНУТА. Я ожидал, что мандат абзацной сборки в промпте транслятора сделает второй проход ненужным — механический показатель это обещал (у deepseek-v4-pro 6 абзацев против 6 у связки). Слепой суд показал обратное: число абзацев было прокси, а не качеством.

ось (арм-победы: 1 проход / 2 прохода / ничья) dp gl lu ВСЕГО n=18
верность 5/1/0 1/5/0 0/4/2 6 / 10 / 2
русский язык 3/3/0 0/4/2 0/5/1 3 / 12 / 3
абзацная вёрстка 3/3/0 0/6/0 2/1/3 5 / 10 / 3
глоссарий 1/1/4 3/0/3 0/1/5 4 / 2 / 12
ОБЩИЙ 5/1/0 1/5/0 1/5/0 7 / 11 / 0

Проверка позиции пройдена — предвзятости НЕТ. Общий счёт по позициям 10:8 (симметричен, p≈0.8); у КАЖДОЙ из трёх моделей её победитель побеждает в обеих позициях. Это первый раунд судейства в сессии, методически чистый: расцепление раскладки с армом сработало.

Разложение по моделям переворачивает вывод для боевой конфигурации:

  • deepseek-v4-pro — второй проход ВРЕДИТ. Один проход берёт общий вердикт 5:1 и верность 5:1; русский и вёрстка ровно 3:3. Переписывание черновика НЕ купило ни одной целевой оси, зато ломало фактуру: сорванные шкалы процентов (四成八分 → «сорок восемь десятых» = 480%), потерянные реалии (蛊虫 → «насекомых», 家老 → «Наставник»), ломаная грамматика («не хватило бы на то, как их тратил»). Это модель, которая стоит редактором в pipeline-c1.yaml сейчас.
  • glm-5 — второй проход даёт максимум и именно там, где обещал: 5:1 общий, 4:0 русский, 6:0 вёрстка (единственный чистый свип в наборе, обе позиции, p=0.031). Встречно один проход у glm нестабилен: в одном окне 9 непереведённых иероглифов и генеративный залипон.
  • gpt-5.6-luna — связка берёт язык и верность, но НЕ вёрстку (1:2 при 3 ничьих). У модели арм-НЕзависимый дефект чистоты: иероглифы в теле русского текста у ОБЕИХ версий.

Ответ на «нужен ли редактор» зависит от модели и переворачивается. Это не свойство архитектуры и не свойство контракта. Для glm-5 второй проход оправдан; для deepseek-v4-pro он отрицателен по общему вердикту.

5.3 ПЕРЕКРЁСТНАЯ ПРОВЕРКА решающего арма: чужая модель + зеркальная раскладка (18 пар)

Те же 18 пакетов пересужены deepseek-v4-pro в ДВУХ раскладках. Вердикт засчитывается только если при перестановке А/Б побеждает тот же ТЕКСТ.

ось устойчивость чужой судья Claude (§5.2)
русский язык 10/12 = 83% связка 6 : 4 связка 12 : 3
общий вердикт 9/15 = 60% связка 5 : 4 связка 11 : 7
верность 3/7 = 43% сигнала нет связка 10 : 6

Что подтвердилось: модель-зависимость. По общему вердикту среди устойчивых — deepseek-v4-pro один проход 2:0, glm-5 связка 2:1, gpt-5.6-luna связка 3:1. Знак совпадает с Claude у всех трёх моделей, то есть вывод «на боевой паре второй проход отрицателен» держат ДВА разных судьи.

Что НЕ подтвердилось в заявленной величине: преимущество связки по русскому языку вдвое слабее (6:4 против 12:3), общий вердикт сходится к ничьей (5:4), а верность у чужого судьи не даёт сигнала вовсе (43% устойчивости = уровень монетки).

Корректная формулировка: второй проход даёт преимущество по русской прозе — направление подтверждено двумя судьями, но ВЕЛИЧИНА судья-зависима и на независимом судье близка к порогу различимости. Числа §5.2 читать как верхнюю оценку, §5.3 — как нижнюю.

⚠ Чужой судья заметно шумнее: устойчивых сравнений 15 из 18 по общему вердикту против практически всех у Claude, а по глоссарию и полноте устойчивых нет вовсе (сплошные ничьи). Разброс судьи на ПОВТОРЕ одной клетки не мерен ни разу — это остаётся открытым.

5.4 РАЗРЕШАЮЩАЯ СПОСОБНОСТЬ СУДЬИ: разница меньше 2:1 сигналом не является

Последняя дыра методики закрыта замером, и он обесценивает ЧАСТЬ собственных выводов отчёта. Те же пакеты, та же ориентация, три независимых голоса deepseek-v4-pro на идентичном входе:

ось клеток единогласно доля
общий вердикт 6 2 33%
русский язык 6 2 33%
верность 6 2 33%
глоссарий 6 4 67%
полнота 6 5 83%
чистота 6 5 83%
ИТОГО 36 20 56%

По общему вердикту судья меняет СОБСТВЕННЫЙ ответ между повторами в 4 клетках из 6 (единогласны только w2 и w3). ⇒ Разница между армами, меньшая этого разброса, сигналом считаться не может.

Что это отменяет:

  • Числа §5.3 (чужой судья: русский 6:4, общий 5:4) лежат ВНУТРИ шума ⇒ понижаются с «подтверждает направление» до «не разрешает». Перекрёстная проверка не подтвердила и не опровергла §5.2 — она оказалась слепа к разнице такого размера.
  • Скачок устойчивости 45% → 68% между частичными (11 пар) и полными (24 пары) данными §5.3 объясняется не малой выборкой, а нестабильностью инструмента.

Что устояло: крупные перевесы Claude в §5.2 (русский 3:12, вёрстка gl 6:0, dp общий 5:1) кратно больше замеренного разброса, поэтому шумом не объясняются. ⚠ Но собственная дисперсия Claude-судьи НЕ мерена — этот замер сделан на deepseek-v4-pro. Переносить его на Claude без замера нельзя, и §5.2 остаётся утверждением с неизмеренной погрешностью.

Норматив на будущее (главный методический вывод сессии): односудейный однопроходный вердикт на этой задаче — не измерение. Прежде чем сравнивать армы, надо померить разброс судьи на повторе и объявить порог различимости; всё, что меньше порога, печатать как «не разрешено», а не как результат.

5.5 Устойчивость вердиктов к перевороту раскладки (бейк-офф, 24 пары)

ось устойчивость кто выигрывает там, где устойчиво
русский язык 80% редактура 10 : 2
верность 73% ничья 4 : 4
общий вердикт 68% ничья 8 : 7
чистота 100% редактура 3 : 1
полнота 100% редактура 2 : 1

Вывод «редактура бьёт прямой перевод 18:6» ОТОЗВАНу независимой модели с зеркальной раскладкой это 8:7, ничья. Уцелела одна ось: русский язык.

5.6 Утечка исходника в выход

модель окон с утечкой (из 6), full / diff ханьцзы всего, full / diff
deepseek-v4-pro 0 / 0 0 / 0
glm-5 0 / 1 0 / 2
grok-4.3 0 / 1 0 / 2
gpt-5.6-luna 3 / 3 19 / 16

luna роняет иероглифы в русскую прозу в половине окон и в ОБОИХ контрактах ⇒ это свойство модели, а не контракта. Максимальная доля 0.49%. Боевой гейт этого не поймает: disposition.go держит cjkEchoThreshold = 0.15, то есть ловит сплошное эхо, а микро-утечка («сделать его 本命蛊») проходит насквозь. Вход для бэкенда.


§6. Что это даёт архитектуре

Складывается конфигурация, которую стоит проверять как целое:

  1. Один проход сильной моделью с мандатом перевёрстки вместо двух. Абзацная сборка достигается промптом (§ИТОГ), а exp14:239 независимо показывает, что силой модели она НЕ достигается («сильнее модель сама по себе абзацы не чинит»).
  2. Банкноты остаются на этом проходе. У черновика два продукта, и второй — блок банкнот, WHAT-канал банка памяти: майнер находит термины в ИСХОДНИКЕ, а переводческая волна предлагает для них ПЕРЕВОДЫ (mining.go:85). Подтверждено по базе холодного прогона: разделитель ⟦TM-BANK-v1⟧ в 56 из 128 черновиковых ответов, у стадии терминологии — 0. ⚠ Пинг бэкенду: боевой prompts/zh-ru/translator.md блока банкнот НЕ содержит, отдельный translator-banknote.md ни одним конфигом не выбирается (prompt_override в pipeline-c1.yaml не задан). Похоже на тихо выключённый канал — проверить.
  3. Гейты флагают, точечная починка чинит — за $0.0002 вместо $0.0011 за переписывание. Это и есть механизм конкурентов, которого у нас нет.

Чего эти данные НЕ позволяют утверждать. Доля дефектов, которую гейты видят САМИ, не измерена (гейта на выдуманное слово и на смысловую инверсию нет). Разброс судьи на повторе одной клетки не мерен ни разу. Английская сторона посчитана по цене и формату, но не судилась. n=6 окон на модель.


§7. Как ставить такие эксперименты (мета-вывод сессии)

0. Сначала померить ИНСТРУМЕНТ, потом им мерить. Главный урок сессии: судья на этой задаче единогласен на идентичном входе лишь в 56% клеток и в 33% — на несущих осях (§5.4). Всё судейство трёх раундов ставилось БЕЗ этого знания, и часть выводов пришлось понизить задним числом. Порядок обязан быть обратным: замер разброса судьи → объявленный порог различимости → только потом сравнение армов.

  1. Не «инструмент А против инструмента Б», а «класс дефекта → самый дешёвый достаточный механизм», включая $0. Локализованные дефекты (термин, число, полярность) чинятся спаном; распределённые (кальки) — только переписыванием; механические (вёрстка) — промптом или кодом.
  2. Любое утверждение о качестве обязано пройти зеркальную раскладку и второго судью другой модели. Односудейный замер с фиксированной раскладкой дал 18:6 там, где на деле 8:7.
  3. Ревью посылки — ДО прогона, инструментом, а не глазами. Из шести дефектов рига четыре пойманы до трат; два оставшихся стоили пере-съёмки семи вызовов и первого прогона grok.
  4. Проверять, что параметр не только УШЁЛ на провод, но и ПОДЕЙСТВОВАЛ. Эксп-19 проверил первое и не проверил второе — через эту дыру проехала посылка целого арма.