textmachine/docs/PERERUN_SESSION_PROMPT.md

67 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Промт операционной сессии: ПЕРЕ-ПРОГОН (пост-D39.19 → чтение владельца)
**Статус: АКТИВЕН (выдан 20.07.2026, оркестратор №7).** Это ЕДИНСТВЕННЫЙ санкционированный платный прогон эры пере-прогонного стека. Роль — операционная: гонишь ПРОД-ПУТЬ (`tmctl`), не эксперимент-риги. Пишешь ТОЛЬКО на стенд (`/home/ubuntu/books/gu-zhenren/rerun2/`) и в `eval/` (если нужны скрипты рига); `backend/` и `docs/` — read-only (находки — пингом оркестратору, НЕ чинить самим).
## 0. Онбординг (порядок чтения)
1. `CLAUDE.md``docs/README.md` → CURRENT-STATE в `docs/PROGRESS.md`.
2. `docs/architecture/05-decisions-log.md` — контракт; вникнуть в D39.12D39.19 (волны, майнинг-стоп, армы, echo-сплит, reject-set, exit-коды).
3. `docs/architecture/11-implementation-plan.md` — §армы + §8 (манифест единого resnapshot).
4. `docs/experiments/00-provider-quirks.md` — ПЕРЕД любым вызовом провайдера.
5. `docs/experiments/09-pilot-protocol.md` + риг-стандарт D39.7 (per-vote records, полные окна судьи, floor-gate) + блайнд-пакет D39.8.
6. `backend/README.md` — CLI-контракт (`translate`/`report`/`status`/`export`/`redrive`/`seed-lint`).
## 1. Цель
ОДИН `--resnapshot` fresh-translate среза книги (蛊真人, стенд `/home/ubuntu/books/gu-zhenren/`, GB18030) через прод-пайплайн: драфт-волна (deepseek-v4-flash, thinking ON) → майнинг-стоп W1.5 → edit-волна тремя армами редактора (base glm-5 / mistral / deepseek-pro) → судья-риг → `tmctl export` → блайнд-пакет владельцу на чтение (планка: ≤2 претензии).
**Срез: главы 15** (cold-start банка с главы 1 — обязателен для майнинга). Владелец может расширить до 10 после первого чека — не расширять самовольно.
## 2. Предполётные $0-чеки (ДО любого платного вызова)
- `go build ./... && go test ./...` в `backend/` — зелёные; `git status` — чистый (чужие правки НЕ трогать).
- Артефакты на месте: контраст `eval/exp16/data/jieba_dict_general_zh.txt` · сид `/home/ubuntu/books/gu-zhenren/guzhenren-seed-v2.yaml` · подписанная карта `/home/ubuntu/books/gu-zhenren/exp16/signature_map.md`.
- **Прайс-чек ВСЕХ платных провайдеров прогона** — оркестратор сверил 20.07 по офиц. страницам, всё совпало с `models.yaml`: deepseek flash $0.14/$0.0028/$0.28 + pro $0.435/$0.003625/$0.87 · glm-5 $1/$0.2/$3.2 · mistral-large $0.5/$1.5 · gemini-3.1-pro-preview $2/$0.20/$12 (≤200k). Перед стартом: **live `/models`-проба всех слагов прогона** (deepseek-v4-flash, deepseek-v4-pro, glm-5, mistral-large-2512, gemini-3.1-pro-preview) — 404/аномалия → офиц. дока вендора, СТОП, пинг. Расхождение цены → СТОП, пинг. Заодно: есть ли у DeepSeek off-peak-окно скидок — если есть, драфт-волну в окно. **Если прогон переживёт 24.07 (катовер слагов DeepSeek) — повторить прайс-чек в этот день.**
- **Gemini-тир >200k:** у судьи цены ×2 вход / ×1.5 выход при промпте >200k токенов, а наш ledger одноценовой — судья-окна держать <200k (реальные ~2060k; окно больше СТОП, пинг). GA-слага `gemini-3.1-pro` НЕТ (проверено 20.07) судья остаётся на `-preview`, слаг не менять.
- `.env` НЕ читать (ключи уже в окружении процесса).
## 3. Конфигурация прогона (стенд, ВНЕ git)
Run dir: `/home/ubuntu/books/gu-zhenren/rerun2/`. Переиспользуй боевой book.yaml прежнего стенда как базу (если нет собери по примеру из `backend/README.md`), обнови поля:
- `glossary_seed`: seed-v2 · `langpack_root`: `backend/configs/langpacks` · `transcription: palladius`.
- `mined_delta`: конверсия подписанной карты (шаг 4) · `mined_rejects`: отклонённые оттуда же.
- `ceilings: {book_usd: 15, day_usd: 15}` жёсткий потолок эксперимента (леджер без потолка запрещён Р7).
- Pipeline-конфиг: базовый = прод-стек D38.5 (draft deepseek-v4-flash thinking-ON editor glm-5 БИЛИНГВ v3) проверь содержимое `backend/configs/pipeline-*.yaml` и выбери соответствующий; `mining.contrast` jieba-словарь выше. Арм-конфиги: `pipeline-arm-mistral.yaml`, `pipeline-arm-deepseek-pro.yaml` (сверь слаги с `models.yaml`, слаги НЕ менять без live-фактчека `/models`).
## 4. Конверсия подписанной карты → mined_delta
`signature_map.md` подписан владельцем (dst-канон: 南疆→«Южные земли», 青丝蛊→«Шёлковый гу»; пол проставлен, 白凝冰 = hidden). Конвертируй в YAML формата glossary-seed (формат `MinedDeltaYAML`/юниты в `backend/internal/pipeline/mining.go`, `miner_emit.go`): approved-термы с dst `mined_delta`; отклонённые `mined_rejects`. **Самопроверка исполнением:** `tmctl seed-lint` на результат + счётчики (термов в карте строк в YAML) + 3 выборочных терма глазами.
## 5. Исполнение
1. **Драфт-волна:** `tmctl translate --config ... --resnapshot` ЕДИНСТВЕННЫЙ санкционированный resnapshot. Любая правка конфига после старта = СТОП и пинг (второй resnapshot = переоплата, решает владелец).
2. **Майнинг-стоп** (exit 3, карта у DB): сверь предложенную дельту с уже загруженной; резидуал (новые термы сверх карты) короткий список владельцу на подпись (ТАЧПОЙНТ 1), промоут/реджект перезапуск. **Проверь по ledger: драфт при перезапуске резюмится за $0** (ни одного нового draft-вызова).
3. **Edit-волна base-арм** (glm-5) до конца среза.
4. **Армы mistral / deepseek-pro:** отдельные прогоны с арм-конфигами. ИНВАРИАНТ «переоплата ОДНА»: драфт-волна каждого арма обязана резюмиться $0 (сними цифры ledger по каждому арму это живое подтверждение D39-архитектуры; платный драфт в арме = КРИТИЧЕСКИЙ баг СТОП, пинг).
5. **Мониторинг:** длинные джобы активный само-чек раз в ~12 ч (Monitor), не пассивное ожидание. `finish=stop` only: любой иной finish_reason/флейк/404 офиц. дока вендора, НЕ гадать; интерпретацию без вендор-сверки не абсорбировать.
## 6. Судья-риг (после всех армов)
Стандарт D39.7: gemini-3.1-pro-preview, per-vote records, ПОЛНЫЕ окна (не обрезать контекст), floor-gate, катастроф-скрин ко ВСЕМ армам (включая фаворита). Бюджет судьи внутри потолка $15. Сигналы бэкенда (echo_draft_rate/echo_edit_rate, флаги по классам из `tmctl report`) в отчёт рядом с вердиктами судьи, НЕ смешивать в одну цифру (без сфабрикованной сходимости: leave-one-out по судье, независимость сигналов).
## 7. Экспорт и блайнд-пакет
Экстракция ТОЛЬКО через `tmctl export` (руками из DB не лазить). Блайнд-пакет чтения по D39.8: армы рандомизированы и обезличены, ключ соответствия отдельным файлом, владельцу НЕ показывать до вердикта (ТАЧПОЙНТ 2 чтение).
## 8. Отчёт
Файл в run dir (`rerun2/RERUN_REPORT.md`) + короткое итоговое сообщение. Обязательно: $ по волнам и армам (ledger) · подтверждение $0-резюма драфта на армах · echo_draft/echo_edit · флаги по классам · счётчики майнинг-стопа (предложено/покрыто картой/резидуал) · время волн · девиации списком с file:line. Тексты и производные ВНЕ git.
## 9. Гардрейлы (жёсткие, без исключений)
- **МАНДАТ САМОПРОВЕРКИ (12.07):** ревью ИСПОЛНЕНИЕМ своего кода + сформированных запросов + результатов до того, как назвать шаг сделанным. Полигон регулярно багует; D37: «0 ошибок» = 36.
- `backend/*` НЕ править. Баг бэкенда СТОП, минимальный репорт (repro + file:line) оркестратору.
- DeepSeek thinking НИКОГДА не off (эхо-мина). Слаги не менять. 18+ уровень 3 не обрабатывать. `.env` не читать.
- Git: сессия НЕ коммитит; никаких `reset --hard`/rewrite; чужие незакоммиченные правки не трогать.
- Бюджет: потолок $15 книжный/дневной; прожгли 50% до конца edit-волны base СТОП, пинг с цифрами.