Да, давай сделаем следующий прогон уже **не “на каноничных вопросиках”**, а на более злой, предметной и местами провокационной выборке — ближе к тому, как человек реально разговаривает с бухгалтерским ассистентом. И да, архитектуру отчёта тоже сразу зафиксируем, чтобы на выходе был **один читаемый MD-файл**, который одновременно:

* удобно читать человеку,
* удобно парсить машине,
* удобно сравнивать между прогонами.
  Опираюсь на выжимку из разговора с главбухом: ядро ценности — не ввод первички, а контроль, сверка, поиск расхождений, анализ счетов, предзакрытие периода и вопросно-ответный интерфейс поверх нормализованной модели 1С. 

---

# Что предлагаю сделать

Новый прогон собрать как **Benchmark v2 / Creative Stress Run**, где вопросы будут:

* более длинные;
* более “человеческие”;
* с доменной неоднозначностью;
* с причинно-следственными цепочками;
* с несколькими сущностями сразу;
* с формулировками не “из теста”, а ближе к живому главбуху. 

И на выходе генерировать **один отчёт `.md`** следующего типа:

---

# Архитектура итогового отчёта

## Имя файла

`benchmark_creative_stress_run_accounting_assistant_YYYY-MM-DD.md`

---

## Структура файла

### 1. Паспорт прогона

Короткий верхний блок:

```md
# Creative Stress Benchmark Run — Accounting Assistant

## Паспорт
- run_id: creative_stress_run_2026-03-23
- dataset_version: semantic_v2 + router_fix
- questions_total: 40
- benchmark_profile: creative_hard_human_like
- generated_from: accounting_automation_structured_notes
- mode: validation / stress / pilot-readiness
- executor: <pipeline or person>
- overall_status: pass / pass_with_notes / fail
```

### 2. Executive summary

Коротко по-человечески:

* что проверяли;
* что в целом показал прогон;
* где система сильна;
* где ещё спотыкается;
* готовность к следующему этапу.

### 3. Сводные метрики

Машиночитаемо и читаемо одновременно:

```md
## Сводные метрики
- route_mismatch_count:
- degraded_answers_count:
- batch_route_count:
- live_mcp_drilldown_count:
- hybrid_store_plus_live_count:
- store_canonical_count:
- store_feature_risk_count:
- avg_latency_ms:
- p95_latency_ms:
- pass_rate:
- strongest_zone:
- weakest_zone:
```

### 4. Сводка по классам вопросов

Разбивка:

* heavy_analytical
* cross_entity
* drilldown_explain
* period_close_risk
* document_reconciliation
* rule_based_account_control
* anomaly_probe
* ambiguous_human_query

### 5. Детальный блок Q/A

И вот это главный кусок. Для каждого вопроса — отдельный кейс в одном и том же формате.

---

# Формат одного кейса в отчёте

Вот рекомендованный шаблон.

```md
---
question_id: QH-01
question_class: cross_entity
difficulty: hard
domain_tags: [60, 62, сверка, документы, проводки, period_close]
expected_route: hybrid_store_plus_live
actual_route:
route_match:
latency_ms:
decision_flags:
  needs_exact_object_trace:
  needs_causal_chain:
  needs_cross_entity_join:
  needs_full_period_aggregation:
  needs_ranking:
  needs_anomaly_summary:
  needs_runtime_truth:
  freshness_sensitive:
  ambiguous_object_scope:
  store_sufficiency_confident:
  precomputed_aggregate_available:
store_sufficiency:
  canonical_sufficient:
  feature_sufficient:
  risk_sufficient:
  freshness_ok:
  aggregate_level_ok:
  ranking_ready:
  explanation_ready:
  reason_codes: []
answer_quality:
  status: pass / partial / fail
  confidence: high / medium / low
  degraded: false
---

## QH-01. [Короткое название кейса]

**Вопрос:**  
Покажи, по каким покупателям у нас на конец июня висят отгрузки без оплаты, и сразу свяжи это с реализациями, договорами и проводками, чтобы было видно, где именно хвост и чем он подтверждается.

**Что хотел проверить этот вопрос:**  
Проверка связки 62 ↔ 90 ↔ документы реализации ↔ оплаты ↔ договоры ↔ проводки, то есть не плоский факт, а причинная цепочка.

**Почему вопрос сложный:**  
Требует одновременно:
- cross-entity join,
- causal stitching,
- period-end cut,
- объяснимую цепочку источников.

**Как система должна была это понять:**  
Это не simple factual и не чистый trend.  
Это causal cross-entity scenario → ожидается `hybrid_store_plus_live`.

**Куда ожидали маршрут:**  
`hybrid_store_plus_live`

**Куда реально пошёл маршрут:**  
`...`

**Почему это корректно / некорректно:**  
Короткий человеческий комментарий.

**Краткий ход решения системы:**  
1. Определила периодный срез.  
2. Определила сущности: покупатель, реализация, оплата, договор, проводка.  
3. Проверила sufficiency canonical store.  
4. Поняла, что нужен causal join.  
5. Пошла в hybrid.

**Что ожидали увидеть в ответе:**  
- список покупателей;
- сумма хвоста;
- документы реализации;
- отсутствие / наличие оплат;
- связка с договором;
- подтверждающие проводки;
- указание проблемного периода.

**Что реально получили:**  
Короткий summary ответа.

**Вердикт по кейсу:**  
pass / partial / fail

**Замечания:**  
Что докрутить, если что.
```

---

# Почему такой формат хороший

Он одновременно:

* удобен для ручного чтения;
* достаточно структурирован для diff между прогонами;
* хранит route-логику рядом с человеческим комментарием;
* позволяет потом быстро делать выжимку по классам ошибок;
* пригоден как для внутреннего техотчёта, так и для демонстрации зрелости системы.

---

# Новый набор вопросов для Creative Stress Run

Ниже даю **40 вопросов**, уже заметно более жёстких и ближе к реальному бухгалтерам-режиму. Они построены из тех болей, что были в выжимке: 01/02, 97, 41, 51, 60, 62, 90, 10, сверки, незакрытые хвосты, предзакрытие периода, ошибки дат, отсутствие документов, причинная цепочка. 

---

## Блок A. Предзакрытие периода

### QH-01

Собери мне предзакрытие июня по-человечески: какие счета сейчас выглядят самыми проблемными, где хвосты, где незакрытые куски и что надо проверить в первую очередь, если период закрывать сегодня.

**Класс:** heavy_analytical
**Ожидаемый route:** `batch_refresh_then_store`

### QH-02

Покажи не просто проблемные счета за июнь, а объясни, почему именно они попали в риск-зону: чем это вызвано, какими документами и какими типовыми ошибками это может быть связано.

**Класс:** heavy_analytical
**Ожидаемый route:** `batch_refresh_then_store`

### QH-03

Сделай рейтинг самых опасных хвостов на конец июня, чтобы было видно, какие из них могут реально аукнуться при сдаче отчётности, а какие просто технический шум.

**Класс:** heavy_analytical
**Ожидаемый route:** `batch_refresh_then_store`

### QH-04

Есть ли у нас на конец июня такие расхождения, которые визуально небольшие, но по природе похожи на системную ошибку, а не на разовый косяк?

**Класс:** heavy_analytical / anomaly_probe
**Ожидаемый route:** `batch_refresh_then_store`

### QH-05

Если бы ты был главбухом и у тебя было полчаса перед закрытием периода, какие пять зон ты бы открыл первыми и почему?

**Класс:** heavy_analytical + explain
**Ожидаемый route:** `batch_refresh_then_store`

---

## Блок B. 60 / 62 / сверки / хвосты

### QH-06

Покажи, по каким поставщикам у нас не бьются взаиморасчёты, и разложи это не только по суммам, а по конкретным документам, оплатам и отсутствующим закрывающим.

**Класс:** cross_entity
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-07

По каким покупателям у нас есть отгрузка, но нет оплаты или нормального закрытия, и как это выглядит в цепочке документ → проводка → взаиморасчёт?

**Класс:** cross_entity
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-08

Где по 60 и 62 счётам у нас не просто долг висит, а есть ощущение, что отсутствует какой-то первичный документ, из-за чего цепочка развалилась?

**Класс:** cross_entity / explain
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-09

Покажи мне контрагентов, по которым расхождение выглядит подозрительно: то есть не обычная задержка, а именно такая история, где документы, оплаты и сальдо друг другу не соответствуют.

**Класс:** cross_entity / anomaly_probe
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-10

Сделай список контрагентов, по которым акт сверки явно напрашивается в первую очередь, и покажи, из каких документов и хвостов это складывается.

**Класс:** cross_entity / period_close_risk
**Ожидаемый route:** `hybrid_store_plus_live`

---

## Блок C. 41 / товары / приход / реализация

### QH-11

Где товар уже ушёл в реализацию, а нормального прихода под него в учёте не видно, и как эта проблема выглядит по датам, документам и поставщикам?

**Класс:** cross_entity
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-12

Найди мне такие продажи, где себестоимость или приход выглядят подозрительно, как будто накладная запоздала, документ не дошёл или дата заведена криво.

**Класс:** cross_entity / anomaly_probe
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-13

Покажи отрицательные или аномальные остатки по товарам не просто списком, а с объяснением, какая цепочка событий к этому привела.

**Класс:** drilldown_explain / cross_entity
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-14

Есть ли такие товарные позиции, где проблема тянется не один раз, а повторяется по схожему паттерну: продажа раньше прихода, странный разрыв по датам, неподложенные документы?

**Класс:** heavy_analytical / anomaly_probe
**Ожидаемый route:** `batch_refresh_then_store`

### QH-15

Покажи, какие складские или товарные хвосты на конец июня больше всего искажают картину периода.

**Класс:** heavy_analytical
**Ожидаемый route:** `batch_refresh_then_store`

---

## Блок D. 97 / расходы будущих периодов

### QH-16

По каким расходам будущих периодов у нас задан срок так, что списание либо идёт криво, либо вообще не должно было так выглядеть?

**Класс:** rule_based_account_control
**Ожидаемый route:** `store_feature_risk`

### QH-17

Покажи мне расходы будущих периодов, где ошибка, скорее всего, сидит в дате начала, окончания или вообще в неверно указанном годе.

**Класс:** rule_based_account_control / anomaly_probe
**Ожидаемый route:** `store_feature_risk`

### QH-18

Есть ли такие записи на 97 счёте, которые вроде заведены, но по ним нет нормального ежемесячного списания, и с какими исходными документами это связано?

**Класс:** cross_entity / explain
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-19

Покажи банковские гарантии, лицензии и похожие истории, которые сидят на 97, но выглядят так, будто срок действия и срок списания друг другу противоречат.

**Класс:** rule_based_account_control / cross_entity
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-20

Сделай мне обзор по 97 счёту: что там сейчас выглядит как реальный риск периода, а что просто требует внимания, но не горит.

**Класс:** heavy_analytical
**Ожидаемый route:** `batch_refresh_then_store`

---

## Блок E. 01 / 02 / ОС / амортизация

### QH-21

Какие основные средства выглядят заведёнными так, будто амортизационная группа или срок амортизации выбраны сомнительно?

**Класс:** rule_based_account_control
**Ожидаемый route:** `store_feature_risk`

### QH-22

Покажи карточки ОС, где параметры похожи на ручную ошибку: группа одна, срок другой, логика начисления не бьётся.

**Класс:** rule_based_account_control / anomaly_probe
**Ожидаемый route:** `store_feature_risk`

### QH-23

Есть ли у нас объекты, по которым амортизация должна была идти, но не идёт, и чем это подтверждается в карточке и движениях?

**Класс:** cross_entity / explain
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-24

Покажи самые подозрительные случаи по ОС, которые потенциально опасны не потому, что сумма большая, а потому что логика учёта объекта выглядит криво.

**Класс:** heavy_analytical / explain
**Ожидаемый route:** `batch_refresh_then_store`

### QH-25

Есть ли системный паттерн ошибок в заведении основных средств, а не просто единичные косяки?

**Класс:** heavy_analytical / anomaly_probe
**Ожидаемый route:** `batch_refresh_then_store`

---

## Блок F. 51 / банк / выписки / отражение в учёте

### QH-26

Покажи движения по банку, где есть ощущение, что выписка, документ и проводка не собрались в нормальную цепочку.

**Класс:** cross_entity
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-27

Есть ли у нас банковские движения, которые визуально выглядят нормально, но по логике счёта 51 оставляют некорректный хвост или ломают инвариант счёта?

**Класс:** rule_based_account_control / anomaly_probe
**Ожидаемый route:** `store_feature_risk`

### QH-28

Найди операции по банку, где, скорее всего, проблема не в сумме, а в том, что что-то не было проведено или не туда легло.

**Класс:** drilldown_explain / cross_entity
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-29

Сделай мне список самых подозрительных банковских кейсов июня с коротким объяснением по каждому: в чём суть риска и что бы ты проверил руками первым.

**Класс:** heavy_analytical
**Ожидаемый route:** `batch_refresh_then_store`

### QH-30

Покажи, где движение по банку есть, а нормального отражения в учёте не видно, либо наоборот — в учёте что-то есть, а банковской логики под этим не хватает.

**Класс:** cross_entity
**Ожидаемый route:** `hybrid_store_plus_live`

---

## Блок G. 90 / 62 / реализация и неоплата

### QH-31

Какие реализации на конец июня зависли без оплаты и уже выглядят не как нормальная отсрочка, а как потенциально проблемный хвост?

**Класс:** heavy_analytical / cross_entity
**Ожидаемый route:** `batch_refresh_then_store`

### QH-32

Покажи связку реализация → оплата → договор → проводки по самым крупным незакрытым отгрузкам.

**Класс:** cross_entity
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-33

Где по реализации хвост образовался не из-за отсутствия денег как таковых, а из-за разрыва документов, дат или отражения?

**Класс:** cross_entity / explain
**Ожидаемый route:** `hybrid_store_plus_live`

### QH-34

Сделай рейтинг самых неприятных незакрытых реализаций: чтобы было видно и сумму, и возраст хвоста, и признаки, что это именно проблема учёта, а не обычная операционка.

**Класс:** heavy_analytical
**Ожидаемый route:** `batch_refresh_then_store`

### QH-35

Покажи мне такие кейсы по 90/62, где всё выглядит почти нормально, но если копнуть глубже, видно, что период закрывается на кривой связке.

**Класс:** anomaly_probe / cross_entity
**Ожидаемый route:** `hybrid_store_plus_live`

---

## Блок H. 10 / материалы / списание

### QH-36

Что сейчас лежит на 10 счёте так, будто это уже давно просится в списание или хотя бы в ручную проверку?

**Класс:** rule_based_account_control
**Ожидаемый route:** `store_feature_risk`

### QH-37

Покажи материалы, по которым можно заподозрить нелогичный остаток: они висят, но движения и хозяйственная логика вокруг них выглядят странно.

**Класс:** rule_based_account_control / anomaly_probe
**Ожидаемый route:** `store_feature_risk`

### QH-38

Свяжи по нескольким подозрительным материалам остаток, документы, движения и возможный сценарий, почему они зависли.

**Класс:** cross_entity / explain
**Ожидаемый route:** `hybrid_store_plus_live`

---

## Блок I. Специально неоднозначные человеческие вопросы

### QH-39

Где у нас вообще “пахнет ручной ошибкой”, а не нормальной хозяйственной жизнью? Не по одному счёту, а в целом по июню.

**Класс:** heavy_analytical / anomaly_probe / ambiguous_human_query
**Ожидаемый route:** `batch_refresh_then_store`

### QH-40

Что сейчас в июне выглядит как история, которую бухгалтер потом будет долго и нервно распутывать, если не проверить заранее?

**Класс:** heavy_analytical / period_close_risk / ambiguous_human_query
**Ожидаемый route:** `batch_refresh_then_store`

---

# Как я предлагаю оформить ответы в прогоне

Не просто “вопрос — route — pass/fail”, а именно **гибридный стиль**:

## Для человека

* нормальный текст вопроса;
* короткое объяснение, что этот вопрос вообще проверяет;
* почему он сложный;
* короткий человеческий вердикт по кейсу.

## Для машины

* `question_id`
* `question_class`
* `expected_route`
* `actual_route`
* `route_match`
* `decision_flags`
* `store_sufficiency`
* `latency_ms`
* `answer_quality.status`
* `degraded`
* `reason_codes`

Это как раз даст вам отчёт, который можно:

* читать глазами,
* diff’ать между версиями,
* позже использовать как validation corpus.

---

# Очень важная рекомендация

Я бы в этот новый прогон добавил **ещё одно поле**, которого раньше, скорее всего, не хватало:

```md
**Проверяемая бухгалтерская гипотеза:**  
Какую именно предметную гипотезу должен был подтвердить или опровергнуть ассистент.
```

Пример:

* “по 97 счёту ошибка сидит в дате начала/окончания”;
* “по 41 счёту продажа опередила приход”;
* “по 60/62 счёту хвост образован отсутствием документа, а не просто неоплатой”.

Это сильно улучшит читаемость именно для предметников.

---

# Мой практический совет по следующему прогону

Сделайте следующий прогон не на всех 40 сразу, а в два прохода:

**Проход 1 — 15 вопросов**

* QH-01, 03, 06, 07, 11, 16, 18, 21, 23, 26, 29, 31, 33, 39, 40

Это даст:

* heavy,
* cross-entity,
* anomaly,
* rule-based,
* ambiguous human questions.

**Проход 2 — все 40**
После того как увидите, где он ещё хромает на творческих и длинных формулировках.

---

# Короткий вывод

Да, следующий benchmark надо делать уже не “академическим”, а **человекообразным и предметно-злым**.
И лучший формат отчёта для этого — **один MD-файл с карточками кейсов**, где рядом живут:

* вопрос,
* предметный смысл,
* ожидаемый маршрут,
* фактический маршрут,
* краткий ход рассуждения системы,
* и итоговый вердикт по качеству ответа.
  Вся эта логика напрямую вытекает из разговора с главбухом: ваша ценность — это контрольный и аналитический слой по реальным бухгалтерским болям, а не игрушечные вопросы “найди документ номер N”. 

Если хочешь, следующим сообщением я сразу превращу это в **готовую болванку отчёта в markdown**, уже целиком, чтобы вы просто вставили туда результаты прогона.
