NODEDC_1C/docs/ARCH/11 - architecture_turnaround/41 - assistant_context_entr...

11 KiB
Raw Blame History

41 - Вход в контекст разработки ассистента 1C (2026-05-18)

Назначение

Этот документ является короткой, но полной точкой входа для нового чата, нового Codex-сеанса или нового инженера.

Он фиксирует актуальное состояние архитектуры после закрытия последнего semantic replay по saved-session gen-mo1t93wq-jy0453e и коммита:

  • 9c86407 Зафиксировать семантическую целостность VAT, debt mirror и trace-ответов

Главная цель проекта не изменилась:

  • построить 1C-ассистента, который сам выбирает безопасные маршруты по MCP/1C evidence;
  • не превращать систему в набор хардкодных доменных скрепок;
  • отвечать бизнесово полезно, прямо и честно;
  • не выдавать неподтвержденные inference как confirmed 1C fact.

Что читать первым

Для быстрого входа читать в таком порядке:

  1. AGENTS.md
  2. graphify-out/GRAPH_REPORT.md
  3. docs/ARCH/11 - architecture_turnaround/README.md
  4. docs/ARCH/11 - architecture_turnaround/21 - current_status_canon_2026-05-01.md
  5. docs/ARCH/11 - architecture_turnaround/24 - agentic_semantic_development_loop_and_autorun_hygiene_2026-05-10.md
  6. docs/ARCH/11 - architecture_turnaround/40 - mixed_schema_primitive_closure_replay_2026-05-13.md
  7. этот документ
  8. актуальные Tasker-карточки с label 1C assistant и Архитектура

Исторические документы 01-20 важны как trail решений, но текущий рабочий статус берется из 21, 24, 40, этого документа и Tasker.

Текущий статус модулей

Post-F Semantic Integrity Hardening:

  • статус: 99%, operationally closed;
  • теперь это regression gate, а не активный denominator;
  • защищает stale scope, wrong focus_object, repeated pivots, post-pivot arbitration, VAT materialization, debt mirror polarity, selected-object continuity и answer-shape truth.

Planner Autonomy Consolidation:

  • статус: 100% для declared phase83 slice;
  • planner-brain, catalog alignment, live-readiness gate и mixed replay приняты;
  • это не означает arbitrary 1C autonomy, но это закрывает первый мозг маршрутов.

Open-World Schema/Primitive Discovery:

  • phases97-105 приняты и сохранены как canaries;
  • phase105 mixed schema/primitive closure replay accepted 13/13;
  • модуль находится на manual-review readiness, а не на blind coding stage.

Agentic Semantic Development Loop:

  • статус: 99%;
  • stage loop, business-audit handoff, save-after-acceptance gate и autorun hygiene работают;
  • human GUI checkpoint остается финальным high-signal подтверждением.

Последний semantic integrity cut:

  • saved session: gen-mo1t93wq-jy0453e;
  • final replay: artifacts/domain_runs/saved_session_gen_mo1t93wq_jy0453e_rerun_final_semantic_20260518;
  • результат: accepted, 31/31 passed, 0 failed, execution_status=exact;
  • закрытые seams: VAT same-period carryover, stale MCP discovery counterparty in short debt mirror, sale-trace lot/batch honesty, broad best-year net-ranking honesty.

Архитектурная концепция

Система состоит из нескольких связанных слоев.

Assistant runtime:

  • внешний фасад живого ассистента, GUI и runtime-сессий;
  • основной pressure center все еще вокруг assistantService.ts, но бизнесовая логика постепенно вынесена в специализированные модули;
  • runtime обязан сохранять session state, но не должен позволять старой памяти победить explicit current-turn meaning.

Exact address lane:

  • AddressQueryService, addressRecipeCatalog, addressIntentResolver, addressFilterExtractor, address_runtime/*;
  • отвечает за VAT, receivables/payables, inventory, value-flow, bank operations, accounting result, procurement, debt aging, inventory quality events и связанные factual replies;
  • exact route может быть fast path, но не может обходить truth gate, scope gate и answer-shape gate.

MCP discovery/planner lane:

  • assistantMcpDiscoveryPlanner, assistantMcpCatalogIndex, assistantMcpDiscoveryPilotExecutor, assistantMcpDiscoveryRuntimeBridge;
  • выбирает reviewed primitive chains через metadata, entity grounding, documents, movements, value-flow, route candidates;
  • не должен превращать unknown или proxy-only evidence в confirmed fact.

Data-need graph and route-candidate layer:

  • описывает вопрос пользователя как бизнесовую потребность, а не только как route id;
  • хранит subject, fact family, action family, period, aggregation, ranking, comparison, proof expectation, missing axes и forbidden-overclaim flags;
  • route_candidate превращает missing proof family в конкретный enablement target, а не в размытое “не умеем”.

Continuity and transition layer:

  • assistantTransitionPolicy, assistantContinuityPolicy, assistantMcpDiscoveryTurnInputAdapter, navigation state и focus/answer object helpers;
  • решает, что переносится между turn-ами: organization, counterparty, period, selected object, answer_object, provenance bundle;
  • explicit current-turn entity/period/action должны побеждать stale organization, stale focus_object и старые discovery candidates.

Answer shaping and response policy:

  • assistantMcpDiscoveryAnswerAdapter, assistantMcpDiscoveryResponseCandidate, assistantMcpDiscoveryResponsePolicy, factual reply builders;
  • пользовательский ответ должен начинаться с прямого business answer;
  • proof, caveats, row limits и method notes идут после ответа;
  • internal route ids, capability ids, raw debug enums и service mechanics не должны попадать в финальный ответ.

GUI, autoruns and runtime artifacts:

  • autoRuns, eval, assistantService, addressTextRepair;
  • GUI autoruns являются human checkpoint и replay history;
  • сохранение вопросов не равно AGENT replay;
  • saved AGENT pack допустим только после live replay and review;
  • UTF-8 без BOM и отсутствие mojibake являются acceptance surface, а не косметикой.

Главные инварианты

  • Сначала проверяется человеческий смысл вопроса и ответа, потом debug.
  • Live replay важнее зеленых unit tests.
  • Explicit текущий субъект сильнее stale scope.
  • Valid clarification is not a bug.
  • Debt mirror должен различать мы должны и нам должны.
  • Bank-like counterparty не является обычным поставщиком или клиентом без purpose/operation evidence.
  • VAT period carryover должен сохранять тот же период, если пользователь говорит за этот период.
  • Inventory sale trace может подтвердить sale trace by nomenclature, но не exact selected lot без batch/lot proof.
  • Broad business overview не должен ранжировать unreliable net, если один из потоков ограничен row cap.
  • No route/proxy/MCP/debug garbage in final answer.

Текущие canary/replay anchors

Ключевые canaries:

  • phase83_planner_brain_alignment_live_20260501_readygate_rerun3
  • address_truth_harness_post_f_cross_stage_canary_agent_20260424_live7
  • inventory_stock_open_world_breadth_rerun_semantic_integrity_20260501_fix5
  • phase90-phase96 route-candidate/proof-family acceptance chain
  • phase97_financial_counterparty_flow_hints_live4
  • phase98_limit_honesty_business_language_live3
  • phase99_large_query_budget_continuation_live2
  • phase100_large_query_continuation_ux_live2
  • phase101_inventory_root_scope_no_warehouse_clarification_live1
  • phase102_debt_mirror_clean_scope_polarity_live3
  • phase103_financial_role_purpose_arbitration_live3
  • phase104_generic_role_tail_anchor_hygiene
  • phase105_mixed_schema_primitive_closure_live3
  • saved_session_gen_mo1t93wq_jy0453e_rerun_final_semantic_20260518

Если новый фикс касается соседней зоны, соответствующий replay нужно использовать как semantic regression gate.

Как продолжать в новом чате

Новый Codex-сеанс должен начинать так:

  1. прочитать AGENTS.md;
  2. прочитать graphify-out/GRAPH_REPORT.md;
  3. прочитать этот документ, README, 21, 24, 40;
  4. проверить git status --short;
  5. не коммитить runtime_job artifacts без явного решения;
  6. определить текущий active module и его denominator;
  7. если пользователь принес run id, сначала читать human Q/A, затем artifacts/debug;
  8. если внесены code changes, запускать targeted tests, build по необходимости, semantic replay, graphify rebuild;
  9. после accepted replay обновлять docs/Tasker, если меняется архитектурный статус.

Текущее направление после этого среза

Следующий крупный фокус:

  • закрепить agentic semantic replay loop как регулярный gate после крупных фиксов;
  • минимизировать ручную роль пользователя до финального GUI checkpoint;
  • продолжать движение к open-world bounded autonomy, где ассистент не ждет хардкодного route-per-domain, а выбирает reviewed MCP primitive path по data-need graph, route_candidate и evidence gates.

При этом нельзя объявлять проект universal arbitrary-1C agent.

Честная формулировка текущего состояния:

  • система уже умеет много устойчивых 1C-контуров;
  • bounded MCP autonomy substrate реально работает;
  • route-candidate-driven enablement показал, как превращать gaps в reviewed routes;
  • но широкая arbitrary schema traversal все еще должна расширяться через replay-backed slices, а не через свободную импровизацию.