662 lines
67 KiB
Markdown
662 lines
67 KiB
Markdown
# 19. Контракт редактора: ДИФФ против FULL-REGEN (арм Q4b) + покрытие инъекции
|
||
|
||
**Полигон-сессия 04–05.08.2026.** Расширение зоны по слову владельца 05.08: «довести до конца
|
||
найденный пиздец, доказать на конкретике, как пользоваться редакторами правильно».
|
||
Носитель — **строка 106 бэклога**: «Слой 3 НЕ достроен: контракт редактора = full-regen, а целевой —
|
||
узкие мандаты + ДИФФЫ». Арм **Q4b** пре-регистрирован в `15-segmentation-empirics.md:108` и
|
||
**не прогонялся НИ РАЗУ**. Зона: `eval/editor_contract/` + этот файл + пинг в PROGRESS «Полигон».
|
||
Потолок пробы **$0.40**. Не коммичу, кроме пре-рег-фриза.
|
||
|
||
> **РЕВЬЮ-ШАПКА ПРИЁМКИ (оркестратор №15, D39.108, 06.08) — ПРИНЯТ; вердикт гейта Q4b «диффы откладываются» подтверждён ре-раном.** Санкция расширения зоны подтверждена владельцем 06.08. **Поправки приёмки к телу:** (1) §2.1: строка «80 операций / 78 применено» и поправка-1 «честный знаменатель 78/81 = 0.963, операция-удаление потеряна молча, формат не умеет удаление» УСТАРЕЛИ против замороженного рига — `score.py` после ФИКС-2 даёт **81/79 = 0.975**, блок-удаление парсится И применяется (значение комплаенса и вердикт гейта не двигаются). (2) Вся колонка «канон вне блока» (§0.1/§2.3) снята ДО-фризовым стемом и не воспроизводится замороженной командой §2.9: комитнутый скорер даёт черновик **16/41 (39%)**, A0 14 · A5 15 · A1 22, D1 16·16·17 (мед 16), F1 22·16·18 (мед 18), D2 17·16·16, F5 15·19·19; причина — ужесточение стемов (方正 «Фанчжэн» слитно выпал, и по голду НОВЫЙ стем прав). Направления не переворачиваются; вывод «блок поднимает канон вне блока» остаётся отменённым. (3) Рассинхрон с эксп-20: объяснение арма E (§6.5 «обеднён знаменатель») ОПРОВЕРГНУТО репликацией с выверенным зеркалом — эффект 6.7× сохранился (эксп-20 §3.4); «дифф дороже» сужен до пары модель×целевой-язык (dspro ru 2.83 / en 0.67). В тело не вносилось — здесь шапка первична.
|
||
|
||
**Установлено твёрдо.** Дифф-контракт `research/19` §C1 механически исправен: формат-комплаенс
|
||
0.975 на базовых окнах и **0.966 на боевой единице** (порог 0.90), **малформед 0 на 90 вызовах**,
|
||
детерминированный аппликатор самопроверен 15/15. Вопрос «умеет ли модель в диффы на русской прозе»
|
||
закрыт положительно; опасение `research/19` («слабые модели на edit-форматах хуже, чем отдавая
|
||
текст целиком») не воспроизвелось.
|
||
|
||
**Экономика против диффа, реплицировано трижды:** отношение цены дифф/full-regen = 2.913 (база) ·
|
||
1.677 (арм L) · **2.468 (боевая единица, дефолтный режим, 6 клеток из 6)**. Размышление — 95% цены
|
||
диффа, растёт с объёмом ВХОДА (×2.78 при входе ×3.24, p=0.0003) и сужением мандата НЕ снимается.
|
||
|
||
**Причина удорожания НЕ вскрыта.** Обе гипотезы остались непроверенными: «несъёмный thinking» —
|
||
арм L не исполнен (посылка про ручку `low` не выдержала пере-счёта, §6.2); «русская фертильность» —
|
||
арм E конфаундирован неполным зеркалом промпта на проводе (§6.5).
|
||
|
||
**Что упало:** «do-nothing промптом не покупается» — ПАЛО. Узкий fidelity-only мандат даёт
|
||
`NO_CHANGE` 4/18 против 0/36 у промпта со стиль-мандатом. Сужение мандата покупает дисциплину, но
|
||
не деньги.
|
||
|
||
**⚠ Требует действия оркестратора.** Правка `00-provider-quirks.md` §3б, сделанная этой же сессией
|
||
04–05.08 («ручка `low` на `deepseek-v4-pro` работает, срезает размышление на треть»), **ОТОЗВАНА**:
|
||
решающее правило «диапазоны не пересекаются» при n=3/3 воспроизводится нулевым вмешательством.
|
||
Строка §3а (`low`→`high` для pro) возвращена в силу; звено про `xhigh` устояло. Если отозванная
|
||
правка процитирована где-то ещё — сверить.
|
||
|
||
**Решение по строке 106.** Закрывать её выводом «диффы не берём» ПРЕЖДЕВРЕМЕННО. Корректный
|
||
статус: full-regen остаётся каноном не потому, что дифф-контракт плох, а потому что на этой модели
|
||
и в этом режиме он дороже — при невскрытом механизме удорожания. Что домерить — §6.9.
|
||
|
||
**Деньги.** Базовый прогон $0.194006 из потолка $0.40; четыре фальсификации $0.349566 из $0.50;
|
||
контроль `glm2` к пробе 18 — $0.081326. Ни один потолок не пробит, ни одна клетка не выброшена.
|
||
|
||
**Дисциплина.** Пре-рег обеих проб зафризен ДО платных вызовов (`4d1d9e5`); прогон верифицирован
|
||
инструментом (`verify_run.py`); результаты прошли адверсариальное ревью (5 линз × скептик,
|
||
15 находок, 4 выжили) — их правки уже внесены. Отчёт содержит §6.6 «что снято» и §6.7 «девиации».
|
||
|
||
---
|
||
|
||
## §0. Что уже установлено — и почему это не закрывает вопрос
|
||
|
||
Проба 18 (`18-editor-wire-probe.md`) на боевом проводе `deepseek-v4-pro`:
|
||
единый закон-блок исполняется 21/21 клеток; неверная строка банка принимается 6/6 и вытесняет
|
||
верную 5/6; редактор без блока ломает 5–12 из 20 канонических клеток черновика (два розыгрыша);
|
||
и он же вносит собственные дефекты (тихий обрыв при `finish=stop`, 五百年→«полувекового»).
|
||
|
||
**Чего проба 18 не могла сказать:** является ли это свойством МОДЕЛИ или свойством КОНТРАКТА
|
||
роли. Действующий контракт — full-regen с обязательной ДИСКУРС-ПЕРЕВЁРСТКОЙ и прямым мандатом
|
||
«варьируй лексику» (`editor.md`), то есть модель просят переписать текст целиком. Целевой контракт
|
||
(`09-target-architecture.md` §Слой 3, спека `research/19` §C1–C2) — узкие правки диффом. Разницу
|
||
никто не мерил.
|
||
|
||
### §0.1 $0-находка ДО пробы: дыра пайплайновая, а не редакторская
|
||
|
||
Инъекция селективна и ограничена бюджетом 800 токенов (`pipeline-c1.yaml`), поэтому блок несёт
|
||
только сработавшее в чанке. Замер по уже оплаченному сырью пробы 18 (`editor_contract/offblock.py`;
|
||
знаменатель — 41 клетка: ПОДПИСАННЫЕ строки голда, встречающиеся в исходнике окна и отсутствующие
|
||
в блоке; 18 уникальных сущностей; `转`/`炼化` не скорятся — нет устойчивого стема):
|
||
|
||
| | канон подписанных ВНЕ блока |
|
||
|---|---|
|
||
| **черновик** (вход редактора) | **18/41 (44%)** |
|
||
| редактор full-regen БЕЗ блока (A0 · A5) | 16/41 · 17/41 |
|
||
| редактор full-regen + закон-блок (A1) | 24/41 |
|
||
|
||
**Разброс армов 16…24 лежит ВНУТРИ дисперсии одиночного розыгрыша, измеренной той же пробой
|
||
(7 клеток из 21) ⇒ утверждать «редактор ломает подписанные сущности вне блока» эти данные НЕ
|
||
позволяют.** Что они позволяют утверждать твёрдо: **канон по подписанным строкам вне
|
||
инъецированного подмножества = 44% уже в ЧЕРНОВИКЕ.** `花酒行者` («Монах Цветочного Вина») пришёл
|
||
неканоническим из транслятора — редактор его не ломал. Дыра общая для обеих ролей, потому что
|
||
инъекция селективна у обеих.
|
||
|
||
⇒ Осей две: **контракт правки** (эта проба) и **покрытие инъекции** (шире пробы; вход для владельца).
|
||
|
||
---
|
||
|
||
## §1. ПРЕ-РЕГИСТРАЦИЯ (записано ДО первого платного вызова)
|
||
|
||
Дата фиксации: 2026-08-05, до любых платных вызовов этой пробы.
|
||
|
||
### 1.1 Материал (переиспользован из пробы 18, $0)
|
||
|
||
Те же 6 окон `pick_windows()`; те же черновики арма B транслятора (`inj-w{k}-B.json`); те же 12
|
||
посаженных дефектов (`DEFECTS`, дословный список — §0.5 пробы 18). Прямая сравнимость с уже
|
||
оплаченными армами A1/A5 — по построению.
|
||
|
||
### 1.2 Армы (60 вызовов `deepseek-v4-pro`, провод = edit-стадия c1)
|
||
|
||
| Арм | Вызовов | Контракт | Блок | Черновик |
|
||
|---|---|---|---|---|
|
||
| **D1** | 18 (6×3) | ДИФФ | закон-блок §B | чистый |
|
||
| **D2** | 18 (6×3) | ДИФФ | нет | с посадками |
|
||
| **F1** | 12 (6×2) | full-regen | закон-блок §B | чистый |
|
||
| **F5** | 12 (6×2) | full-regen | нет | с посадками |
|
||
|
||
F1/F5 — ДОБОР реплик до N=3: у пробы 18 по одному розыгрышу (A1, A5), а её собственная находка —
|
||
одиночный розыгрыш нельзя цитировать как величину. Реплики различаются только недетерминизмом
|
||
провайдера (`temperature` в thinking-режиме DeepSeek игнорируется, quirks 00).
|
||
|
||
### 1.3 Дифф-контракт (спека `research/19` §C2, реализация `editor_contract/`)
|
||
|
||
Промпт `prompts/editor-diff.md`: мандаты верности/терминов/стиля из `editor.md` СОХРАНЕНЫ,
|
||
**переверстка ИСКЛЮЧЕНА** (по §C1/§C3 reflow — отдельный проход, арм Q4c), «пустой список правок —
|
||
полноценный ответ» (`NO_CHANGE`) — дисциплина do-nothing из §C3.
|
||
Формат — anchored search/replace, без номеров строк. Apply (`apply.py`, детерминированный,
|
||
самопроверен 9/9 юнит-кейсами до первого платного вызова): нормализация пробелов и классов
|
||
пунктуации («»""„ · —–- · … · ’‘'); якорь не найден → REJECT; **якорь неоднозначен (≥2 совпадений)
|
||
→ REJECT, а не тихое применение первого**; пересечение спанов → REJECT; малформед → операции нет.
|
||
Отброшенная операция оставляет черновик как есть — blast-radius одной правки, а не чанка.
|
||
|
||
### 1.4 Метрики (все детерминированные, $0; судейского рига НЕТ и он вне скоупа)
|
||
|
||
1. **Формат-комплаенс** = applied / ops_total по всем дифф-вызовам. Плюс доли reject по причинам и
|
||
доля `NO_CHANGE`/малформед.
|
||
2. **Канон В блоке** — 21 клетка, метод пробы 18 (с развязкой конфаунда 真元/元海).
|
||
3. **Канон ВНЕ блока** — 41 клетка, §0.1.
|
||
4. **Фикс-рейт посадок** — 12 дефектов, метод пробы 18 (regex + обязательный глаз).
|
||
5. **Атом-omission** ($0, детерминированно): по каждому предложению исходника — присутствие
|
||
многозначных ЧИСЕЛ и отрицательной полярности где угодно в выходе. Не длино-зависимо.
|
||
6. **Внесённые дефекты**: обвал непробельной длины >40% против черновика и числовой дрейф
|
||
(форма regression_guard); плюс глазная вычитка.
|
||
7. **Деньги и выходные токены** — COGS-ось (выход редактора ≈ 90% COGS, `research/15`).
|
||
|
||
### 1.5 Критерии (стоп-гейт Q4b дословно из `exp15:147`, пороги не мои)
|
||
|
||
> «Q4b: формат-комплаенс <90% ИЛИ fidelity-first trap хуже full-regen → диффы откладываются
|
||
> (закрыть D21.4/D21.10 явно); ≥90% и атом-omission=0 → дифф-редактор в прод-кандидаты.»
|
||
|
||
Операционализация, фиксируется здесь:
|
||
- **комплаенс** — п.1 ≥ 0.90;
|
||
- **fidelity-first trap** — п.4 (фикс-рейт посадок) дифф-арма НЕ ХУЖЕ full-regen-арма на тех же
|
||
посадках; знаменатель 12, оба арма усредняются по репликам;
|
||
- **атом-omission = 0** — п.5 на дифф-армах;
|
||
- канон (пп.2–3) и COGS (п.7) — **сопутствующие**, порогов не имеют, печатаются числом.
|
||
- Средние исходы на N=6×3 печатаются как «неопределённо», не абсорбируются.
|
||
|
||
### 1.6 Смета (напечатана ДО первого платного вызова)
|
||
|
||
`probe.py --plan`: 60 вызовов (36 дифф + 24 full-regen), вход ≈114 265 ток. → $0.0497.
|
||
Выход: ожидаемо 105 600 ток. → **ИТОГО $0.1416**; пессимистично 336 000 ток. → $0.3420;
|
||
абсолютный потолок (все 60 в cap 16000) $0.8849 — недостижим: перед КАЖДЫМ вызовом стоит
|
||
**проекционный гард** (не вызываем, если накопленное + худший исход вызова пробьёт $0.40),
|
||
плюс живой стоп $0.35.
|
||
|
||
### 1.7 Границы вывода, объявленные заранее
|
||
|
||
- Проза и переверстка НЕ сравниваются: дифф-арм по спеке их не делает. Вывод «дифф лучше/хуже»
|
||
относится к верности, терминам и деньгам, не к художественности.
|
||
- Судейского рига нет — никаких клеймов о качестве, которые требуют судьи.
|
||
- Одна книга, одна пара, 6 окон, единица ~500 ру-токенов выхода (боевой потолок 3200).
|
||
- Модель одна — `deepseek-v4-pro`. `research/19` предупреждает: слабые модели на edit-форматах
|
||
РАБОТАЮТ ХУЖЕ, чем отдавая текст целиком (aider: GPT-3.5 46% whole против 30% diff), и вся
|
||
эмпирика форматов правок снята на КОДЕ, на прозе не мерена. Отрицательный исход ожидаем и легитимен.
|
||
|
||
---
|
||
|
||
## §2. Результаты
|
||
|
||
60 вызовов `deepseek-v4-pro`, все `finish=stop`, **$0.194006 при потолке $0.40**. Реплики ×3 на арм.
|
||
|
||
> **⛔ Первая редакция §2 частично отозвана (05.08).** Приёмка воркфлоу дала 19 подтверждённых
|
||
> дефектов; несущие: (1) аппликатор диффов молча портил 6 из 36 выходов — карта офсетов строилась по
|
||
> NFKC-тексту, а резался оригинал, при этом риг рапортовал `applied=ops_total, rejected=0`;
|
||
> починен, самотест расширен 9/9 → **15/15**, все 36 выходов пере-применены из сохранённых ответов
|
||
> за $0, числа ниже — уже пере-считанные; (2) я сузил зафризенный знаменатель посадок 12→6 ПОСЛЕ
|
||
> результатов — возвращено, по замороженной формулировке гейт **не пройден** (11/12 против 12/12);
|
||
> (3) метрика полярности ловила `не ` внутри слов («мне», «камни», «крайне») — 21 ложное из 58,
|
||
> клейм «~10× преимущество на омиссии» **снят**, под токенной метрикой остаётся ~1.3× в шуме;
|
||
> (4) выигрыш на 成/分 был посчитан по одному окну из двух — исправлено ниже.
|
||
> Механика проверок и воспроизведение — `eval/premise_review/README.md`; полный текст ретракции —
|
||
> в истории git (коммит `4d1d9e5`), в отчёте он не воспроизводится по норме владельца 04.08.
|
||
|
||
### 2.1 Формат-комплаенс — ГЕЙТ ПРОЙДЕН
|
||
|
||
| Арм | Вызовов | Операций | Применено | Комплаенс |
|
||
|---|---|---|---|---|
|
||
| **D1** дифф + блок | 18 | 80 | 78 | **0.975** ✓ |
|
||
| **D2** дифф, посадки | 18 | 78 | 74 | **0.949** ✓ |
|
||
|
||
Reject: якорь не найден 4 · неоднозначен 1 · пересечение 1 · пустой 0. **Малформед — 0 из 36.**
|
||
**Среднее** 4.44 и 4.33 правки на вызов (медианы 4.5 и 4.0 — в первой редакции ярлык «медиана» стоял
|
||
ошибочно, здесь и в `score.py:78`).
|
||
|
||
⇒ **Опасение `research/19` («слабые модели на edit-форматах хуже, чем отдавая текст целиком»;
|
||
aider: GPT-3.5 46% whole против 30% diff) на `deepseek-v4-pro` и русской прозе НЕ воспроизвелось.**
|
||
Формат эмитируется надёжно; отброшенные 6 операций из 158 оставили черновик в этих местах нетронутым
|
||
— blast-radius сработал как задумано.
|
||
|
||
⚠ **Две поправки к этому разделу:**
|
||
1. **Дыра парсера рига.** `ec-D1-w4-r2` содержит 10-й блок с ПУСТОЙ заменой (удаление сноски
|
||
«— Прим. перев.»); `OP_RE` (`apply.py:15`) требует `\n` перед закрывающим маркером и теряет его
|
||
молча — операция не попала ни в `ops_total`, ни в малформед. **Честный знаменатель D1 = 78/81 =
|
||
0.963** (гейт всё ещё пройден). Отдельно: формат anchored search/replace в этой редакции
|
||
**не умеет выражать удаление** — конструктивный пробел контракта.
|
||
2. **Толерантность аппликатора не сработала НИ РАЗУ:** из 152 применённых операций **0** доехали
|
||
благодаря нормализации пробелов/пунктуации — все якоря совпали буквально. Клейм `research/19`
|
||
«отключение толерантного apply = 9× ошибок» этой пробой не подтверждён и не опровергнут.
|
||
|
||
### 2.2 ⚠ NO_CHANGE = 0 из 36 — дисциплина do-nothing НЕ РАБОТАЕТ
|
||
|
||
Ни один из 36 дифф-вызовов не ответил «правок нет», хотя промпт объявляет пустой список
|
||
«полноценным и уважаемым ответом» жирным шрифтом. Модель всегда находит ~4.3 правки.
|
||
`research/19` §C1 п.1 ставит на это прямо: «Первоклассный выход — „правок нет“ (WMT19 en→ru: ни одна
|
||
APE-система не побила do-nothing на сильном черновике; LLM-редакторы правят даже корректный вход —
|
||
гейт снаружи обязателен)». **Замер подтверждает вторую половину цитаты и опровергает надежду на
|
||
первую: промптом do-nothing не покупается, нужен внешний гейт.**
|
||
|
||
### 2.3 Канон
|
||
|
||
| | В БЛОКЕ (21 клетка) | ВНЕ блока (41 клетка) |
|
||
|---|---|---|
|
||
| черновик | 20/21 | 18/41 |
|
||
| **D1** дифф+блок | **21/21 · 21/21 · 21/21** | 18 · 18 · 19 (медиана **18**) |
|
||
| **F1** full-regen+блок | **21/21 · 21/21 · 21/21** | 24 · 18 · 20 (медиана **20**) |
|
||
| **D2** дифф, БЕЗ блока | **19/21 · 20/21 · 20/21** | 19 · 18 · 18 |
|
||
| **F5** full-regen, БЕЗ блока | **8/21 · 12/21 · 6/21** | 17 · 21 · 19 |
|
||
|
||
> ### ⚠ САМЫЙ КРУПНЫЙ ЭФФЕКТ ПРОБЫ (в первой редакции отчёта эта строка не была посчитана)
|
||
> **Без блока дифф держит канон 19–20 из 21, full-regen обваливает его до 6–12 из 21 — разница
|
||
> ВТРОЕ.** Строка `元海` отдельно: дифф 4/6 · 5/6 · 6/6 против full-regen 0/6 · 1/6 · 1/6.
|
||
> Это ровно та ось, где §0.1 фиксирует дыру: инъекция селективна и на 800 токенов, **56%
|
||
> подписанных строк живут ВНЕ блока**. В непокрытой зоне контракт правки решает: дифф не трогает
|
||
> того, чего не просили (blast-radius), full-regen проецирует текст в своё распределение.
|
||
> Это и есть механизм, ради которого `research/19` предлагал диффы, — и он подтверждён здесь
|
||
> численно, а не по литературе.
|
||
|
||
**Два вывода, оба поправляют пробу 18:**
|
||
1. **В блоке контракт не различает: оба 21/21 во всех трёх розыгрышах.** Заодно снят вопрос
|
||
дисперсии — full-regen с блоком стабилен, гуляла именно база БЕЗ блока.
|
||
2. **Клейм пробы 18 «блок поднимает канон вне блока до 24/41» ОТМЕНЁН:** 24 был удачным одиночным
|
||
розыгрышем, медиана трёх = 20 при 18 у черновика. Разница внутри шума.
|
||
Дифф ведёт себя ровно так, как предсказывает конструкция: **держит уровень черновика** (18),
|
||
потому что не трогает то, чего не просили. Full-regen колеблется 18–24.
|
||
|
||
### 2.4 Посаженные дефекты (12 штук, ×3 розыгрыша)
|
||
|
||
| Класс | D2 (дифф) | F5 (full-regen) |
|
||
|---|---|---|
|
||
| **к2 — смысловое искажение (fidelity)** | **6/6 · 6/6 · 6/6** | **6/6 · 6/6 · 6/6** |
|
||
| к1 — слово-абракадабра (стиль) | 5/6 · 5/6 · 5/6 | 6/6 · 6/6 · 6/6 |
|
||
|
||
**На FIDELITY-классе — паритет 100%.** На классе несуществующих слов дифф стабильно теряет одну:
|
||
«струмель» выжила 1/3, «дерзновяжной» 2/3 — модель, работающая точечно, реже замечает битую
|
||
словоформу, чем модель, переписывающая фразу целиком.
|
||
|
||
### 2.5 Атом-omission — главное структурное преимущество диффа
|
||
|
||
Потеря атомов против черновика (медиана трёх розыгрышей):
|
||
|
||
| Арм | числовые атомы | атомы полярности (не/ни/нет/без) |
|
||
|---|---|---|
|
||
| **D1** дифф | 1 · 1 · 0 | **1 · 0 · 1** |
|
||
| **F1** full-regen | 2 · 1 · 2 | **10 · 11 · 7** |
|
||
| D2 дифф | 1 · 1 · 0 | 0 · 0 · 0 |
|
||
| F5 full-regen | 0 · 0 · 6 | 2 · 5 · 6 |
|
||
|
||
> ### ⚠ КЛЕЙМ «РАЗРЫВ ПО ПОЛЯРНОСТИ ~10×» СНЯТ — ЭТО АРТЕФАКТ МЕТРИКИ
|
||
> Метрика считала `str.count` по подстрокам `"не "`, `"ни "`, `"нет"`, `"без "`. Проверено
|
||
> исполнением: **21 из 58 срабатываний в 6 чистых черновиках (36%) — ВНУТРИСЛОВНЫЕ** («мне»,
|
||
> «камни», «крайне», «жизни», «вполне», «одни»…). Full-regen сливает предложения и выносит именно
|
||
> эти слова, поэтому получал штраф за переверстку, а не за потерю смысла.
|
||
> **Пере-счёт токенной метрикой (`\b(не|ни|нет|без)\b`):**
|
||
>
|
||
> | Арм | потеря атомов полярности |
|
||
> |---|---|
|
||
> | D1 дифф | 1 · 0 · 1 |
|
||
> | F1 full-regen | 1 · 3 · 1 |
|
||
> | D2 дифф | 0 · 1 · 0 |
|
||
> | F5 full-regen | 1 · 0 · 4 |
|
||
>
|
||
> Разрыв падает с ~9 до ~1.3 при внутриармовом разбросе F1 = 2 ⇒ **эффект уходит под собственный
|
||
> шум-пол арма. «Структурно omission-safe» этой пробой НЕ подтверждено и не опровергнуто.**
|
||
> Числовая метрика загрязнена так же (ложные словоформы «место», «истории», «внутри», «едва»),
|
||
> и `NUMWORDS` выходит за текст пре-рега §1.4, где сказано «многозначных ЧИСЕЛ» — девиация.
|
||
|
||
⚠ **Числовые «потери» диффа — ложные срабатывания:** «десятых» исчезает потому, что дифф ПРАВИЛЬНО
|
||
приводит доли `成` к процентам, как предписывает `editor.md` (подробнее — §2.6, это выигрыш, а не потеря).
|
||
|
||
### 2.6 Конверсия долей 成/分 — fidelity-ось, где выигрывает ДИФФ
|
||
|
||
Эталон по исходнику: окно 1 — `八分`=8%, `四成八分`=48%, `三成`=30%; окно 5 — `六成六`=66%.
|
||
`editor.md` предписывает эту конверсию прямым текстом («доля 成 — десятые: 六成六 = 66%»).
|
||
|
||
| Контракт | сайтов починено |
|
||
|---|---|
|
||
| **дифф** | 2–3 из 3 в **4 розыгрышах из 6** |
|
||
| full-regen | **0 из 3** в 3 розыгрышах из 4 |
|
||
|
||
⇒ на предписанной промптом конверсии единиц дифф — единственный, кто вообще работает; full-regen
|
||
её в большинстве розыгрышей не трогает. **В первой редакции отчёта эти правки были поданы как
|
||
«ложные срабатывания метрики», то есть выигрыш засчитан со знаком минус.**
|
||
|
||
**Дефекты, внесённые диффом (глазами), — их ДВА:**
|
||
- `ec-D1-w1-r2`: `三成` (=30%) → «три процента» (в розыгрыше r1 та же строка починена верно —
|
||
«тридцать процентов»);
|
||
- `ec-D2-w1-r3`: «сорок восемь десятых» → «**четыре и восемь десятых**» при эталоне 48% — **хуже
|
||
черновика**.
|
||
|
||
Обвалов длины (форма regression_guard) — 0 из 72 во всех четырёх армах.
|
||
|
||
### 2.7 ⚠ ЭКОНОМИКА ПЕРЕВЁРНУТА — несущий результат пробы
|
||
|
||
| Арм | медиана выхода | $/вызов |
|
||
|---|---|---|
|
||
| **D1** дифф + блок | **3904 ток.** | **$0.004157** |
|
||
| **F1** full-regen + блок | 1384 ток. | **$0.002686** |
|
||
| D2 дифф | 4138 ток. | $0.003780 |
|
||
| F5 full-regen | 1368 ток. | $0.001846 |
|
||
|
||
**Дифф-редактор в 1.5–2 раза ДОРОЖЕ full-regen.** Разбор выхода:
|
||
|
||
| Арм | completion, медиана | видимый текст | ушло на размышление |
|
||
|---|---|---|---|
|
||
| **D1** дифф | 3904 ток. | ≈162 ток. | **3742 ток. (96%)** |
|
||
| **F1** full-regen | 1449 ток. | ≈612 ток. | 837 ток. (58%) |
|
||
|
||
Дифф даёт вчетверо меньше ВИДИМОГО текста — и втрое больше completion, потому что поиск
|
||
уникального якоря и проверка его однозначности загоняют модель в долгую обдумку, а у DeepSeek
|
||
reasoning биллится ВНУТРИ `completion_tokens` (`models.yaml`, `reasoning: subset`).
|
||
|
||
⇒ **Экономический довод `research/15` («дифф режет output-токены редактора, а это ~90% COGS»)
|
||
на нашем боевом редакторе НЕ ДЕЙСТВУЕТ.** Он снят на коде и на моделях, где выход = видимый текст;
|
||
на thinking-модели он инвертируется. Ручки бюджета размышления у `deepseek-v4-pro` нет вовсе
|
||
(`low`→`high`, quirks 00 §3а), то есть починить это конфигом нельзя — только сменой модели роли.
|
||
|
||
### 2.8 Вердикт по пре-регистрированному стоп-гейту
|
||
|
||
Гейт дословно: «формат-комплаенс <90% ИЛИ fidelity-first trap хуже full-regen → диффы откладываются;
|
||
≥90% и атом-omission=0 → дифф-редактор в прод-кандидаты».
|
||
|
||
| Условие | Факт | Исход |
|
||
|---|---|---|
|
||
| комплаенс ≥0.90 | 0.975 / 0.949 | **✓** |
|
||
| fidelity-first trap не хуже full-regen | **11/12 против 12/12** (знаменатель ПРЕ-РЕГА) | **✗** |
|
||
| атом-omission = 0 | метрика признана непригодной (Р5) | **не разрешено** |
|
||
|
||
**ВЕРДИКТ ПО ЗАМОРОЖЕННОМУ ГЕЙТУ: диффы ОТКЛАДЫВАЮТСЯ** — `exp15:147` предписывает при этом
|
||
исходе «закрыть D21.4/D21.10 явно». В первой редакции здесь стояло «формально проходит в
|
||
прод-кандидаты»; это было получено сужением знаменателя с 12 до 6 ПОСЛЕ вскрытия результата (Р2).
|
||
|
||
Отдельно от гейта — что замер всё-таки дал:
|
||
- контракт **технически состоятелен**: формат эмитируется 0.95–0.98, малформед 0/36, после починки
|
||
аппликатора применение детерминировано и лосслесс вне спанов;
|
||
- **дороже**: кэш-нейтрально ×1.63 медианно, но по окнам 0.69…3.23 — в одном окне из шести дифф
|
||
ДЕШЕВЛЕ, так что «дороже» верно как среднее, а не как свойство каждого вызова;
|
||
- механизм цены: **96% completion диффа — размышление** (прямая улика: `reasoning_content` медиана
|
||
10 244 знака у диффа против 2 504 у full-regen, при видимом тексте 486 против 1 835);
|
||
- ⚠ **СНЯТО адверсариальным ревью 05.08 (см. §6.2).** Здесь стояло: «вывод „конфигом не чинится“
|
||
ФАЛЬСИФИЦИРОВАН собственным замером: ручка `low` на pro РАБОТАЕТ и срезает размышление на треть
|
||
(диапазоны трёх армов не пересекаются)». Пере-счёт показал, что решающее правило «диапазоны не
|
||
пересекаются» при n=3/3 воспроизводится НУЛЕВЫМ вмешательством — два блока ДЕФОЛТА на побайтно
|
||
одном запросе разделяются так же и с тем же размером эффекта. ⇒ вывод «конфигом не чинится»
|
||
возвращается в статус **НЕ фальсифицированного** (а не «подтверждённого»): рычаг цены не показан
|
||
ни существующим, ни отсутствующим;
|
||
- **do-nothing промптом не покупается** (NO_CHANGE 0/36) — но тестировался промпт со СТИЛЬ-мандатом
|
||
(51 из 80 операций D1 — чистая лексика), а цитата `research/19` §C1 относится к fidelity-only
|
||
проходу, который не гнался.
|
||
|
||
**Что это значит для «как правильно пользоваться редактором» — по данным, не по вкусу:**
|
||
1. **Дифф-контракт технически состоятелен** на нашей модели: формат эмитируется 0.95–0.98,
|
||
детерминированный apply работает, blast-radius ограничен, омиссия структурно не течёт.
|
||
2. **Но окупается он только там, где выход ≠ размышление.** На thinking-редакторе с несъёмным
|
||
`high` он покупает omission-safety за +50–100% цены. Это торг, а не улучшение.
|
||
3. **Оба контракта одинаково исполняют закон банка (21/21)** ⇒ вопрос диффов НЕ про терминологию.
|
||
Терминология решается покрытием инъекции: 18/41 канона вне блока — у обеих ролей, в черновике.
|
||
4. **Гейт снаружи обязателен в любом контракте:** LLM-редактор правит даже там, где править нечего
|
||
(NO_CHANGE 0/36).
|
||
|
||
### 2.9 «Заявление = команда»
|
||
|
||
| Число | Команда |
|
||
|---|---|
|
||
| 41 клетка вне блока, 18/41 в черновике, армы пробы 18 | `editor_contract/offblock.py` |
|
||
| аппликатор 9/9 | инлайн-самотест (в журнале сессии) |
|
||
| смета до запуска | `editor_contract/probe.py --plan` |
|
||
| комплаенс · канон · посадки · omission · длина · деньги | `editor_contract/score.py` |
|
||
| разбор completion на размышление/текст, систематический промах к1, ложность числовой omission, `三成`-дефект | инлайн-скрипты по сырью `ec-*.json` |
|
||
|
||
### 2.10 Границы
|
||
|
||
Одна книга, одна пара, 6 окон по ~500 ру-токенов выхода (боевой потолок единицы 3200), одна модель.
|
||
Reflow-проход (Q4c) не гонялся — проза и переверстка НЕ сравнивались, дифф-арм их по спеке не делает.
|
||
Судейского рига нет: ни одного клейма о художественном качестве. Метрика полярности штрафует
|
||
легитимную переверстку (§2.5а). Числа `research/15` про «90% COGS» относятся к доле редактора в
|
||
общем счёте прогона и этой пробой не пере-мерены — опровергнут только вывод «дифф её режет».
|
||
|
||
---
|
||
|
||
## §3. ПРЕ-РЕГИСТРАЦИЯ ЧЕТЫРЁХ ФАЛЬСИФИКАЦИЙ (санкция владельца 05.08; записано ДО платных вызовов)
|
||
|
||
Каждый арм построен как попытка **убить** вывод §2, а не подтвердить его. Потолок **$0.50**,
|
||
живой стоп $0.44 + проекционный гард. Харнесс `eval/editor_contract/final_probes.py`, префикс `fp-*`.
|
||
|
||
| Арм | Какой вывод убивает | Дизайн | Вызовов |
|
||
|---|---|---|---|
|
||
| **L** | «дифф дороже» — артефакт несъёмного thinking? | тот же материал §2, оба контракта, `reasoning_effort:"low"` ⚠ квалификатор «ручка признана рабочей замером 05.08» СНЯТ по ревью 05.08 — посылка не выдержала пере-счёта, §6.2 | 36 |
|
||
| **G** | «комплаенс 0.95–0.98» снят на окнах ВПЯТЕРО короче боевых? | единица **~3200 ру-ток. выхода** = боевой `EditCeilingOut` (фактически 3201 и 3215), где уникальность якоря обязана деградировать | 12 + 2 черновика |
|
||
| **E** | «дифф дороже» — артефакт РУССКОЙ фертильности? | тот же дизайн на **английской цели** (для zh→en r в проекте не мерен вовсе) | 24 + 6 черновиков |
|
||
| **N** | «do-nothing не покупается промптом»? | **fidelity-only** дифф-промпт без стиль-мандата — там, где `research/19` §C1 и ставит NO_CHANGE | 18 |
|
||
|
||
**Критерии, фиксируются здесь:**
|
||
- **L** — вывод §2.7 падает, если на `low` отношение цены дифф/full-regen опускается **≤1.0** по медиане
|
||
окон; держится, если остаётся >1.0. Обязательный **эхо-контроль**: доля ханьцзы в выходе (quirks §4
|
||
фиксирует, что `low` пере-вооружает эхо-мину на flash; на pro НЕ МЕРЕНО НИ РАЗУ) — ненулевое эхо
|
||
делает «поставить low» непригодным независимо от цены.
|
||
- **G** — вывод §2.1 падает, если комплаенс на боевой единице **<0.90** (порог `exp15:147`).
|
||
Ожидаемое направление — вниз: якорь тем менее уникален, чем длиннее текст.
|
||
- **E** — вывод §2.7 падает, если на английской цели отношение цены **≤1.0**. Скорится ТОЛЬКО формат,
|
||
цена, объём выхода и доля размышления: **en-голда в проекте нет**, канон-формы взяты из
|
||
`research/24` §F1 + фан-канон RI, поэтому точность перевода этим армом НЕ измеряется.
|
||
- **N** — вывод §2.2 падает, если доля `NO_CHANGE` на fidelity-only промпте **>0** (в §2 было 0/36).
|
||
|
||
Средние исходы печатаются как «неопределённо», не абсорбируются. Девиации объявляются.
|
||
|
||
---
|
||
|
||
## §4. РЕВЬЮ ПОСЫЛКИ (сделано ДО платных вызовов, требование владельца 05.08)
|
||
|
||
Владелец 05.08: «важно ревьювить не только результат но и посылку». Поводом были два подряд
|
||
дефекта посылки, невидимых в результатах: аппликатор молча портил 6 из 36 выходов, рапортуя
|
||
`applied=ops_total, rejected=0`; арм zh→en поехал бы поверх РУССКИХ черновиков. Харнесс и
|
||
воспроизведение — `eval/premise_review/` (README там же), всё $0 поверх персистированного сырья.
|
||
|
||
### 4.1 Что доказано исполнением
|
||
|
||
| Посылка | Инструмент | Итог |
|
||
|---|---|---|
|
||
| Риг пробы C воспроизводит движковые `RenderBatch`/`Batch` | overlay-тест по НАСТОЯЩЕМУ движку (`premise_batch_test.go.txt`; в `backend/` ничего не писалось) | 63/63 блока байт-в-байт; `DetectSeries` из язык-слоя даёт те же 4 серии, что риг задавал руками; состав батчей совпал, [16,16,17,13,1], все под 6000 рун |
|
||
| Числа §C посчитаны верно | `recount.py` — свой парсер, своя нормализация, свой знаменатель, ничего не импортируется из `arbitrate.py` | воспроизвелись все 6 клеток: glm-5 25/45 · mistral 23 · flash 20 · pro 16 · terra 18 · luna 18 |
|
||
| Посадки дефектов пробы A корректны | `strict_defects.py` | 12/12 регексов валидны (`fix_rx` ловит оригинал, `bad_rx` — нет, на посаженном наоборот); канон черновиков 20/21 воспроизведён |
|
||
| Аппликатор диффов | `selftest_apply.py` | 15/15, включая NFKC-классы, на которых прежняя версия ломалась |
|
||
| Константы боевой единицы | сверка с `internal/chunk/chunker.go` | `EditCeilingOut=3200` · `FertCJK=1.1978` · `FertOther=0.3852`, формула та же (chunker.go:95) |
|
||
| Запросы четырёх армов — то, что заявлено | `dryrun_arms.py` | блок закона и черновик одинаковы в diff/full, различается ТОЛЬКО контракт; плейсхолдеров нет; арм E английский |
|
||
|
||
### 4.2 Найденные дефекты посылки
|
||
|
||
1. **Метрика посадок пробы A считала ИСЧЕЗНОВЕНИЕ, а не восстановление**: зачёт шёл по
|
||
`not re.search(bad_rx, out)`, поэтому удаление фразы целиком засчиталось бы как правка.
|
||
Пере-считано строго (`снят И fix_rx совпал`): восстановлено **47 из 48** клеток по четырём
|
||
армам, «выпало» 3. Дефект метрики реален, **вывод не двигается**.
|
||
2. **Асимметрия reasoning-режимов в §C** — объявлена в отчёте 18 §D п.5, но замером не закрыта.
|
||
**Закрыта 05.08** контролем `glm2` (18 §C.5): чемпион с мышлением 24/45 против 25/45 без него.
|
||
3. **`since_ch: 0`** в риге против непустого значения в проде: блок короче на 1–2 руны на
|
||
кандидата, а батч 2 стоит на 5967/6000 ⇒ в проде граница батча могла бы сдвинуться. На
|
||
сравнение моделей не влияет — батчи у всех кандидатов одни и те же.
|
||
4. **`long_units` набирает абзацы ЗА потолок** (3201 и 3215 ру-ток.), тогда как движок группирует
|
||
ДО превышения (`chunker.go:370`). Разница в один токен, но направление противоположное.
|
||
5. **Английский черновик нельзя делать боевым `zh-ru/translator.md`**: он параметризован лишь в
|
||
строке 1, а в строках 9/10/14 русский зашит ПРОЗОЙ («по нормам русского языка», «Пиши живым
|
||
литературным русским языком», «опираясь на существующие русские переводы»). Первый прогон дал
|
||
черновики на русском (E0: 1499 знаков кириллицы против 22 латиницы) — арм измерял бы русскую
|
||
фертильность под видом английской. Заведено зеркало `prompts/translator-en.md`, черновики
|
||
пере-сняты: 0 кириллицы, канон-формы блока соблюдены.
|
||
|
||
### 4.3 Ложные тревоги (проверены, дефекта нет)
|
||
|
||
- `parse_common.py` «отсутствует» — живёт в `eval/bank_autonomy/`, путь добавляется в `sys.path`.
|
||
- `parse_common` «теряет» `aliases`/`related`/`since_ch` — этих полей в bank-stop нет вообще.
|
||
- Знаменатель §A «21 вместо 27» — `元海` исключён намеренно, он скорится отдельно (в A2
|
||
инъецирован неверной формой): 27 клеток − 6 окон = 21.
|
||
- Первая версия `dryrun_arms.py` объявила у fidelity-промпта «стиль-мандат» — подстрочный регекс
|
||
поймал ЗАПРЕТ («Стиль… НЕ ТРОГАЙ ВООБЩЕ»). Тот же класс ложных срабатываний, что `не ` внутри
|
||
«мне/камни» в §2.5. Проверка исправлена на полярность.
|
||
|
||
---
|
||
|
||
## §5. ПРОГОН ЧЕТЫРЁХ ФАЛЬСИФИКАЦИЙ: верификация исполнения
|
||
|
||
Владелец 05.08: «после прогона так же понять, что он прошёл правильно». Проверялась не осмысленность
|
||
результатов, а санитария — `eval/premise_review/verify_run.py`, $0.
|
||
|
||
| Проверка | Итог |
|
||
|---|---|
|
||
| П1 множество тегов ровно запланированное, без пропусков и лишних | 90 вызовов, L 36 · N 18 · G 12 · E 24 |
|
||
| П2 нет обрывов по потолку вывода | `finish=stop` на всех 90 |
|
||
| П3 модель на проводе одна | `deepseek-v4-pro` ×90 |
|
||
| П3а режим арма L — ПРЯМО из артефакта, а не косвенно | `extra_body={"reasoning_effort":"low"}` на всех 36 вызовах L, `{}` на N/G/E |
|
||
| П4 у каждого диффа есть файл применения | пропусков нет; отказы: `notfound` 1, `ambiguous` 5, `overlap` 0, `empty` 0, **малформед 0** |
|
||
| П5 деньги сходятся вторым путём | вызовы $0.344919 + черновики $0.004647 = **$0.349566**, совпало с печатью скрипта до 1e-6 |
|
||
| П6 короткие дифф-ответы объяснены | 9 коротких, все 9 — настоящий `NO_CHANGE` |
|
||
|
||
Потрачено **$0.349566** из потолка пре-рега $0.50; проекционный гард не срабатывал, ни одна клетка
|
||
не выброшена.
|
||
|
||
---
|
||
|
||
## §6. ВЫВОДЫ ЧЕТЫРЁХ ФАЛЬСИФИКАЦИЙ (после адверсариального ревью 05.08)
|
||
|
||
Результаты прогона прошли второй рубеж: пять независимых линз атаковали выводы на убийство, каждая
|
||
находка проверялась скептиком на состоятельность. 15 находок, **4 выжили, все с вердиктом «убивает»**.
|
||
Три из них бьют по формулировкам автора, одна — по правке источника истины, сделанной этой же
|
||
сессией. Ниже — уже исправленные формулировки; что именно снято, перечислено в §6.6.
|
||
|
||
### 6.1 Механизм: размышление масштабируется с ВХОДОМ, а сужением задачи не снимается
|
||
|
||
Доля `reasoning_chars` в выходе дифф-контракта медианно **0.95** (ec-D1 0.953 · ec-D2 0.942 ·
|
||
fp-LD 0.955 · fp-N 0.979 · fp-GD 0.980 · fp-ED 0.992) против **0.55** у русского full-regen
|
||
(ec-F1 0.573 · ec-F5 0.515, n=24). Видимый текст диффа — единицы процентов его цены.
|
||
|
||
- **Сужением МАНДАТА размышление не покупается.** Fidelity-only промпт срезал правки 4.50→1.94 на
|
||
вызов (81/18 → 35/18) и видимый текст 486→244 зн., а размышление не упало: 10244→11301 медианно,
|
||
MW p=0.752, среднее 11868→10128, выросло в 3 окнах из 6 ⇒ эффект не показан ни в одну сторону.
|
||
- **От объёма ВХОДА зависит, и сильно.** На боевой единице `prompt_tokens` 2084→6761 (×3.24),
|
||
размышление диффа 10244→28511 (×2.78, MW **p=0.0003**) при неизменном видимом выходе (486→428 зн.).
|
||
- **От найденной работы тоже зависит:** внутри ec-D1 Спирмен `rho(размышление, правки)=+0.781`
|
||
(p=0.0003) и `rho(размышление, длина выхода)=+0.651` (p=0.003).
|
||
|
||
⇒ **Правильная формулировка:** размышление масштабируется с объёмом входа и с найденной работой, но
|
||
не снимается сужением задачи. Поэтому дифф не даёт той экономии выхода, ради которой затевался.
|
||
|
||
⚠ Прежняя формулировка автора — «размышление не зависит от объёма работы» — **опровергнута**: она
|
||
строилась на одном контрасте (широкий→узкий мандат) и игнорировала корреляцию с входом и с правками.
|
||
|
||
### 6.2 Арм L — НЕ исполненная фальсификация; и посылка, и правка квирков отозваны
|
||
|
||
Измеренное отношение цены дифф/full — **1.677 по медиане окон** (w0 1.94 · w1 3.72 · w2 2.55 ·
|
||
w3 1.42 · w4 1.07 · w5 0.53; медиана клеток 1.396; 11 клеток из 18 >1). Число верно и воспроизведено.
|
||
|
||
**Но фальсификация не проведена**, потому что её посылка — «ручка `reasoning_effort:"low"` на
|
||
`deepseek-v4-pro` признана рабочей замером 05.08 (`00-provider-quirks.md` §3б)» — не выдержала
|
||
пере-счёта по всему доступному сырью:
|
||
|
||
| Улика | Что показывает |
|
||
|---|---|
|
||
| Решающее правило §3б «диапазоны не пересекаются» при n=3/3 | минимально достижимый двусторонний p=0.100 — дизайн не может достичь значимости по построению |
|
||
| **Нулевой контраст**: два блока ДЕФОЛТА на побайтно одном запросе (sha `92924c85b5fc`) | разделяются ТАК ЖЕ (p=0.100) и с тем же размером ×1.47, что и «эффект ручки» (13421/9125=1.47) |
|
||
| Объединённый пул на побайтно одном входе, дефолт n=6 против low n=6 | диапазоны ПЕРЕСЕКАЮТСЯ, MW p=0.589 и по `completion_tokens`, и по `reasoning_chars` |
|
||
| По арму целиком | дифф думает −8.1% (p=0.367), full-regen **+29.0%** (p=0.983) — разнонаправленно, что несовместимо с механизмом «срезает треть» |
|
||
| `prompt_tokens` при побайтно одинаковых messages | 2124 у дефолта И у `low`, 2203 у `xhigh` ⇒ провайдер серверно реагирует на xhigh и НЕ реагирует на low |
|
||
| По всей папке: 12 sha-групп, разыгранных обоими армами (39 вызовов) | low ниже дефолта лишь в 7 из 12, MW p=0.379 |
|
||
|
||
⇒ Гипотеза «премия диффа — артефакт несъёмного thinking» **остаётся НЕПРОВЕРЕННОЙ**. Арм L
|
||
засчитывается как **вторая независимая репликация вывода «дифф дороже»** на 36 свежих вызовах
|
||
(параметр ушёл на провод 36/36 в обеих подветвях ⇒ отношение внутренне контролируемо; клетки LD/LF
|
||
разнесены на 22–110 с и дрейфом не объясняются), а НЕ как выдержанная проверка гипотезы.
|
||
|
||
**Мощность оговаривается явно:** утверждать «ручка нулевая» данные не позволяют — MW при n=6/6
|
||
ловит истинный эффект ×0.67 лишь в 37% случаев (бутстрап 20k). Корректный статус — **воздействие не
|
||
верифицировано**, при том что бремя лежит на посылке: клейм «работает» сделан на n=3/3 и
|
||
воспроизводится нулевым вмешательством.
|
||
|
||
**Опора, которая переживает падение статуса арма L.** «Дифф дороже» реплицирован **трижды**, причём
|
||
один раз на дефолтном эффорте и новом материале:
|
||
|
||
| Замер | Отношение дифф/full | Клеток >1 |
|
||
|---|---|---|
|
||
| база §2 (ec-D1/ec-F1) | 2.913 по окнам (2.313 по клеткам) | 10 из 12 |
|
||
| арм L (`low`) | 1.677 по окнам | 11 из 18 |
|
||
| **арм G, боевая единица, `extra_body={}`** | **2.468** | **6 из 6** |
|
||
|
||
### 6.3 Арм G — вывод §2.1 УСТОЯЛ, но арм слабее, чем кажется
|
||
|
||
Комплаенс на боевой единице **28/29 = 0.966 ≥ 0.90**: `notfound` 1, **`ambiguous` 0**, `overlap` 0,
|
||
малформед 0. Пре-регистрированный порог не пробит, деградации уникальности якоря не видно.
|
||
|
||
**Обязательный хвост:** знаменатель — 29 операций с 5 результативных вызовов на 2 текстах (шестой,
|
||
`fp-GD-u1-r1`, дал NO_CHANGE и вышел из знаменателя как 0/0). «Неоднозначных 0 из 29» при верхней
|
||
95% границе Клоппера–Пирсона **11.9%** и базовой доле 1/81 = 1.2% означает: арм не отличает 0% от
|
||
десятикратного к базе. Утверждать можно «катастрофической деградации нет», но не «деградации нет».
|
||
|
||
### 6.4 Арм N — вывод §2.2 ПАЛ: do-nothing покупается сужением мандата
|
||
|
||
`NO_CHANGE` **4 из 18** на fidelity-only промпте против **0 из 36** на промпте со стиль-мандатом.
|
||
Дисциплина «ничего не делать, если черновик хорош» уговорами не берётся, а **сужением мандата —
|
||
берётся**. Это ровно то, что `research/19` §C1 и предписывал тремя узкими проходами.
|
||
|
||
Атрибуция причины переписана по §6.1: сужение мандата покупает NO_CHANGE и режет правки, но
|
||
**размышление им не срезается** — то есть узкий проход даёт дисциплину, а не дешевизну.
|
||
|
||
### 6.5 Арм E — формально пал, НЕ засчитан; причина пере-обоснована ПО ПРОВОДУ
|
||
|
||
Медиана отношения цены **0.617** по 12 парам (0.629 по-оконно), 10 клеток из 12 <1 — по букве
|
||
критерия вывод §2.7 на английской цели падает. **Не засчитан из-за неполного зеркала промпта.**
|
||
|
||
⚠ Названная автором причина — «в зеркале нет ПРИМЕРОВ перевёрстки» — **была ложной**: примеров не
|
||
было и у русского компаранда, потому что `editor_wire_probe.py:43` `FEW_SHOT = False` дропает блок
|
||
`---FEWSHOT---` (проверено на 48/48 русских full-вызовов). Настоящее различие — на проводе:
|
||
|
||
| Что | ru full | en full |
|
||
|---|---|---|
|
||
| системный промпт | 3071 зн. / 16 непустых строк | 1174 зн. / 10 строк (0.38) |
|
||
| блок ДИСКУРС-ПЕРЕВЁРСТКА (`editor.md:15-19`) | есть, 1199 зн. = 39% | **отсутствует вовсе** |
|
||
| размышление full-regen | 2183 зн. (ec-F1+F5) | **14711 зн.** (×6.7) |
|
||
| размышление диффа | 10244 зн. | 8650 зн. (×0.84) |
|
||
|
||
Прорежение **асимметрично именно по контрактам**: отношение en/ru системного промпта 0.38 на full
|
||
против 0.65 на диффе ⇒ обеднён преимущественно знаменатель. Дифф на английском ведёт себя как на
|
||
русском (даже думает чуть меньше), а «перевернулся» full-regen. ⇒ вопрос пре-рега («премия диффа —
|
||
артефакт русской фертильности?») **остаётся без ответа**; для ответа нужен полный en-компарандум.
|
||
|
||
### 6.6 Что снято этим ревью
|
||
|
||
1. Слово **«УСТОЯЛ»** у арма L — фальсификация не проведена (§6.2).
|
||
2. **`00-provider-quirks.md` §3б, звено (а)** («`low` на pro срезает размышление на треть, бюджет
|
||
управляем») — отозвано; строка §3а («`low`→`high` для pro») НЕ опровергнута и возвращается в силу
|
||
до замера с мощностью. Звено (б) про `xhigh` **сохраняется и усиливается**: min(xhigh) 17588 >
|
||
max(дефолта) 15720, p=0.0238.
|
||
3. **Баннер «вывод „конфигом не чинится“ ФАЛЬСИФИЦИРОВАН»** — снят; вывод возвращается в статус
|
||
НЕ фальсифицированного (не «подтверждённого»).
|
||
4. **Квалификатор в дизайне арма L** «ручка признана рабочей замером 05.08» — удалён.
|
||
5. **Обоснование эхо-девиации** «единичные знаки — цитаты в сносках» — ложно, заменено (§6.7 п.1).
|
||
6. **Формулировка §6.1** «размышление не зависит от объёма работы» — опровергнута корреляциями.
|
||
|
||
### 6.7 Объявленные девиации и оговорки
|
||
|
||
1. **Девиация от эхо-критерия.** Пре-рег: «ненулевое эхо делает `low` непригодным независимо от
|
||
цены»; скорер применил порог 5%. Наблюдено 2 вызова, 4 знака. `fp-LD-w4-r1` (`修行`) — дословный
|
||
SEARCH-якорь по сноске САМОГО черновика, REPLACE пуст, операция сноску удаляет ⇒ модель знаков не
|
||
порождала. `fp-LF-w3-r2` (`潜能`, доля 0.117%) — сносок в выходе нет, знаки внутри повествования
|
||
(«символом жизненной潜能»), черновик в этом месте несёт корректное «жизненного потенциала» ⇒
|
||
**порождённая моделью микро-утечка исходника**. Порог 5% строже боевого гейта
|
||
(`disposition.go` `cjkEchoThreshold = 0.15`) и на два порядка выше наблюдённого; явление quirks §4
|
||
(выход исходником целиком, доля 0.83–0.999) не наблюдалось. **Low-специфичность НЕ показана:** на
|
||
дефолтном эффорте ханьцзы тоже есть (ec-D1 2/18, ec-D2 1/18 — та же сноска черновика). ⇒ по БУКВЕ
|
||
пре-рега рекомендация «поставить редактору `low`» остаётся **закрытой независимо от цены**.
|
||
2. **Две конвенции медианы в одном скорере**: арм L — медиана по-оконных медиан, арм E — медиана
|
||
клеток. Обе устойчивы (L по клеткам 1.396; E по окнам 0.629), вердикты не переворачиваются, но
|
||
конвенции надо привести к одной.
|
||
3. **Межсессионный дрейф крупный и реальный.** Шесть дефолтных розыгрышей побайтно одного запроса в
|
||
хронологическом порядке: 1952 → 9104 → 10818 → 11157 → 13421 → 15720 знаков размышления, строго
|
||
монотонно (вероятность 1/720). Любое сравнение блоков, разнесённых во времени, конфаундировано;
|
||
защищены только парные внутриблочные отношения.
|
||
4. **Дыра в самом ревью посылки:** §5/П3а проверяло, что параметр УШЁЛ на провод, но не что он
|
||
ПОДЕЙСТВОВАЛ. Через неё посылка арма L и проехала. Инструмент под П3а дописан
|
||
(`verify_run.py`), предупреждение об этом различии печатается в самом отчёте прогона.
|
||
5. **Контроль §C.5 отчёта 18** (`glm2`) добавлен после прогона и вне пре-рега — объявлен там же.
|
||
|
||
### 6.8 Что это даёт продукту (строка 106)
|
||
|
||
- **Дифф-контракт механически исправен.** Формат-комплаенс 0.975 на базе, 0.966 на боевой единице,
|
||
**малформед 0 на 90 вызовах**, аппликатор 15/15 на самотесте. Контракт `research/19` §C1 работает —
|
||
вопрос «умеет ли модель в диффы» закрыт положительно.
|
||
- **Экономически он проигрывает full-regen, и это реплицировано трижды** (2.913 · 1.677 · 2.468),
|
||
включая боевой размер единицы на дефолтном режиме.
|
||
- **Причина проигрыша НЕ установлена.** Обе гипотезы остались непроверенными: «несъёмный thinking»
|
||
(арм L не исполнен, §6.2) и «русская фертильность» (арм E конфаундирован, §6.5). Установлено
|
||
только, что размышление — 95% цены диффа, растёт с входом и не снимается сужением мандата.
|
||
- **Узкий проход покупает дисциплину, а не деньги:** fidelity-only даёт NO_CHANGE 4/18 против 0/36,
|
||
но размышление не режет.
|
||
|
||
⇒ **Строку 106 закрывать выводом «диффы не берём» ПРЕЖДЕВРЕМЕННО.** Правильный статус: полный
|
||
ре-ген остаётся каноном не потому, что дифф-контракт плох, а потому что на этой модели и в этом
|
||
режиме он дороже — при том, что механизм удорожания не вскрыт, а два его кандидата не проверены.
|
||
|
||
### 6.9 Что домерить, чтобы закрыть по-настоящему
|
||
|
||
1. **Отличимость `low` от дефолта** — интерливинг дефолт/low в ОДНОМ блоке (защита от дрейфа §6.7 п.3),
|
||
n≥10 на арм. До этого замера `00-provider-quirks.md` §3а остаётся в силе.
|
||
2. **Полный en-компарандум** — зеркало `editor-en.md` с блоком дискурс-перевёрстки, чтобы вопрос
|
||
фертильности получил ответ.
|
||
3. **Дифф на модели без несъёмного размышления** — единственный прямой тест гипотезы §6.2.
|
||
4. **Качество правок** — ни один арм его не мерил; дифф может быть дешевле или дороже и при этом
|
||
делать ХУЖЕ. Судейского рига в скоупе не было и нет.
|