textmachine/docs/archive/prompts/POLYGON_SESSION_PROMPT_EROTICA.md

14 KiB
Raw Permalink Blame History

Промт: полигон-сессия — 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.mddocs/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-контроль? судьи?), вопросы владельцу/оркестратору. Ничего не коммить — оркестратор примет после внешнего ревью.