Add the pre-start condition that the operator book template must carry no pair-bound keys, so the readiness pack's loud refusal does not stop the run

This commit is contained in:
heaven 2026-09-18 04:06:17 +03:00
parent 11c272a798
commit d22274cff5

View file

@ -79,6 +79,18 @@
дневного потолка**, и это проверяется ДО интейка: платформа пишет конфиг книги ОДИН раз и больше его не
читает.
**(2б) ⛔ ШАБЛОН КНИГИ НЕ НЕСЁТ ПАР-СВЯЗАННЫХ КЛЮЧЕЙ — условие найдено 18.09 запиской бэкенд-сессии, не мной.**
Шаблон прежнего стенда кладёт в КАЖДУЮ книгу систему транскрипции («палладий» — систему для китайского) и
род обращения. Пока движок принимал это свободной строкой, английская книга молча получала китайскую
инструкцию. Пак готовности строит **громкий отказ** на имени политики, которого пара не знает, — и это
правильно. ⇒ **но твой шаблон обязан этих ключей не нести вовсе**, иначе английская книга будет отказана
на загрузке, и отказ будет верным.
⚠ Почему это не блокер и не чужая зона: **шаблон книги есть артефакт ОПЕРАТОРА**, отдельный файл по
абсолютному пути из переменной окружения (`platform/deploy/README.md:201` так и озаглавлен), платформа
подставляет ровно пять ключей и схемы движка не знает (`platform/internal/books/render.go:189`), а в её
зоне шаблонов нет ни одного (контроль: файлов yaml в `platform/deploy/` — 0). Шаблон создаёшь ты, вместе со
стендом, и кладёшь в него ровно то, что нужно. Это тот же файл, в котором не должно быть дневного потолка.
**(3) Демон не стартует без объявленных пар.** Инстанс, принимающий загрузки без доступной пары, не
поднимается вовсе. Для двух книг нужны **обе** пары. Проверяется ответом ручки возможностей, а не
переменной окружения.