Rework both prompts against the block list an outside pass ran: a missing review axis, five canon lines absent from each, an unmarked middle, and a pack that ordered a field while forbidding its version bump
This commit is contained in:
parent
c348c2bdbc
commit
80125b9379
3 changed files with 101 additions and 15 deletions
|
|
@ -26,9 +26,15 @@
|
|||
|
||||
## 3. Карта чтения — ПЯТЬ позиций, дальше только по ссылкам отсюда
|
||||
|
||||
1. `docs/architecture/15-money-path.md` — §«ОТКРЫТАЯ РАЗВИЛКА 04.09» целиком: разбор трёх независимых
|
||||
чтений, все числа с носителями.
|
||||
2. `docs/PROGRESS.md`, строки бэклога **277 · 261 · 262 · 278** — твой состав, формулировки зоны.
|
||||
1. `docs/architecture/05-decisions-log.md`, нота **`D39.196`** — РАТИФИЦИРОВАННАЯ форма заказа, ради которой
|
||||
этот пак и есть гейт; затем `docs/architecture/15-money-path.md` §«ОТКРЫТАЯ РАЗВИЛКА 04.09» — разбор, из
|
||||
которого решение выросло (все числа с носителями). ⚠ Читать в этом порядке: разбор без ноты читается как
|
||||
открытый вопрос.
|
||||
2. `docs/PROGRESS.md`, строки бэклога **277 · 278** — твой состав, формулировки зоны.
|
||||
⛔ **Строки 261 и 262 в ЭТОТ пак НЕ входят** — они назначены дофиксу, который прямо сейчас доделывает ДРУГАЯ сессия зоны
|
||||
(эррата 04.09-д: «зона чинит и держит сдачу; строки 256–264 закрываются её лендингом»). Две сессии в одном `stagerun.go` —
|
||||
это конфликт, а не параллельность. ⚠ Если к твоему старту дофикс уже заленджен — спроси оркестратора пингом, брать ли их;
|
||||
сам не бери.
|
||||
3. `backend/internal/pipeline/volume.go`, греп `THE STOP IS A COMPLETION, NOT A HALT` — **прецедент
|
||||
внутри твоего же пакета**: объёмный потолок уже построен с нужной семантикой и САМ противопоставляет
|
||||
себя денежному.
|
||||
|
|
@ -61,6 +67,10 @@
|
|||
`step_max_usd` (самый крупный неделимый резерв). Считается из СВОИХ цен и фертильности, **без константы
|
||||
за главу**. Плюс `structure: detected|declared|none` — признак доверия к нарезке. Всё аддитивно, версию
|
||||
манифеста НЕ двигает.
|
||||
⚠ **РЕШАЕШЬ САМ И АРГУМЕНТИРУЕШЬ (промт форму НЕ задаёт):** как считается `expected_usd` — по
|
||||
отрендеренному промпту с инъекциями или по сырому тексту, какие стадии входят, учитывать ли ретраи и
|
||||
эскалации; по какому признаку выставляется `structure: detected|declared|none`; какую форму имеет
|
||||
леджер сделанного и отложенного в `finished`. Каждый выбор — с доводом в отчёте.
|
||||
|
||||
**(4) РЕШАЕШЬ САМ И АРГУМЕНТИРУЕШЬ:** форма защёлки; где именно ждать settle; как назвать поля;
|
||||
сеттлить ли оценкой поздно отменённый вызов и по какому различителю (латентность — кандидат, порог
|
||||
|
|
@ -69,7 +79,7 @@
|
|||
**(5) НЕ ДЕЛАЙ:** не убирай резервацию — она единственная гарантия «не потратим больше, чем дано»;
|
||||
не резервируй «ожидаемое» вместо worst-case; не ужимай `max_tokens` под остаток (двигает `request_hash`
|
||||
⇒ снапшот и детерминизм, и даёт `finish=length` ценой целой генерации); не трогай кумулятивную
|
||||
семантику `--ceiling-usd`; не двигай `manifestVersion`, `StreamVersion`, схему и контракт.
|
||||
семантику `--ceiling-usd`; не двигай `manifestVersion`, схему и контракт. ⚠ **`StreamVersion` — ИСКЛЮЧЕНИЕ и его двигать НАДО:** добавление поля в кадр — минорный бамп по правилу шва (`internal/runevents/runevents.go`, греп `IT WAS ALMOST NOT BUMPED` — там записана ровно эта ловушка). Прежняя редакция промта запрещала бамп и заказывала поле одновременно; противоречие снято 05.09.
|
||||
|
||||
## 4-бис. ДВА РАЙДЕРА — и вот почему они здесь, а не в другом паке
|
||||
|
||||
|
|
@ -101,17 +111,29 @@
|
|||
СВОЙ пак и своё окно пере-снапшота; строки 253/273 — швы, требующие согласования с платформой;
|
||||
256–267 — то, что зона чинит прямо сейчас в незакрытой приёмке прошлого пака.
|
||||
|
||||
## 6. Предметные оси ревью — ТРИ, и у каждой свой артефакт
|
||||
|
||||
⚠ Оси, а не список проверок: у каждой названо, ЧЕМ ты предъявишь результат. Сессия вправе заменить ось
|
||||
с аргументом.
|
||||
· **Деньги под параллельностью.** Артефакт: прогон с `waves.workers > 1` и потолком, которого хватает
|
||||
на часть волны — леджер до и после, показывающий, что допущенное доработано, а новое не начато.
|
||||
· **Детерминизм резюме после частичной волны.** Артефакт: прогон, остановленный деньгами, и его
|
||||
резюм — совпадение чекпойнтов и отсутствие пере-оплаты доработанного.
|
||||
· **Шов наружу.** Артефакт: событие `ceiling` с недостающей суммой, прочитанное СО СТОРОНЫ ПОТРЕБИТЕЛЯ
|
||||
(не из своего кода), и версия потока, сдвинутая по правилу шва.
|
||||
|
||||
## 5. Пять рисков реализации — названы зоной, проверить ОБЯЗАН
|
||||
|
||||
(а) защёлка на уровне волны, не у воркера · (б) учёт объёма (`volume.go`, `bound()`/`reconcile`): частичная
|
||||
волна под потолком — НОВАЯ форма для этих счётчиков, и они уже дважды ловили ложные числа · (в) событие
|
||||
`ceiling` и exit 4/`paused` обязаны сработать так же и не задержаться · (г) дневной потолок делит ветку с
|
||||
книжным — проверить явно · (д) эскалационный хоп: убедиться, что его деградация не опирается на саму отмену.
|
||||
⚠ **Каждый из пяти предъявляется ЯВНО:** в отчёте — команда и её вывод либо посадка и её цвет. «Проверил» без артефакта не считается: это ровно та вырожденная форма, которую канон велит ловить в промтах.
|
||||
|
||||
## 6. Мандат самопроверки ИСПОЛНЕНИЕМ
|
||||
|
||||
Батарея + **собственные адверсариальные посадки ВНЕ списка автора** через `cmd/tmmutate` (каталог 151
|
||||
запись — пополняешь). **Субагенты РАЗРЕШЕНЫ явно**, модель называй имени. Обязательное условие приёмки:
|
||||
Батарея + **собственные адверсариальные посадки ВНЕ списка автора** через `cmd/tmmutate` (каталог 152
|
||||
записи — пополняешь). **Субагенты РАЗРЕШЕНЫ явно**, модель называй имени. Обязательное условие приёмки:
|
||||
посадка **«под потолком волна погасила допущенный вызов» предъявлена КРАСНОЙ**.
|
||||
|
||||
⚠ **SURVIVED не является находкой, пока не показано, что посадка ВООБЩЕ меняет поведение** — норма
|
||||
|
|
@ -119,6 +141,19 @@
|
|||
⚠ Мутации — только на ЗАКОММИЧЕННОМ дереве; на копии — `GOFLAGS=-buildvcs=false`.
|
||||
⚠ Каталог гонять ЦЕЛИКОМ: протухшая запись даёт `ROTTED` и не кладёт прогон.
|
||||
|
||||
## 6-бис. ОБЯЗАТЕЛЬНОЕ ДЛЯ КОДОВОГО ПРОМТА — пять строк канона
|
||||
|
||||
· **Перед отчётом сверь КАЖДЫЙ клейм с результатом инструмента ЭТОЙ сессии.** Не с памятью и не с тем,
|
||||
что было верно вчера.
|
||||
· **Последний абзац отчёта — план или обещание? Сделай это СЕЙЧАС**, а не пиши как намерение.
|
||||
· **Править или удалять тест/голден/гейт ради зелени — НЕДОПУСТИМО.** Несогласие с тестом — пинг, не
|
||||
правка. ⚠ Запрет про МОТИВ (`D39.183`): правка, вызванная сменой поведения, которая ЗАКАЗАНА этим
|
||||
промтом, — обслуживание, и держать протухший тест не нужно; такая правка ОБЪЯВЛЯЕТСЯ в отчёте — что
|
||||
изменилось в поведении, какой тест это описывал, куда уехала гарантия.
|
||||
· **Дифф `^func Test` — ИСПОЛНЕНИЕМ, не по памяти:** приложи вывод, а не утверждение «тестов стало больше».
|
||||
· **Интервальная самоверификация субагентом** в длинной сессии, против ЯВНЫХ критериев, а не «посмотри,
|
||||
всё ли хорошо».
|
||||
|
||||
## 7. Записка-план ДО работы
|
||||
|
||||
Комплектность против заказа — механически, таблицей: пункт → файл → тест → посадка. До первой правки.
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
## 3. Карта чтения — ПЯТЬ позиций
|
||||
|
||||
1. `platform/docs/platform-PROGRESS.md` — секция «⚠ ПИНГ ОРКЕСТРАТОРА №22 (04.09, вечер)» и твой же
|
||||
«ОТВЕТ НА ПИНГ №22»: одиннадцать пунктов ревизии, из них один опровергнут зоной.
|
||||
«ОТВЕТ НА ПИНГ №22»: ⚠ читай ЗАГОЛОВОК ответа буквально: «ЧЕТЫРЕ ЕЁ ПУНКТА ОКАЗАЛИСЬ ЧАСТИЧНО НЕВЕРНЫ», один опровергнут целиком (`PD-439`); «одиннадцать» там — число НАХОДОК, а не пунктов.
|
||||
2. `docs/PROGRESS.md`, строки бэклога **269 · 270 · 274** — состав; и **282** (ложная подпись «Знаков»).
|
||||
3. `platform/deploy/README.md` целиком — предмет блокера, и он же операторский носитель.
|
||||
4. `platform/docs/DEFECT_REGISTER.md` — открытые ряды по теме: `PD-410`, `PD-218`, `PD-448`.
|
||||
|
|
@ -46,12 +46,15 @@
|
|||
зовутся ни разу — проверь сам и используй, если подходят. Восстановление обязано быть **предъявлено
|
||||
исполнением**, а не описано: подними копию из бэкапа и покажи, что книга и баланс на месте. ⚠ Без
|
||||
предъявленного восстановления бэкап — это вера, а не механизм.
|
||||
⚠ **РЕШАЕШЬ САМ И АРГУМЕНТИРУЕШЬ:** куда складывать, с какой частотой, сколько поколений держать, чем
|
||||
проверять целостность копии. Промт задаёт ТРЕБОВАНИЕ (переживаемость потери диска и предъявленное
|
||||
восстановление), а не режим.
|
||||
|
||||
**(2) ДЕЛАЙ РОВНО ТАК — ПОЧИНИ РАНТБУК ДЕПЛОЯ.** Он ставит CLI в одно место и велит указать переменную
|
||||
на другое, которого не создаёт ⇒ `MarkerArgv` пуст ⇒ **`503` на каждый старт и резюм**. ⚠ Без переменной
|
||||
вовсе всё работало бы (сиблинг-дефолт). Там же объяснение отсутствия переменной описывает симптом,
|
||||
которого в коде нет. **Условие приёмки: рецепт исполнен ДОСЛОВНО на чистой машине или в контейнере, и
|
||||
прогон стартовал.** Заодно — остальные пункты ревизии, подтверждённые твоей же проверкой.
|
||||
прогон стартовал.** ⚠ **РЕШАЕШЬ САМ И АРГУМЕНТИРУЕШЬ, что из остатка ревизии брать в этот пак:** зона уже отработала её и закрыла бо́льшую часть своим лендингом `9e978d6`; здесь остаётся то, что она пометила как незакрытое. Возьми, назови поимённо взятое и подпиши пропущенное пропуском — «остальное» без списка промтом не заказывается.
|
||||
|
||||
**(3) РЕШАЕШЬ САМ И АРГУМЕНТИРУЕШЬ — ДВЕРЬ ДЛЯ НЕ-БРАУЗЕРНОГО КЛИЕНТА.** Развилка: выдавать
|
||||
`bearerToken` (контракт его объявляет) ЛИБО признать, что до разморозки фронта единственный путь —
|
||||
|
|
@ -60,32 +63,77 @@
|
|||
Выбор — твой, довод — в отчёт, канон правит оркестратор.
|
||||
|
||||
**(4) ДЕЛАЙ РОВНО ТАК — ИМЯ КНИГИ.** `updateBook` описан в каноне и не смонтирован (`PATCH` в роутере
|
||||
ноль). Смонтировать; титул уезжает в выданный файл. ⚠ Это первое, что видит человек, открыв книгу в
|
||||
ноль). Смонтировать. ⚠ **РЕШАЕШЬ САМ И АРГУМЕНТИРУЕШЬ:** как новое имя доезжает до `dc:title` (движок берёт
|
||||
его из `book.yaml`, который платформа пишет с `O_EXCL` и никогда не перезаписывает) и что происходит с
|
||||
уже собранными выдачами — пере-собирать, помечать или оставить. ⚠ Это первое, что видит человек, открыв книгу в
|
||||
читалке.
|
||||
|
||||
**(5) ДЕЛАЙ РОВНО ТАК — СНЯТЬ ЛОЖНУЮ ПОДПИСЬ «ЗНАКОВ».** Счётчик считает руны ПОТОКА ЗАПИСИ файла: для
|
||||
UTF-8 txt это и есть знаки, для EPUB — руны zip-архива, для GB18030/UTF-16 приближение. Либо переименуй
|
||||
в размер файла, либо возьми число из манифеста движка. ⚠ Фронт заморожен — подпись правится при
|
||||
UTF-8 txt это и есть знаки, для EPUB — руны zip-архива, для GB18030/UTF-16 приближение. **ДЕЛАЙ РОВНО ТАК: сделай подпись честной СВОИМИ силами** — поле переименовывается или снимается с
|
||||
выдачи так, чтобы ни одна поверхность не называла его «знаками».
|
||||
⛔ **Ветку «взять число из манифеста движка» в ЭТОМ паке НЕ бери:** сегодня манифест несёт только
|
||||
`source_bytes`, а знаки по юниту появятся ТОЛЬКО после движкового пака (его строка 278). Зависимость
|
||||
названа, чтобы ты не начала с невозможного.
|
||||
⚠ **Переименование ПОЛЯ КОНТРАКТА своей рукой не делай** — §2 это запрещает: состав минора выносишь в
|
||||
отчёт. Своей рукой правится то, что живёт в зоне: источник числа и то, что уходит на провод. ⚠ Фронт заморожен — подпись правится при
|
||||
разморозке, ЧИСЛО у тебя раньше.
|
||||
|
||||
**(6) НЕ ДЕЛАЙ:** не трогай форму заказа (главы/знаки/деньги) — она ратифицирована `D39.196` и идёт
|
||||
**(6) ЗНАЙ ПРО ШОВ, но НЕ строй его здесь:** параллельный движковый пак добавляет в событие `ceiling`
|
||||
поле «сколько не хватило» и двигает минор потока. Твоя сторона читает поток и обязана пережить новое
|
||||
поле, не сломавшись; строить его ЧТЕНИЕ — работа пака формы заказа, а не этого. Если твой парсер
|
||||
падает на незнакомом поле — это дефект и его чинить здесь.
|
||||
|
||||
**(7) НЕ ДЕЛАЙ:** не трогай форму заказа (главы/знаки/деньги) — она ратифицирована `D39.196` и идёт
|
||||
СВОИМ паком после движкового гейта; не двигай форму манифеста; не правь канон своей рукой; не гаси
|
||||
общий Postgres на стенде (запрет и довод — в твоём же `UP.sh`).
|
||||
|
||||
## 5. Мандат самопроверки ИСПОЛНЕНИЕМ
|
||||
|
||||
Батарея зоны при всех условиях хоста + **живая проба каждой построенной поверхности**. **Субагенты
|
||||
Батарея зоны при всех условиях хоста + **живая проба каждой построенной поверхности, с командой и её
|
||||
выводом В ОТЧЁТЕ**. Названо поимённо, чтобы букву не удовлетворяло «дёрнул и посмотрел»:
|
||||
· бэкап — восстановление из копии, и книга с балансом предъявлены на восстановленном;
|
||||
· рантбук — исполнен ДОСЛОВНО на чистой машине или в контейнере, прогон стартовал;
|
||||
· дверь — вход в ПРОД-конфигурации (не `dev-login`) и один защищённый запрос под этим входом;
|
||||
· имя книги — EPUB, скачанный через дверь, с новым `dc:title` внутри. **Субагенты
|
||||
разрешены явно**, модель называй именем. ⚠ **Правка документации — изменение с побочными эффектами и
|
||||
требует ревью исполнением ровно как код**: норма куплена твоим же замером — восемь агентов по СВОЕЙ
|
||||
работе нашли больше, чем одиннадцать по чужой, и «якоря пере-нацелены» протухло от следующей же правки.
|
||||
⚠ **Утверждение о проверке живёт ровно до следующей правки** — гоняй линтер ЦИКЛОМ до чистоты, а не
|
||||
одним проходом.
|
||||
|
||||
## 5-бис. ЧТО В ПАК НЕ ВОШЛО — подписано пропуском
|
||||
|
||||
⚠ Канон велит подписывать пропуск пропуском, а не умалчивать. Того же класса «можно ли пускать
|
||||
человека», но НЕ здесь:
|
||||
· **строка 271** (правки банка едут в system-промпт дословно) — ЗОНА ДВИЖКА, идёт райдером в
|
||||
параллельном движковом паке. ⚠ **Пока она открыта, обещание «внешнего пользователя можно пускать»
|
||||
неполно** — знай это, когда будешь писать итог.
|
||||
· **строка 198** (апгрейд движка стирает замечания читателя) и **строка 254** (пустой файл → интейк
|
||||
уничтожает загрузку) — та же природа, отложены сознательно: обе требуют согласования с движком.
|
||||
· **`PD-424`** (живой прогон с намертво заблокированной расплатой невидим — деньги висят) и **`PD-438`**
|
||||
(владение потоком не переживает свип) — открытые major твоей зоны. Не утверждаю, что они не первые;
|
||||
утверждаю, что пропуск сознателен, и если ты считаешь иначе — скажи пингом ДО работы.
|
||||
|
||||
## 6. Предметные оси ревью
|
||||
|
||||
Восстановление из бэкапа (исполнением, не чтением) · рантбук на чистой машине · путь входа в
|
||||
прод-конфигурации · побочные эффекты доковых правок.
|
||||
|
||||
## 6-бис. ОБЯЗАТЕЛЬНОЕ ДЛЯ КОДОВОГО ПРОМТА — пять строк канона
|
||||
|
||||
Этот пак пишет код (бэкап, монтирование ручки, вход), значит они действуют.
|
||||
· **Перед отчётом сверь КАЖДЫЙ клейм с результатом инструмента ЭТОЙ сессии** — не с памятью и не с
|
||||
тем, что было верно вчера. ⚠ У тебя есть свежий замер, зачем это: твои же восемь агентов по СВОЕЙ
|
||||
работе нашли больше, чем одиннадцать по чужой.
|
||||
· **Последний абзац отчёта — план или обещание? Сделай это СЕЙЧАС.**
|
||||
· **Править или удалять тест/гейт ради зелени — НЕДОПУСТИМО.** Несогласие — пинг. ⚠ Запрет про МОТИВ
|
||||
(`D39.183`): правка, вызванная ЗАКАЗАННОЙ этим промтом сменой поведения, — обслуживание, и она
|
||||
ОБЪЯВЛЯЕТСЯ в отчёте.
|
||||
· **Дифф `^func Test` — ИСПОЛНЕНИЕМ, не по памяти:** приложи вывод.
|
||||
· **Интервальная самоверификация субагентом** против ЯВНЫХ критериев. ⚠ И твоя же норма, купленная
|
||||
вчера: **утверждение о проверке живёт ровно до следующей правки** — линтер и гейты гонять ЦИКЛОМ до
|
||||
чистоты, а не одним проходом.
|
||||
|
||||
## 7. Записка-план ДО работы
|
||||
|
||||
Комплектность против заказа таблицей: пункт → носитель → проба, которой предъявишь.
|
||||
|
|
|
|||
|
|
@ -74,8 +74,11 @@
|
|||
|
||||
## ⚠ ОТКРЫТАЯ РАЗВИЛКА 04.09: КНИГУ НЕЛЬЗЯ ДОЧИТАТЬ — разбор трёх независимых чтений, решение за владельцем
|
||||
|
||||
> **Статус: НЕ РАТИФИЦИРОВАНО.** Это разбор, а не контракт: ниже нет ни одного решения, только сходящаяся
|
||||
> фактура и названная развилка. Носитель дефекта — `PD-440`/`PD-441` в регистре платформы. Собрано по
|
||||
> **⚠ СТАТУС ИЗМЕНИЛСЯ 05.09: ФОРМА ЗАКАЗА РАТИФИЦИРОВАНА — `D39.196`.** Решение владельца: баланс аккаунта — ДЕНЬГАМИ и виден;
|
||||
> ползунок потолка — деньгами; рядом ответ «хватает на полную книгу или нет»; второй ползунок объёмом — ГЛАВЫ когда книга
|
||||
> распозналась, ЗНАКИ когда нет (о нераспознавании говорим ЯВНО); старт = холд с баланса; отдельная кнопка «книга целиком».
|
||||
> Тем же решением ОТОЗВАН запрет «денежных полей в UI нет вовсе». Строки исполнения — 276–283.
|
||||
> **Ниже — РАЗБОР, из которого решение выросло.** Он не контракт: при конфликте с `D39.196` побеждает нота. Носитель дефекта — `PD-440`/`PD-441` в регистре платформы. Собрано по
|
||||
> прямому указанию владельца «посоветуйся с зонами и со старшей моделью»: читали независимо зона движка,
|
||||
> зона платформы и внешний рецензент другой модели; расхождения между ними названы, а не сглажены.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue