АДРЕСНЫЙ РЕЖИМ -ADDRESS:Шаг 2 - обновленные доки

This commit is contained in:
dctouch 2026-04-03 00:12:24 +03:00
parent 58b293a3e4
commit a5dee965c2
5 changed files with 95 additions and 10 deletions

View File

@ -1,12 +1,13 @@
# ADDRESS Query Docs
Дата: 2026-04-02
Дата: 2026-04-03
Статус синхронизации: актуализировано по текущему коду в `llm_normalizer/backend/src/services/*`.
## Актуальный статус (2026-04-02)
## Актуальный статус (2026-04-03)
- Этап стабилизации закрыт под `strict_policy=route`.
- Step-0 pre-prod rails закрыт (reference-domain + nightly automation).
- Этап 3 (универсализация value-вопросов общего домена) закрыт на уровне кода и targeted-тестов.
- Финальный stress-pack: `102/102`
`docs/ADDRESS/runs/2026-04-02_Address_Slang_Live_Stress_2026-04-02_12-57-27/run_summary.json`
- Финальный follow-up pack: `25/25`
@ -17,12 +18,18 @@
- Текущий production-контур: `question_mode=address_query`, live-first через MCP.
- Следующий этап: `Step-4` domain expansion по рельсовой модели Step-0.
## Что реально реализовано в коде (срез 2026-04-02)
## Что реально реализовано в коде (срез 2026-04-03)
Поддерживаемые intents в runtime:
- `period_coverage_profile` (Wave-1 B1, pre-gate)
- `document_type_and_account_section_profile` (Wave-1 B1, pre-gate)
- `counterparty_population_and_roles` (Wave-1 B1, pre-gate)
- `counterparty_activity_lifecycle` (Wave-1/B2, pre-gate)
- `contract_usage_overview` (Wave-1 B1, pre-gate)
- `customer_revenue_and_payments` (Wave-1 B3 value, pre-gate)
- `supplier_payouts_profile` (Wave-1 B3 value, pre-gate)
- `contract_usage_and_value` (Wave-1 B3 value, pre-gate)
- `list_open_contracts`
- `list_payables_counterparties`
- `list_receivables_counterparties`
@ -37,7 +44,8 @@
Ключевой scope-лимит:
- `COMPOUND_FACTUAL_QUERY` пока detection-only (без multi-intent execution).
- `period_coverage_profile` и `document_type_and_account_section_profile` реализованы в коде, но еще не закрыты через domain live-gate Batch-1.
- management/value intents реализованы в коде, но еще не закрыты через полный domain live-gate (Batch-1/Batch-3).
- для value-ranking ответов действует дефолт: `top-20` (если пользователь явно не запросил другой лимит).
- `account_turnover_snapshot` и `list_documents_by_type` не реализованы в runtime V1.
## Основные документы
@ -58,6 +66,7 @@
- `complex_questions_status_and_reuse_map_2026-04-02.md` - сверка кода/доков по "сложным вопросам": что реализовано, что detection-only, и как переиспользовать в продуктовом плане.
- `step4_wave1_batch1_master_checker_v1.md` - master checker первой волны Step-4 (`Q1..Q7 + Q28`) с go/no-go фазами.
- `wave1_batch1_readiness_report_2026-04-02.md` - авто-отчет готовности к старту Batch-1.
- `stage3_value_universalization_closeout_2026-04-03.md` - закрытие этапа 3 по value-вопросам общего домена (профит, тестовый gate, остаточные риски).
- `domain_general_batch1_foundation_card_v1.md` - domain card первой волны (Phase A).
- `step4_wave1_batch1_phaseA_backlog_v1.md` - рабочий backlog по подготовке кода и gate-этапам Batch-1.
- `domain_card_template_v1.md` - шаблон описания домена для repeatable delivery.

View File

@ -388,6 +388,12 @@ Routes:
- стартовая управленческая рамка Batch-1 зафиксирована в `step4_wave1_batch1_master_checker_v1.md`;
- readiness подтвержден авто-отчетом `wave1_batch1_readiness_report_2026-04-02.md` (`READY_FOR_PHASE_A`).
Фактический статус на 2026-04-03:
- в runtime добавлены и покрыты тестами management/value intents: `counterparty_population_and_roles`, `counterparty_activity_lifecycle`, `contract_usage_overview`, `customer_revenue_and_payments`, `supplier_payouts_profile`, `contract_usage_and_value`;
- для value-вопросов зафиксирован единый стандарт ответа `top-20` по умолчанию;
- усилен semantic routing для сленга и опечаток без словарей уникальных контрагентов;
- targeted code gate по ключевому набору `addressQueryRuntimeM23.test.ts` закрыт: `186/186`, `build=PASS`.
## 11. Полная матрица Q -> Route -> Complexity -> Batch
| Q | Краткий смысл | Route | Complexity | Batch |

View File

@ -1,6 +1,6 @@
# Runtime Readiness Matrix V1 (Code Sync)
Дата: 2026-04-02
Дата: 2026-04-03
Формат: `scenario -> structural_readiness -> runtime_readiness -> blocker`
@ -29,17 +29,35 @@
| AQ-P0-09 | documents_forming_balance | STRUCTURALLY_VISIBLE | LIVE_QUERYABLE_WITH_LIMITS | account-family чувствителен к row-shape/materialization | продолжить materialization diagnostics |
| AQ-B1-10 | period_coverage_profile | STRUCTURALLY_VISIBLE | LIVE_QUERYABLE_WITH_LIMITS | новый management intent, еще не закрыт domain-gate Batch-1 | закрыть Phase B/C gate на `Q1..Q7 + Q28` |
| AQ-B1-11 | document_type_and_account_section_profile | STRUCTURALLY_VISIBLE | LIVE_QUERYABLE_WITH_LIMITS | новый management intent, требуется gate-проверка ranking стабильности | закрыть Phase B/C gate на `Q1..Q7 + Q28` |
| AQ-B1-12 | counterparty_population_and_roles | STRUCTURALLY_VISIBLE | LIVE_QUERYABLE_WITH_LIMITS | нужен финальный live-gate по Batch-1 acceptance pack | закрыть Phase C для `Q1..Q7 + Q28` и прогнать global `102 + 25` |
| AQ-B2-13 | counterparty_activity_lifecycle | STRUCTURALLY_VISIBLE | LIVE_QUERYABLE_WITH_LIMITS | lifecycle-сценарии требуют отдельного доменного live-pack (Batch-2) | собрать Batch-2 acceptance и закрыть route gate |
| AQ-B1-14 | contract_usage_overview | STRUCTURALLY_VISIBLE | LIVE_QUERYABLE_WITH_LIMITS | требуется финальный live-gate на all-time/period вариациях | закрыть Phase C для `Q1..Q7 + Q28` |
| AQ-B3-15 | customer_revenue_and_payments | STRUCTURALLY_VISIBLE | LIVE_QUERYABLE_WITH_LIMITS | value-ranking path реализован, но не закрыт Batch-3 live gate | прогнать целевой Batch-3 pack + global regression `102 + 25` |
| AQ-B3-16 | supplier_payouts_profile | STRUCTURALLY_VISIBLE | LIVE_QUERYABLE_WITH_LIMITS | value-ranking path реализован, но не закрыт Batch-3 live gate | прогнать целевой Batch-3 pack + global regression `102 + 25` |
| AQ-B3-17 | contract_usage_and_value | STRUCTURALLY_VISIBLE | LIVE_QUERYABLE_WITH_LIMITS | ranking по договорам реализован, требуется live-подтверждение на edge cases | закрыть Batch-3 domain acceptance и comparator к baseline |
| AQ-P1-10 | account_turnover_snapshot | STRUCTURALLY_VISIBLE | UNKNOWN | intent/recipe отсутствуют в runtime | планировать как отдельный домен Step-4 |
| AQ-P1-11 | list_documents_by_type | STRUCTURALLY_VISIBLE | UNKNOWN | intent/recipe отсутствуют в runtime | планировать как отдельный домен Step-4 |
## Sync Notes (2026-04-02)
## Sync Notes (2026-04-03)
- В runtime реализованы by-contract intents:
- `list_documents_by_contract`
- `bank_operations_by_contract`
- В runtime реализованы первые management intents Batch-1:
- В runtime реализованы management intents Batch-1:
- `period_coverage_profile`
- `document_type_and_account_section_profile`
- В runtime реализованы management/value intents следующих слоев:
- `counterparty_population_and_roles`
- `counterparty_activity_lifecycle`
- `contract_usage_overview`
- `customer_revenue_and_payments`
- `supplier_payouts_profile`
- `contract_usage_and_value`
- Для value-слоя зафиксирован стандарт ранжирования: `top-20` по умолчанию (если пользователь не указал иной лимит).
- Добавлена устойчивость к сленгу/опечаткам в intent routing (в т.ч. фразы вида `приходы самые высокие`, `кликентов самый высокий чек`).
- Targeted code gate зеленый:
- `npm --prefix llm_normalizer/backend test -- addressQueryRuntimeM23.test.ts` -> `186/186`.
- `npm --prefix llm_normalizer/backend run build` -> `PASS`.
- `COMPOUND_FACTUAL_QUERY` остается detection-only (без multi-intent execution).
- Финальные gate-артефакты стабильности:
- stress `102/102`: `docs/ADDRESS/runs/2026-04-02_Address_Slang_Live_Stress_2026-04-02_12-57-27/run_summary.json`

View File

@ -0,0 +1,50 @@
# Step-4 Wave-1 — Stage 3 Closeout (Value Universalization)
Дата среза: 2026-04-03
Контур: `question_mode=address_query`
Статус: `CODE_READY_PRE_LIVE_GATE`
## 1. Полное название этапа
**Этап 3 — Универсализация value-вопросов общего домена (TOP-20, без словарей клиентов/поставщиков).**
## 2. Что закрыто в коде
1. Реализованы и включены в runtime intents:
- `customer_revenue_and_payments`
- `supplier_payouts_profile`
- `contract_usage_and_value`
2. Для value-ветки зафиксирован единый output-стандарт:
- `top-20` по умолчанию, если пользователь не задал иной лимит.
3. Усилен semantic routing под живой пользовательский ввод:
- обработка сленга/шумных формулировок;
- устойчивость к опечаткам на уровне role-лексем (без company-specific словарей);
- корректный выбор формата ответа (`top by total`, `top deals`, `max single`, `avg check`).
4. Обновлены unit/integration tests в `addressQueryRuntimeM23.test.ts`.
## 3. Подбитый профит этапа
1. Снят класс ошибок `missing_anchor/unsupported` для массовых value-формулировок без явного anchor.
2. Сохранен data-agnostic принцип: runtime не привязан к конкретным именам контрагентов.
3. Снижен R&D-шум при масштабировании домена:
- не требуется ручное добавление “словаря сленга” под каждую вариацию фразы;
- routing и composer работают через смысловые сигналы, а не через хардкод конкретных сущностей.
## 4. Подтверждение качества (code gate)
- `npm --prefix llm_normalizer/backend test -- addressQueryRuntimeM23.test.ts` -> `186/186 PASS`
- `npm --prefix llm_normalizer/backend run build` -> `PASS`
## 5. Что еще не закрыто
1. Batch-3 live gate (domain acceptance на живых данных 1С) не закрыт.
2. Global comparator к baseline после Batch-3 live-pack еще не зафиксирован.
## 6. Следующий шаг
1. Прогнать целевой Batch-3 live acceptance pack.
2. Закрыть global non-regression (`102 + 25`) и comparator PASS.
3. После этого зафиксировать `READY_FOR_PROD_PROMOTION` для Batch-3 scope.

View File

@ -1,6 +1,6 @@
# Step-4 Wave-1 Batch-1 Master Checker V1
Дата: 2026-04-02
Дата: 2026-04-03
Контур: `question_mode=address_query`
Scope Batch-1: `Q1..Q7 + Q28` (первая волна общего домена)
@ -48,8 +48,10 @@ Batch-1 можно переводить в runtime только после за
- [x] **Phase A стартован** (документационный контур и readiness checker подготовлены).
- [ ] Phase A закрыт.
- [x] Phase B.1 в работе: реализованы `period_coverage_profile`, `document_type_and_account_section_profile`, `counterparty_population_and_roles`, `contract_usage_overview` (unit/build green).
- [x] Phase B.1 (Batch-1 prep): реализованы `period_coverage_profile`, `document_type_and_account_section_profile`, `counterparty_population_and_roles`, `contract_usage_overview` (unit/build green).
- [x] Phase B.2 (Batch-3 value prep): реализованы `customer_revenue_and_payments`, `supplier_payouts_profile`, `contract_usage_and_value`; стандарт ранжирования `top-20`; routing усилен для сленга/опечаток.
- [x] Targeted live-check Batch-1 next pack (`Q6/Q7/Q28`) выполнен: `strict factual 9/9`.
- [x] Targeted code gate по расширенному management/value слою: `addressQueryRuntimeM23.test.ts = 186/186`, `build=PASS`.
- [ ] Phase B закрыт.
- [ ] Phase C закрыт.
@ -57,4 +59,4 @@ Batch-1 можно переводить в runtime только после за
1. Начинать можно, но строго по фазам выше.
2. Прямое включение Batch-1 intents в production-path без Phase B/C — запрещено.
3. Точка входа в работу: `Phase C` (full Batch-1 acceptance + global non-regression).
3. Точка входа в работу: `Phase C` (full Batch-1 acceptance + global non-regression) и отдельный Batch-3 live gate.