Delete the row about disagreeing counters and record why it never existed: two measures printed side by side, read as one
This commit is contained in:
parent
0793fbf895
commit
a2eb4c6807
2 changed files with 2 additions and 2 deletions
|
|
@ -3,7 +3,7 @@
|
|||
> **Единственный трекер проекта.** Здесь живут строки, на которые доки, промты и D-ноты ссылаются словами «строка N» / «строка бэклога N»: **ID строки стабилен навсегда**, не перенумеровывается и не переиспользуется (D39.80). Правки — только через оркестратора; каждая петля обязана иметь диспозицию: решено / отложено-с-записью / отклонено.
|
||||
> ⚠ **Это НЕ бэклог зоны `docs/`, а бэклог ПРОЕКТА.** У зон свои, с другими неймспейсами ID, и единый их строк не принимает (D39.84): платформа — [../platform/BACKLOG.md](../platform/BACKLOG.md) (`П-N`) и её регистр дефектов `platform/docs/DEFECT_REGISTER.md` (`PD-N`); фронт — [../frontend/docs/BACKLOG.md](../frontend/docs/BACKLOG.md) (`Ф-N`).
|
||||
> ⚠ **Состояние проекта — не здесь.** Очередь, курс, CURRENT-STATE, состояние паков и живая хроника — шапка [PROGRESS.md](PROGRESS.md). Здесь только долг и его диспозиции.
|
||||
> - **СЧЁТ ОЧЕРЕДИ на 11.09 (скриптом по таблице — `python3 docs/scripts/counts.py`; обновлять при каждом лендинге):** всего **304** строк · зона бэкенд **145** строго / **197** широко (⚠ колонки счётчик читает С КОНЦА — испр. D39.116) · **блокеров очереди 0** (236 закрыта D39.175; **371** — актом D39.233, **360** — актом D39.232, обе 10.09), платные прогоны разблокированы · «скоро» **149** (перечень — грепом по таблице, рукописный список снят D39.126) · гейт-строка эксп-22: 153 (плюс 150 — руки владельца; ⚠ 55 из гейтов СНЯТА — D39.198 п.5); строка 5 — остаток гейчен ре-пробой 74, носитель события теперь строка 188 (аудит D39.140); остальное «когда-нибудь». ⚠ Счёт — НИЖНЯЯ граница долга, не потолок (разбор — легенда таблицы ниже).
|
||||
> - **СЧЁТ ОЧЕРЕДИ на 11.09 (скриптом по таблице — `python3 docs/scripts/counts.py`; обновлять при каждом лендинге):** всего **303** строк · зона бэкенд **145** строго / **197** широко (⚠ колонки счётчик читает С КОНЦА — испр. D39.116) · **блокеров очереди 0** (236 закрыта D39.175; **371** — актом D39.233, **360** — актом D39.232, обе 10.09), платные прогоны разблокированы · «скоро» **149** (перечень — грепом по таблице, рукописный список снят D39.126) · гейт-строка эксп-22: 153 (плюс 150 — руки владельца; ⚠ 55 из гейтов СНЯТА — D39.198 п.5); строка 5 — остаток гейчен ре-пробой 74, носитель события теперь строка 188 (аудит D39.140); остальное «когда-нибудь». ⚠ Счёт — НИЖНЯЯ граница долга, не потолок (разбор — легенда таблицы ниже).
|
||||
> - ⚠ **Переезд 06.09 (D39.218):** таблица вынесена из `PROGRESS.md` ДОСЛОВНО и ни один ID не сдвинут — **с единственным исключением: две ячейки (строки 220 и 306) тронуты РОВНО в номере якоря `docs/scripts/counts.py:566`→`:569` и `:592`→`:595`**, потому что цель сдвинул этот же коммит; текст ячеек не менялся, длины равны. В `PROGRESS.md` на прежнем месте оставлен заголовок-указатель, поэтому ссылки «секция „Бэклог“» доезжают в один хоп.
|
||||
|
||||
## Бэклог (ЕДИНЫЙ, собран 26.07, актуализация 04.08 D39.99/D39.101; правки — только через оркестратора)
|
||||
|
|
@ -339,4 +339,3 @@
|
|||
| 415 | ⛔ **ЧЕТВЕРТЬ ДЕНЕГ КНИГИ КУПИЛА ПУСТОТУ, И ПОДНЯТЫЙ ФЛОР ЭТОГО НЕ СНЯЛ — доля БОЛЬШЕ, чем у инцидента, ради которого флор поднимали.** Замер 11.09: 4 вызова из 27 вернулись без пригодного текста и стоили **$0.106472 = 25.4 %** книги; три из них вернули РОВНО 0 знаков ($0.094835 = 22.6 %), четвёртый — выброшенный обрезок. Самый дорогой одиночный вызов прогона ($0.071009, `edit`/`deepseek-v4-pro`) не дал НИЧЕГО. ⚠ Мина задокументирована (размышление съедает `max_tokens`), боевой `pipeline-c1.yaml` ставит на draft `reasoning: "low"` именно против неё — **сработала всё равно: трижды на draft и один раз на edit, где ручка не выставлена вовсе**; а `min_max_tokens: 16000` у `pro` поднят с 8000 ПОСЛЕ прошлого такого инцидента, чья цена записана рядом в комментарии как 15.5 % счёта — здесь один вызов НА ПОДНЯТОМ флоре сжёг 16 000 токенов и вернул ноль, **16.9 % счёта**. ⭐ Лечение в движке ЕСТЬ и сработало 4 раза из 4 (перевыпуск с удвоенным потолком вернул текст) — путь не рвётся, он ДОРОЖАЕТ вдвое. Вторая точка того же явления: на прогоне 08.09 было 32 % | бэкенд | **скоро** | ручка против мины на ВСЕХ платных стадиях + решение, платит ли читатель за выброшенную попытку | критик чисел прогона A, 11.09 |
|
||||
| 416 | **СОГЛАСИЕ НА ПЕРЕ-ОПЛАТУ, ВЫСТАВЛЕННОЕ НА ВЕСЬ БЮДЖЕТ, ПРИ ФАКТИЧЕСКОЙ ПЕРЕ-ПОКУПКЕ В 78 РАЗ МЕНЬШЕ.** Замер 11.09: на резюме после банк-стопа `runs.accept_rebill_micro = 2 241 631` — то есть согласие пере-оплатить ВЕСЬ бюджет прогона, — тогда как фактически пере-куплено $0.028742. Разрыв **78×**; от пере-покупки спасли чекпойнты, а не потолок согласия. ⇒ промахнись хэши промптов (смена провода, `memory_version`, снапшота), и черновая волна была бы куплена заново — с уже стоящим согласием читателя. Родня `D39.196` п.2а (переплата читателя запрещена): здесь запрет не нарушен, но и не охраняем ничем, кроме везения | платформа+бэкенд | скоро | согласие соразмерное тому, что реально может быть пере-куплено | критик чисел прогона A, 11.09 |
|
||||
| 417 | ⛔ **ЗАКОН БАНКА НА ПРОВОДЕ НЕ ВИДЕН В ОТГРУЖЕННОМ ТЕКСТЕ, И СПРОСИТЬ БД «ДОЕХАЛ ЛИ ОН» НЕЧЕМ.** Замерено на живом платном прогоне 11.09 и открыто глазами по каждому попаданию: движок сам объявил на стопе майнинга **9 разошедшихся терминов из 69** (`bank-stop.txt`, распределение `spread`: 1→60 · 2→6 · 3→2 · 4→1). Из девяти **четыре отданы ОДНОЙ формой, и это форма терминолога** (`甲等资质` 6 вхождений при трёх конкурентах по 0 — черновик давал «дар цзя», «дарование первого ранга», «талант класса А»); **одна отдана ДВУМЯ** (`开窍大典` ×9 плюс развёрнутая ×1); ⛔ **и четыре отданы одной формой, которая НЕ БАНКОВСКАЯ**: `高脚吊楼` — банк несёт «дом на сваях», в файле **«свайный дом» ×4 и «дом на сваях» ×0**; `家老` — банк «старейшина рода», в файле «старейшины» ×13 без «рода»; `舅母` — банк «жена дяди по матери», в файле «тётя» ×16. ⇒ **`D39.104` (строка на проводе есть ЗАКОН для каждой роли) в этих юнитах не исполнен, и почему — не установлено:** доехал ли банк до промпта редактора, по БД ответить НЕЛЬЗЯ. ⛔ **ИСПР. 11.09 — формулировка уточнена ЗАМЕРОМ, прежняя была неверна: счётчики инъекции ЕСТЬ и они богатые** (`retrieval_state`: `n_exact_hits` · `n_sticky` · `n_ambiguous_flagged` · `n_spoiler_blocked` · `n_evicted` · `n_postcheck_miss` · `injected_ids` JSON, `backend/internal/store/migrate.go:239-255`, и код сам называет их «механизмом, превращающим тихую деградацию в громкую»). **Дефект в КЛЮЧЕ: `PRIMARY KEY (book_id, chapter, chunk_idx)` — строка ОДНА НА ЧАНК, а не на чанк×СТАДИЮ.** Черновая и редакторская волны инъектируются РАЗНЫМИ выборками (черновик — базовый банк без намайненного, редактор — обогащённый), и их следы складываются в одну строку ⇒ вопрос «что видел РЕДАКТОР» неразрешим по построению схемы, а не по отсутствию прибора. ⇒ первый шаг — не «завести счётчик», а **развести ключ по стадии**, и он же дешёвый: таблица пере-считывается детерминированно каждый прогон ($0, матчер бесплатный) и само-восстанавливается на резюме. Замерено РАСХОЖДЕНИЕ формы; место его возникновения — открытый вопрос, и первый шаг к нему $0: счётчик инъекций на редакторской стадии. ⚠ Не путать с рядом **407** (пост-проверка спрашивает присутствие вместо формы на месте): там прибор не видит дрейфа, здесь дрейф ВИДЕН и не объяснён | бэкенд | **скоро** | счётчик подтверждённых инъекций у редактора; затем объяснение четырёх случаев | критик полноты прогона A, 11.09 |
|
||||
| 418 | ⛔ **ЗАКРЫТ ОБЪЯСНЕНИЕМ 11.09 — РАСХОЖДЕНИЯ НЕТ, БЫЛА МОЯ ОШИБКА ЧТЕНИЯ.** Ряд утверждал, что «два числа движка об одном терме не сходятся»: `spread=4` при трёх формах в списке и `other proposals` = 2 против `drafts:` = 3. Пере-снято бэкенд-сессией и пере-проверено мной: **это ДВЕ РАЗНЫЕ ВЕЛИЧИНЫ, и движок печатает их В ОДНОЙ СТРОКЕ** — `spread=%d conventions=%d` (`backend/internal/pipeline/mining.go:542`), где `Spread()` считает Σ сырых форм, а `Conventions() = len(Variants)` — свёрнутые классы (`backend/internal/terminology/terminology.go`, греп `func (c Candidate) Spread`). Комментарий там же говорит это прямым текстом: «Conventions 1 is one canon written three ways — a normalization nit; Spread 3 with Conventions 3 is a real contest, and the two must not read the same at the stop». Распределение по всем 69 термам прогона: 60×(1,1) · 6×(2,2) · 2×(3,3) · 1×(4,3). Второй «экземпляр» тем же образом: `other proposals` печатает `props[1:]`, то есть ИСКЛЮЧАЕТ текущий `dst` (`backend/internal/miner/miner_emit.go`, греп `other proposals`) — 3−1=2 при трёх черновиках. ⚠ **Класс моей ошибки — тот самый, что смена записала нормой: я сравнил число с длиной списка, который меряет другую величину, и обе половины по отдельности были верны.** Работы ряд не несёт; пин равенства (`spread == Σ Forms`, `conventions == len(Variants)`) вешает пак консистентности, чтобы объяснение держалось не текстом | — | — | закрыт объяснением | бэкенд-сессия пака консистентности, 11.09 |
|
||||
|
|
|
|||
|
|
@ -87,6 +87,7 @@
|
|||
|
||||
> ⚠ **Эррата 04.09-а (D39.189 п.2б) — «обязательный `--ceiling-usd` на движковом вызове» верно для ПРЯМОГО прогона движка и НЕИСПОЛНИМО на пути через API платформы.** Там флаг никто не ставит руками: платформа выводит число сама — `bookCap = committed + increment` (`platform/internal/runs/spawn.go`, греп `func (m meter) bookCap`), ⚠ **ИСПР. 06.09: механизм СПИЛЕН** (`2812dd6`) — ставки за главу больше нет ни константой, ни ручкой, `increment` приходит из ПРОЕКЦИИ ДВИЖКА, а сама формула `bookCap` жива дословно. Прежняя редакция: где `increment` считается по ставке `DefaultPerChapter = 30_000` ($0.03, `platform/internal/pricing/pricing.go`), заниженной ×4.47 (D39.179 п.1). Сессия, исполняющая букву ноты, полезла бы крутить `TM_PLATFORM_USD_PER_CHAPTER` — хак под тест, запрещённый каноном. **Читать так:** потолок платного пака на API-пути задаётся ГРАНТОМ тест-аккаунту на объявленную сумму (`tmplatformctl grant --user <id> --usd <N>`) — холд делает перерасход невозможным по построению, — а путь до завершённой книги идёт цепочкой «покупка → пауза по потолку → пополнение → новый прогон», что и есть третий сценарий строки 216 и D39.176 п.3. Тело ноты не переписано (D23.3). Найдено контролёром при сверке плана, пере-проверено оркестратором по коду.
|
||||
|
||||
> ⚠ **Эррата 11.09-а (D39.247 п.4, ряд 418) — РАСХОЖДЕНИЯ ДВУХ ЧИСЕЛ ДВИЖКА НЕ СУЩЕСТВУЕТ, это была моя ошибка ЧТЕНИЯ.** Акт завёл ряд на «`spread=4` при трёх формах в списке» и «`other proposals` 2 против `drafts` 3». Пере-снято бэкенд-сессией и пере-проверено мной: движок печатает ДВЕ РАЗНЫЕ величины В ОДНОЙ СТРОКЕ — `spread=%d conventions=%d` (`backend/internal/pipeline/mining.go:542`), где `Spread()` = Σ сырых форм, `Conventions()` = len(свёрнутых классов); комментарий у определения говорит прямо: «Spread 3 with Conventions 3 is a real contest, and the two must not read the same at the stop». Распределение по 69 термам прогона: 60×(1,1) · 6×(2,2) · 2×(3,3) · 1×(4,3) — противоречий ноль. Второй «экземпляр» того же класса: `other proposals` печатает `props[1:]`, то есть ИСКЛЮЧАЕТ текущий `dst`, поэтому 3 черновика дают «other proposals: 2». **Ряд 418 удалён из таблицы; работы он не несёт.** ⚠ Класс ошибки — тот, что эта же смена записала нормой: сравнил число с длиной списка, меряющего ДРУГУЮ величину, и обе половины по отдельности были верны. Пин равенства вешает пак консистентности, чтобы объяснение держалось не текстом.
|
||||
> ⚠ **Эррата 03.09-а (D39.170) — формула «покупатель платит за N юнитов и получает ровно N» БОЛЬШЕ НЕ ВЕРНА.** Пак «число согласия на пути второй покупки» (лендинг 03.09) закрыл вторую половину строки 232: юнит, который прежний прогон НАЧАЛ и не отгрузил по оси `finalStageWave`, дописывается ВНЕ гранта. Отсюда грант `--max-units N` оплачивает ДО **2N** выходных юнитов — замерено приёмкой на живом раннере (грант 2 → `Paid()=4`, шесть вызовов провайдера), и тем же замером подтверждено, что в перенос попадает даже юнит, ФЛАГНУВШИЙСЯ без текста, то есть каждая следующая покупка платит за его пере-атаку заново. ⛔ **Семантика НЕ ратифицирована: слово владельца 03.09 — «подумаем на этот счёт», решение отложено.** До него `--max-units` держит не деньги, а слоты; деньги держит только `--ceiling-usd`. Тело D39.170 не переписано (D23.3); живой носитель формулировки — `15-money-path.md`, пункт про `--max-units`.
|
||||
|
||||
> ⚠ **Эррата 02.09-в — ЧТО РЕАЛЬНО СДЕЛАНО С ТЕЛАМИ 02.09, слово владельца.** Ревизия доков сняла из тел нот **девять** кусков (D39.124 · D39.128 · D39.153 · D39.155) — пересказы и дубли, не решения. Проверено перед решением: у КАЖДОЙ снятой строки отличительный токен живёт ещё в 4–61 файле дерева (`SweepSessions` — 6, `UnsettledRuns` — 15, `RepeatableRead` — 4), уникально не потеряно НИЧЕГО. **Владелец 02.09 велел не откатывать:** заказ был вырезать мусор, а откат вернул бы в журнал ровно то, что вырезали сознательно. ⇒ D23.3 действует по-прежнему для РЕШЕНИЙ и клеймов; сжатие пересказа внутри тела с сохранением решения — не нарушение, а разрешённый случай. Прежняя редакция этой эрраты утверждала, что тела не правились вовсе, и противоречила девяти правкам рядом — снято.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue