textmachine/docs/archive/prompts/POLYGON_SESSION_PROMPT_EROTICA.md

53 lines
14 KiB
Markdown
Raw Permalink 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.

# Промт: полигон-сессия — erotica-срез 18+ по трём парам + fix-лист (закрытие D14.4), 2026-07-09
Скопируй в новую сессию Claude Code в `/home/ubuntu/projects/textmachine`.
---
## Кто ты и где ты
Ты — **полигон-сессия** проекта **TextMachine**: эмпирическая валидация допущений архитектуры (мерить, а не верить). Зона записи — **`eval/` + `docs/experiments/`** + твоя запись в `docs/PROGRESS.md` §Полигон. `backend/` только читать; `architecture/*`/`research/*` не редактировать — расхождения пингом оркестратору в журнале. Гардрейлы `CLAUDE.md` (автозагружен) жёсткие: **`.env` не читать; results не перезаписывать (провенанс: model id + UTC + usage + ПОЛНЫЕ сырые выходы); коммитить только по просьбе; никаких деструктивных git-операций при чужих незакоммиченных правках** (research/15 уже залендён — D21; параллельно может работать бэкенд-сессия пакета №3, её незакоммиченные правки в `backend/` не трогать).
**Мандат на 18+:** работа с explicit-эротикой — твоя ПРЯМАЯ задача от владельца (закрытие D14.4 — последнего critical проекта). Жёсткая линия без исключений: **уровень 3 (несовершеннолетние в сексуальном контексте) — не включать в корпус, не обрабатывать**; сомнительный фрагмент исключается. Для ja-книги обязателен **по-героинный спот-чек возраста** участников отбираемых сцен (по тексту/вики) — прецедент: «Isekai Harem Monogatari» отклонена именно на этом (протагонист-школьник).
## Онбординг (порядок чтения, ~30 мин)
1. `CLAUDE.md``docs/README.md` → CURRENT-STATE в `docs/PROGRESS.md` (+ записи 09.07: D19/D20 циклы).
2. **`docs/architecture/05-decisions-log.md`**: твой контракт — **D14 (канал B) + D19 (канал B v2: Mistral-переводчик, grok reasoning-ON эскалация, судьи Grok+Gemini; п.5 — твой fix-лист) + D20** (контекст бэкенд-пакета) + **D21** (принят research/15 «Голос и состояние»; пп.6/9 — твои хвосты: quirks-строка эхо-класса, fidelity-хвост P4).
3. **`docs/experiments/10-explicit-benchmark.md`** — конвейер violence-руки, который ты РАСШИРЯЕШЬ на эротику (методика/провенанс — образец); `02-refusal-benchmark.md` (уровни корпуса), `00-provider-quirks.md` (перед любым вызовом).
4. Твои инструменты уже в репо: `eval/gu_corpus_build.py` (отбор+аудит фрагментов), `eval/refusal_bench.py`, `eval/explicit_judges.py`, `eval/mistral_fidelity.py`, providers-конфиги армов.
Контекст: violence-часть 18+ закрыта (exp10: 0 отказов у всех; grok reasoning-OFF эхает — потому канал B пересобран в D19). **Эротика не мерена вообще** — твоя работа закрывает ровно эту дыру по трём парам.
## Задача 1 — корпус l2-erotica по трём парам
Источники (тексты и производные — **ВНЕ git**, в корпус идут только отобранные фрагменты, каталоги данных gitignored):
- **ja:** книга от владельца — смотри свежий файл в `/home/ubuntu/books/` (владелец кладёт сам; если к старту его нет — спроси владельца; шорт-лист скаута 09.07: «王国へ続く道» — арки со взрослыми героинями по фан-вики, есть EN фан-перевод как якорь; бэкап «人妻人形日記» — 人妻-жанр). Формат может быть любой (txt/epub; кодировку детектить — Shift-JIS вручную через iconv, наш ingest её сознательно не берёт).
- **zh:** **金瓶梅** — общественное достояние, найди и скачай чистый текст сам (например, ctext/wikisource-класс источники), положи в `/home/ubuntu/books/jinpingmei/`. Бонус: канонический русский перевод Манухина («Цветы сливы в золотой вазе») — если найдёшь фрагментарно, используй как якорь для судей.
- **en:** **«Fifty Shades of Grey»** — владелец положит в `/home/ubuntu/books/` (либо спроси); официальный русский перевод существует — якорь.
Отбор: **610 explicit-фрагментов на пару** (~12k знаков каждый, разная степень откровенности: вкл. и жёсткие сцены — они и есть тест границы), уровнёвка `l2-erotica-{ja,zh,en}` по конвенции корпуса; для ja — по-героинный спот-чек возраста и скрин уровня 3 (как в `gu_corpus_build.py`, метод аудита задокументируй); для zh-классики трад→упр нормализация не нужна текстам в оригинальной графике? — проверь графику скачанного текста (金瓶梅 циркулирует и в трад, и в упр; наш trad2simp покрывает, но зафиксируй какая).
## Задача 2 — erotica-прогон конвейера exp10 (ядро задачи)
Те же армы, что violence-рука (сравнимость!): **Mistral** (дефолт-переводчик канала B по D19 — главный вопрос: держит ли эротику, policy позволяет), **grok-4.3 reasoning-ON** (эскалация; ключ — текущий xAI, ратифицировано D19.4 для eval), **локальная abliterated 8b**, **DeepSeek — контроль** (его ToS прямо запрещает sexually-explicit: зафиксируй фактическое поведение — откажет/вырежет/переведёт; это важный политический датапоинт, но в канал B он НЕ вернётся при любом исходе — D14.1). Мерь: отказы / тихие вырезания (sent_cov+len_ratio) / эхо / качество индикативно. **Судьи на эротике:** Grok-судья и Gemini-судья (на violence оба судили 10/10 — держат ли erotica под издательской рамкой; если Gemini откажет — зафиксируй и предложи замену оси fidelity для 18+ руки пилота).
**Gemini-грабли (пробы research/15 + live-фактчек оркестратора 09.07):** (1) **Вся 2.5-серия официально идёт на shutdown 16.10.2026** (deprecations-страница вендора; замены: 2.5-pro→3.1-pro-preview, 2.5-flash→3.5-flash, 2.5-flash-lite→3.1-flash-lite) — миграция судейских слагов с 2.5-flash обязательна независимо от флейков. (2) Пробы ловили на 2.5-flash **интермиттентный 404 «model no longer available» ПРИ наличии слага в /models** (листинг перепроверен живьём 09.07 — слаг числится); вендор интермиттент не документирует — ретраить и мигрировать. (3) Официальная замена 3.5-flash в пробе давала 503 high-demand и `finish_reason=PROHIBITED_CONTENT` на сцене насилия; **PROHIBITED_CONTENT — НЕконфигурируемый фильтр-класс** (safety_settings на него не влияют, в отличие от `SAFETY`) → в логах прогона различай `SAFETY` vs `PROHIBITED_CONTENT` — это разные диагнозы (первый лечится настройками, второй нет); gemini-3.1-flash-lite в пробе работал. (4) Вывод exp07 «content_filter не эмитит ни один провайдер» на Gemini 3.x **МЁРТВ** — логируй `finish_reason` всех судейских и переводческих вызовов как первоклассный результат (ожившая ветка классификатора D2.4).
Выход: **расширение `10-explicit-benchmark.md`** (секция Erotica: таблица по армам × парам, находки, честные ограничения) либо отдельный `11-erotica-benchmark.md` — реши по объёму. Полный провенанс. Это закрывает D14.4 → так и напиши в журнале, оркестратор финализирует.
## Задача 3 — fix-лист D19.5/D20 (микро, попутно)
(а) `mistral_fidelity.py`: агрегация mean при n=2 судьях (label не «median») — прошлые числа уже исправлены оркестратором в доках, чини скрипт; заодно там судья gemini-2.5-flash — учти 404-флейки (см. Задачу 2, мигрируй/ретрай); (б) **цена Mistral по официальному прайсу** с датой и URL (комментарий $0.5/$1.5 расходится с маркетингом $2/$6 в 4× — до wiring экономики канала B нужна правда); (в) провенанс-нота `memory_eval_M_ahq_final.json` (прогнан до-Task-1 зеркалом — для zh no-op, приписка в meta/доку); (г) эхо-детектор: line-start FP на прозе, начинающейся со слова «Глоссарий» — задокументируй как известную границу (консервативный, не тихий); (д) токен-корзина `glossary_line_tokens`: ゛゜/々//halfwidth-катакана — синк с Go-скриптами (info-класс, по желанию); (е) **строка эхо-класса в `00-provider-quirks.md`** (поручение D19.2 — до сих пор не выполнено, D21.9): «reasoning-off + плотный CJK = зона эха — свойство класса моделей, не квирк вендора» + инверсия из research/15 P4: «языковой констрейнт в system у reasoning-off моделей может УСИЛИВАТЬ эхо (grok-none 3/10→9/10; проверена одна формулировка — чувствительность неизвестна)».
## Задача 4 — сид 蛊真人: финализация по D19.3
В `/home/ubuntu/books/gu-zhenren/guzhenren-seed.yaml` поправь запись 白凝冰: **`gender: hidden`** (вместо female/draft; ратифицировано D19.3 — механизм D5.1: безродовые конструкции до раскрытия; `until_ch` оставь пустым/0 с note «выставить при определении главы раскрытия»). Прогони валидацию сида бэкенд-путём ($0, как делал прошлый пакет). Это снимает блокер №1 полной приёмки — отметь в журнале для оркестратора.
## Задача 5 (опционально, по остатку бюджета сессии) — fidelity-хвост P4 (D21.6)
Деблокирует анти-эхо wiring в боевые промпты (гейт D21.6); копейки, судейская инфраструктура у тебя уже есть. Материал: сырые выходы эхо-проб research/15 — `/home/ubuntu/books/gu-zhenren/research15-probes/probes/raw/echo-*.json` (дубль оркестратора; полные промпты/выходы/usage; арм-маппинг — в `probe_echo.py` рядом). Отсуди fidelity митигированных переводов (постинструкция / микро-few-shot / префилл DeepSeek — 35 выходов) против чистых баз тех же фрагментов: кросс-семейные судьи со свапом позиций (твоя же методика exp10). ⚠ Эхо-базы (verbatim-китайский) в сравнение не включай — берёшь чистые базовые переводы; материал — уровень-2 violence из твоего же `refusal_corpus_gu` (скрин уровня-3 чист) + один SFW-кейс. Вопрос один: роняют ли митигации fidelity. Не роняют → wiring деблокирован (решение — оркестратор); роняют → тоже результат (митигции останутся эскалационной экономикой без wiring). Приёмку сессии эта задача НЕ гейтит.
## Приёмка сессии
Корпус l2-erotica по трём парам заведён (с методикой аудита); erotica-прогон всех армов + судей с полным провенансом; exp10/11 написан; fix-лист закрыт; сид финализирован и провалидирован. Запись в `docs/PROGRESS.md` §Полигон: таблица результатов, три главных вывода (Mistral на эротике? DeepSeek-контроль? судьи?), вопросы владельцу/оркестратору. Ничего не коммить — оркестратор примет после внешнего ревью.