13 KiB
ПЛАН ДВУХ СЛЕДУЮЩИХ ПАКОВ — бэкенд и платформа (оркестратор №22, 03.09.2026)
Статус: ЧЕРНОВИК НА СВЕРКЕ. Промты по нему НЕ выдаются, пока оркестратор и контролёр (Fable 5.1) не скажут «ок» друг другу — распоряжение владельца 03.09. Файл — предмет этой сверки. Что прочитано перед составлением: единый бэклог целиком (176 строк, из них 53 «скоро») · открытые ряды регистра платформы (97,
major3) ·research/30(ответ полигона на два вопроса владельца, 03.09) · CURRENT-STATE и очередь №22 · оба акта приёмки (D39.187, D39.188) · оба наряда дофикса и отчёт приёмки по ним.
0. Что решает состав — три ограничения, а не вкус
- ВАЙР-БАТЧ (строка 182). Любая правка, двигающая
RequestHash/memory_version/ снапшот, — это пере-покупка волн. Дриблить по одной = платить пере-снапшот несколько раз. Значит все провод-правки идут ОДНИМ касанием или не идут вовсе. - ОЧЕРЕДЬ ВЛАДЕЛЬЦА (CURRENT-STATE п.1–4). Разрыв цикла — книга не отдаётся файлом пользователю;
открыта ПЛАТФОРМЕННАЯ половина (
createExport/getExportканон обещает, платформа не монтирует). Гейт этого пункта — живой сквозной прогон через API (п.3), и его блокер снят 31.08. - ЦЕНА ОШИБКИ ПРИОРИТЕТА.
research/30§5 прямо ранжирует: механический пре-гейт перед редактором (D39.117, строка 142) «выше в очереди, чем любой непроверенный K7», а половина доводов за переделку протокола снята замером (редактор правит 4.0–5.8% знаков, а не переписывает текст).
1. БЭКЕНД — пак «ВАЙР-БАТЧ: род, экран цели, заголовки инъекций»
Почему именно вайр-батч, а не «самое важное по одной». Четыре из пяти кандидатов бэкенда двигают провод. Взять их по одному — заплатить пере-снапшот четыре раза на книге, которая уже куплена. Строка 182 заведена ровно под это и ждёт промта.
Состав (в этом порядке):
- Строка 210 — РОД НЕ ПРОИЗВОДИТСЯ ВОВСЕ, цель №1 бэклога. Механизм доставки построен
(
membank/memory.goкладётgenderConstraintNoteв черновую инъекцию дляConfirmed-строк по директиве D39.21), а данных ему не даёт никто: промпт терминолога возвращает ровно три поля (термин · перевод · уверенность), поля рода в ответе нет; майнер берётgenderтолько из СИДА. ⇒ на любой книге без ручного сида ось рода мертва по построению. Это не дефект рендера — это отсутствие входа у ратифицированной директивы. - Строка 46 + предпосылка 113 — экран целевого языка. Дизайн ЗАМОРОЖЕН и ратифицирован (D39.92 п.1 closed-set + D39.93 изолированный модуль с именованными причинами), промт ждёт выдачи. ⚠ Порядок §5.4: сначала 113 — корпус-фикстура (~20 off-target + ~40 здоровых) и регресс-тест на реальный запас, потому что число «18 из 20 · 0 ложных на 1055 · запас 13×» получено ВРЕМЕННЫМ тестом, который сессия удалила, и воспроизвести его сегодня нечем. СТОП, если фикстура не даёт 18/20 при нуле ложных или запас меньше 3×.
- Строка 134 — инжект-заголовки под доктрину D39.105. Гейт ПАЛ (D39.108): текст = отправленная строка пробы 18 БЕЗ оговорки области (оговорка опровергнута §A.4 — НЕ вносить).
- Строка 140 — банковый контур в shipping-c1. СТОП-решение: включить в c1 (двигает промпт драфта ⇒ цену назвать) либо поправить декларацию. ⚠ Это решение ВЛАДЕЛЬЦА, не сессии; в пак идёт как «предъявить обе цены и остановиться», а не как стройка.
- ДОФИКС предыдущего пака — одним пунктом (остаток приёмки 03.09, D39.187 п.4):
развилка операторской строки прибита с ОДНОЙ стороны (две посадки в новый код
VolumeStop.String()переживают весь пакет и печатают «reached the END of the book» при непустом остатке) · границаbound()(Carried > 0→Carried > 1) не прибита, и прогон с одним перенесённым юнитом на конце книги не отдаёт отчёт вовсе · три числа отчёта протухли снова.
ЧТО НАМЕРЕННО НЕ БЕРЁМ и почему:
- Строки 160/161 (структура глав). 161 — это «единственное дешёвое resnapshot-окно», и он требует ДИЗАЙН-пака до стройки (D39.136 п.3). Смешивать его с вайр-батчем нельзя: батч платит один пере-снапшот, а 161 перекраивает нарезку целиком.
- Строка 142 (пре-гейт перед редактором). Ратифицирован формой, но
research/30ставит его ПОСЛЕ шага 0–1 полигона (починка глоссарного флага с precision 0.067 и прибор верности): без прибора его эффект неизмерим, а мерило — половина цены редактора. - Строка 232 остаток / 233. Семантика переноса отложена СЛОВОМ ВЛАДЕЛЬЦА 03.09 («подумаем»); трогать до его решения нельзя.
- 119 + 124 + 115. Строка 182 требует брать их ОДНИМ дизайн-паком, а не хвостом батча.
2. ПЛАТФОРМА — пак «ЗАКРЫТЬ ЦИКЛ: сквозной прогон и дверь выдачи»
Почему это, а не мажоры регистра. Очередь владельца называет разрыв цикла пунктом 1, и его
платформенная половина — единственное, что стоит между «движок пишет файл» и «пользователь получил
книгу». Движок отдаёт EPUB 3 + txt с 30.08 (D39.175), холодный прогон 31.08 предъявил это живьём
(epubcheck 0/0/0/0). Платформа смонтировала 15 операций канона из 20; createExport/getExport
среди недостающих, долг числится с P8 и ни один пак после P7 его не взял.
Состав:
- Строка 202 — живой сквозной прогон через API. ⚠ ТРЕБУЕТ СЛОВА ВЛАДЕЛЬЦА: прогон ПЛАТНЫЙ.
Всё после «прогон стартовал и остановился» покрыто батареей против живого Postgres, но с
движком-заглушкой; настоящий манифест, сайдкар банка и причины флагов будут ПЕРВЫМИ данными,
форму которых платформа не сочинила сама. Замер 31.08 на десятиглавой книге: $0.436110.
Живой блокер один и он операционный ($0):
TM_PLATFORM_ENGINE_KEYS_PATHабсолютным путём на уже заполненный файл. - Дверь выдачи —
createExport/getExport. ⚠ Слово владельца 30.08: дверь ВСЕГДА строит файл — отказ пользователю не отдаётся, неполная книга уходит с пометкой, то есть дверь зовётtmctl build --partial; отказ по умолчанию остаётся операторской ручкой CLI. Требует минора канона — значит контрактное касание планировать вместе. PD-424— терминальная ручка для живого прогона с заблокированной расплатой (major, половина «невидим» вылечена P12, половина «ручки нет» стоит).run abandonветвится поruns.finished_atи на живом прогоне уходит в живую ветку;AbandonRunотказывает над попыткой, ещё называющей юнит. Это НОВАЯ разрушительная операторская поверхность над деньгами — её дизайн (кто вправе звать, чем доказывается отсутствие процесса, что если процесс вернётся) назвать в паке явно.- ДОФИКС предыдущего пака — одним пунктом (D39.188 п.5а): записка зоны о предусловии хоста
различает хосты ИМЕНЕМ МАШИНЫ, а имя у этого хоста то же самое при противоположных условиях
(
~/go/binсуществует и держитsqlc,make tools-checkна дефолтном PATH падает, сокет 55433). Различает пользователь, а не хост.
ЧТО НАМЕРЕННО НЕ БЕРЁМ:
PD-410(полоса против движкового плана) — архитектурное, направление есть (D39.165 §1), но лечение требует либо передавать движку план работ, либо выводить total полосы из движкового плана; это отдельный пак по слову оркестратора 28.08 и он крупнее двери.PD-412/PD-413(LATERAL в полосном агрегате) — контенция, не корректность денег.PD-386/387/389/390/392(такт свипа, телеметрия, метрики без ручки) — класс «операторская поверхность», просится отдельным паком наблюдаемости; смешивать с дверью выдачи значит разбавить оба.PD-439и правило ухода из класса — решение ОРКЕСТРАТОРА, не зоны; оно моё, а не паковое.
3. ЧТО ОСТАЁТСЯ НА ВЛАДЕЛЬЦЕ — три решения, без которых состав неполон
Санкция на платный сквозной прогон— ДАНА 03.09 (D39.189): «разрешаю платные прогоны с ключами для тестов». ⚠ Потолок числом НЕ назван, поэтому его называет пак: оценка своим замером + обязательный--ceiling-usd+ правило «перелёт оценки — СТОП и пинг». Опора — холодный прогон 31.08: $0.436110 на десяти главах полной цепью.- Семантика переноса слота (открыто с 03.09). Пока не решена,
--max-unitsдержит слоты, а не деньги; замер: грант 2 оплачивает 4 юнита, и флагнувшийся без текста юнит пере-оплачивается каждой покупкой. - Строка 140 — банковый контур в shipping-c1: включить (двигает промпт драфта ⇒ пере-покупка) либо поправить декларацию.