textmachine/docs/BACKEND_GENERALITY_RESEARCH_SESSION_PROMPT.md

27 lines
5.7 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.

# Промт бэкенд-сессии: РЕСЁРЧ ОБЩНОСТИ — инвентаризация языковой привязки движка (фаза 1, read-only, $0)
**Выдан 31.07.2026, оркестратор №9, по курсовой директиве владельца (D39.59).** Директива дословно по смыслу: движок НЕ строится под конкретную пару языков (пары — данными или отдельными модулями), НИКОГДА — под конкретную книгу; эдж-кейсы решаются только если класс МАССОВЫЙ для всех книг. Владелец видит в Go-слое жёсткую языковую привязку, накопленную инерцией обследования китайского и Мастера Гу. Этот пак строит КАРТУ привязки и ПЛАН переписывания. **Кода не трогать вовсе.**
**Первый деливерабл — эхо-блок ≤10 строк.** Дисциплина ответа: каждое заявление о коде = grep/команда, воспроизводимая приёмкой; плотность; критик полноты отдельной секцией; право сказать «долг меньше/иначе, чем кажется» — с числами.
## ШАГ 0 — карта чтения (≤5 позиций)
`docs/architecture/12-go-style-notes.md` §0 (действующий норматив общности) · бэклог-строки долга в `docs/PROGRESS.md` (26 · 32 · 34 · 35 · 40 · 46 · 55 · 18 · 36в) · `checks/repair.go:178-184` (самозафиксированное Go-level target assumption) · D39.15/16 в D-логе (прецедент изоляции: как майнер-данные уехали в `internal/lang`+`configs/langpacks/` байт-точно) · D39.58 (свежезалендённый пар-слепой парсер банкноты — образец правильной починки класса).
## ФАЗА 1 — инвентаризация (отчёт → СТОП → ратификация)
1. **Полный скан язык/книго-привязки в Go** (сверх забуканного): CJK/кириллические литералы в `.go` · идентификаторы/ветки вида `isRu*`/`Han*`/`Kana*`/`Cyrillic*` · языковые regex и таблицы в коде · зашитые пороги, калиброванные на zh→ru (бюджеты, флоры, множители) · русизмы в Go-строках, уходящие на провод или в отчёты · книго-специфика любого рода. Тест-данные пары ЛЕГИТИМНЫ (гардрейл CLAUDE.md) — отделить и не считать долгом.
2. **Классификация каждого сайта** (пять вёдер): → langpack-ДАННЫЕ (`configs/langpacks/`) · → пар-модуль (`internal/lang`) · → общий алгоритм с параметром из данных · → удалить · → легитимно (тест/данные/generic-разметка). Спорные — с аргументом.
3. **Пересборка входа пака-21 «чекеры»:** какие из 12 дефектов и существующих чекеров — общие КЛАССЫ с пар-данными (числовые масштабы, битые формы, эхо, латиница-резидю), а какие — zh-привязка в Go, требующая перепроекта, а не фикса. Вопросы разметки Р1Р4 пере-оценить: какие переживают генерализацию, какие были вопросами про конкретную книгу.
4. **План переписывания пакетами:** порядок · оценка объёма · ЦЕНЫ (какие оси снапшота двигает каждый пакет — что перекупается, что нет; прецеденты условных фолдов) · риски · **приёмочный критерий каждого пакета = «пара, которой нет в репо (ja→ru / en→ru), проходит этот слой без правки Go»**.
5. **Счёт масштаба:** файлы/сайты/строки по вёдрам — чтобы владелец видел размер долга числом, а не ощущением.
6. Опциональное исследование алгоритмов, возможные предложения по улучшению текущей кодовой базы.
7. Синк с документацией, в коде бэкенда много кода, которое отсылает к каким-то решениям, возможно полезно понимать их контекст, прежде чем переписывать
## НЕ делать
Правки кода · материю пака-21 · дизайн автономности банка (отдельная арка D39.59) · масштаб. Расхождение промта с кодом/доками = пинг через владельца, не тихая интерпретация.
## Выход
`docs/archive/reports/GENERALITY_RESEARCH_<дата>.md`: эхо-блок · карта по вёдрам с grep-командами · пересборка пака-21 · план пакетов с ценами и критерием второй пары · счёт масштаба · критик полноты. **СТОП — ратификация.**