Ratify the owner's word on the contract minor: progress leaves the minor and rides with the platform pack, and the prompt is issued

This commit is contained in:
heaven 2026-08-27 16:53:17 +03:00
parent cfd6293e0c
commit 2116094995
5 changed files with 44 additions and 10 deletions

View file

@ -175,9 +175,9 @@ surface». Допиши предупреждение: отказ от повер
### §3.4. Чего в этом паке НЕТ
**Сквозная полоса прогресса (строка 200) в этот минор НЕ входит — решение оркестратора 27.08,
подлежит слову владельца.** Причина механическая, и её надо знать: см. §4. Если владелец решит иначе,
получишь аддендум; сам не бери.
**Сквозная полоса прогресса (строка 200) в этот минор НЕ входит — РАТИФИЦИРОВАНО ВЛАДЕЛЬЦЕМ 27.08
(D39.160), едет с платформенным паком (2в).** Причина механическая, и её надо знать: см. §4. Вопрос
закрыт — аддендума не будет, сам не бери и не предлагай вернуть.
## §4. Развилка версии — прочти ДО того, как поднимешь номер
@ -205,7 +205,10 @@ surface». Допиши предупреждение: отказ от повер
разделения сегодня равна нулю, а цена объединения — деплой, врущий о своей версии. Поэтому прогресс
едет с паком (2в) отдельным минором.
**Если по ходу работы найдёшь, что этот разбор неверен — это пинг, а не молчаливое отступление.**
**Разбор ратифицирован владельцем 27.08 (D39.160): прогресс едет с паком (2в).** Он приведён здесь
не для пере-решения, а потому что ты обязан понимать, ПОЧЕМУ версия поднимается именно так, — иначе
первая же красная батарея платформы будет прочитана как твоя ошибка. Если найдёшь, что разбор неверен
по МЕХАНИКЕ (а не по вкусу), — это пинг, а не молчаливое отступление.
## §5. Самопроверка ИСПОЛНЕНИЕМ — обязательна, и «перечитал сам» её не удовлетворяет

File diff suppressed because one or more lines are too long

View file

@ -26,7 +26,7 @@
| Платформа | активного НЕТ | читающий пак P8-REVIEW ОТРАБОТАН, ПРИНЯТ и ЗАЛЕНДЁН 27.08 (D39.159): четыре оси, 24 строки регистра, единственный vuln `PD-379`. Промт — `platform/docs/archive/`. Следующая работа зоны — КОДОВЫЙ пак по этим строкам, промт пишется по слову владельца |
| Полигон | [POLYGON_EXP2223_REDO_SESSION_PROMPT.md](POLYGON_EXP2223_REDO_SESSION_PROMPT.md) (отложенный — [POLYGON_PACKAGE4_SESSION_PROMPT.md](POLYGON_PACKAGE4_SESSION_PROMPT.md), строка 85) | фаза Д ИДЁТ; ⚠ живой носитель курса — в `eval/dovodka/`, какой именно называет зона (⚠ [POLYGON_PHASE_D_HANDOFF.md](POLYGON_PHASE_D_HANDOFF.md) — перекрытый снимок, читать не как курс) |
| Фронт | активного НЕТ | **ЗОНА ЗАМОРОЖЕНА** (D39.136 п.2 + D39.147: разморозка отдельным словом владельца, не привязана к P7); перечень первого касания — в зонном журнале |
| Контракт | [CONTRACT_MINOR_SESSION_PROMPT.md](CONTRACT_MINOR_SESSION_PROMPT.md) | минор 0.4.0 → 0.5.0, выдан 27.08: снос отменённой пер-термной модели (`PD-370`, контрактная половина) · дверь правок банка, выведенная из словаря `bank-apply` · конверт вне `/v0` (строка 203-а) · судьба счётчиков упразднённой модели. ⚠ Прогресс (строка 200) в минор НЕ входит — разбор в §4 промта, на слове владельца |
| Контракт | [CONTRACT_MINOR_SESSION_PROMPT.md](CONTRACT_MINOR_SESSION_PROMPT.md) | минор 0.4.0 → 0.5.0, выдан 27.08: снос отменённой пер-термной модели (`PD-370`, контрактная половина) · дверь правок банка, выведенная из словаря `bank-apply` · конверт вне `/v0` (строка 203-а) · судьба счётчиков упразднённой модели. ⚠ Прогресс (строка 200) в минор НЕ входит — ратифицировано владельцем 27.08 (D39.160), едет с паком (2в) |
Отработанные промты — `archive/prompts/`, отчёты с ревью-шапками — `archive/reports/`. Зонные журналы фронта и платформы — `frontend-PROGRESS.md` / `platform-PROGRESS.md` в их зонах (прогресс зон только там, D39.100).
- Чужие зоны — фронт и платформа (читать при касании стыка; каждая ведёт СВОЙ зонный бэклог — единый бэклог их строк не принимает, D39.84): [../frontend/](../frontend/) — веб-интерфейс: промт фронт-сессий + [STACK_DECISIONS.md](../frontend/docs/STACK_DECISIONS.md) (пины версий точными числами и ловушки) + [BACKLOG.md](../frontend/docs/BACKLOG.md) · [../platform/](../platform/) — SaaS control plane: README + [BACKLOG.md](../platform/BACKLOG.md) + `docs/` (зонный журнал `platform-PROGRESS.md` · регистр дефектов · `STACK_DECISIONS.md` с рецептом стенда и инвентарём каналов шва · **[ENGINEERING_STANDARDS.md](../platform/docs/ENGINEERING_STANDARDS.md) — ратифицирован; КАЖДЫЙ промт платформенной сессии обязан на него ссылаться, отступление = пинг** · **[PLATFORM_DIRECTION.md](../platform/docs/PLATFORM_DIRECTION.md) — ратифицированное направление зоны: аутентификация, деньги, стандарты, скорость** · архив промтов).

View file

@ -1,4 +1,4 @@
# Реестр D-нот — карта актуальности v2 (D1D39.159;
# Реестр D-нот — карта актуальности v2 (D1D39.160;
> ⚠ **СЛАБОЕ МЕСТО, КОТОРОЕ БЫЛО ЗДЕСЬ (вписано 22.08, ЗАКРЫТО 24.08 — D39.157 п.6).** Колонка ТЕЛА
> у нот D39.107…D39.123 говорила «жив», хотя тела уехали в слайс подрезкой D39.139; семнадцать строк
@ -220,4 +220,5 @@
| D39.157 | 24.08 | Переезд на новую машину: стенд пересобран без root (обе батареи EXIT=0 под `-race`, сквозняк живьём), носитель подъёма — карта `README.md` (отдельный док `dev-stand.md` заведён и снесён тем же днём по возражению владельца, аудит одного носителя его подтвердил); корень книг переопределён на `<репозиторий>/books` со своим git, якорь `/books/` в игноре починен; цена переезда измерена (движок — 3 хелпера, строка 218; полигон — 173 файла по корню книг и 121 по корню репо, два РАЗНЫХ слома, строка 217); решения владельца: легаси выкидывать, а не чинить (санкция паку на удаление эксп-1216), GPU на машине нет; маршрут холодного входа починен по СЛЕПОМУ замеру трёх ролей; класс «line-якорь в D-лог» закрыт (51 из 55 съехал), реестр перестал врать про 17 тел, гейт вооружён структурной сверкой и доказан мутацией; транспортный коммит `temp` снят по слову владельца | ЖИВОЕ: строки 217/218; очередь — CURRENT-STATE | жив | инфра процесс доки полигон бэкенд |
| D39.158 | 27.08 | Входная дверь шва закончена: стоп банка — ФЛАЖОК в движке (память предъявленного, схема v16); полоса — два яруса + гардрейл «разрушительное на классе»; класс `write_incomplete`/exit 15; отчёт двери v2; пути решений только конвенцией; эрраты 191(б)/203(з) | жив | живой файл | шов · банк · полоса отказов |
| D39.159 | 27.08 | Пак P8-REVIEW принят: числа воспроизведены приёмкой на дереве С лендингом бэкенда (18 пакетов, EXIT=0, скипов 0; регистр 398/96). Ратифицированы норма копии-с-каноном (`ENGINEERING_STANDARDS` §3 п.3), эррата `STACK_DECISIONS` §13 и токен `ОСПОРЕНО(PD-N)` при двусторонней ссылке; статусы трёх спорных строк НЕ пере-открыты. `PD-379` подтверждён чтением, `PD-376` — своей посадкой. Правка гейта формы регистра отклонена замером (краснит 7 законных строк). | ✅ |
| D39.160 | 27.08 | Контрактный минор 0.4.0 → 0.5.0 выдан промтом; **сквозная полоса прогресса (строка 200) ИЗЪЯТА из него словом владельца** и едет с платформенным паком (2в) — гейт версии требует совпадения канона и деплоя в момент лендинга, а сервер прогресс по-новому не считает. Цена «одним куском» обнулена заморозкой фронта. Промт прошёл оба рубежа: 9 находок опровергателя, все применены. | ✅ |

View file

@ -1,4 +1,4 @@
# Журнал решений оркестратора — контракт D1D39.159 (живой файл: карта · эрраты · живые тела · голова D39.124+ (подрезка D39.139); тела закрытых эр — в слайсах `docs/archive/architecture/`, указатель ниже; реестр всех нот — `05-decisions-index.md`)
# Журнал решений оркестратора — контракт D1D39.160 (живой файл: карта · эрраты · живые тела · голова D39.124+ (подрезка D39.139); тела закрытых эр — в слайсах `docs/archive/architecture/`, указатель ниже; реестр всех нот — `05-decisions-index.md`)
> **КАРТА АКТУАЛЬНОСТИ (ревизия D31, продлена до D38.2 [12.07]; исторические записи ниже НЕ переписываются — дисциплина D23.3).** Работая с контрактом (греп номера: живой файл → слайсы, целиком НЕ читать — D39.125), держи под рукой, что чем перекрыто:
> ⚠ **Эррата 09.08 (D39.125):** D39.111 п.1 предписывал промту S3 «максимум = баланс МИНУС открытые холды» — формула ОШИБОЧНА (вычитание дважды), исправлена D39.115 п.2(а): максимум = Balance КАК ЕСТЬ; тело D39.111 живёт ниже в этом файле (голова D39.106+).
@ -740,3 +740,33 @@
9. **Якорь `PD-157` пере-нацелен мной при лендинге** (`backend/internal/config/book.go` `:250`
`:321`) с названной причиной: требование уехало от лендинга бэкенда `d1eb8a9`, не от правки
платформы. Найдено гейтом из п. 7 — он окупился на собственном лендинге прежде, чем построен.
## D39.160 — КОНТРАКТНЫЙ МИНОР ВЫДАН; сквозная полоса прогресса ИЗЪЯТА из него и едет с платформенным паком (2в) — слово владельца (27.08, оркестратор №19). ✅
Промт — `docs/CONTRACT_MINOR_SESSION_PROMPT.md`, состав и заказы там; здесь только решённое.
1. **Строка 200 (сквозная полоса прогресса) в минор 0.4.0 → 0.5.0 НЕ входит. Ратифицировано
владельцем**, изменяет пункт (2б) очереди D39.156 в части «сюда же строка 200».
2. **Основание — механическое, не вкусовое.** Гейт `TestTheAnnouncedContractVersionIsTheOneTheCanonRatified`
(`platform/internal/gates/contract_test.go:14`) читает канон и требует, чтобы константа
`platform/internal/httpapi/capabilities.go:13` ему равнялась ⇒ канон и деплой обязаны совпасть В
МОМЕНТ ЛЕНДИНГА. Снос отменённой двери этому не мешает: платформа свою половину снесла 22.08.
Смена семантики прогресса мешает: сервер считает его по отрезкам и будет до пака (2в), а объявить
`0.5.0` у деплоя со старым прогрессом — ровно та ложь, против которой гейт и заведён (однажды
деплой обслуживал `0.3.0` при каноне `0.4.0`).
3. **Цена прежнего «одним куском» обнулилась.** Она покупалась тем, что иначе фронт перегенерируется
дважды; фронт ЗАМОРОЖЕН (D39.147), зеркало отстаёт ратифицированно, и при разморозке он
перегенерируется ОДИН раз независимо от числа прошедших миноров.
4. **Третьего варианта нет, и это проверено, а не предположено:** «править канон, не двигая номер»
ломает честность semver; «прогресс капабилити-флагом» невозможен — это семантика СУЩЕСТВУЮЩЕГО
счётчика, а двух семантик у одного поля не бывает.
5. **Промт прошёл оба рубежа роли.** Механическая сверка против списка из 11 блоков + опровергатель
(сессия-автор движковой двери, независимая от `docs/`). **Девять находок, все девять проверены
моей командой и применены**; три из них промт бы не пережил: (а) моя формулировка идентичности
убивала ДОБАВЛЕНИЕ терма — сессия спроектировала бы «неизвестный кортеж → отказ», как канон 0.4.0
и делает (`openapi.yaml:486`); (б) счётчики `pending_decisions`/`complete` (`openapi.yaml:442-447`)
кормятся таблицей со снесённым write-путём и остались бы в каноне вечными нулями — их не поймал бы
греп ни мой, ни сессии; (в) публикация `undecided` без запретительного контракта `SignatureState`
воспитала бы у экрана подписи отменённую пер-термную модель ТЕМ ЖЕ минором, который её сносит.
6. **Ошибка буквы, исправленная тем же рубежом:** пункт строки 203 про `/auth`**(а)**, не (е);
у строки открыт ещё (к), в пак не входящий.