From 89ee7a3429422c9826cedbcee32d3c42da5d5e61 Mon Sep 17 00:00:00 2001 From: heaven Date: Sun, 23 Aug 2026 05:05:28 +0300 Subject: [PATCH] Read the three central docs end to end and repair what the sweep broke: a homeless vendor fact, two dangling pointers, a false self-description, a contradiction between two artifact rules, and my own line wrapping --- docs/ORCHESTRATOR_SESSION_PROMPT.md | 36 +++++++++++++++++++++-------- docs/PROGRESS.md | 2 +- docs/README.md | 10 ++++---- docs/glossary.md | 2 +- 4 files changed, 33 insertions(+), 17 deletions(-) diff --git a/docs/ORCHESTRATOR_SESSION_PROMPT.md b/docs/ORCHESTRATOR_SESSION_PROMPT.md index 43f48acd..7349b8d2 100644 --- a/docs/ORCHESTRATOR_SESSION_PROMPT.md +++ b/docs/ORCHESTRATOR_SESSION_PROMPT.md @@ -67,7 +67,8 @@ D-нотами → синхронизация доков → ответы вла Плюс к любому промту: построчная сверка инструкций с путями/каналами ВНЕ зоны сессии против зонной таблицы CLAUDE.md (D39.99 п.4) · состав против ВСЕХ листов владельца (реестр требований · зонные журналы · его явные просьбы; пропуск подписывается пропуском) · фантом-гард: каждая цитируемая -D-ссылка грепается по D-логу · mid-flight аддендумы доезжают ТОЛЬКО релеем — владелец пере-передаёт правку сессии отдельным сообщением, сессия эхо-подтверждает — и +D-ссылка грепается по D-логу · mid-flight аддендумы доезжают ТОЛЬКО релеем — владелец пере-передаёт +правку сессии отдельным сообщением, сессия эхо-подтверждает — и отдельным пунктом отчёта · артефакты сессий: **что должно пережить рестарт и жить дальше — в РЕПОЗИТОРИЙ** (доказательная база пака — `archive/reports/` при приёмке); вне репозитория — только рабочее временное, о котором другим знать не нужно · дисциплина ответа в каждый промт: эрудиция ≠ @@ -82,11 +83,16 @@ D-ссылка грепается по D-логу · mid-flight аддендум В ПОЛИГОН-промт дополнительно: нормы замеров D39.46/47, каждая исполнима без открытия ноты: **арм БЕЗ фактора** — у каждого измеряемого фактора обязан быть арм без него, иначе фактор не измеряется ни одним · **дедуп + декой** — дедуп кандидатов, отбор только расходящихся позиций и контрольный декой, без которого «отличает ли -оценщик годное» неизмеримо · **критик полноты на КАЖДУЮ фазу**, не на пакет · пре-рег дисциплина: фриз-коммиты ДО платных вызовов — единственные коммиты -сессии, объявляются владельцу вслух ДО коммита; девиации — НОВЫМ коммитом и явно в отчёте; ⚠ фриз-гейт смотрит на ПОКУПАЮЩИЙ файл, не на кассу и не на всю зону: правка кода после фриза отказывает покупку ⇒ фризить ПЕРЕД покупкой, а потолки правятся БЕЗ пере-фриза; «не +оценщик годное» неизмеримо · **критик полноты на КАЖДУЮ фазу**, не на пакет · пре-рег дисциплина: +фриз-коммиты ДО платных вызовов — единственные коммиты +сессии, объявляются владельцу вслух ДО коммита; девиации — НОВЫМ коммитом и явно в отчёте; ⚠ +фриз-гейт смотрит на ПОКУПАЮЩИЙ файл, не на кассу и не на всю зону: правка кода после фриза +отказывает покупку ⇒ фризить ПЕРЕД покупкой, а потолки правятся БЕЗ пере-фриза; «не влезает в бюджет — стоп и пинг, не резать молча» (D39.108 п.1) · подъём потолков просить при СРАБАТЫВАНИИ стопа, не по проекции — прогнозный запрос оставляет ложный след «владелец согласился -на пере-оплату», которой не было · **живость длинного платного прогона проверяется АКТИВНО:** не ждать финального уведомления — раз в пару часов сверять рост числа вызовов/трат по леджеру двумя чтениями и докладывать «жив»; зависшая задача от идущей по сигналу завершения неотличима. +на пере-оплату», которой не было · **живость длинного платного прогона проверяется АКТИВНО:** не +ждать финального уведомления — раз в пару часов сверять рост числа вызовов/трат по леджеру двумя +чтениями и докладывать «жив»; зависшая задача от идущей по сигналу завершения неотличима. **Пропорциональность (веса решаешь ты):** тяжёлый пак (дизайн · wire-двигающий · новый механизм · швы) → полный аппарат; лёгкий (механические хвосты, док-правки) → короткий пошаговый промт, приёмка @@ -135,9 +141,13 @@ D-ссылка грепается по D-логу · mid-flight аддендум от смены модели не выигрывают. Тяжёлые ратификации (новый механизм/шов/контракт) и периодический аудит СВОИХ записей — параллельная сессия-ревьюер другой моделью, мнение владельцу ДО ратификации. -**После приёмки:** обязательство с адресатом ВНЕ зоны сессии закрыто, только когда изменился файл ВНЕ её зоны (ответ владельца · строка журнала · коммит); маркеры «выпущено/ждёт владельца/объявлено в отчёте» = дефект, гейты зоны его не видят по построению · триаж находок — МАШИННАЯ сверка «каждая рекомендация → живой носитель», не +**После приёмки:** обязательство с адресатом ВНЕ зоны сессии закрыто, только когда изменился файл +ВНЕ её зоны (ответ владельца · строка журнала · коммит); маркеры «выпущено/ждёт владельца/объявлено +в отчёте» = дефект, гейты зоны его не видят по построению · триаж находок — МАШИННАЯ сверка «каждая +рекомендация → живой носитель», не глазами · отчёт с пошаговым планом сверяется ПО ПУНКТАМ плана · каждое «отложено/вернуться» получает -строку бэклога или жильца реестра выселенных тел (`architecture/13-tech-debt-anchors.md` §Б) ТЕМ ЖЕ лендингом · при закрытии строки её тело грепается на +строку бэклога или жильца реестра выселенных тел (`architecture/13-tech-debt-anchors.md` §Б) ТЕМ ЖЕ +лендингом · при закрытии строки её тело грепается на «остаток/реопен/гейт», гейты в ДРУГИХ строках пере-диспозиционируются · глаз владельца — рабочий рубеж: прайми его артефактами, не пересказом. @@ -178,7 +188,9 @@ D23.3). Владельцу на решение: деньги сверх мело = Инвентарь ВСЕХ живых доков против текущего состояния, не только тронутых сессией. -⚠ Сюда же — **новая V-секция в живом брифе владельца разбирается в реестр требований при первом касании**. Пропустишь — его идея останется невидимой для всех сессий, а он узнает об этом сам и позже. +⚠ Сюда же — **новая V-секция в живом брифе владельца разбирается в реестр требований при первом +касании**. Пропустишь — его идея останется невидимой для всех сессий, а он узнает об этом сам и +позже. ### Запускаешь панель/субагентов? @@ -189,8 +201,10 @@ D23.3). Владельцу на решение: деньги сверх мело ## Оплаченные факты — держать в промтах и приёмках (справочник) -- Провайдерские факты — цены, окна дешевизны, мины слагов и thinking — живут в `00-provider-quirks.md`; - копий здесь НЕТ, иначе третий носитель разойдётся с первыми двумя. +- Провайдерские факты — цены, мины слагов и thinking — живут в `00-provider-quirks.md`; копий здесь НЕТ. + ⚠ ИСКЛЮЧЕНИЕ, пока не перенесено: **у DeepSeek цена ходит окнами — пики UTC 01–04 и 06–10 вдвое дороже + долин, платное планировать в долины.** Факт куплен замером, а в квирках его НЕТ (проверено грепом); + держим здесь до переноса — пинг зоне полигона выписан в `PROGRESS.md`, секция «Полигон». - Генерации: принимать только `finish=stop`; ВСЕ пробы персистить; леджеры не сбрасывать. - Судейские риги: per-vote персист · полно-evidence окна (окна с усечённой уликой запрещены) · оба порядка · шум-полы измерены (числа — в отчётах полигона) — маргинальное не интерпретировать без floor-гейта · @@ -199,7 +213,9 @@ D23.3). Владельцу на решение: деньги сверх мело дифф, если менялись только версии/хеши. - Прод-инъекцию воспроизводить `tmctl translate` + `LOG_LLM_BODIES` байт-диффом (не по `injected_ids`); порт-зеркала — «при расхождении верить Go». -- `/tmp` волатилен; артефакты — на диск стенда. ⚠ Прочие гардрейлы этого класса (`.env`, PUML, +- `/tmp` волатилен — рабочее временное клади туда, где оно переживёт перезапуск; куда идёт всё +остальное, сказано правилом артефактов выше, здесь не дублируется. ⚠ Прочие гардрейлы этого класса +(`.env`, PUML, `settings.local.json`, книга вне git) живут в `CLAUDE.md` и читаются при онбординге — здесь НЕ дублируются: третий носитель факта расходится с первыми двумя. - Промт-архивация: только отработанные, с баннером-исходом; residual-трекеры держать активными. diff --git a/docs/PROGRESS.md b/docs/PROGRESS.md index ef6cdddb..fcb2b264 100644 --- a/docs/PROGRESS.md +++ b/docs/PROGRESS.md @@ -321,7 +321,7 @@ Gemini — НОРМА слоя, а не измерение: вывод «размышление выключено» из этого поля недействителен, считать надо `total − prompt − completion`. У серии Gemini 3 размышление вообще невыключаемо (вендор, 17.08.2026). -**⚠ Пинг оркестратора №18 — 20.08 (протухшие цены в квирках, чинить вашей рукой).** `docs/experiments/00-provider-quirks.md` до сих пор утверждает, что цены после катовера НЕ изменились («flash $0.14/$0.28»). Это опровергнуто пере-пином 13–15.08 (D39.137): таблица запинена ПИКОМ — flash 0.44/1.32 при кэш-хите **0.014**, pro 1.32/3.96 при кэш-хите **0.044** за 1M (⚠ испр. 20.08: первая редакция пинга приписала flash кэш-хит pro — ошибка ×3.1 ровно в той клетке, ради которой пинг и писался; сверено с `backend/configs/models.yaml:167,183` и телом D39.137 §2а), и счёт шиппинга = 100% DeepSeek ⇒ ×4.2–4.4 в пике. Квирки — ваша зона, рукой не трогаю; поправьте при ближайшем касании, потому что по ним считают деньги проб. ⚠ **Третья, и она самая дорогая по цене ошибки: `eval/README.md` первой врезкой держит СТОП на платные прогоны** — «Платные прогоны/докупки СТОП до ре-пробы (бэклог-строка 74)». Строка 74 закрыта (D39.95), ограничение пало лендингом 112 (D39.97), `pipeline-c1.yaml` несёт `reasoning: "low"` с объяснением, а зона всё это время платно гоняет фазу Д. Врезка объявляет запрещённым то, что зона делает ежедневно, — и этим обесценивает все прочие ⚠ в файле. Живым из неё остаётся только ⚠0731 (смена весов под слагом) и стохастичность эха. +**⚠ Пинг оркестратора №18 — 20.08 (протухшие цены в квирках, чинить вашей рукой).** `docs/experiments/00-provider-quirks.md` до сих пор утверждает, что цены после катовера НЕ изменились («flash $0.14/$0.28»). Это опровергнуто пере-пином 13–15.08 (D39.137): таблица запинена ПИКОМ — flash 0.44/1.32 при кэш-хите **0.014**, pro 1.32/3.96 при кэш-хите **0.044** за 1M (⚠ испр. 20.08: первая редакция пинга приписала flash кэш-хит pro — ошибка ×3.1 ровно в той клетке, ради которой пинг и писался; сверено с `backend/configs/models.yaml:167,183`=`cached_per_m` и телом D39.137 §2а), и счёт шиппинга = 100% DeepSeek ⇒ ×4.2–4.4 в пике. Квирки — ваша зона, рукой не трогаю; поправьте при ближайшем касании, потому что по ним считают деньги проб. ⚠ **И ВТОРОЙ факт тем же касанием, он сейчас БЕЗДОМНЫЙ:** у DeepSeek цена ходит окнами — пики UTC 01–04 и 06–10 вдвое дороже долин, платное планировать в долины. Факт куплен замером и жил в справочнике ролевого промта; я оттуда его убирал как вендор-специфику, а в квирках его НЕТ (греп по `peak|долин|пики UTC` = 0), то есть указатель вёл в дом, который факта не несёт. До вашего переноса держу копию в ролевом промте с явной пометкой. ⚠ **Третья, и она самая дорогая по цене ошибки: `eval/README.md` первой врезкой держит СТОП на платные прогоны** — «Платные прогоны/докупки СТОП до ре-пробы (бэклог-строка 74)». Строка 74 закрыта (D39.95), ограничение пало лендингом 112 (D39.97), `pipeline-c1.yaml` несёт `reasoning: "low"` с объяснением, а зона всё это время платно гоняет фазу Д. Врезка объявляет запрещённым то, что зона делает ежедневно, — и этим обесценивает все прочие ⚠ в файле. Живым из неё остаётся только ⚠0731 (смена весов под слагом) и стохастичность эха. ⚠ **Тем же касанием — вторая протухшая клетка справочника, найденная аудитом доков 22.08:** квирки утверждают, что веса `deepseek-v4-pro` вендором не тронуты. Это боевой РЕДАКТОР и апекс эскалации, и по нему у нас прямое расхождение двух носителей, которое до сих пор не снято: `docs/STACK.md` говорит «ручки эффорта у pro НЕТ (`low`→`high`), так говорит квирк-канон», а CURRENT-STATE — «у pro эффорт стал настраиваемым low/high/max, квирк 3а устарел». Из репозитория правая сторона НЕ выводится: замера поведением после 13.08 нет ни у одной стороны. **Закрывается вендор-сверкой, а не выбором стороны** — и вы это только что делали по Gemini, то есть заход дешёвый. diff --git a/docs/README.md b/docs/README.md index 4f338be2..7b1fef1c 100644 --- a/docs/README.md +++ b/docs/README.md @@ -2,7 +2,7 @@ Проект: издательский художественный перевод крупных текстов (книги, ранобэ, вебновеллы) мультиагентным пайплайном поверх LLM API; **пара языков — данные, не код**, сегодня боевая zh→ru. Go-бэкенд + веб-фронт ридер-IDE (Ф3) + платформа (SaaS control plane, `platform/`, D39.81). Цели и мерило — канон в [../CLAUDE.md](../CLAUDE.md); онбординг сессий — там же. Стартовый бриф владельца: [../START_PROMT.MD](../START_PROMT.MD) — **живой документ**, его V-идеи разобраны в реестр требований (ниже). -**Состояние проекта НЕ здесь** — кроме одной строки ниже, и это осознанное исключение: строка «активные промты» отвечает на вопрос «какой файл мой», без которого холодная сессия выбирает роль сама (проверено слепым замером входа). Всё остальное состояние — Очередь, курс, бэклог — CURRENT-STATE в шапке [PROGRESS.md](PROGRESS.md); решения — [architecture/05-decisions-log.md](architecture/05-decisions-log.md) (при конфликте с любым доком побеждает он). Эта страница — только карта «что где лежит». +**Состояние проекта НЕ здесь** — кроме таблицы активных промтов ниже, и это осознанное исключение: она отвечает на вопрос «какой файл мой», без которого холодная сессия выбирает роль сама (проверено слепым замером входа). Всё остальное состояние — Очередь, курс, бэклог — CURRENT-STATE в шапке [PROGRESS.md](PROGRESS.md); решения — [architecture/05-decisions-log.md](architecture/05-decisions-log.md) (при конфликте с любым доком побеждает он). Эта страница — только карта «что где лежит». ## Карта @@ -14,21 +14,21 @@ - Топикальные входы (D39.126; НЕ источники истины, при конфликте побеждает D-лог): [15-money-path.md](architecture/15-money-path.md) — деньги от гранта до settle одним маршрутом · [16-events-emitter.md](architecture/16-events-emitter.md) — сборка-норматив эмиттера шва — обязательное пре-чтение перед кодом эмиттера · **[17-seam-inbound-law.md](architecture/17-seam-inbound-law.md) — закон ВХОДНОЙ двери шва движок↔платформа — РАТИФИЦИРОВАН D39.156: семь пунктов дисциплины, двери встают паками без нового решения владельца** · [STACK.md](STACK.md) — карта «роль → модель → конфиг → квирки». - Исторические, читать через ⚠-баннеры: [01-decisions.md](architecture/01-decisions.md) (Р1–Р10) · [02-mvp-plan.md](architecture/02-mvp-plan.md) · [03-implementation-notes.md](architecture/03-implementation-notes.md) · [04-unhappy-paths.md](architecture/04-unhappy-paths.md) · [06-memory-risk-registry.md](architecture/06-memory-risk-registry.md). - `experiments/` — эмпирика полигона: [00-provider-quirks.md](experiments/00-provider-quirks.md) — **читать перед любым вызовом провайдера**; [08-cost-model-v2.md](experiments/08-cost-model-v2.md) — денежная модель; [09-pilot-protocol.md](experiments/09-pilot-protocol.md) — пилот Ф2.5; остальные — отчёты экспериментов. ⚠ **У каждого отчёта статус в его ревью-шапке: читай шапку прежде тела** — она первична и говорит, ратифицированы выводы или заморожены. -- `research/` — фактура ресёрчей 01–28; у принятых — ревью-шапки, часть тел под ⚠ superseded: **читай баннер прежде содержимого**. Ключевые для навигации: 15 голос · 16 ридер-IDE · 17 внешняя критика · 18 рычаги качества · 19 нарезка · 20 банк-майнинг · 21 обзор транспорта · 22 доменные харнессы · 23 шов движок↔платформа · 25 холодное ревью шва — **читать перед любым кодом стыка** · 24 арбитраж банка · 26 официальные практики Anthropic · 28 контракт-ревью API v0 — **носитель для исполняющих сессий, читать оригинал, не пересказ**. +- `research/` — фактура ресёрчей; у принятых — ревью-шапки, часть тел под ⚠ superseded: **читай баннер прежде содержимого**. Ключевые для навигации: 15 голос · 16 ридер-IDE · 17 внешняя критика · 18 рычаги качества · 19 нарезка · 20 банк-майнинг · 21 обзор транспорта · 22 доменные харнессы · 23 шов движок↔платформа · 25 холодное ревью шва — **читать перед любым кодом стыка** · 24 арбитраж банка · 26 официальные практики Anthropic · 28 контракт-ревью API v0 — **носитель для исполняющих сессий, читать оригинал, не пересказ**. - [PROGRESS.md](PROGRESS.md) — журнал: CURRENT-STATE + **ЕДИНЫЙ БЭКЛОГ** (единственный трекер) + живой хвост хроники. НЕ источник решений. - `scripts/counts.py` — **производные числа доков считаются им, а не руками** (голова по трём носителям · счёт очереди и зон · вес открытых строк регистра платформы · полнота реестра нот); `--check` даёт ненулевой код на расхождении; `--lint` — линтер file:line-якорей живых доков (D39.126). Его же зовёт зонный хук `scripts/githooks/pre-commit`: **`--lint` якорей — при коммите, задевающем ЛЮБОЙ док или `CLAUDE.md`; `--check` чисел и головы — при коммите с D-логом или PROGRESS** (оба `--from-index`, предупреждает, не блокирует). ⚠ Шапка систематически отстаёт от хвоста у ЛЮБОГО автора — потому проверка механическая, а не «посмотрю внимательно». - **Активные хендофф-промты — какой файл ТВОЙ** (состав обновляется при каждом лендинге, D39.80; статусы паков, хроника и причины — CURRENT-STATE и D-лог, здесь НЕ дублируются): | Роль | Активный промт | Статус | |---|---|---| - | Оркестратор | [ORCHESTRATOR_SESSION_PROMPT.md](ORCHESTRATOR_SESSION_PROMPT.md) | роль и нормы; счётчик — в шапке файла | + | Оркестратор | [ORCHESTRATOR_SESSION_PROMPT.md](ORCHESTRATOR_SESSION_PROMPT.md) | роль и нормы; счётчик роли — CURRENT-STATE | | Бэкенд | [BACKEND_SEAM_PACK_SESSION_PROMPT.md](BACKEND_SEAM_PACK_SESSION_PROMPT.md) | движковая половина закона входной двери шва (D39.156); запуск по слову владельца | | Платформа | [PLATFORM_P8_REVIEW_SESSION_PROMPT.md](../platform/docs/PLATFORM_P8_REVIEW_SESSION_PROMPT.md) | read-only ревью четырёх осей; запуск по слову владельца | - | Полигон | [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) — снимок 15.08, перекрыт) | + | Полигон | [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); перечень первого касания — в зонном журнале | | Контракт | активного НЕТ | канон ратифицирован (версия — в самом `openapi.yaml`); следующий минор — ПОСЛЕ движкового пака и одним куском (D39.156) | Отработанные промты — `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) — ратифицированное направление зоны: аутентификация, деньги, стандарты, скорость** · архив промтов). +- Чужие зоны — фронт и платформа (читать при касании стыка; каждая ведёт СВОЙ зонный бэклог — единый бэклог их строк не принимает, 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) — ратифицированное направление зоны: аутентификация, деньги, стандарты, скорость** · архив промтов). - `archive/` — история ([правила архива](archive/README.md)): закрытые промты (`prompts/`) · отчёты с ревью-шапками (`reports/` — на них ссылаются приёмки) · исполненные арх-доки (`architecture/`) · слайсы хроники `PROGRESS-*.md`. Инструкции оттуда не исполнять. - Диаграммы: [../backend/docs/components.puml](../backend/docs/components.puml) · [../backend/docs/pipeline.puml](../backend/docs/pipeline.puml) — дом рядом с кодом (D39.80), правятся бэкендом одним коммитом с кодом; вручную НЕ рендерить — их смотрят нативно, рендер не нужен. diff --git a/docs/glossary.md b/docs/glossary.md index 12b20c0b..1d651845 100644 --- a/docs/glossary.md +++ b/docs/glossary.md @@ -28,7 +28,7 @@ - **Строка N** — стабильный ID строки единого бэклога (PROGRESS §Бэклог; не перенумеровывается); **вес** — блокер-очереди / скоро / когда-нибудь; **носитель** — артефакт, в котором обязательство живёт; **хвост** — незакрытый остаток; **петля** — вопрос, обязанный получить диспозицию; **слот** — зарезервированное место в будущем пакете/замере. - **Гвоздь** — регрессионный тест, прибивающий контракт (негативный гвоздь — тест на ОТСУТСТВИЕ поведения). - **Реестр 108 / «жилец реестра»** — строка 108 единого бэклога: реестр ЗАГЕЙЧЕННЫХ ТРИГГЕРОВ (отложенных реопенов с условием «когда вернуться»); «жилец» = такой реопен. «Каждое отложено получает строку бэклога или жильца реестра 108» — норма D39.66/D39.90. -- **Контракт 14 (API v0)** — ратифицированный контракт фронт↔платформа: `architecture/14-api-contract/` — нормативная спека OpenAPI 3.1 + компаньон-README; зонная копия `frontend/docs/api-contract/` — байт-зеркало (D39.99; ⚠ временно ОТСТАЁТ на 0.2.3 при каноне **0.4.0** (ратифицирован D39.152, 20.08) — ратифицировано D39.142 п.5 на фриз фронта, синк при разморозке). **Провенанс ✓/◆/○** — классы утверждений компаньона: выведено из кода/ратификации · предложено (подтверждает названная зона) · открыто (К-вопросы). **spectral / openapi-typescript** — линт спеки и генерация типов фронта с дрифт-тестом (⚠ 3.1-условия генератор игнорирует — К-11). +- **Контракт 14 (API v0)** — ратифицированный контракт фронт↔платформа: `architecture/14-api-contract/` — нормативная спека OpenAPI 3.1 + компаньон-README; зонная копия `frontend/docs/api-contract/` — байт-зеркало (D39.99; ⚠ временно ОТСТАЁТ — ратифицировано D39.142 п.5 на фриз фронта, синк при разморозке; версии — в самих спеках, здесь не пинятся). **Провенанс ✓/◆/○** — классы утверждений компаньона: выведено из кода/ратификации · предложено (подтверждает названная зона) · открыто (К-вопросы). **spectral / openapi-typescript** — линт спеки и генерация типов фронта с дрифт-тестом (⚠ 3.1-условия генератор игнорирует — К-11). - **ПТ-N** — стабильный ID требования в `product-requirements.md`; не путать со строками единого бэклога. **paused / лимиты «как Claude Code»** — статус книги при стопе по потолку + страница статуса использования в настройках, сумм на экране нет (ПТ-35, D39.100). ## Пайплайн и код