From 62f8f6bef98757c04dbac82ebecd0ba9c68f2dc4 Mon Sep 17 00:00:00 2001 From: heaven Date: Sun, 30 Aug 2026 19:16:55 +0300 Subject: [PATCH] Land the consilium: what the editor does to the text, eight retracted conclusions with the class of each error, and a staged plan that starts free --- docs/experiments/23-editor-tier.md | 107 ++++++++++++++- eval/dovodka/KONSILIUM-30-08.md | 202 +++++++++++++++++++++++++++++ eval/dovodka/SESSION-30-08.md | 44 +++++++ 3 files changed, 349 insertions(+), 4 deletions(-) create mode 100644 eval/dovodka/KONSILIUM-30-08.md diff --git a/docs/experiments/23-editor-tier.md b/docs/experiments/23-editor-tier.md index 56b1af79..21c7dff7 100644 --- a/docs/experiments/23-editor-tier.md +++ b/docs/experiments/23-editor-tier.md @@ -12,6 +12,8 @@ > | ⛔ **реестр потерянного: что фаза запланировала и растеряла между планами** | **Д43** | > | ручка размышления у `deepseek-v4-pro`: доходит ли · ⛔ почему замер её величины не куплен | **Д46** | > | ⭐ **качество дешёвой `luna` против дорогого дипсика и против боевой связки** (слепое чтение) | **Д48** | +> | ⭐ **что редактор делает с текстом: 4–6% знаков при выдаче главы целиком** ($0, из артефактов) | **Д49** | +> | ⛔ **итог консилиума 30.08: что снято, что решено, план** | `eval/dovodka/KONSILIUM-30-08.md` | > | статус метавопроса «консистентность на всю книгу» и цена его закрытия | **Д38.3**, **Д38.6** | > | что закрыто и что осталось по плану 22.08 | **Д38.4** | > | вес всего ролевого промта в единицах прибора | **Д36** | @@ -4350,6 +4352,8 @@ RG 0/5», записанный в план 22.08, снят этим ригом «ошибается» — ему нечем узнать. Узнать может ТОЛЬКО книжная память: тот же голос (Селена) ведёт ещё три окна нашей выборки, и там пол устанавливается прямо. То же у Габриэля: 3 окна из 4. +⛔⛔ **ЭРРАТА КОНСИЛИУМА 30.08: НИЖЕСКАЗАННОЕ ВЕРНО ТОЛЬКО ПРО ЭВАЛ-БАНК. ДВИЖОК ПОЛЯ ИМЕЕТ, И ОНИ ЗАСЕЯНЫ СИДОМ** (⚠ `source='seed'` 49/49 — сам движок их НЕ ПОПОЛНЯЛ, ревизий 0; голосовые колонки `first_person`/`speech` — **0 из 49**; `until_ch`=0 у всех). В боевом глоссарии (`books/gu-zhenren/acceptance/guzhenren-acc-a.db`, 49 записей) есть колонки `gender` (включая значение **`hidden`**), `first_person`, `speech`, `decl`, `since_ch`/`until_ch`, `translit_policy` — и **заполнены там, где их нёс сид**: склонения 49/49, пол 14, `since_ch` 49/49. ⚠ **`first_person` и `speech` — пусты (0 из 49); `until_ch`=0 у всех, окно раскрытия не проставлено.** Живая запись: `白凝冰 → Бай Нинбин, gender: hidden` с примечанием «hidden until reveal (ратифицировано D19.3) — текст первых 30 глав зовёт персонажа 他/«он», хотя канон женщина; рендерить бесполыми конструкциями до раскрытия». ⇒ **механизм существует и ГОНЯЛСЯ; не существовало только замера его соблюдения.** Класс ошибки: **фаза не знала собственный бэкенд**. Ниже — исходная запись, верная в своих границах: + ⛔ **А в банке полей пола НЕТ, и это проверено файлом, а не пересказано.** `~/books/role-topology/ bank-en.json`: 25 терминов, у каждого РОВНО четыре поля — `dst` (канонная форма), `rx` (регекс поиска), `manual`, `why`. Строк `gender`/`род`/`пол`/`sex`/`female`/`male` в файле нет ни одной. @@ -4628,8 +4632,9 @@ n = 16 английских единиц = 7.89 главы Гу · k = 4 арм видящий только главу, слеп по построению примерно в четверти случаев; * **тот же голос (Селена) ведёт 4 окна нашей выборки, и в трёх пол устанавливается прямо** — то есть закрыть эти 25% может ТОЛЬКО книжная память; +⛔⛔ **ЭРРАТА 30.08: НИЖЕСКАЗАННОЕ ВЕРНО ТОЛЬКО ПРО ЭВАЛ-БАНК.** В БОЕВОМ глоссарии движка поля `gender` (вкл. `hidden`), `decl`, `since_ch`/`until_ch` ЕСТЬ и засеяны сидом (49/49 склонений, 14 полов); механизм существовал и ГОНЯЛСЯ в прогоне `acceptance`. ⚠ Но: `source='seed'` у всех 49 — движок их сам НЕ ПОПОЛНЯЛ (ревизий 0), а голосовые колонки `first_person` и `speech` — **0 из 49**. Разбор — Д49 и `eval/dovodka/KONSILIUM-30-08.md`. * **а полей пола в банке НЕТ** (`~/books/role-topology/bank-en.json`, 25 терминов, поля - `dst`/`rx`/`manual`/`why` — проверено файлом) — механизма не существовало ни в одном прогоне. + `dst`/`rx`/`manual`/`why` — проверено файлом) — ~~механизма не существовало ни в одном прогоне~~ ⛔ **СНЯТО 30.08: механизм есть и ездил (прогон `acceptance`, поля `gender`/`decl`/спойлер-окна засеяны); не существовало ЗАМЕРА его соблюдения**. ⇒ Шаг 7 («засеять характер-листы ПЕРЕД прогоном, иначе прибор консистентности померяет пайплайн без носителя консистентности») перестал быть предосторожностью и стал требованием с числом. @@ -6002,9 +6007,10 @@ n = 16 английских единиц = 7.89 главы Гу · k = 5 арм (эталон снят вслепую тремя независимыми чтениями на главу; интервал Уилсона [0.07; 0.59]) ⇒ **пайплайн, видящий только главу, слеп по построению примерно в четверти случаев**; * закрыть их может ТОЛЬКО книжная память: тот же голос ведёт другие окна, где пол назван прямо; +⛔⛔ **ЭРРАТА 30.08: НИЖЕСКАЗАННОЕ ВЕРНО ТОЛЬКО ПРО ЭВАЛ-БАНК.** В БОЕВОМ глоссарии движка поля `gender` (вкл. `hidden`), `decl`, `since_ch`/`until_ch` ЕСТЬ и засеяны сидом (49/49 склонений, 14 полов); механизм существовал и ГОНЯЛСЯ в прогоне `acceptance`. ⚠ Но: `source='seed'` у всех 49 — движок их сам НЕ ПОПОЛНЯЛ (ревизий 0), а голосовые колонки `first_person` и `speech` — **0 из 49**. Разбор — Д49 и `eval/dovodka/KONSILIUM-30-08.md`. * **а полей пола в банке НЕТ** — `bank-en.json`, 25 терминов, поля `dst`/`rx`/`manual`/`why`, проверено файлом ⇒ **решение «банк чинит пол» не имеет НИ ОДНОГО замера, даже косвенного: - механизма не существовало ни в одном прогоне.** + ~~механизма не существовало ни в одном прогоне~~ ⛔ **СНЯТО 30.08: механизм есть и ездил (прогон `acceptance`, поля `gender`/`decl`/спойлер-окна засеяны); не существовало ЗАМЕРА его соблюдения**.** ⇒ **Чем закрывается:** Шаг 7 плана — 15 глав Гу ПОДРЯД одной книги одним боевым профилем, движковым путём, **с живым банком и ЗАСЕЯННЫМИ характер-листами**, плюс $0-счётчики (они уже построены и @@ -7192,8 +7198,7 @@ $0.1348. Класс ошибки тот же, что у семи прежних: ⇒ **Куда это ставит наши ×38.** Разность двух одиночных розыгрышей имеет sd около 1.16 в логарифме; ln 38 = 3.64, то есть **примерно 3.1 sd — событие редкое (порядка 1 из 500), но не невозможное**. ⛔ **Вывод: НЕ УСТАНОВЛЕНО, сдвинулась модель или выпал хвост.** Обе гипотезы живы, и различить их -имеющимся сырьём нельзя: у роли `onepass` **чистых повторов одного и того же промта в корпусе нет -ни одного** — их место как раз и занимали армы с разными промтами. +имеющимся сырьём нельзя было **на роли `onepass`**. ⛔⛔ **ЭРРАТА КОНСИЛИУМА 30.08: ПОВТОРЫ ЕСТЬ, ИХ ШЕСТНАДЦАТЬ — НА РОЛИ РЕДАКТОРА.** Пары `e0`/`zf` — два прогона ОДНОГО редактора над ОДНИМ черновиком, и тождественность входа доказана на уровне провода: `prompt_tokens` совпадают ДО ТОКЕНА на всех 16 главах. ⇒ **настоящий шум размышления: sd одного розыгрыша = 1.02 в логарифме, то есть ×2.8** (парность гасит межглавный эффект — оценка обоснована лучше, чем ×2.3 с шести судейских групп выше). **Наши ×38 пере-оцениваются в ≈2.5 sd — рядовое событие, а не «1 из 500»**; квантификация редкости снята. ⚠ Оценка снята на РОЛИ РЕДАКТОРА и на английской паре; на письмо и на zh не переносится. Прежняя формулировка ниже оставлена, чтобы был виден класс ошибки — **не искали там, где лежит**: ~~чистых повторов одного и того же промта в корпусе нет ни одного~~ — их место как раз и занимали армы с разными промтами. **⚠ Границы этой оценки, чтобы её не переняли как истину:** 18 вызовов, ДРУГАЯ роль (судейство, не перевод), и настоящий разброс на переводе может быть и больше. Оценка — рабочая, не замер. @@ -7435,3 +7440,97 @@ ln 38 = 3.64, то есть **примерно 3.1 sd — событие ред ⚠ Настораживает и то, что её `reasoning_tokens` ложатся почти в кратные 512 (511 · 512 · 1005 · 1022 · 1023 · 1024 · 1535) — похоже на блочный учёт у провайдера, и это стоит проверить прежде, чем строить на этих числах смету. + +--- + +## Д49 — ⭐ ЧТО РЕДАКТОР ДЕЛАЕТ С ТЕКСТОМ: ЗАМЕРЕНО ЗА $0 ИЗ АРТЕФАКТОВ НА ДИСКЕ + +Заказ владельца: «как правильно генерить перевод — какие вызовы и как делать редактуру, точечно или +нет». Прибор — побайтная дистанция `1 − совпадающее/max(len)` (`difflib.SequenceMatcher`, +⚠ **обязательно `autojunk=False`**, см. Д49.2) на 16 главах английской оси; артефакты куплены давно. + +### Д49.1 ЧИСЛА + +| пара | медиана дистанции | +|---|---| +| черновик `ZD` → редактор `Z0` | **4.0%** | +| черновик `ZD` → второй прогон редактора `ZF` | **5.8%** | +| `Z0` ↔ `ZF` (два выхода редактора) | **6.5%** | +| *калибровка: две НЕЗАВИСИМЫЕ генерации (`Z0` ↔ `RN`)* | **22.9%** (n=16) | + +* **`d(Z0,ZF)` / сумма правок: медиана 0.71**, диапазон 0.30–0.98, **ни одной главы выше 1**, на трёх + главах ниже 0.5 — там правки СХОДЯТСЯ. +* Два прогона редактора в **3.5× ближе друг к другу**, чем к независимой генерации (6.5% против + 22.9%, оба на n=16). ⚠ Прежние «21.9% и 3.4×» считались с молчаливым выбросом главы + `100b088f71`, где клетка `RN` несёт `finish=stop` при ПУСТОМ содержимом (дистанция 1.0) — та же + мёртвая клетка, что уже дважды портила статистики этой фазы. Исключение теперь названо. + +⇒ ⭐ **Редактор — РЕМОНТНИК ЛЁГКОГО КАСАНИЯ: сплошной по ОХВАТУ (~40% предложений тронуто), +точечный по ОБЪЁМУ (4–6% знаков).** ⚠ **Граница переноса, той же формы, что у эрраты Д47.7:** +замерено на АНГЛИЙСКОЙ оси и на роли редактора `deepseek-v4-pro`. На zh черновик несёт эхо ~25%, +и дистанция редактора там обязана вести себя иначе — величины не переносятся. Распределение объёмов — континуум, без бимодальности +«косметика или переписывание». +⇒ **Развилка «точечно или сплошняком» наполовину ЛОЖНАЯ:** поглавный редактор уже ведёт себя как +распределённый фиксер лёгкого касания. +⇒ **Денежный вывод, и он ЗНАЧИТЕЛЬНО СКРОМНЕЕ, чем первая редакция этой секции утверждала.** +⛔ **Первая редакция говорила «94–96% выходных токенов — переписывание неизменного, а выход и есть +90% цены связки». Это смешение двух разных «выходов», поймано ревью диффа.** Пересчёт по 32 +клеткам редактора: `completion` = 297 200 токенов, из них **размышление 277 807 = 93%**; видимая +глава — **19 393 токена, то есть 7% того, за что платим**. ⇒ дифф-интерфейс режет **видимый выход**, +а он у `deepseek-v4-pro`-редактора ≈7% стадии — **порядка $8 на книгу, а не $100**. У редактора с +погашенным размышлением (`glm-5`) видимый выход — почти весь completion, и там срез значим. +⚠ **Сожмётся ли РАЗМЫШЛЕНИЕ от смены формата — это ГИПОТЕЗА, которую и проверяет прототип, а не +арифметика.** Собственная Д41.2 п.4 это уже говорила: платим за размышление. + +### Д49.2 ⛔ КАК Я ЧУТЬ НЕ ОПУБЛИКОВАЛ РОВНО ОБРАТНОЕ + +Первая редакция этого замера дала «редактор — лотерея: правит 18.4%, а сам с собой расходится на +26.4%, объём правки скачет ×10–40», и на ней уже строился механизм. **Оба вывода были ложны, и +каждый — своим способом.** + +1. ⛔ **Числа — артефакт дефолта библиотеки.** `SequenceMatcher(autojunk=True)` на + последовательностях длиннее 199 объявляет «мусором» каждый символ, встречающийся чаще 1%, — для + русского текста это ВСЕ частые буквы и пробел. Совпадающие блоки крошатся, дистанция раздувается + вчетверо. С `autojunk=False` и схлопнутыми пробелами 18.4 → **4.0**, 26.4 → **6.5**. + **Урок: дефолт библиотеки был принят за свойство мира.** +2. ⛔ **Логика — неверна и при верных числах.** «Расхождение выходов больше каждой из правок ⇒ + пересэмплирование» не следует: два РЕМОНТНИКА, правящих в РАЗНЫХ местах, дают расхождение + вплоть до СУММЫ правок, то есть больше каждой поодиночке всегда, когда места не совпали. + Информативно отношение к сумме (0.71), а не сравнение с максимумом. + +⇒ **Формулировку «редактор пересэмплирует прозу» ослабить до «перефразирует местами».** Слово +«лотерея» из оборота изъять. + +### Д49.3 ЧТО ЭТО ДАЁТ АРХИТЕКТУРЕ + +**Дифф-интерфейс редактуры** (консилиум 30.08, §3 п.6): модель лишается права выдавать текст — +только список якорёванных замен «цитата → замена + категория дефекта», детерминированный +аппликатор, потолок объёма, закрытая таксономия категорий («красивее пересказал» — не категория). +⚠ **Обоснование ДВАЖДЫ ослаблено, и это надо читать прежде выгоды.** (1) Довод «ампутировать каскад +самообусловливания» снят вместе с «лотереей» — каскада нет. (2) Довод «выход почти целиком — +переписывание неизменного» тоже снят: видимая глава — **7%** completion, 93% размышление ⇒ +арифметический срез у `pro`-редактора **порядка $8 на книгу**, а не $100; значим он у редактора с +погашенным размышлением. **Сожмётся ли размышление от смены формата — ГИПОТЕЗА прототипа.** +Бесспорным остаётся: байт-стабильность нетронутого, ограниченный потолком и наблюдаемый объём +правки, категория у каждой правки. +Побочно: нетронутое байт-стабильно ⇒ гейты и банк перевалидируются только по тронутым спанам. +**Встроенный kill-switch, $2–3:** пересечение множеств тронутых спанов двух прогонов; Жаккар < 0.4 ⇒ +разброс живёт в суждении модели, а не в интерфейсе, и механизм провалился. + +### Д49.4 ПОБОЧНОЕ, НО ВАЖНОЕ + +* **Связи текстового расхождения близнецов с читательским разрывом НЕ ВИДНО, но и мощности нет:** + корреляция −0.07…−0.22 в зависимости от круга (напечатанное ранее −0.08 — это ТОЛЬКО второй + круг, хотя улика говорила «два круга»), при n=15 доверительный интервал ≈ [−0.56; +0.44]. + ⚠ **«Не видно связи» ≠ «связи нет»** — ровно тот класс, который эта же секция ловит у других. Разрывы 1.33–1.53 места стоят над расхождением в 6.5% знаков и + за его величиной НЕ следуют — ⚠ но при такой мощности это справка, а не довод. + ⇒ ⚠ **И тезис «пол панели живёт в читателе» в СИЛЬНОЙ форме тоже не держится — ослаблен после + ревью.** Держится следующее: у прибора есть **ПОЛ** высотой 1.33–1.53 места (близнецы при 6.5% + различия текста); в нём есть доказанная читательская компонента — позиционный наклон 0.5 места в + обоих кругах (Д48.5) и повтор чтения одним семейством 0.34 порога (Д37.3). ⛔ **Но состав пола не + решён:** ратифицированный глосс Д37.3 говорит «треть — прибор, ДВЕ ТРЕТИ — текст», то есть ссылка + на 0.34 работает ПРОТИВ сильной формы. ⇒ **Для решения это безразлично: панель с полом такой + высоты не различит ничего тоньше него, из чего бы пол ни состоял.** Однозначно читательская + компонента одна — наклон раскладки: он в тексте не живёт по построению. Корреляция — справочно. +* **Объём правки не предсказывает место `Z0` у читателя** (0.18, незначимо): «больше правил — лучше + прочли» не наблюдается. diff --git a/eval/dovodka/KONSILIUM-30-08.md b/eval/dovodka/KONSILIUM-30-08.md new file mode 100644 index 00000000..8dc1781f --- /dev/null +++ b/eval/dovodka/KONSILIUM-30-08.md @@ -0,0 +1,202 @@ + + +# КОНСИЛИУМ 30.08 — АРХИТЕКТУРА ГЕНЕРАЦИИ, МОДЕЛИ, УБОРКА + +**Заказ владельца дословно:** (1) насколько сложной делать архитектуру харнесса — качество без +взлёта цены, с учётом банка памяти; что делает черновая модель; нет ли сдвигов в ландшафте; +(2) на каких моделях выгодно ехать по цене/качеству; (3) нет ли ошибок в замерах и ошибок в выводах +из правильных замеров — структурировать и выбросить лишнее; (4) план, возвращающий на рельсы. + +⚠ **Отдельным заказом:** спросить архитектуру у fable-5 **с чистого листа**, затем подкармливать +контекстом и заставлять отстаивать позицию. Исполнено: шесть раундов, из них раунды 2–6 — +последовательные удары нашими числами. **Архитектор дважды отозвал собственные позиции**, один раз +— уже вписанную мной в отчёт; скептик четырежды ломал мои правки, в том числе правки правок. + +--- + +## 1. ЧТО УСТАНОВЛЕНО СЕГОДНЯ (всё — $0, из артефактов на диске) + +| # | факт | улика | статус | +|---|---|---|---| +| 1 | **Редактор — ремонтник ЛЁГКОГО КАСАНИЯ:** меняет **4.0–5.8% знаков** черновика, касаясь ~40% предложений | побайтная дистанция 16 глав, `autojunk=False` | замерено | +| 2 | **Правки частично воспроизводимы:** `d(Z0,ZF)` = 0.71 от суммы правок, ни одной главы выше 1, на трёх ниже 0.5 — там правки СХОДЯТСЯ | те же 16 глав | замерено | +| 3 | **Два прогона редактора в 3.5× ближе друг к другу, чем к независимой генерации** (6.5% против 22.9%, оба на n=16) | калибровка `Z0`↔`RN`; ⚠ прежние 21.9%/3.4× считались с молчаливым выбросом главы `100b088f71` (клетка `RN` пуста при `finish=stop`) | замерено | +| 4 | **Редактор выдаёт главу целиком, но видимая глава — лишь 7% completion-токенов стадии; 93% это РАЗМЫШЛЕНИЕ** (297 200 всего, 277 807 размышления на 32 клетках) | клетки редактора | замерено | +| 5 | **Гейты насыщены нулём** на боевых моделях: род 0/15, язык 0/15 у всех четырёх армов панели | `schet.py --report RN RL Z0 ZF` | замерено | +| 6 | ⛔ **«зелено по гейтам ⇒ приемлемо» МЕРТВО** — вся различительная работа читателя идёт выше их потолка | 5 + Д36.10 + Д20.2 | замерено | +| 7 | **Второй прибор тоже не различает `luna`:** счётчик даёт p ≥ 0.25 по всем контрастам | `schet.py` на панели luna1 | замерено | +| 8 | ⛔ **Класс «банк» горит в 6 главах из 15 у боевой связки** — канонная форма реже термина в исходнике ПРИ банке в промте | там же | замерено, требует чтения глазами | +| 9 | ⭐ **16 честных повторов `deepseek-v4-pro` на побайтно одном входе СУЩЕСТВУЮТ** (пары `e0`/`zf`; `prompt_tokens` совпадают до токена на всех 16) | клетки | замерено ⇒ **эррата к Д47.7** | +| 10 | **Настоящий шум размышления: 1 sd = ×2.8**; наши ×38 = **2.5 sd** — не исключительное событие. ⚠ Пары куплены в РАЗНЫЕ тарифные эпохи (июльский пин против пере-пина 16.08), но систематического сдвига нет: средний лог-сдвиг 16 пар ≈ −0.06 (×0.95). ⚠ «Побайтно один вход» доказан равенством СЧЁТЧИКОВ `prompt_tokens` 16/16, не сверкой байтов | 9 | замерено | +| 11 | **Связи текстового расхождения близнецов с читательским разрывом НЕ ВИДНО** (−0.07…−0.22 по кругам), ⚠ но при n=15 доверительный интервал ≈ [−0.56; +0.44] — **мощности нет, «не видно» ≠ «нет»** | 15 глав | замерено слабо | +| 12 | ⛔ **Ранговые вердикты панелей о ПОРЯДКЕ силы не имеют:** позиционный наклон 0.5 места воспроизводится в обоих кругах (раскладки те же), армы по позициям не уравнены | позиционный пересчёт | замерено | +| 13 | **Движковый глоссарий несёт `gender` (вкл. `hidden`), спойлер-окна, склонения — они ЗАСЕЯНЫ СИДОМ и движок возит их в промты.** ⚠ `source='seed'` у 49/49 — сам движок их не пополнял; `until_ch`=0 у всех, окно раскрытия не проставлено | база: 49 записей, 49/49 склонений, 14 полов | замерено ⇒ **эррата к Д38.3 и Д32.16** | +| 14 | **`acceptance`-прогон = 25 глав, 130 чекпоинтов (119 непустых), глоссарий 49 записей.** ⚠ **НЕ боевой профиль:** редактор `glm-5` с погашенным размышлением (не `deepseek-v4-pro`), прогон 10.07.2026, июльские промты; `first_person` и `speech` — **0 из 49** | `pipeline-acceptance.yaml:35-41`, база | замерено | +| 15 | **Таблица `glossary_revisions` в движке ЕСТЬ, ревизий во всех трёх прогонах — НОЛЬ** | там же | замерено | +| 16 | **Пик DeepSeek — только по будням** 01–04 и 06–10 UTC ⇒ выходные целиком вдвое дешевле | вендор-страница, живое чтение | замерено | +| 17 | **Отказов у дешёвой линии нет:** `luna` 0 из 749, `deepseek` 0 из 1651; у `gemini` 12 — **все в роли СУДЬИ** | корпус | замерено | +| 18 | ⛔ **Цензур-ось НЕ МЕРЕНА у `luna` и `glm-5`** (у `gemini` мерена и против него); обе экспертизы назвали её главной дырой независимо | — | открыто | + +## 2. ЧТО СНЯТО СЕГОДНЯ — МОИ ОШИБКИ И ИХ КЛАСС + +| снято | чем было | класс ошибки | +|---|---|---| +| «редактор — лотерея, разброс правки ×10–40» | артефакт `SequenceMatcher(autojunk=True)`: на текстах >199 знаков «мусором» объявляется каждый символ чаще 1% — все частые буквы и пробел | **дефолт библиотеки принят за свойство мира** | +| «расхождение выходов > каждой правки ⇒ пересэмплировщик» | два РЕМОНТНИКА, правящих в разных местах, дают расхождение вплоть до СУММЫ правок | **логическая ошибка при верных числах** | +| «однопроходка вдвое дешевле связки, $62 против $127» | медиана ДВУГОРБОГО распределения; книга — сумма ⇒ ≈×1.3 | статистика не по предмету | +| «запас гарда ~2×, проверено по коду» | ожидание гарда — МАКСИМУМ прошлых цен ($0.131016), а не $0.0214 планировщика | **клейм «по коду» без исполнения кода** | +| «×38 — событие 1 из 500» | логнормальность опровергнута собственными данными | украшение количественной формой | +| «сигнатура пересэмплировщика, а НЕ ремонтника» | ранговая метрика не может опуститься ниже 1.0 при потолке 1.67 | **чтение шумового пола как механизма** | +| «в корпусе нет чистых повторов одного промта» | их шестнадцать | не искали там, где лежит | +| «полей пола в банке нет» | верно только про эвал-банк; **движок поля имеет, и они засеяны сидом** (⚠ сам движок их не пополнял: ревизий 0; голосовые колонки пусты) | **фаза не знала собственный бэкенд** | + +⚠ **Сквозной урок дня, и он дороже любой отдельной правки:** из пяти моих исправлений скептик нашёл +новые ошибки в трёх. **Правка правки — не безопаснее правки.** Проверять надо ВСЕ производные числа +поправки, а не то, ради которого она делалась. + +## 3. АРХИТЕКТУРА: ЧТО РЕШЕНО + +| # | решение | носитель | статус | +|---|---|---|---| +| 1 | Единица — **глава, один вызов** | конвейер | сошлось независимо (наша практика + архитектор вслепую) | +| 2 | **Черновик отвечает за всё НЕОБРАТИМОЕ** (полнота · референты · канон · структура); стиль обратим и в контракт не входит | промт + $0-гейты | принято без замера | +| 3 | **Гейты — страховка от катастроф, НЕ предиктор качества** | факт 5–6 | замерено | +| 4 | **«Точечно или сплошняком» — ложная развилка:** наш редактор уже СПЛОШНОЙ ПО ОХВАТУ и ТОЧЕЧНЫЙ ПО ОБЪЁМУ | факт 1 | замерено | +| 5 | **Двухпроходность — свойство пары «модель × роль × гранулярность»**, а не архитектуры | Д42.4 + внешний замер | замерено/принято | +| 6 | ⭐ **Дифф-интерфейс редактуры** — модель отдаёт не текст, а список якорёванных замен с категорией; аппликатор детерминированный, потолок объёма | не построено | **открыто, цена $2–3 на прототип** | +| 7 | **Пре-скан книги до перевода** (слом храповика первой догадки) | не построено | открыто, цена $3–5 | +| 8 | Не трогать: **банк · гейты · кэш · роутинг · близнецовый контроль как практику** | — | принято | +| 9 | **Латинский квадрат раскладок ПО ПОСТРОЕНИЮ** в любые будущие панели | риг | обязательно, $0 | + +**Обоснование п.6 — ДВАЖДЫ ослабленное, и это надо читать прежде выгоды.** (1) Довод «ампутировать +каскад самообусловливания» снят вместе с «лотереей»: каскада нет, редактор трогает 4–6%. +(2) ⛔ Довод «выход дорогой стадии почти целиком — переписывание неизменного» **тоже неверен**: +видимая глава — лишь **7%** completion-токенов, 93% это размышление (факт 4). ⇒ дифф-интерфейс +режет арифметически **порядка $8 на книгу** у `pro`-редактора, а не $100; у редактора с погашенным +размышлением (`glm-5`) срез значим, потому что там видимый выход и есть почти весь completion. +**Сожмётся ли размышление от смены формата — ГИПОТЕЗА, её и проверяет прототип.** Что остаётся +бесспорным: байт-стабильность нетронутого (инкрементальная перевалидация гейтов), наблюдаемый и +ограниченный потолком объём правки, и категория у каждой правки. Встроенный kill-switch: пересечение множеств тронутых спанов двух прогонов < 0.4 ⇒ провал. + +## 4. МОДЕЛИ: ЧТО РЕШЕНО + +⚠⚠ **ВСЯ ЭТА ТАБЛИЦА ПРЕДВАРИТЕЛЬНА ДО СТАДИИ 0 п.3.** Колонка «качество» построена на ранговых +вердиктах панелей, а факт 12 этого же документа объявляет их не имеющими силы о ПОРЯДКЕ до +уравнивания раскладок. Держится независимо от рангов **только одно**: «голый черновик различимо хуже» — подтверждено +вторым, счётным прибором (`schet.py --report ZD Z0`: класс «банк» +16, p=0.0039). +⛔ **Про `luna` так сказать НЕЛЬЗЯ:** счётчик её не РАЗЛИЧАЕТ (p ≥ 0.25, факт 7), а молчание +прибора, чувствительность которого доказана только на грубом эффекте `ZD`, — не подтверждение +эквивалентности. **Оба прибора молчат ниже своего потолка; эквивалентность НЕ УСТАНОВЛЕНА** и +требует объявленного δ (§6 п.1). Всё прочее — **открыто**. + +| форма | книга 1500 глав | качество | +|---|---|---| +| голый дешёвый черновик | ~$7 | ⛔ различимо хуже | +| однопроходка `luna` | $7 | неразличимо (оба прибора туповаты) | +| однопроходка `glm-5` без думания | $9 | ⛔ различимо хуже | +| **черновик → редактор `glm-5`** | **~$17–20** | неразличимо: 3 круга, 2 семейства, второй прибор | +| однопроходка `pro` | ~$90–99 | неразличимо | +| **боевая связка (черновик → редактор `pro`)** | **$127** | якорь | + +* **Крупнейший денежный рычаг — замена редактора на `glm-5` (~×4.4–6)**, и упирается он не в + деньги, а в **неразрешённый конфликт приборов на zh** (Д42.4). +* ⛔ **Вся наша фактура по дешёвым моделям — АНГЛИЙСКАЯ.** Боевая пара китайская. +* ⛔ **Цензур-ось поимённо, потому что валить их в одну строку запрещено собственной Д41.4:** + у **`gemini`** она МЕРЕНА и против него (12 отказов `PROHIBITED_CONTENT`, все в роли судьи); + у **`luna`** и **`glm-5`** — **не мерена ни разу**. Кандидат в прод не идёт независимо от цены. +* **Скидочные режимы, не требующие ни одного решения:** выходные целиком офф-пик (÷2), батч −50% + универсален, кэш-чтение −90%. ⚠ Тарифная погода ≠ климат: несущую архитектуру на скидочное окно + не ставят, котировка — датированной строкой в манифест. + +## 5. ПЛАН + +### Стадия 0 — $0; исполнитель и оговорки названы по пунктам + +⚠ **Проверено ревью: три обещания заголовка держатся не все.** «$0» — да, все пункты суть анализ +артефактов на диске. «Ноль агент-сессий» — держится для пп. 1, 3, 4, 5; **п. 2 (классификация +правок) есть труд суждения и может стоить сессию** (свободно 4 из 220). «Не требует решений +владельца» — держится, ЕСЛИ не превращать скрипт п.1 в постоянный приёмочный гейт: гейт — зона +бэкенда и лендинг оркестратора, то есть уже решение. Здесь он остаётся ПРЕДЛОЖЕНИЕМ. + +1. **Аудит `acceptance`-прогона** — держит ли банк 49 терминов через 25 глав; соблюдена ли + дисциплина `hidden` до раскрытия; склонения против записанных форм. **Прямой замер Вопроса 0.** + Порог: >2% взвешенно ИЛИ любая сущность топ-50 ⇒ гипотеза «банк держит» ложна в сильной форме. + ⛔ **Он НЕ заменяет Шаг 7 целиком, вопреки первой редакции этого документа.** Закрывает + **терминную** половину Вопроса 0 — и на ИЮЛЬСКОМ профиле с редактором `glm-5`. **Голосовая + половина (пол/родство/голоса рассказчика) им не закрывается ПО ПОСТРОЕНИЮ:** `first_person` и + `speech` в глоссарии пусты (0 из 49), а Д32.16 прямо предупреждает, что без засева + характер-листов замер даёт ложноотрицательный результат. Голосовая половина и текущий боевой + профиль остаются Стадии 3 либо Шагу 7. + ⭐ Предложение (не пункт плана): сделать скрипт постоянным приёмочным гейтом — решение владельца. +2. **Разбор диффов редактора по категориям** — что именно он чинит: канон, вёрстку или прозу. + ⭐ Если 80% массы правок механические, редактор заменяется детерминированным слоем + дешёвой + моделью, и спор о ярусе закрыт бесплатно. +3. **Позиционный аудит ВСЕХ купленных панелей** (~150 пакетов на диске) + латинский квадрат по + построению в будущие. Без этого ни один вердикт по моделям невозможен. +4. **Эрраты — все три сделаны 30.08** (Д47.7, Д38.3, Д32.16). Остаётся **грепом проверить, что + сильная форма нигде не всплыла**: «полей пола … НЕТ», «механизма не существовало». +5. **Базис Жаккара для kill-switch Стадии 1** — пересечение множеств тронутых спанов у нынешних + `Z0`/`ZF`, из тех же артефактов. Без него порог 0.4 висит в воздухе. +6. **Уборка:** пересчёт денег суммами на одном базисе; протяжка непротянутых чисел + (греп «62 · вдвое · 6.3 · 7.1 · ×7–11»); таблица переноса «что из очереди Д38.6 не переехало». + +### Стадия 1 — единицы долларов. Ответ на «какие вызовы» + +**Прототип дифф-редактора** на тех же 16 главах: тот же промт, выход — список замен. Меряем объём +правки · **пересечение множеств тронутых спанов двух прогонов** · цену выхода И РАЗМЫШЛЕНИЯ. +⚠ **Порог kill-switch (Жаккар < 0.4) назначен ДО того, как посчитан базис.** Жаккар тронутых спанов +у нынешних `Z0`/`ZF` считается за $0 из тех же артефактов и обязан войти в Стадию 0 — иначе порог +висит в воздухе. + +### Стадия 2 — $0.2–0.6. Ответ на «на каких моделях» + +**Цензур-ось дешёвой линии на боевом жанре**, с пре-регом: порог отказов, убивающий вендора, +объявляется ДО пробы; wire-лог отделяет отказ от таймаута. + +### Стадия 3 — единицы долларов, на КИТАЙСКОЙ паре + +Решётка на 25 главах `acceptance`: **дорогая однопроходка · связка · дифф-ремонт**. Рефери — +бесплатный счётчик + статистика правок. Снимает главную оговорку фазы (вся фактура английская). + +### ⛔ Чего в плане НЕТ намеренно + +* **панели за $10–15 с ранговым эндпойнтом — упираются в собственный ПОЛ прибора.** Близнецы + расходятся на **1.33–1.53 места** при 6.5% различия текста (факт 3 + Д48.5). В этом полу есть + ДОКАЗАННАЯ читательская компонента: позиционный наклон 0.5 места, воспроизводящийся в обоих + кругах (факт 12), и повтор чтения одним семейством — 0.34 порога (Д37.3/Д38.5). + ⛔ **Сколько в полу текста, а сколько читателя — НЕ РЕШЕНО, и подавать это решённым нельзя:** + факт 11 без мощности, а ратифицированный глосс самой Д37.3 гласит обратное — «треть разброса + сам прибор, **две трети — текст**». ⇒ **Панель с полом такой высоты купит очередное + «неразличимо» независимо от того, из чего пол состоит** — и это единственное, что нужно для + решения. ⚠ Однозначно читательская из трёх опор только одна: наклон раскладки, он в тексте не + живёт по построению; +* **ручка размышления** — при шуме ×2.8 эффект ×1.4 неизмерим в наших бюджетах; +* **Шаг 7 в прежнем виде** — ⚠ НЕ «заменён»: аудит `acceptance` закрывает лишь терминную половину + Вопроса 0 на июльском профиле (§5 п.1). Шаг 7 остаётся носителем ГОЛОСОВОЙ половины и текущего + боевого профиля — переносится, а не выбрасывается; +* **резать редактора решением сессии** — $28 не стоят решения на приборе, объявленном молчащим; + и дифф-интерфейс может сделать вопрос беспредметным, срезав цену стадии арифметикой. + +## 6. НА ВЛАДЕЛЬЦЕ + +1. **Запас эквивалентности δ.** Вилка с ценником: **0.5** → n≈62 на плечо (доллары; якорь — сам + позиционный артефакт равен 0.5) · **0.35** → n≈126 ($5–10) · **0.2** → n≈386 (только живые люди). + ⚠ Выбрать 0.2 = выбрать, что доказательство эквивалентности дёшево не наступит никогда. + Заземление: **δ ≤ половины цены той порчи, которую владелец отверг бы, глядя в текст.** +2. **Кап агент-сессий** — свободно 4 из 220; читательская половина плана без него стоит. +3. **Судьба редакторской стадии** — после стадий 0 и 1, не раньше. + +## 7. ЧТО КОНСИЛИУМ НЕ ЗАКРЫЛ + +* **Расхождение экспертов по редактору осталось.** Архитектор: резать сейчас. Скептик: редактор + ДОКАЗАННО сжимает брак (сильнейший контраст фазы), резать по нулю на прозе — сверхзаявка в + обратную сторону. **Не сведено намеренно** — это решается стадией 0.2, а не голосованием. +* **H0, вынесенная архитектором отдельно:** ось прозы, вокруг которой построен проект, может лежать + ниже порога безразличия читателя. Наши нули — слабое свидетельство ЗА. Проверяется рынком, не + харнессом; решение владельца. +* **Внешний ландшафт:** zh→ru отсутствует во всей свежей литературе; масштаб 1500 глав никем + публично не отработан с замером; независимых замеров коммерческих новелла-переводчиков нет. diff --git a/eval/dovodka/SESSION-30-08.md b/eval/dovodka/SESSION-30-08.md index 36f30189..e9a16705 100644 --- a/eval/dovodka/SESSION-30-08.md +++ b/eval/dovodka/SESSION-30-08.md @@ -7,6 +7,50 @@ > ⚠ Персист, не scratch (норма владельца 01.08): файл лежит в зоне и коммитится, потому что > эфемерный scratchpad умирает вместе с сессией. +## 0-БИС. ⭐⭐ ГЛАВНОЕ ПОСЛЕ КОНСИЛИУМА 30.08 — ЧИТАТЬ ПЕРВЫМ, ОСТАЛЬНОЕ НИЖЕ ИСТОРИЧНО + +**Твой курс лежит в `eval/dovodka/KONSILIUM-30-08.md`.** Там итог шести раундов с архитектором, +четырёх со скептиком и одного с разведкой: что установлено, что СНЯТО, план по стадиям, и что +осталось на владельце. Читать его целиком; всё, что ниже в этом файле, — состояние ДО консилиума. + +**Начинать со Стадии 0.** ⚠ Её заголовок в консилиум-документе уточнён ревью: **«$0» держится**; +**«ноль агент-сессий» — для пп. 1, 3, 4, 5**, а классификация правок (п.2) есть труд суждения и +может стоить сессию (свободно 4 из 220); **«не требует решений владельца» — только если постоянный +приёмочный гейт остаётся ПРЕДЛОЖЕНИЕМ**, а не пунктом плана. +1. **аудит `~/books/gu-zhenren/acceptance/guzhenren-acc-a.db`** (130 чекпоинтов, из них 119 + непустых; 25 глав движковым путём; глоссарий 49 записей). ⛔ **Профиль НЕ боевой:** редактор + `glm-5` с погашенным размышлением, прогон 10.07.2026, июльские промты. + ⛔ **Он НЕ заменяет Шаг 7:** закрывает **терминную** половину Вопроса 0 на июльском профиле; + **голосовая половина не закрывается ПО ПОСТРОЕНИЮ** — `first_person` и `speech` в глоссарии + пусты (0 из 49), а Д32.16 предупреждает, что без засева характер-листов замер даёт + ложноотрицательный результат; +2. **разбор диффов редактора по категориям** — канон/вёрстка/проза; если механических 80%, редактор + заменяется детерминированным слоем, и спор о ярусе закрыт бесплатно; +3. **позиционный аудит всех ~150 купленных панелей** + латинский квадрат по построению; +4. эрраты и уборка (списки — в консилиум-документе §5). + +⛔ **Чего НЕ делать:** панели за $10–15 с ранговым эндпойнтом · ручку размышления · Шаг 7 в прежнем +виде · резать редакторскую стадию решением сессии. + +⚠ **Четыре вещи, которые сегодня оказались НЕ ТАК. Атрибуция честная, потому что «ищи ниже» уже +дважды показывало не туда:** «повторов нет» — записано **ниже по этому файлу**; «вдвое дешевле» и +«полей пола нет» жили в `docs/experiments/23-editor-tier.md` и сняты баннерами там; «платим за +переписывание неизменного» — в ПЕРВОЙ редакции консилиум-документа, снято там же.** +* «однопроходка вдвое дешевле связки» — **неверно**, ≈×1.3 (медиана двугорбого; книга есть сумма); +* «редактор выдаёт главу целиком ⇒ платим за переписывание неизменного» — **неверно**: видимая + глава лишь **7%** completion-токенов стадии, 93% это размышление; дифф-интерфейс режет ~$8 на + книгу у `pro`, а не $100; +* «в корпусе нет чистых повторов одного промта» — **их шестнадцать**, шум размышления **×2.8**, + и наши ×38 суть 2.5 sd, а не «1 из 500»; +* «полей пола в банке нет» — **верно только про эвал-банк**; движок поля имеет, и они **засеяны + сидом** (`source='seed'` 49/49). ⚠ Сам движок их не пополнял (ревизий 0), голосовые колонки + `first_person`/`speech` пусты, `until_ch`=0 у всех. + +⚠ **И методическая мина, стоившая мне сегодня публикации ложного вывода:** +`difflib.SequenceMatcher` по умолчанию (`autojunk=True`) на текстах длиннее 199 знаков объявляет +«мусором» каждый символ чаще 1% — для русского это все частые буквы и пробел. Дистанция раздувается +вчетверо. **Всегда `autojunk=False`.** + ## 0. КТО ТЫ И ГДЕ Полигон-сессия TextMachine **с полномочиями оркестратора в зоне полигона** (слово владельца 29.08: