153 lines
17 KiB
Markdown
153 lines
17 KiB
Markdown
# Пере-прогон rerun2 — отчёт (蛊真人, главы 1–5, zh→ru)
|
||
|
||
**Сессия:** операционная, пост-D39.19 (промт `docs/PERERUN_SESSION_PROMPT.md`). **Дата:** 2026-07-23.
|
||
**Стенд:** `/home/ubuntu/books/gu-zhenren/rerun2/` (всё ВНЕ git). `backend/`+`docs/` — не трогались (read-only).
|
||
**Прогон:** ОДИН `--resnapshot` fresh-translate среза глав 1–5 через прод-стек D38.5, три арма редактора.
|
||
|
||
---
|
||
|
||
## 0. Итог одной строкой
|
||
|
||
Прод-путь отработал чисто. **Несущий инвариант D39 «переоплата ОДНА» подтверждён живьём: драфт-волна оплачена ОДИН раз ($0.0109) и резюмится за $0 во всех трёх армах редактора** (0 новых draft-вызовов на арм; draft-снапшот `4ed6cdd97fae` бит-стабилен). Эхо-мины нет нигде (echo_draft=0, echo_edit=0). Три арма разошлись по качеству: glm-5 — чистый (0 флагов), mistral — дешёвый но рубленее и хуже по глоссарию, deepseek-pro — лучшая структура/глоссарий, но 3 катастрофы CJK-leak (оставляет китайские заголовки глав).
|
||
|
||
---
|
||
|
||
## 1. Деньги — реальный итог эксперимента (леджер)
|
||
|
||
Реальные траты = сумма ОТДЕЛЬНЫХ вызовов (драфт — один раз; каждый арм — своя edit-волна; судья). Пер-DB `committed` НЕ суммировать — арм-DB это КОПИИ базового (несут скопированный glm-edit; двойной учёт).
|
||
|
||
| Волна / арм | Модель | Вызовы | $ (реальные) |
|
||
|---|---|---|---|
|
||
| Драфт-волна (единожды) | deepseek-v4-flash (thinking-ON) | 10 | **$0.010931** |
|
||
| Edit — арм base | glm-5 | 7 | **$0.076583** |
|
||
| Edit — арм mistral | mistral-large-2512 | 7 | **$0.040093** |
|
||
| Edit — арм deepseek-pro | deepseek-v4-pro | 7 | **$0.040555** |
|
||
| Судья-риг (probe+floor+cat+pairwise) | gemini-3.1-pro-preview + grok-4.3 | 140 | $6.461700 |
|
||
| **ИТОГО ЭКСПЕРИМЕНТА** | | | **$6.633102** |
|
||
|
||
Реальный API-расход = пайплайн $0.171402 + судья $6.461700 = **$6.63** — под потолком $15 книжным/дневным. Судья — доминирующая статья (полные окна + gemini thinking + grok-фолбэк на 3-0). Порог «50% до конца base edit» ($7.50) не сработал (к концу base-edit потрачено <$0.09). Прогон завершён 23.07; платных deepseek-вызовов на 24.07 (катовер слагов) нет — прайс-ре-чек не требуется (судья на gemini/grok).
|
||
|
||
**Пер-арм COGS-проверка (5 глав):** glm $0.0766 · mistral $0.0401 · deepseek-pro $0.0406. Свап-армы дешевле базы (совпадает с планом 11 §6(g): свап-редакторы дешевле glm).
|
||
|
||
---
|
||
|
||
## 2. Подтверждение $0-резюма драфта (несущий D39-инвариант)
|
||
|
||
На КАЖДОМ из трёх армов `translate --resnapshot` резюмил драфт-волну за **$0.000000** — ни одного нового вызова deepseek-v4-flash:
|
||
|
||
| Арм | draft model-calls в прогоне | draft committed | draft snapshot |
|
||
|---|---|---|---|
|
||
| base (glm) | **0** (все «stage resolved from chunk_status») | $0.010931 (без изменений) | 4ed6cdd97fae |
|
||
| mistral | **0** (grep подтверждён) | $0.010931 | 4ed6cdd97fae |
|
||
| deepseek-pro | **0** | $0.010931 | 4ed6cdd97fae |
|
||
|
||
Механика: mined_delta = `Source:mined` → двигает ТОЛЬКО enriched (edit) снапшот; base-банк (draft) не меняется → `baseMemoryVersion` стабилен → draft-чекпоинты под `snapshot_draft` не пере-гоняются. Каждый арм = отдельный `snapshot_edit` (glm `211b6aac48ea` / mistral `e71b99087601` / deepseek-pro `d769c9f7d51d`), edit пере-пиннится+пере-оплачивается, draft — нет. Армы гонялись на КОПИЯХ базового DB (draft-чекпоинты переиспользованы, не пере-оплачены).
|
||
|
||
---
|
||
|
||
## 3. Майнинг-стоп (W1.5) и ТАЧПОЙНТ №1
|
||
|
||
Драфт-волна → банк-майнинг-стоп (`exit 3` = `WaveSignatureStop`), карта у `guzhenren-rerun2.db.mined-signature.yaml`. Предложено **3 новых терма** (сверх 52 подписанных из exp16-карты — все 52 уже в seed-v2, майнер их исключил).
|
||
|
||
| Терм | occ | Что это | Решение владельца |
|
||
|---|---|---|---|
|
||
| 和智慧 | 7 | ложное срабатывание (和=«и»; строка «力量蛊和智慧蛊») | **reject** → mined_rejects |
|
||
| 花海 | 8 | нарицательное «море цветов» (поле 月兰花) | **reject** → mined_rejects |
|
||
| 陈博 | 6 | второстеп. персонаж (古月陈博, провалил тест) | **promote** → «Чэньбо» (m), alias 古月陈博 |
|
||
|
||
Плюс владелец добавил 2 гу-типа, которые майнер не поймал/сегментировал неверно (за 和智慧 спрятаны): **智慧蛊→«гу Мудрости», 力量蛊→«гу Силы»** (третья пара 人祖三蛊, консистентно с seeded 希望蛊→«гу Надежды»).
|
||
|
||
**Счётчики майнинг-стопа:** предложено 3 · покрыто exp16-картой 0 (все её термы уже в seed) · резидуал 3 (2 reject + 1 promote) · доп. добавлено 2. Merged seed+mined lint (60 термов) = 0 коллизий. Пере-запуск → дельта пуста → auto-continue.
|
||
|
||
**Материализация в выводе (проверено):** 南疆→«Южные земли» (гл.4), 陈博→«Гуюэ Чэньбо» (гл.4), 力量蛊/智慧蛊→«гу Силы»/«гу Мудрости» (гл.5) — все отработали.
|
||
|
||
---
|
||
|
||
## 4. Детерминированные сигналы качества (наблюдаемость, не гейт) — по армам
|
||
|
||
| Сигнал | glm-5 (base) | mistral | deepseek-pro |
|
||
|---|---|---|---|
|
||
| edit $ | 0.0766 | 0.0401 | 0.0406 |
|
||
| hard-флаги | **0** | **0** | **3** (sanitizer_stripped) |
|
||
| exit code | 0 | 0 | 2 (completed-with-flags) |
|
||
| echo_draft / echo_edit | 0 / 0 | 0 / 0 | 0 / 0 |
|
||
| structure: предл./нарратив-абзац | 2.65 | 2.16 (рубленее) | **3.43** (лучшая) |
|
||
| dialogue-dash | 4 | 1 | 0 |
|
||
| glossary-misses | 3 | 5 (худшая) | **1** (лучшая) |
|
||
| cosmetic-strip units | 0 | 0 | **3 (42.9%)** |
|
||
| post-check miss | 0 | 0 | 1 (开窍) |
|
||
|
||
**deepseek-pro — 3 катастрофы CJK-leak** (санитайзер D30.3 поймал и вырезал, флаг+skip; сырьё в export НЕ течёт):
|
||
- гл.1/чанк0: `第一节`, `纵身亡魔心仍不悔` (маркер+заголовок главы оставлены по-китайски)
|
||
- гл.4/чанк0: `第四节`
|
||
- гл.5/чанк0: `改善`
|
||
|
||
Т.е. deepseek-v4-pro как редактор оставляет китайские заголовки глав в русском выводе — санитайзер их стрипает → у этих глав в export может отсутствовать заголовок. glm/mistral заголовки переводят («Глава 1…», «Раздел 2…»). Мелочь глазами (glm): `открыл их again` (гл.1, латиница), `войть` (гл.2), `Вперди` (гл.3) — авто-QA поймал `again`.
|
||
|
||
**Сигналы бэкенда идут РЯДОМ с вердиктами судьи (§6), НЕ сливаются в одну цифру** (без сфабрикованной сходимости).
|
||
|
||
---
|
||
|
||
## 5. Время волн
|
||
|
||
| Волна | старт→конец (UTC) | длит. |
|
||
|---|---|---|
|
||
| Драфт (10 чанков, 4 воркера) | 19:35:52 → 19:37:14 | ~82 с |
|
||
| Edit base glm-5 (7 ед., 4 воркера) | 19:47:45 → 19:49:48 | ~123 с |
|
||
| Edit mistral (7 ед., rate-guard=2) | 19:53:26 → 19:56:03 | ~157 с |
|
||
| Edit deepseek-pro (7 ед., thinking) | 19:56:20 → 19:58:39 | ~139 с |
|
||
|
||
mistral медленнее из-за rate-guard (max_concurrency 2 вместо 4) — но **ноль retry-fails** (без гуарда полигон ловил ~48%). Гуард отработал.
|
||
|
||
---
|
||
|
||
## 6. Судья-риг (D39.7) — gemini-3.1-pro-preview (+ grok-4.3 фолбэк)
|
||
|
||
Полные окна (без обрезки), per-vote JSONL, position-swap, катастроф-скрин ко ВСЕМ армам, floor-пасс. **140 вызовов, $6.4617** (105 gemini + 17 grok-фолбэк + ранние без judge-тега); 0 аномалий. Рига — `eval/rerun2_judge/judge.py`, результаты — `judge/judge_results.json`, per-vote — `judge/votes_*.jsonl`.
|
||
|
||
**Аномалия→вендор-дока (правило двух направлений):** на ед. 3-0 (сцена Шэнь Цуй, мягкий сексуальный подтекст) gemini fail-closed `content_filter: PROHIBITED_CONTENT` — задокументированный квирк D22.6 (Gemini 3.x неконфигурируемо фейлит на сексуальном; судья такого — Grok). НЕ гадал: добавил grok-4.3-фолбэк (кросс-семейный к zh→ru редакторам, не author==reviewer) → ед. 3-0 судил grok.
|
||
|
||
**Floor (judge-noise): 14/14 tie на identical-тексте → шум 0.** Судья ни разу не предпочёл идентичное идентичному → pairwise-предпочтения = реальный сигнал (floor не мешает).
|
||
|
||
**Pairwise (56 игр/арм, win=1/tie=0.5):**
|
||
| Арм | win-rate | очки |
|
||
|---|---|---|
|
||
| **deepseek-v4-pro** | **0.679** | 38 |
|
||
| glm-5 | 0.589 | 33 |
|
||
| mistral | 0.232 | 13 |
|
||
|
||
Head-to-head: glm>mistral **22:6** · dspro>glm **17:11** · dspro>mistral **20:6**. **Ранг: dspro > glm >> mistral.** Order-consistency: flip-rate 0.214 (79% устойчивы к перестановке) — сильные предпочтения (обе руки ≫ mistral) переживают; зазор glm-vs-dspro (17:11) ближе к шуму.
|
||
|
||
**Катастроф-скрин (dedicated, по армам):** glm 5/7 · mistral 6/7 · dspro 5/7 — но по ТЯЖЕСТИ расходятся кардинально:
|
||
- **mistral — CRITICAL:** пропуск целого абзаца (про природу гу, 2-0), пропуск заголовков глав (4-0/5-0) и имён (古月藻榭), числа (千万→«тысячи», 数十万→«десятки тысяч»), искажение смысла (资质→«Ресурсы»), **катастрофа сюжета** (4-1: приписал жульничество 陈城→Фан Юаню, сломал родство), систематически теряет 蛊师. → наименее верный.
|
||
- **glm — MAJOR:** только 时辰-единицы + сломанные словоформы («глава клан»/«войть»/«было десятки») + латиница («again»). НИ ОДНОГО пропуска/числа/искажения смысла. → наиболее верный по содержанию.
|
||
- **dspro — MAJOR:** урон от CJK-strip (пропали заголовки 第一/四/五节), сломанное «лять» (из 改善), **ошибка рода в диалоге** (1-0: реплика обесчещенной женщины → от муж. лица).
|
||
- **Дисконт:** ед. 3-0 у ВСЕХ трёх — ложная катастрофа (grok не знал сид-конвенции 甲乙丙丁→А/Б/В/Г, счёл верное «класс В» ошибкой). Не считать против армов.
|
||
|
||
**СИСТЕМНАЯ находка (ко ВСЕМ армам, draft-уровень) → ПИНГ ОРКЕСТРАТОРУ:** 时辰 переведён как «час» (三个时辰=6ч→«три часа»; 半个时辰=1ч→«полчаса»). Дефект ЧЕРНОВИКА (deepseek-v4-flash translator), редакторы не чинят. Глоссарий/промпт: 时辰=2 часа. Класс из пере-прогонного дефект-леджера D39.8.
|
||
|
||
**Вывод (метрики НОМИНИРУЮТ, чтение РАТИФИЦИРУЕТ):** судья ставит **dspro** первым по прозе/верности (лучшая структура 3.43 + лучший глоссарий), НО у dspro урон от CJK-strip (пропавшие заголовки) — чинибельный дефект санитайзера/промпта, не фундамент. **glm — безопасный чистый второй** (0 hard-флагов, наиболее верный по содержанию). **mistral — вон** (критические пропуски/искажения, которые детерминированные гейты НЕ ловят). Backend-сигналы (§4) и судья РАЗОШЛИСЬ по mistral (детерм.: «0 флагов, чисто»; судья: worst) — расхождение ОЖИДАЕМО и ИНФОРМАТИВНО (гейты ловят echo/CJK/преамбулы/стиль, НЕ пропуски/числа/смысл), сигналы РЯДОМ, не слиты (без сфабрикованной сходимости).
|
||
|
||
---
|
||
|
||
## 7. Блайнд-пакет (D39.8) — ТАЧПОЙНТ №2
|
||
|
||
`blind/blind_read_packet.md` — 3 версии каждой главы (A/B/C), метки **перетасованы пер-главно** (защита от кросс-главной де-анонимизации), исходник для сверки, авто-QA перед читателем. Ключ соответствия — `blind/blind_read_KEY.json`, **владельцу до вердикта не показан**. Экстракция только через `tmctl export` (инвариант №8).
|
||
|
||
---
|
||
|
||
## 8. Девиации от промта (списком, с обоснованием)
|
||
|
||
1. **mined_delta пуст + 2 правки в seed, а не «карта→mined_delta».** Все 52 подписанных терма exp16-карты УЖЕ в seed-v2; литеральная загрузка в mined_delta = крэш прогона (`UNIQUE(book_id,src,sense,since_ch,until_ch)` без `source`; плоский INSERT — `store/migrate.go:202`, `glossary.go:134`). Правки владельца 南疆/青丝蛊 применены к копии seed (`guzhenren-seed-rerun2.yaml`). Согласовано с владельцем на гейте. mined_delta наполнен живьём на майнинг-стопе.
|
||
2. **Срез = только главы (第一节→), без метадаты-преамбулы.** Выбор владельца на гейте (чище для чтения; преамбульные термы всё равно в seed).
|
||
3. **budget_usd=3.0** (не снапшот-фолдится) — включает draft echo-эскалацию (D22.11); **waves.workers=4** (транспорт, не снапшот).
|
||
4. **Армы через КОПИИ базового DB** (draft переиспользован → $0). Пер-DB `committed` двоит скопированный glm-edit — реальный итог считаю по отдельным вызовам (§1).
|
||
5. **Судья max_tokens 12000→20000** — на крупной ед. (гл.3/ч0) gemini thinking+удвоенное окно упирались в 12000 → `finish=length`, пустой content. Поднял + None-safe. Полный A0↔A0' independent-regen floor DEFER (interim; ратифицирует чтение владельца) — floor замерен как position-bias на identical-тексте.
|
||
|
||
**Прочее:** B2-предупреждение `культивация ← 修炼/修行` — намеренная черта seed (владелец свёл оба к «культивация»), наблюдаемость, не дефект. Все три арма: `finish=stop` только, аномалий провайдера ноль (кроме судейского max_tokens, вылечено).
|
||
|
||
---
|
||
|
||
## 9. Что в едином `--resnapshot` (манифест §8)
|
||
|
||
seed-v2 + 2 правки (南疆/青丝蛊) · langpack zh/zh-ru (palladius) · mining.contrast (jieba) · translator.md v1-reflow · editor.md v3-discourse-reflow · sanitizer ON · segmentation (draft 1797 / edit 3200 / fertility 1.1978·cjk+0.3852) · mined-delta (陈博/智慧蛊/力量蛊, Source:mined, только edit-снапшот). Draft-снапшот `4ed6cdd97fae` · edit-снапшоты пер-арм.
|