textmachine/docs/archive/prompts/ACCEPTANCE_SESSION_PROMPT_v2_rerun_2026-07-12.md

13 KiB
Raw Blame History

Промт: приёмочная сессия Ф1 — ПЕРЕ-ПРОГОН 25 глав кандидат-конфигом → этап B (2026-07-12, D30.9)

Предусловие запуска (все ПЯТЬ, иначе стоп и пинг оркестратору): (1) бэкенд-пакет D15.2 этап А залендён (билингв-редактор D30.1 + reflow D30.2 + output-санитайзер D30.3 + новый golden — D33, коммит 00f8e36) + 2 обязательных фикса санитайзера (D33.1: хвостовая утечка «Основные правки для справки»; false-positive «около колонны»/«стало талой») залендены с golden re-capture; (2) переводчик пере-прогона = deepseek-v4-flash СОХРАНЁН (exp13/D32 — pro отклонён; escalate_to=pro без изменений); (3) сид v2 финализирован, спорные термины + род «гу» подписаны владельцем (D32/diag/glossary_v2_signoff.md); (4) escalation.budget_usd>0 в c1 (D22.11 — иначе echo-эскалация не стреляет); (5) единый resnapshot выполнен (промпты+editor-модель+санитайзер-фикс+сид v2 — всё в один снапшот; это НЕ дубль оплаты этапа A, а новый снапшот по ратифицированной смене поведения). Чистое дерево (git status; в дереве часто ДВЕ живые сессии — чужие правки не трогать).


Кто ты и что делаешь

Ты — приёмочная сессия Ф1. Этап A (draft deepseek → editor glm-5 моно) выполнен и ратифицирован (D24), но чтение владельцем дало «нечитаемо» → диагностика exp12 (D30) вскрыла 4 дефекта и ратифицировала фиксы. Твоя задача сейчас — пере-прогнать те же 25 глав кандидат-конфигом и проверить, что (а) инфраструктурные инварианты этапа A держатся на новом снапшоте, (б) качество стало читаемым (арбитр читаемости — владелец; ты готовишь замер и сэмплы). После «читаемо» + «да» владельца — этап B (срез ~300 глав).

Зона: backend/ (только фиксы найденных багов, с тестами) + своя секция docs/PROGRESS.md «## Приёмка Ф1». Ничего не коммитить — лендинг оркестратора. Гардрейлы CLAUDE.md жёсткие: .env не читать; книга и ВСЕ производные (store.db, выходы, отчёты с цитатами) — ВНЕ git; 18+ уровень 3 — не обрабатывать; никаких деструктивных git-операций; стейджинг оркестратора пофайловый.

Онбординг (~40 мин)

  1. CLAUDE.md → CURRENT-STATE в PROGRESS.md02-mvp-plan.md §Приёмка Фазы 1 (v3.2) (твой чек-лист).
  2. 05-decisions-log.md (карта актуальности сверху): D30 (флип D1, reflow, санитайзер, exp13, дорожка D30.9), D24 (итоги этапа A — методология чек-листа), D24.2 (alias-слепое пятно в методику D10), D28.1 (post-check precision/recall-трейдофф), D10/D1.1 (консистентность/оговорка верности), D2/D12 (диспозиции/redrive), D25.1 (release-state — если строишь reader-экспорт).
  3. backend/README.md (инварианты, golden-гард, как гонять) + 00-provider-quirks.md (шапка + строки редактора БИЛИНГВ/санитайзер) + 08-cost-model-v2.md (читать через D30.4: ~$0.85/ранобэ).
  4. Материал: книга /home/ubuntu/books/gu-zhenren/guzhenren-gb18030.txt; сид v2 (финализирован exp13); кандидат-конфиг пере-прогона (собран из пакета D15.2 + переводчик exp13).

⚠ ШАГ 0 (ОБЯЗАТЕЛЕН — repoint конфига до любого прогона; D34.2)

Приёмочный конфиг этапа A РАССИНХРОНЕН с боевым (после D15.2): acceptance/book.yaml смотрит на сид V1, pipeline-acceptance.yaml несёт v0-draft/v1-monolingual (моно-редактор, БЕЗ reflow). Наивный --resnapshot тихо заснапшотит СТАРЫЙ сломанный конфиг → весь пере-прогон впустую. Пересобери приёмочный конфиг из БОЕВОГО backend/configs/pipeline-c1.yaml (HEAD, post-D33) + book-side дельты, СВЕЖИЙ store (новая БД — не переиспользуй store этапа A):

  • pipeline-acceptance.yaml = байт-в-байт из pipeline-c1.yaml: draft deepseek-v4-flash prompt_version: v1-reflow escalate_to: deepseek-v4-pro; editor glm-5 prompt_version: v2-bilingual-reflow; gates.sanitizer.enabled: true; escalation.budget_usd > 0 (D22.11 — иначе echo-эскалация не стреляет). Промпты — из backend/prompts/ (reflow+билингв, уже залёнжены).
  • book.yaml: glossary_seed → /home/ubuntu/books/gu-zhenren/guzhenren-seed-v2.yaml; потолки book_usd/day_usd из этапности.
  • Сверь исполнением: tmctl status/snapshot до прогона показывает v1-reflow/v2-bilingual-reflow + сид v2-хеш, НЕ старые. Только потом translate.

Конфигурация пере-прогона (по контракту, не по вкусу)

  • Стадии (= pipeline-c1 post-D33): draft = deepseek-v4-flash (thinking ON; НЕ pro — D32) → editor = glm-5 БИЛИНГВ (D30.1; gemini — премиум-эскалация ТОЛЬКО за санитайзером; grok reasoning-off НЕ ставить — no-op); output-санитайзер enabled (вердикт-ось); reflow-промпты; сид v2.
  • Деньги: escalation.budget_usd > 0; ledger-числа сверять с D30.4 (~$0.85/ранобэ, билингв-вход +60% токенов редактора — не с до-флиповым exp08 $0.69).
  • Промпты/пороги/модели менять НЕЛЬЗЯ — брать из pipeline-c1 (это уже сделано пакетом D15.2/D33; ты собираешь конфиг из боевого, не изобретаешь).

Этапность (деньги по нарастающей, с чекпоинтом владельца)

  • Этап пере-прогона — те же 25 глав (~$0.40.6). Полный цикл: ingest → прогон → паспорта → верификация ниже → сэмплы владельцу → СТОП: чтение владельца (арбитр читаемости) + «да» на этап B + потолок.
  • Этап B — срез ~300 глав (после «да», ~$5). Ночной прогон под супервизором (tmctl перезапускается — D4/D12); resume обязан подхватывать.

Что верифицировать (чек-лист, каждое — исполнением)

A. Инфраструктура держится на НОВОМ снапшоте (регресс-проверка этапа A):

  1. Деньги: committed == SUM(checkpoints) на живом прогоне; настоящий kill -9 посреди прогона → resume без переоплаты байт-идентичных запросов; искусственно низкий budget_usd → честный стоп (committed+reserved), возобновление после поднятия.
  2. Гейты/диспозиции: echo-эскалация стреляет и ре-гейтится; refusal/empty/санитайзер → flag+skip+continue, мусор в TM не коммитится; flagged → tmctl redrive (на реальном флаге); tmctl status живой (OpenReadOnly).
  3. Санитайзер (новый, D30.3): проверь, что он ловит классы exp12 (сервис-преамбула gemini, битые словоформы, латиница-врезки, markdown-###) и НЕ даёт ложных на чистом тексте; счётчик срабатываний в паспорт.

B. Качество стало читаемым (главная цель пере-прогона): 4. Re-gate верности (ОБЯЗАТЕЛЕН — D30.1/D34.3): гонит ПОЛИГОН независимым судьёй (author≠reviewer — не ты-переводчик). Билингв-редактор мог купить гладкость ценой смысла. Span-цитирующий судья reasoning-ON (раздельно стиль/верность) + охота на класс инверсий правки (exp12: A2 внёс «пожертвуй мной», «молва считал» — которых в черновике не было). «Гладко-неверное» не должно пройти молча (D1.1). Скаляр-судьи без спанов НЕ использовать (урок exp12). Твоя часть — отдать финальные выходы полигону; без пройденного re-gate пере-прогон НЕ засчитан. 5. Консистентность D10 ≥98% по процедуре Р7/D10 — методику приложи СКРИПТОМ в артефакты (числа этапа A третьей стороной не воспроизводились — D24); учти alias-слепое пятно (D24.2: вложенный алиас внутри longest-match полного имени невидим флаггеру — гл.18/0 蛊真人); D10-флаггер теперь осмыслен (сид v2 + post-check union D24.4). 6. Вёрстка: замерь консистентность репараграфизации после reflow (D30.2) — 1:N на диалоге норма (Розенталь), описательное слияние слабее; парность абзацев src↔dst (метод research/16 §0 — пиновать определение абзаца). 7. Сэмплы владельцу: слепые/удобочитаемые пакеты (тот же monitor-паттерн exp12, вне хостинга — копирайт) — оригинал + новый перевод + опционально старый этап A для контраста.

C. Прочее: 8. Ноль молчаливых потерь глав (spine); паспорта/status --json; echo-rate чекпоинт: замерь cjk_artifact-долю и сверь с прайором книги 25% (exp10/D18) и 3.5% этапа A — расхождение в отчёт; контроль эскалаций после флора D24.3 (length-хопы должны проходить ре-гейт). 9. Санити стоимости против D30.4 ($0.85/ранобэ; билингв-вход +60% токенов редактора — не подгоняй под старый $0.69).

Дисциплина находок

Баги чинить можно (зона твоя): фикс = минимальный + тест (mutation-verified); golden обязан остаться бит-в-бит — если фикс меняет wire/вердикты, это НЕ багфикс, а изменение поведения → СТОП и пинг оркестратору (golden сам не обновляй). Правки промптов/конфиг-семантики запрещены (это зона пакета D15.2). Провайдерские странности — правило двух направлений (вендор-дока, не гадание).

Deliverable

  1. Запись PROGRESS.md «## Приёмка Ф1»: таблица чек-листа (пункт → как проверено → результат), деньги этапов, re-gate верности (span-цитаты), консистентность D10 с методикой-скриптом, вёрстка, echo-rate, санитайзер-счётчики, баги+фиксы, вердикт: читаемо / не читаемо + инфра-инварианты держатся/нет.
  2. Сэмплы владельцу (monitor-пакет) + вопросы владельцу отдельным блоком (этап B: да/нет/потолок — после чтения).
  3. Производные — вне git; в отчёте цифры и короткие иллюстрации (≤15 слов), не тексты глав. Ничего не коммитить.