Add engine idempotency to the unissued backend prompt: the canon promises a retry that converges and the engine refuses the same document on one path

This commit is contained in:
heaven 2026-08-28 01:17:04 +03:00
parent e594106b23
commit 9fd1d3eb65

View file

@ -135,7 +135,30 @@ P9**, и положить туда новую причину НЕКУДА. Пр
второй якорь показывает ветку `DispOK` с громким отказом на пустой `final_hash`, а не то, что строка
обещает. **Установи текущую правду сам** — код первичен, строка бэклога вторична.
### §3.3. Чего в паке НЕТ — пропуски подписаны
### §3.3. ТРЕТИЙ пункт — идемпотентность, от которой зависит обещание канона
⛔ **Добавлено 28.08 по находке воркфлоу-ревью платформы. Это НЕ «ещё один дефект» — это обещание,
которое канон УЖЕ даёт на проводе, а движок не держит.**
Канон 0.5.0 обещает дословно: «**The remedy is to re-send the SAME document — the retry converges:**
what already landed is recognised, not duplicated, and a fully-landed document answers `200` with
`changed: false`». На этом обещании стоит вся раскладка класса **15** («шли тот же документ»).
**Движок его нарушает как минимум в одном случае** (доказано исполнением через оракул репозитория):
`decline` поверхности ПОДПИСАННОГО сид-терма, у которой есть строка в дельте, — первый вызов принят,
**повтор ТОГО ЖЕ документа отказывает**. При частичной записи ре-сенд отбивается целиком, и
пользователь остаётся без пути вперёд: документ не применён, повторить нельзя.
**Заказано:** повтор принятого документа обязан сходиться — молча признавать применённое, а не
отказывать. **Форма твоя.** Проверь заодно родню из того же ревью: **Д1**`decline` не энтити-широк
на обратном пути (алиас возвращает отклонённую сущность, память глушит стоп навсегда); **Д3**
потеря маркера после стопа съедает оплаченный подписной стоп молча (гард `LiftBankStop` писан до
памяти предъявления v16). По каждой реши: чинить здесь либо строкой с причиной.
**Почему здесь, а не «когда-нибудь».** Смягчать канон я не стал: обещание правильное, дефект в
движке. Пока он открыт, деплой объявляет то, чего не держит — класс `PD-370`.
### §3.4. Чего в паке НЕТ — пропуски подписаны
- **Читающая сторона банка** (строки **221**/**224**/**226**) — форма разобрана консилиумом 27.08, но
её потребитель (экран подписи) ЗАМОРОЖЕН, и строить проекцию без живого потребителя значило бы