diff --git a/docs/PERERUN_SESSION_PROMPT.md b/docs/PERERUN_SESSION_PROMPT.md new file mode 100644 index 00000000..21963fcc --- /dev/null +++ b/docs/PERERUN_SESSION_PROMPT.md @@ -0,0 +1,66 @@ +# Промт операционной сессии: ПЕРЕ-ПРОГОН (пост-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.12–D39.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 претензии). + +**Срез: главы 1–5** (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`. +- **Прайс-чек DeepSeek** (офиц. `api-docs.deepseek.com/quick_start/pricing`): сверить с `backend/configs/models.yaml` (flash $0.14/$0.0028/$0.28, pro $0.435/$0.003625/$0.87 — факт 20.07). Расхождение → СТОП, пинг оркестратору. Заодно: есть ли off-peak-окно скидок — если есть, драфт-волну в окно. **Если прогон переживёт 24.07 (катовер слагов) — повторить прайс-чек в этот день.** +- `.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. **Мониторинг:** длинные джобы — активный само-чек раз в ~1–2 ч (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 — СТОП, пинг с цифрами. diff --git a/docs/PROGRESS.md b/docs/PROGRESS.md index cde13233..ff004a71 100644 --- a/docs/PROGRESS.md +++ b/docs/PROGRESS.md @@ -9,6 +9,10 @@ > - **Ждём от владельца:** тачпойнты exp16 (карта подписи/пол · мини-голд алиасов · precision@30, `books/gu-zhenren/exp16/`, ~30–40 мин — для сид-дельты к пере-прогону) · развилки плана §10 (W1.5-UX · DC5-стих-политика · Edit-ceiling · и др.) · реплика ja→ru (тест общности §B5) · **ре-чек прайса DeepSeek у катовера слагов 24.07** (до него платных deepseek-прогонов нет) · чтение пере-прогона (после R1+resnapshot) · старые висящие: планка запуска (лучше-фана/гибрид/издательский) · билингв-якорь пилота (D25.9-Q1) · контаминация пилот-корпуса (D27.4) · publishable/waiver (D25.1) · FN-bound L3 (D25.4) · юр-пакет · провенанс 12-*-доков. > - Архивы хроники: `archive/PROGRESS-2026-07-04-10.md` (D31) · `archive/PROGRESS-2026-07-10-13.md` (D39.6-гигиена). Записи ниже — живая эра D39. +## Оркестратор №7 — гейт DeepSeek закрыт факт-чеком, промт ПЕРЕ-ПРОГОНА выдан, 20.07 + +**Гейт 24.07 закрыт по существу** (офиц. `api-docs.deepseek.com/quick_start/pricing`, 20.07): катовер депрекейтит ТОЛЬКО старые алиасы `deepseek-chat`/`deepseek-reasoner` — мы на `v4-flash`/`v4-pro`, не затронуты; цены байт-в-байт равны `models.yaml` (flash $0.14/$0.0028/$0.28, pro $0.435/$0.003625/$0.87); анонсов изменений нет. Остаточный риск (тихая смена цены в день катовера) страхуется потолком леджера + повторным прайс-чеком 24.07, если прогон жив (вписан в промт). **Промт операционной сессии выдан: `PERERUN_SESSION_PROMPT.md`** — главы 1–5, ОДИН resnapshot, майнинг-стоп → резидуал-подпись (тачпойнт №1), армы glm/mistral/deepseek-pro с проверкой $0-резюма драфта по ledger («переоплата ОДНА» на живых деньгах), риг D39.7, блайнд-пакет D39.8 (тачпойнт №2 — чтение, планка ≤2 претензии), потолок $15/$15. Стенд-артефакты сверены: контраст `eval/exp16/data/jieba_dict_general_zh.txt` · сид v2 · подписанная карта exp16 — все на месте. + ## Оркестратор №7 — консистенси-проход бэкенда (комменты+строки → английский) ПРИНЯТ и залендён, 20.07 Владелец прогнал проход на чистоту кода: русские комменты (104 файла) + операторские дашборды (`render.go`) + error-msg + detail-флаги чекеров → английский; логов на русском не было (уже английские). **Оставлено русским (проверено file:line):** wire/инъекц-заголовки (`glossaryBlockHeader`/`editorConstraintHeader`/`⟨проверить⟩`, `memory.go:504/543`), lang-data таблицы гейтов (ё-гомографы/транслит-междометия/разряды 万億/Палладий-ъ), глифы `«—»/«…»`, тест-данные перевода, doc-ссылки (`Р4/Р5/D39 слой 2/Ш-2`). **Приёмка ИСПОЛНЕНИЕМ (не по заголовку отчёта):** build+vet+`test -race` зелёные (весь набор: golden-детерм/snapshot_wave/memnorm/**miner-parity EXACT**); **golden-диф = ТОЛЬКО 3 диагностических `detail=`-префикса, все content_hash/final_hash/disp/flag/cost байт-идентичны** → не wire, не вердикт, resnapshot сверх пере-прогонного НЕ нужен; 0 wire-идентификаторов в дифе; 0 нового gofmt-долга (3 файла некошерны уже на HEAD). Единственный enum-литерал `AliasType «чтение»→«reading»` (`memseed.go`): модели не рендерится (`memory.go:221` кладёт в surfaces лишь `a.Alias`), нигде не сравнивается (не control-flow), фолдится только в `computeMemoryVersion` (`memory.go:315`) → на реальной книге учтётся, но впитывается свежим resnapshot пере-прогона бесплатно (оплаченных чекпойнтов на стеке нет). Стрей `backend/tmctl` (build-артефакт) не коммичен. Не D-решение (косметика), стек/контракт не тронуты. diff --git a/docs/README.md b/docs/README.md index 676613bc..c75d6f96 100644 --- a/docs/README.md +++ b/docs/README.md @@ -16,7 +16,7 @@ - `experiments/` — эмпирика «Полигона»: `00-provider-quirks` (читать перед любым вызовом провайдера), `01-token-calibration`, `02-refusal-benchmark`, `03-local-stand`, `04-editor-quality`, `06-local-extraction`, `07-coverage-precision`, `08-cost-model-v2` (актуальная денежная модель), `09-pilot-protocol` (пилот Ф2.5 + поправки D13), `10-explicit-benchmark` (18+ violence-рука канала B), `11-erotica-benchmark` (erotica по трём парам/регистрам — закрытие D14.4, D22). - `research/` — фактура исследований 04–05.07: `01–10` базовые, `11-gap-*` добор критиком, `12-*` режимы отказа/отзывы/таксономии (+ два внешних материала с провенанс-шапками), `13` валидация памяти, `14` адаптивная память, `15` голос и состояние (принят, D21), **`16` ридер-IDE (принят с ревью-шапкой, D29)**, **`17` внешняя критика GPT-5.6 (принят с ревью-шапкой, D25)** — у 16/17 читать шапку прежде тела. **`18` рычаги качества (два отчёта, D36)** · **`19` нарезка+когезия+контракт t/e (D39.1)** · **`20` банк-майнинг W1.5 (D39.6)** — у всех ревью-шапки. ⚠ Часть под superseded-баннерами (01/02/03/04/05/09 и gap-1/2/5) — **читай баннер прежде содержимого**. - `PROGRESS.md` — **журнал** (CURRENT-STATE сверху, ниже хронология; НЕ источник решений). -- **Активные хендофф-промты (пост-D39.19, 19.07):** [`ORCHESTRATOR_SESSION_PROMPT.md`](ORCHESTRATOR_SESSION_PROMPT.md) (хендофф №5 оркестратора) · [`POLYGON_PACKAGE4_SESSION_PROMPT.md`](POLYGON_PACKAGE4_SESSION_PROMPT.md) (residual пилот/18+/echo). **ПАК-11 + ПРЕП ЗАВЕРШЕНЫ, бэкенд готов к пере-прогону.** Следующий шаг = **пере-прогон** (операционная сессия: ОДИН `--resnapshot` fresh-translate + langpack+contrast+подписанная карта exp16 + армы редактора; промт пишет оркестратор). Гейт: ре-чек прайса DeepSeek 24.07. Закрытые — в `archive/prompts/` (свежие: преп→D39.19, пак-11/R1→D39.17, арх-cleanup→D39.16). +- **Активные хендофф-промты (пост-D39.19, 20.07):** [`PERERUN_SESSION_PROMPT.md`](PERERUN_SESSION_PROMPT.md) (**операционная сессия пере-прогона — ТЕКУЩИЙ шаг**: главы 1–5, ОДИН resnapshot, армы glm/mistral/deepseek-pro, риг D39.7, блайнд-пакет D39.8) · [`ORCHESTRATOR_SESSION_PROMPT.md`](ORCHESTRATOR_SESSION_PROMPT.md) (хендофф №5 оркестратора) · [`POLYGON_PACKAGE4_SESSION_PROMPT.md`](POLYGON_PACKAGE4_SESSION_PROMPT.md) (residual пилот/18+/echo). **ПАК-11 + ПРЕП ЗАВЕРШЕНЫ.** Гейт DeepSeek 24.07 закрыт факт-чеком 20.07 (наши слаги не под депрекацией, цены совпадают; повторный чек 24.07 вписан в промт). Закрытые — в `archive/prompts/` (свежие: преп→D39.19, пак-11/R1→D39.17, арх-cleanup→D39.16). - `archive/` — закрытые сессионные промты (только история, инструкции оттуда не исполнять). ## Статус (2026-07-19, пост-D39.16 — стройка пере-прогонного стека)