# Консилиум: БАНК ПАМЯТИ ДЛИННОЙ КНИГИ — как его строить > ⚠ **ОТРАБОТАН И ПРИНЯТ 16.09 — акт `D39.253`.** Итог — `../research/35-bank-memory-consilium.md` плюс одноимённый > каталог. Инструкции ниже НЕ исполняются: пак закрыт. Решения владельца по итогу — `D39.254`; перенос банка в > книгу-продолжение подписанным плюс решённым движком — `D39.256`, стройка двухзонная, ряд **461**. > **Остаток, названный автором 16.09:** вторая форма строки (м) по правилу остановки · отказы Р1-10 и О1-10 с доводом · > §8.3 О-1 (правки круга 3 ни одним кругом не судились), О-2 (цена «лечится выборкой» названа механизмом, не величиной), > О-4 (у прохода починки нет собственного прибора). О-3 закрыт словом владельца и снят автором. > ⚠ **Эррата 16.09-б:** «причина смен передачи — якорь» сильнее замера — измерено лишь отсутствие новой улики во ВХОДЕ; > причина остаётся гипотезой, гейт — ряд **466**. Автор поправил обе формулировки в итоге по этому же поводу. > Выдан оркестратором №23 (продолжение, сессия `textmachine-main-75`) 16.09 по слову владельца 15.09: «передавай дела > сессии, пусть наследуется от тебя». Ты наследуешь работу этой смены по банку. Всё, что она выяснила, спроектировала и > опровергла, лежит уликой в `docs/archive/reports/BANK_CONSILIUM_INPUTS_2026-09-15/`. > **Пак без кода и без денег проекта:** платных вызовов моделей пайплайна нет. Агенты Claude разрешены — из них > консилиум и состоит. Якоря `file:line` здесь сняты по дереву `5dbb5cb`. ## 1. Какая проблема и что решит твой результат Приоритет №1 владельца — консистентный художественный перевод длинной книги: ранобэ на сотни и тысячи глав, купленное частями. Держит его **банк памяти** — словарь «исходный термин → перевод, род, окно глав», который редактор обязан соблюдать как закон. Конвейер: дешёвый черновик → банк памяти → редактор. **Что случилось 15.09.** Оркестратор с советчиком Fable 5 дважды спроектировал банк заново, и оба раза предложение оказалось неверным по одной причине. Проект опирался примерно на десятую часть того, что репозиторий уже решил, построил, исследовал и измерил по банку. Сплошная сверка нашла 12 расхождений с решённым, замеренным и собственным планом, а в предложении не было названо ни одного. Предложение отозвано. **Твой результат — ОДНО проектное решение банка, выработанное советом агентов.** Требования к нему: - стоит на построенном и ратифицированном; - честно называет трейдоффы и цену; - ставится в очередь относительно перекроя глав; - приносит владельцу не больше пяти вопросов в верном статусе. Код не пишется, стройки нет. **Проблемы, которые решение обязано пройти** (улики — README входов): - **П1. Банк пере-решается.** Авто-банк переписывается целиком из текущего прогона (`research/34` §4 п.4, ряд 130). - **На подписи — замерено.** Между стопом банка и финалом передачи неподписанных строк сменились у 12 из 69 (A) и у 14 из 66 (B). - Между стопом и финалом был второй проход терминолога после человеческой подписи двух термов. - Эррата 11.09-и называет это ценой пере-майнинга после подписи: «Хороши ли эти 12 замен — вопрос КАЧЕСТВА» (греп `Эррата 11.09-и` в `docs/architecture/05-decisions-log.md`). - **На следующей покупке глав — выведено из кода.** ⚠ Испр. 16.09: рост авто-банка между прогонами наблюдался живьём на стенде полигона (`docs/experiments/23-editor-tier.md:8237-8246` — терминолог доконсолидирует банк под бюджетом). Живьём не наблюдалось именно пере-решение уже решённой передачи и судьба отгруженных глав. - Покупка сперва доставляет новые юниты и только потом пере-делывает отгруженные, чьи байты сдвинул банк (`backend/internal/pipeline/volume.go:410-427`, `DELIVERY BEFORE REWORK`). - Пере-делка идёт с согласием на пере-оплату (`:351`). - Пока в книге есть непереведённые юниты, отгруженные главы остаются со старыми передачами. - **П2. Тождество термина.** - Подбор строк сравнивает нормализованную форму (`backend/internal/membank/memory.go:574`). - Хранилище и часть дверей намеренно сравнивают сырую строку: «族長 and 族长 with one sense and window are two accepted rows, not one» (`backend/internal/membank/memseed.go:874-876`). Это традиционное и упрощённое написание одного слова. - Что редактор получает при этом два закона, показала проба `01` (R2) по коду; живьём не наблюдалось. - Владелец спросил, тот ли это вообще термин (§1, рамка) — ответ нужен человеческими словами. - **П3. Исходы решения.** Отказ терминолога (⟦TM-NO-DST⟧ или молчание) оставляет строке передачу из черновика, и она едет редактору законом (`01` T4 и B2; `backend/internal/miner/miner_emit.go:261-268`). Исхода «это не термин банка» нет. - **П4. Сущность меняется по ходу книги.** Классы: персонаж сменил пол после N глав · термин сменил смысл · тёзки · имя, совпадающее с обычным словом (`方正`) · обращение ты↔вы и голос меняются по сюжету. - **Ответ на класс смены пола уже ратифицирован — D5 п.1.** Когда в загруженных главах видна намеренная неоднозначность, ставится `gender=hidden`, и безродовые конструкции идут до раскрытия. Плюс ретро-патч «с тома N — так» с показом стоимости пере-перевода вмороженных глав. - **Для обращений — D7 правка 1.** Ты/вы — «журнал событий переходов», «а не статичная матрица пар (переход ты↔вы — сюжетное событие». Там же `gender` — «с проактивной установкой `hidden` Analyst-ом на неоднозначности (D5.1)». Голос входит в приоритет №1 (D39.248 п.1). - **У этой же книги хрестоматийный случай — `白凝冰`:** первые главы «он», канон female — D19 п.3(в) (греп `хрестоматийный кейс механизма D5.1` в `docs/archive/architecture/05-decisions-D1-D38.md`). - **Построена ручная половина, проактивной нет.** - `hidden` — поле сида, и у этой книги оно выставлено (греп `сид финализирован (白凝冰` в `docs/architecture/05-decisions-log.md`). - Классификатор его не ставит (`backend/prompts/zh-ru/classifier.md:10-11`). - Расхождение ратифицированного (D5 п.1, D7 правка 1) с построенным — пункт §13 (д). - Терминолог видит три ПЕРВЫХ вхождения по книге, ±40 знаков (`backend/internal/pipeline/terminologist.go:75-76`, `backend/internal/terminology/terminology.go:340-349`). Раскрытие в поздней главе он не видит. - Редактору велено: «Род и форму имён и терминов сверяй по глоссарию» (`backend/prompts/zh-ru/editor.md:10`). Значит, устаревший род в банке может переписать верный текст — это вывод, не замер. - Окно одним решением двери не правится, а отказ снимает все окна поверхности (`backend/internal/membank/decisions.go:90-92`). - **Окон у движковых строк почти нет.** В базах A/B `since_ch` > 0 только у 2 строк на книгу, `until_ch` = 0 у всех. Нижнюю границу по первому появлению ставит только детерминированный канал майнера (`backend/internal/miner/miner_emit.go:210`, `:387-399`); кандидаты только из банкноты идут с `SinceCh: 0` (`backend/internal/pipeline/mining.go:612`). Решение, опирающееся на окно «с главы N», опирается на то, чего у движковых строк сегодня нет. - **П5. Сигналы без читателя.** - Движок по умолчанию на подпись не останавливается (`backend/cmd/tmctl/invocation.go:141`). На платформе остановка — обязательное поле заказа `stop_for_signing` (`platform/internal/httpapi/v0.go:655`). - Платформа читает из банк-экспорта только `terms` (`platform/internal/ingest/bank.go:58-70`), у секции `proposed` читателей ноль (ряд 224). - Фронт заморожен. - **П6. Номинация.** Обычные слова в банк не попадают: `族` встречается в срезе 29 раз, `家族` — 9. Отсекает их фильтр типа, а не контраст (ряд 440, причинность пере-названа 12.09). Пускать ли их — решение владельца. - **П7. Закон задним числом.** Термин решён в поздней покупке, а встречался и в уже отгруженных главах. Ратифицированные опоры: D39.42 п.5 и ретро-патч D5 п.1. - **П8. Общность.** Свёртки написания исходника (трад.→упрощ. китайский, катакана→хирагана) зашиты в ядро и применяются к любому языку (`backend/internal/text/norm.go:47`). Вынос в данные двигает `NormVersion`, а он входит в тег нарезки и в ключ манифеста (`backend/internal/pipeline/manifest.go:282`, `:384`). ### Рамка владельца — дословно Первоисточник и долговечная выписка — §5 п.2 и вход `06`. **Из разговора с прежним оркестратором (с 12.09):** - «банк памяти сразу должен идти законом»; «у редактора нет знаний о том что с этим термином сделают другие редакторы, поэтому так оставлять его опасно». - «принимать решение -- в точке банка памяти»; «делать на такие вот термины запросы с контекстом пожирнее». - «запросы перевода намайненого банка памяти очень дешевые относительно всей книги, мы можем на них не экономить». - ⚠ Оговорка оркестратора: на коротких прогонах A и B терминология — 15.6% и 21.0% цены, то есть заметная доля, а не мелочь. - 12.09: «такой банк памяти по spread может обеднять очень сильно язык. Потому что термин который можно перевести по-разному это вообще то нормальная составляющая художественного перевода»; «у нас начнут переводиться все слова в книге одинаково которые вовсе не обязаны переводится одинаково и даже плохо что они переводятся одинаково». - «если мы начнем майнить такие термины то это взорвет кардинальность банка памяти». - «возможно модель терминолог захочет выкинуть термин который выкидывать точно нельзя». - «редактору дано задание более живой язык предоставить, если не гейтануть его терминами, то он может переписать их часть просто под горячую руку попав». - 12.09, о двух его августовских записях, которые оркестратор привёл из его файла: - «МАЙНИНГ ЗАМЕЧАНИЙ … Заставить критика жаловаться, а не чинить» (ПТ-41; дословно в файле владельца `START_PROMT.MD`, который в репозиторий не коммитится); - безLLM-анализатор книги, считающий повторы слов и упоминания имён (строки ПТ нет). Это пересказ оркестратора; в файле это вопрос, а не идея. - Ответ владельца: «Пусть они останутся идеями, потому что самая оптимальная штука которая есть сейчас по цене качеству это черновик -> банк памяти -> редактор переписыватель полный. Если мы будем сюда внедрять всяких критиков то это уже начнет сильно дорожать перевод»; «Нам бы вот на текущей архитектуре разрулить проблему эту». - «у нас есть алгоритм в бэкенде который скипает подпись банка»; «надеяться что это отловит человек довольно ненадежно». **Из носителей:** - «у неподписанного термина тоже обязан быть ОДИН перевод» — слово владельца, записанное в ряду 330. - «надо давать везде одинаково; если кто-то ошибся — это уровнем выше» — D39.104 п.1, 04.08. **15.09, в этой смене:** - «Меня вот интересует как банк памяти решает проблему которая по идее должна быть общей»; «у нас перосонаж был мужским первые 10 глав, затем поменял пол, вот на докупке новых 10 глав, как с этим банк памяти справляется?»; «есть ли еще подобные кейсы?». - «То что как то замораживать банк памяти и каждый раз не переводить его это понятно, представь если там что то изменится на перевод это же пол книги может перегенерировать.» - «Ну вариант где замораживаем звучит логично, так а что тут не так пойти может? Форма как то перевода поменяться или что?»; «только я спрашивал скорее какой алгоритмический фикс и какие трейдоффы тут могут произойти». - ⚠ Испр. 16.09: вторая фраза сказана о ТОЖДЕСТВЕ термина — это пункт 4 того же сообщения, ответ про ряд 330, — а не о заморозке. О заморозке его вопрос: «что тут не так пойти может?». - «族长 и 族長 это точно одинаковый термин? Я китайский не знаю, но выглядит это как разные слова». - «Ты тут не упарываешься в конкретное решение на моих замечаниях? Нам бы придумать что то качественное вместо каких то заплаток»; «как сделать универсально»; «У нас не получается антипаттерн заплатка под конкретный язык?». - «может быть мы уже запланировали в бэклог что то умное что решает нашу проблему». ⚠ **Что именно владелец назвал логичным — и почему это не решение.** - **Предмет — не заморозка как идея и не ряд 130, а предложение оркестратора** (выписка `06`, строка 870): «**Заморозка.** Перевод, который уже ушёл в отгруженные главы, замораживается. При следующих покупках модель про него больше не спрашивают, а спрашивают только про новые термины». К ней шли бесплатная сверка и право менять замороженное только человеку. - **Это ровно та посылка, которую README входов велит не повторять:** «Первое решение живёт до правки человеком» — против риска B1 и D39.69. - **Вопрос владельца «что тут не так пойти может?» — о цене этой посылки.** Оркестратор ответил рисками и уточнениями (выписка `06`, строки 896, 920, 1038). Часть его утверждений не держится — баннер `06`. - **Позже владелец предостерёг не упираться в решение по его замечаниям.** Значит, заморозка — кандидат с известной ценой, а не принятое решение. Связь с рядом 130 — прочтение оркестратора. ## 2. Зона записи и git - Пишешь **ТОЛЬКО** итог `docs/research/35-bank-memory-consilium.md` и рабочие файлы в каталоге `docs/research/35-bank-memory-consilium/`: протоколы раундов, пробы, таблицы. - `docs/` — зона оркестратора, и эта запись — исключение, выданное этим промтом. - Прецедент: ревью контракта `docs/archive/prompts/CONTRACT_REVIEW_SESSION_PROMPT_2026-08-15.md` → `docs/research/28-contract-review.md`, лендинг оркестратором (D39.138). - Лендит итог оркестратор. - Входы `docs/archive/reports/BANK_CONSILIUM_INPUTS_2026-09-15/` — только чтение. - **Ты не коммитишь.** Код, конфиги, промпты, бэклог, журнал решений, план, README и прочие доки не правишь. Нужные правки носителей даёшь списком в итоге (§13 (д)). - ⛔ В главном дереве `/home/ubuntu/projects/textmachine-main` лежит незакоммиченная сдача бэкенд-сессии, ждущая приёмки: индекс и рабочие правки `backend/`. - Git в главном дереве — только чтение (`status` · `log` · `show` · `diff` · `grep`). - Запрещены `add` · `commit` · `reset` · `restore` · `checkout` · `stash` · `clean` · `apply` · `worktree`. - **Код читай из замороженного дерева `/home/ubuntu/tm-verify-1509`** (`HEAD` `5dbb5cb`, отцеплен; `backend/` и `platform/` там те же, что в `9241934`). - State-changing git запрещён и в нём. - Пробы — `go test` в этом дереве или на tar-копии в своём скретчпаде (`tar --exclude=./bin --exclude='./.env*'`). - После прогонов `git -C /home/ubuntu/tm-verify-1509 status --short` должен быть пуст; вывод печатаешь в протоколе. - ⛔ **Платные вызовы моделей проекта запрещены:** `tmctl translate`/`redrive` и любые провайдеры пайплайна. Замер, которому нужны деньги, проектируешь с ценой и отдаёшь в итог. Санкцию у владельца берёт оркестратор. - Базы прогонов (`~/tm-coldrun-a`, `~/tm-coldrun-b`) — только `python3` + `sqlite3` с `mode=ro&immutable=1`. - `books/` — только чтение, git в нём не трогать: это отдельный репозиторий, в нём лежат сайдкары стопа банка. - `.env` не читать никогда. ## 3. Карта чтения — ЗАКОН; ратифицированное — в теле промта 1. `CLAUDE.md` — целиком. 2. Этот промт. 3. `docs/archive/reports/BANK_CONSILIUM_INPUTS_2026-09-15/README.md`. Там же в `05-prior-art-map.json` — раздел `synthesis` целиком; находки сверщиков `S1`–`S3` — по мере вопроса. 4. `docs/architecture/18-bank-ontology.md`. 5. `docs/research/34-memory-bank-quality-audit.md` — через ревью-шапку. **Справочник по мере вопроса** (в счёт карты не входит): - входы `01`–`04` и `06`; - `docs/research/`: `14-adaptive-memory.md` · `17-external-critique.md` · `20-bank-mining.md` · `24-bank-arbitration.md` · `31-harness-independent-critique.md` · `32-harness-architecture-alternatives.md` · `33-backend-debt.md`; - `docs/experiments/18-editor-wire-probe.md` · `docs/architecture/06-memory-risk-registry.md` · `backend/docs/CHAPTER_STRUCTURE_DESIGN.md` §4.2; - `docs/product-requirements.md`: ПТ-4 · ПТ-5 · ПТ-8 · ПТ-9 · ПТ-24 · ПТ-41 · ПТ-42; - ряды `docs/BACKLOG.md`: 14 · 38 · 47 · 130 · 131 · 161 · 192 · 221 · 223 · 224 · 233 · 322 · 330 · 339 · 406–409 · 434 · 436 · 438–440; - ноты ниже. Журнал решений целиком не читать: - тело — греп `^## D<номер>` в `docs/architecture/05-decisions-log.md` и в слайсах `docs/archive/architecture/`; - статус одним хопом — `docs/architecture/05-decisions-index.md`; - подномер живёт пунктом родителя. ### Ратифицировано — сверь тело ноты до пункта, прежде чем опираться - **D5.** Бриф заморожен, новые термины дописываются, принятое молча не пересматривается. П.1 — проактивный `gender=hidden` и ретро-патч «с тома N — так» (подробно — П4). - **D7 правка 1.** Ты/вы — журнал событий переходов; `gender` — с проактивной установкой `hidden` (подробно — П4). - **D39.42.** ⚠ Испр. 16.09 (находка консилиума, сверена): список терминов, частоты и KWIC берутся из ИСХОДНИКА всей книги и полны после первой покупки (D39.170, ловушка 1); из черновиков купленных глав приходят только варианты передачи. П.5: смена банка после оплаты — пере-редактура ТОЛЬКО затронутых юнитов, со сметой до согласия. - **D39.59 (2).** «БАНК — КУРС НА АВТОНОМНОСТЬ: подпись владельца ОПЦИОНАЛЬНА»; «банк обязан приходить с максимально качественными АВТОНОМНЫМИ переводами». - **D39.69.** «гипотеза первенства ОПРОВЕРГНУТА»: терминолог ре-решает контекстом. Риск B1 (`docs/architecture/06-memory-risk-registry.md:44`): «первый (наименее информированный) перевод имени лочится на 1000 глав». - **D39.102 п.2.** Закрыты «по нужности» целиком: равноправный консилиум как прод-механизм · кросс-модельное взвешивание уверенностью · self-consistency N прогонов · селекция «выбери из вариантов» · отказ-сигнал ⟦TM-NO-DST⟧ · эмбеддинг-фетч (закрыт D39.69). Совет моделей как механизм банка не предлагается; к формату этой сессии пункт не относится. - **D39.104 п.1.** Банк на проводе — ЗАКОН для всех ролей, независимо от статуса строки. Право «перевести иначе» упразднено. Свобода — узкая оговорка ОБЛАСТИ употребления. - Принятая цена: «неверная авто-строка едет консистентно до ревью (чинится одной правкой банка + ре-эдитом; разнобой не чинится ничем)». - П.2: единый закон-блок редактора вместо двухсекционки. Ряд 134, которым п.2 заказывал внесение, закрыт D39.195 п.2. - Проба (`docs/experiments/18-editor-wire-probe.md:621`): «Не подтверждено: оговорка области §B … В движок не вносить.» - **D39.144 п.1.** Банк подписывается целиком, пер-термная подпись — не модель продукта. Механику пост-ридинговых правок не проектировать до полигонных итогов. - D39.165 сужает этот пункт (греп `ОБЛАСТЬ D39.144 п.1 СУЖЕНА ЯВНО`): открыть дверь к построенному движковому механизму — не то же, что проектировать продуктовый цикл. - Полигон выведен из скоупа (D39.248 п.4), поэтому триггер ряда 192 «итоги фазы Д» не наступит. Это вывод оркестратора. - **D39.193.** П.1: род производит классификатор. П.3 — дедуп ЗАКОН-БЛОКА редактора: ключ уникальности банка — `(src, sense, since, until)`; уступает неподписанная строка и только подписанной; подпись не роняется никогда. - **D39.205.** П.4: гейт глоссария не включается до замера ложных срабатываний. П.5: направление владельца «или флагать, или ПЕРЕГЕНЕРИРОВАТЬ проблемный участок» — такой работы сегодня нет. - **D39.245.** Акт ратифицирует ПРЕДМЕТ структуры глав, а не механику. П.7: перечеканка экспортных id уронила бы КАЖДЫЙ банк-экспорт платформы — отсюда `bankTermID` не двигать (`backend/docs/CHAPTER_STRUCTURE_DESIGN.md:693`). - **D39.248.** П.1: голос входит в приоритет №1. П.2: Fable 5 — 1–2 агента на сессию. П.4: полигон вне скоупа. ### Открытые решения владельца — вопросы, а не запреты - **Ряд 130** = `research/34` §4 п.4: копить ли авто-банк между прогонами. - Это СТОП-решение; материал — WARN второго прогона. - 15.09 владелец назвал логичным близкий, но не тот же предмет — предложение «заморозка + сверка» (§1, рамка). Считать это его позицией по ряду 130 — прочтение оркестратора. - **Ряд 440:** пускать ли обычные существительные в банк детерминированным каналом. - **`research/34` §4:** - п.1 — стоп или флаг на разъехавшемся термине; - п.3 — один перевод у неподписанного термина: оба выхода стоят денег; - п.5 — остановка на подпись: опция или свойство продукта. - **Ряд 192:** пост-ридинговый цикл правок банка (триггер недостижим — см. D39.144 выше). ## 4. Разметка свободы: как работает консилиум Слово владельца дословно: «на протяжении всей работы это скорее не прям ресерч а ресерч консилуум где идет совет о том как строить между разными агентами (разрешаю 1-2 фабла по необходимости для этой сессии)». **Делай РОВНО так** (отступление — пинг): 1. **Совет, а не один автор.** Порядок работы: - не меньше ТРЁХ независимых проектов от агентов с разными заданными углами; каждый пишется до знакомства с другими; - перекрёстная критика: каждый проект судит агент, который его не писал; - сведение в одно решение; несогласие записывается, а не усредняется. 2. **Роли совета обязательны.** Роль может нести один агент, но не автор проекта, который она судит. - Адвокат рамки владельца (§1). - Адвокат денег и детерминизма. - Адвокат общности: «заработает ли пара, которой в репо нет, без правки Go». - Хранитель построенного и решённого — сверяет каждый механизм с картой `05` и деревом. - Опровергатель фактов кода — исполнением. 3. **Fable 5 — не больше двух агентов на всю сессию.** - Модель задаёшь явно (`model: "fable"`). - Вопросы по тому же предмету досылаешь уже поднятому агенту. Второй Fable — только под другой предмет, с доводом в протоколе. - Fable — советчик, а не источник истины: его посылки проверяются деревом. - Субагенты и воркфлоу на других моделях разрешены явно; сколько их работает, ты знаешь. 4. **Сначала «не построено ли уже» и «не решено ли уже», потом любой новый механизм.** У каждого нового механизма в итоге: - таблица «что по этому предмету уже есть: решено · отложено · в плане · построено · выключено · исследовано · опровергнуто»; - довод, почему нужен новый. Отсутствие этого шага — ровно причина отзыва двух прошлых проектов. 5. **Правило остановки проверки итога.** - Не больше трёх кругов. - Сходимость — круг, не давший НОВЫХ находок (любой серьёзности). - Миноры последнего круга закрываются ещё одним кругом — или остановкой. - Не сошлось за три — стоп: итог с таблицей остатка и строкой §13 (м) во второй форме. 6. **Формат утверждений:** о коде — `file:line` по `5dbb5cb`; о решении — D-номер с пунктом; о замере — источник, прибор и популяция. **Решаешь сам и аргументируешь:** - число раундов до проверки итога; - углы проектов; - формат протоколов; - какие $0-пробы нужны; - нужен ли второй Fable (в границах п.3); - давать ли авторам проектов тексты отозванных `02`, `04` и ответов оркестратора из `06` — если да, только вместе с баннером. Мои приоры по углам — по карте `05`, этой сменой не проверены, опровергаются доводом: - **«минимум на построенном».** Включить и расширить уже построенное: - `dropBankSettled` — на решения движка, плюс адресуемые по содержимому чекпойнты партий (ряды 38, 233); - спящий журнал `glossary_revisions` (ряд 221); - семейный пере-запрос с якорями решённых членов (`research/24`, ряд 339); - ранжирование очереди человека по уверенности. - **«журнал решений с окнами».** Направление отозванных `02`/`04`, которое критик `03` признал годным как направление. - **«продукт без человека в петле».** Всё решается в точке банка, без подписи. - **«сначала замер».** Как растёт пере-решение на 10 → 50 → 200 глав, прежде стройки (`research/31`, `research/24`). ## 5. Самопроверка исполнением — и где этот пак мягкий **Механизм назван:** 1. Каждое несущее утверждение о коде проверяет агент-опровергатель ИСПОЛНЕНИЕМ: проба или `go test` в замороженном дереве, `python3` по базам, греп с печатью контрольной величины. 2. **Цитаты итога проверяются скриптом — и скрипту не верят на слово.** - Из поиска исключается ВСЁ, что породила эта сессия: итог, протоколы, черновики агентов в `docs/research/35-bank-memory-consilium*`. Иначе каждая цитата найдёт сама себя. - Проверяется АТРИБУЦИЯ, а не только наличие строки: цитата стоит в НАЗВАННОМ источнике и говорит о том же предмете. - Число дословных — ВЕРХНЯЯ ОЦЕНКА; остаток закрывается чтением. Подстрочный поиск меряет наличие строки, а не происхождение утверждения. - Пример из `05`: 180 цитат → 178 дословных, но у 2 из них неверная атрибуция; 1 не найдена; 1 сводчиком не учтена. - **Слова владельца сверяются по первоисточнику, а не по этому промту.** Промт и выписку `06` писал оркестратор, и сверка по ним круговая. - Первоисточник — транскрипт сессии оркестратора `/home/ubuntu/.claude/projects/-home-ubuntu-projects-textmachine-main/6bf42f99-b840-4396-80ac-ab93384b11dc.jsonl`. - Строки файла считаются с 1: строка 17 — вставка разговора с прежним оркестратором; строки 878, 1042, 1094, 1296, 1362 и 1456 (сообщение из очереди) — слова 15.09. - Транскрипт вне репозитория и умрёт с машиной; долговечная копия — `06`, сделанная скриптом. - Цитаты владельца в этом промте опровергатель сверил с транскриптом в трёх кругах. - В итоге называешь, по чему сверил. 3. Итог судят агенты, не участвовавшие в сведении, и хотя бы один из них — ДРУГОЙ моделью, чем автор сведения. Проверяемый артефакт — таблица §13 (з). **Где мягко — сюда смотри в первую очередь:** 1. ⛔ **Изобрести построенное, решённое или опровергнутое** — класс, из-за которого отозваны оба прошлых проекта. - Карта `05` — отправная точка, а не потолок: сверщики читали не всё (`synthesis.obstacles`). - Живой пример — D5 п.1: ратифицированный ответ на заглавный кейс владельца. Карта его нашла, а ни один из двух проектов его не использовал. 2. ⛔ **Сфабрикованная сходимость.** Агенты одной модели на одном входе сходятся потому, что читали одно. Разнообразь модели и входы. Несогласие пиши в протокол. 3. ⛔ **«$0» и «центы» без прибора.** - Что двигают `memory_version`, `NormVersion`, снапшоты волн, перекупка банк-ролей и пере-редактура — у каждого шага цена с механизмом и файлом. - Отдельно — порядок относительно перекроя глав: окна по ординалам, идентичность термина и главы, нормализация. Сверка — с `CHAPTER_STRUCTURE_DESIGN.md` §4.2, рядом 161 и D39.245. 4. ⚠ **Якорь на отозванном.** Тексты `02`, `04` и ответы оркестратора в `06` сильные и неверные. Автор, прочитавший их первыми, склонен их повторить. Отдельно — «владелец назвал логичным» не делает кандидата решением (§1, последний абзац рамки). ## 6. Оси проверки Таблица приёмки роли оркестратора. Заменить ось можно с доводом. - **Ресёрч / текст.** Claim-fidelity: цитаты — дословные подстроки первоисточников. Типовой провал — ОВЕР-АТРИБУЦИЯ, а не фабрикация. Пере-открыть выборку улик. Опровергатель — другой моделью. - **Доки.** Утверждения сверяются с кодом и живыми носителями, а не с памятью агента. - **Замеры** (для плана §13 (г)). Пере-вывод чисел из сырья, независимость сигналов, контрольная величина рядом с каждым нулём. ## 7. Записка-план ДО первого агента В начале итога — раздел «План консилиума»: углы проектов, роли, раунды, пробы, что считаешь сходимостью. ## 8. Заявление = команда; дисциплина ответа - Каждое число и каждая категорика — с командой или прибором, деревом и популяцией. - Отрицательное утверждение («не построено», «нет читателя», «ноль») печатается с контрольной величиной рядом. - Числа входов частью сняты только оркестратором (README входов). Опираешься на них — пере-сними тем же прибором. - Эрудиция — не улика. У утверждения есть грунт (`file:line`, замер, D-номер с пунктом) или пометка «мнение». Мнению не место под видом факта. - Плотность, а не объём. Без шаблонных оговорок. - Перед итогом сверь каждый клейм с результатом инструмента ЭТОЙ сессии. Последний абзац оказался планом — сделай его сейчас. ## 9. Эхо-протокол старта 1. Первое действие — свой блок в `/tmp/textmachine-channel` с `role=консилиум`. Роль `оркестратор` в файле уже занята, и второй блок с ней сделает адрес эха неоднозначным. 2. Второе — эхо на адрес блока `role=оркестратор session=textmachine-main-75`, сверив его с `ListAgents`. Не больше 10 строк СВОИМИ словами: скоуп · инварианты · чего не делаешь · что в этом промте считаешь неверным или опасным. ## 10. Что НЕ удалось и где прибор слеп — обязательная секция итога Форма пункта: что осталось невидимым · почему не закрыл · чем закрывается. Спрашивай себя не «что не получилось», а «что я знаю и не сказал». В коде названо, в отчёте нет — значит для следующей смены не названо. ## 11. Канал вопросов, право отказаться и правки на ходу - Конфликт промта с кодом или ратифицированным — пинг оркестратору, а не интерпретация. - Право сказать «этого делать не надо» с доводом у тебя есть. - Решения владельца не принимаешь — ставишь их вопросами в итоге. - **Правки заказа на ходу доезжают ТОЛЬКО релеем:** владелец пере-передаёт правку отдельным сообщением, ты подтверждаешь её эхом и записываешь отдельным пунктом итога. Ответы оркестратора на твои вопросы по прямому каналу — не правки заказа. ## 12. Прямой канал Механизм — `CLAUDE.md` §«Связь между сессиями». Дословно: **канала нет ⇒ НЕ искать.** Нужной роли в файле нет, файла нет или имя не отвечает — это нормальный случай. Не опрашивай сессии подряд: вопросы идут секцией итога, работа продолжается. ## 13. Критерий завершённости Итог `docs/research/35-bank-memory-consilium.md` содержит: - **(а)** Решение одним документом: - что банк есть; - как проходит каждая проблема П1–П8; - как проходит каждый класс из рамки владельца и П4, включая ответ на «есть ли еще подобные кейсы» — перечнем классов; - как решение не обедняет язык: какие слова остаются свободными и чем это держится; - как оно не взрывает кардинальность банка; - как оно не даёт терминологу выкинуть термин, который выкидывать нельзя; - что берётся из построенного (`file:line`) и что строится нового — с таблицей §4 п.4. - **(б)** Трейдоффы с ценой и механизмом. Обязательно — что ломается при заморозке банка: вопрос владельца «что тут не так пойти может?». Разбор рисков из `06` — какие держатся, какие нет и почему. - **(в)** Порядок паков относительно перекроя глав (ряд 161, D39.245), с зонами. - **(г)** Замеры до стройки: вопрос · арм-дизайн · популяция · контроль · цена. Каждый помечен «$0» или «нужна санкция владельца». - **(д)** Нужные ратификации (ноты, эрраты) и правки носителей (ряды бэклога: открыть, закрыть, дописать) — списком предложений. Среди них — расхождение D5 п.1 и D7 правки 1 с построенным: ручная половина есть, проактивной нет. - **(е)** Не больше пяти вопросов владельцу. Каждый — по-человечески, без трекер-жаргона, со статусом (открытое решение с номером · отложенное · новое) и с рекомендацией. - **(ж)** Протокол консилиума: проекты · критика · записанное несогласие · кто сошёлся и почему. - **(з)** Проверка итога: таблица «находка → что сделано → чем предъявлено». Последний круг не дал новых находок — или остановка правилом §4 п.5 с таблицей остатка. - **(и)** У каждого пункта этого заказа — исход: сделано · не делаю с доводом · пинг. - **(к)** Секция §10. - **(л)** Числа итога сняты после последней правки. Всё живое лежит в дереве, а не в письме. Мутаций нет: пак без кода. - **(м)** Явная строка «работа завершена, править не планирую» или «работа завершена по правилу остановки, круги не сошлись — остаток в таблице». **Сдача** — одно сообщение оркестратору по прямому каналу: путь итога и строка (м). Канала нет — итог и строка (м) лежат в дереве, владелец прочитает и пере-передаст.