# 11 - Architecture Turnaround Package ## Purpose This folder is the execution-oriented continuation of the baseline note: - [11 - unified_project_architecture_and_reference_update_plan_2026-04-15.md]() That baseline note answers: - what the project is today; - where the main architectural fragility sits; - what direction is safe. This package answers the next question: - how the team should design the architectural turnaround without breaking the current exact-data baseline. ## Package Contents 1. [01 - project_architecture_baseline_map.md](./01%20-%20project_architecture_baseline_map.md) 2. [02 - state_and_transition_contracts.md](./02%20-%20state_and_transition_contracts.md) 3. [03 - capability_contract_spec.md](./03%20-%20capability_contract_spec.md) 4. [04 - coverage_evidence_truth_gate.md](./04%20-%20coverage_evidence_truth_gate.md) 5. [05 - assistantService_extraction_map.md](./05%20-%20assistantService_extraction_map.md) 6. [06 - phase_acceptance_matrix.md](./06%20-%20phase_acceptance_matrix.md) 7. [07 - external_reference_appendix.md](./07%20-%20external_reference_appendix.md) 8. [08 - current_status_audit_2026-04-17.md](./08%20-%20current_status_audit_2026-04-17.md) 9. [09 - pre_expansion_cut_2026-04-17.md](./09%20-%20pre_expansion_cut_2026-04-17.md) 10. [10 - regression_breakpoint_analysis_2026-04-17.md](./10%20-%20regression_breakpoint_analysis_2026-04-17.md) 11. [11 - continuity_stabilization_plan_2026-04-17.md](./11%20-%20continuity_stabilization_plan_2026-04-17.md) 12. [12 - manual_run_system_analysis_3NilqwT1G2_2026-04-18.md](./12%20-%20manual_run_system_analysis_3NilqwT1G2_2026-04-18.md) 13. [13 - pre_multidomain_readiness_audit_2026-04-18.md](./13%20-%20pre_multidomain_readiness_audit_2026-04-18.md) 14. [14 - semantic_dialog_authority_recovery_plan_2026-04-19.md](./14%20-%20semantic_dialog_authority_recovery_plan_2026-04-19.md) 15. [15 - mcp_bounded_autonomy_reset_plan_2026-04-21.md](./15%20-%20mcp_bounded_autonomy_reset_plan_2026-04-21.md) 16. [16 - data_need_graph_and_open_world_mcp_plan_2026-04-22.md](./16%20-%20data_need_graph_and_open_world_mcp_plan_2026-04-22.md) 17. [17 - post_f_semantic_integrity_hardening_2026-04-23.md](./17%20-%20post_f_semantic_integrity_hardening_2026-04-23.md) 18. [18 - post_f_code_documentation_sync_2026-04-24.md](./18%20-%20post_f_code_documentation_sync_2026-04-24.md) 19. [19 - inventory_stock_open_world_breadth_proof_2026-05-01.md](./19%20-%20inventory_stock_open_world_breadth_proof_2026-05-01.md) 20. [20 - planner_autonomy_consolidation_2026-05-01.md](./20%20-%20planner_autonomy_consolidation_2026-05-01.md) ## Current Status Snapshot (2026-05-01) This package is no longer planning-only. It now documents a turnaround that is already operational in code, already materially past the acute regression breakpoint, and already moved through the bounded MCP autonomy build-out into the next semantic hardening layer: - route, transition, boundary, meta, memory, and provider policy owners exist as separate modules; - exact-lane truth and coverage/evidence contracts exist as explicit runtime artifacts; - scenario acceptance writes machine-readable `scenario_acceptance_matrix.json` and `pack_state.json`; - AGENT semantic packs and source catalogs already exist for mixed domain/meta validation. - the reset toward `MCP-first bounded autonomy` is now formalized; - `Big Block A/B/C` of that reset are now closed in runtime code and replay-backed; - `Big Block D/E/F` are now also materially closed in runtime code and replay-backed: - `Question -> Data Need Graph` - dynamic schema traversal and primitive search - multi-hop evidence loop with bounded clarification recovery - the current architecture mainline is now `Post-F Semantic Integrity Hardening`: - protect grounded subject integrity against stale scope contamination - protect exact and planner-selected pivots from metadata/discovery drift - keep temporal continuity and repeated lane switches semantically stable - recover already-supported questions that still look broken to a human user - the Post-F module is now operationally closed as a hardening slice: - code fix commit: `739e8b8 Post-F: закрыть ручные провалы НДС, выручки и item-flow` - runtime artifact tail commit: `837e1fe Post-F: сохранить хвосты ручных runtime-прогонов` - live map sync: [18 - post_f_code_documentation_sync_2026-04-24.md](./18%20-%20post_f_code_documentation_sync_2026-04-24.md) - the next bounded breadth slice is now replay-backed under Post-F gates: - inventory stock/provenance/sale-trace pack: `inventory_stock_open_world_breadth_rerun_semantic_integrity_20260501_fix5`, accepted - live map sync: [19 - inventory_stock_open_world_breadth_proof_2026-05-01.md](./19%20-%20inventory_stock_open_world_breadth_proof_2026-05-01.md) - Planner Autonomy Consolidation is now active beyond the initial catalog-template cut: - MCP catalog now carries reusable chain templates in addition to primitive contracts; - planner route-fabric selection has started moving from local recipe branches toward catalog-instantiated chains; - value-flow, value-flow comparison, value-flow ranking, lifecycle, metadata, movement, document, and entity fallback branches now expose catalog-template instantiation reason codes in planner output; - explicit document/movement data-need now scores over ambiguous carried metadata surfaces without forcing neutral follow-ups into a lane; - lifecycle now behaves as a bounded activity-window inference chain with an explicit legal-fact boundary instead of an unqualified age answer; - current-turn value-flow aggregate questions can override narrower supported exact routes when the user asks for totals/net/payment amounts; - broad business evaluation remains in the deterministic living-chat bridge instead of being displaced by generic metadata discovery; - inventory stock snapshot, supplier overlap, purchase provenance, and sale trace are now reviewed catalog chain templates; generic free-form inventory execution remains forbidden, and evidence must pass through reviewed exact recipe bridges; - runtime bridge and answer adapter now keep unsupported inventory route templates behind an explicit user-facing boundary instead of letting template planning look like confirmed stock/supplier/purchase/sale evidence; - inventory catalog templates now bridge through existing exact inventory recipes (`41.01` scoped stock, supplier overlap, purchase provenance, and sale trace) inside the bounded MCP discovery pilot, while missing selected-item anchors still clarify instead of guessing; - unambiguous metadata surfaces can now infer the next reviewed lane from `Document.*`, `Register.*`, or `Catalog.*` objects even before upstream labels `downstream_route_family`, while mixed surfaces still do not guess; - catalog index now scores reviewed chain templates directly from fact/action/axis/comparison/ranking needs, and planner/runtime/debug surfaces expose ranked catalog chain matches through the structured `catalog_chain_template_matches` contract path instead of relying only on reason-code strings; - planner/runtime/debug surfaces now expose `catalog_chain_template_alignment`, so semantic replay can see whether selected chains match the catalog top match, fall back to a lower-ranked template, or bypass catalog search; - planner reason codes now also emit stable catalog-alignment telemetry, so automated replay review can filter top-match, lower-rank, outside-match, and unscored selected-chain states without hand-parsing debug JSON; - catalog-alignment now carries a single `alignment_status` verdict through planner/runtime/debug, making replay divergence detection explicit instead of reconstructing it from booleans; - truth-harness and scenario acceptance artifacts now preserve catalog-alignment status/top-match fields, so AGENT replay review can spot planner-vs-catalog divergence directly in `truth_review.md` and `scenario_acceptance_matrix.json`; - truth-harness now emits a warning finding when selected chains fall below or outside the reviewed catalog top match, unless a spec explicitly allows that divergence; - scenario acceptance now exposes `catalog_alignment_ok`, so planner-vs-catalog divergence is a first-class acceptance invariant instead of an ungrouped warning; - truth-harness specs can now assert expected catalog-alignment status/top-match/top-flag per step, so AGENT packs can validate the planner brain's selected chain against the reviewed catalog route fabric; - the phase66 open-scope money dialog spec now asserts expected catalog-chain top matches across value-flow totals, bidirectional comparison, and ranking follow-ups; - the phase32 selected-counterparty chain spec now asserts expected catalog-chain top matches across entity grounding, incoming/outgoing/net value-flow, document evidence, and movement evidence follow-ups; - AGENT semantic source catalog generation now preserves expected catalog-alignment fields and tags reusable steps as `planner_catalog_alignment`, so mixed pack construction can find planner-brain regression probes explicitly; - phase83 planner-brain mixed replay spec is now generated from the AGENT source catalog and interleaves selected-counterparty catalog alignment, open-organization money flow/ranking, broad-evaluation continuity, metadata drilldown, and off-domain living-chat safety; - phase83 live replay now accepts `20/20` under guarded MCP live-readiness and proves catalog-alignment, direct-answer, temporal honesty, selected-object continuity, truth-gate, human-answer-quality, and meta-context invariants together; - checked-source failure answers now keep raw MCP transport/internal continuation errors out of the user-facing layer while preserving those details in technical debug artifacts; - explicit-counterparty incoming-vs-outgoing data-need graphs now select the reviewed `value_flow_comparison` chain instead of falling back to generic `value_flow`; - confirmed metadata-surface follow-ups now promote the surface-grounded chain template to the catalog top match, so neutral catalog drilldowns no longer look like lower-rank planner/catalog divergence; - live map sync: [20 - planner_autonomy_consolidation_2026-05-01.md](./20%20-%20planner_autonomy_consolidation_2026-05-01.md) Current honest status: - turnaround implementation progress: `~99%` - exit-from-danger-zone readiness: `~97%` - pre-multidomain readiness: `~90%` - bounded-autonomy foundation readiness: `~89%` - open-world bounded-autonomy readiness: `~85%` - Post-F semantic integrity module progress: `~99%` operationally closed, with remaining risk now treated as next-slice discovery rather than an open blocker inside the closed slice - active inventory-stock breadth slice progress: `100%` for the declared scenario pack, not for arbitrary inventory questions - Planner Autonomy Consolidation progress: `100%` for the declared module, with catalog-fabric, value-flow arbitration, lifecycle bounded inference, broad-evaluation bridge, inventory catalog templates, inventory runtime-boundary honesty, exact inventory recipe bridging, unambiguous metadata-surface lane inference, catalog chain-template scoring, structured chain-match contract exposure, runtime/debug propagation, subject-aware bidirectional comparison arbitration, structured catalog-alignment verdicts, representative alignment regression guard, catalog-alignment reason-code telemetry, explicit `alignment_status` propagation, truth-harness/acceptance-matrix surfacing, soft divergence warning, `catalog_alignment_ok` acceptance invariant, step-level expected catalog-alignment assertions, phase66 and phase32 spec alignment expectations, AGENT source-catalog surfacing, generated phase83 mixed planner-brain replay spec, checked-source user-facing error sanitation, surface-grounded catalog promotion, and guarded live phase83 acceptance validated. Broader unfamiliar 1C asks are now next-module breadth work rather than an open blocker inside this declared slice - graph snapshot after latest rebuild: `5973 nodes`, `12971 edges`, `138 communities` - current breakpoint: - the validated hot paths are no longer structurally broken; - flagship continuity collapse is no longer the primary risk; - the main remaining risk is no longer "A/B/C or D/E/F do not exist", but "already-supported semantic chains can still be contaminated by stale scope, legacy focus state, or wrong post-pivot arbitration"; - pure wording polish remains secondary debt, but semantic integrity and explicit-subject protection are now first-class blockers; - the practical product risk is no longer only "the route collapsed", but "the user can still occasionally see a semantically wrong answer on a question that the architecture should already support". - main remaining architectural pressure: - open-world breadth is still narrower than the intended arbitrary 1C blast radius - planner-selected chains are now real, but still not broad enough to cover unfamiliar 1C asks without additional primitive/search growth - semantic integrity can still fail on stale carryover, repeated pivots, and mixed scope contamination if those seams are not replay-hardened - central domain-intent pressure inside `resolveAddressIntent()` - replay breadth is still below the future open-world autonomy surface Latest live proof now includes: - `address_truth_harness_phase24_metadata_lane_choice_loop_live_rerun14` accepted - `address_truth_harness_phase32_planner_selected_chain_end_to_end_live_rerun2` accepted `6/6` - `address_truth_harness_phase42_catalog_metadata_drilldown_live_rerun2` accepted - `address_truth_harness_phase45_multi_hop_open_total_clarification_loop_live_rerun2` accepted - `address_truth_harness_phase67_svk_grounded_counterparty_integrity_live_rerun_vatfix` accepted - `address_truth_harness_phase68_referential_document_followup_integrity_live_rerun1` accepted - `address_truth_harness_phase69_document_to_payments_pronoun_pivot_live_rerun3` accepted - `address_truth_harness_phase72_document_to_contracts_year_switch_live_rerun3` accepted - `address_truth_harness_phase80_payments_to_contracts_to_documents_all_time_live_rerun1` accepted - `address_truth_harness_phase82_human_mixed_integrity_status_dialog_post_m23_rerun_documents_scope_bidirectional` accepted `19/19` - `address_truth_harness_phase82_human_mixed_integrity_status_dialog_post_f_account_injection_guard_clean_scope` accepted `19/19`, with the `Жуковке 51` numeric counterparty suffix kept as counterparty scope instead of leaking as account `51` - `address_truth_harness_post_f_cross_stage_canary_agent_20260424_live7` accepted `24/24`, proving a saved cross-stage AGENT canary across VAT metadata, metadata-scoped organization/document pivots, numeric counterparty suffixes, open-organization value-flow clarification, ranked value-flow year switches, and SVK grounded reset; the saved autorun is `AGENT | Post-F cross-stage semantic integrity canary` (`gen-ag04241406-abe4d8`) - `address_truth_harness_post_f_manual_failures_20260424_live3` accepted `11/11`, proving the manual failure slice from `assistant-stage1-9liEOh-7JP`: VAT purchase-date, VAT February 2017, highest-value customer, and Chepurnov item-flow after stale inventory context; the saved autorun is `AGENT | Post-F ручные провалы VAT revenue item-flow live3` (`gen-ag04241710-bdb248`) - `address_truth_harness_phase11_manual_followup_meta_quality_live_rerun_vatfix` accepted `10/10` - `address_truth_harness_phase20_continuity_stabilization_live_rerun_vatfix` accepted `6/6` - `addressQueryRuntimeM23.test.ts` full semantic/runtime slice accepted `403/403` after Post-F VAT/date-basis, scope-recovery, open value-flow organization clarification, document-vs-bank arbitration, and reply-shape hardening - `inventory_stock_open_world_breadth_rerun_semantic_integrity_20260501_fix5` accepted all declared inventory stock scenarios: root snapshots, selected-item supplier provenance, supplier overlap, stock aging/unresolved supplier-link, sale trace, and purchase-to-sale chain - `address_truth_harness_phase66_human_org_open_scope_dialog_planner_template_rerun2` accepted `7/7`, proving catalog-instantiated value-flow still preserves open-organization clarification, year switches, and guarded candidate arbitration - `address_truth_harness_phase52_metadata_movement_full_recovery_planner_metadata_scoring_rerun2` accepted `4/4`, proving metadata-born movement continuation keeps lane choice, organization, and period recovery intact - `address_truth_harness_phase54_metadata_document_full_recovery_planner_metadata_scoring_rerun2` accepted `4/4`, proving metadata-born document continuation keeps lane choice, organization, and period recovery intact - MCP planner/catalog consolidation slice accepted locally: `assistantMcpCatalogIndex.test.ts` + `assistantMcpDiscoveryPlanner.test.ts` passed `47/47`, full MCP-discovery slice passed `227/227` with `9` skipped - lifecycle/value-flow Planner Autonomy response gate accepted: `address_truth_harness_phase19_mcp_discovery_response_gate_planner_lifecycle_rerun4` accepted `8/8`, proving bounded lifecycle inference, current-turn value-flow aggregate arbitration, and sanitized evidence wording - broad-evaluation bridge continuity accepted: `address_truth_harness_phase21_net_followup_after_broad_eval_planner_lifecycle_rerun2` accepted `3/3` and `address_truth_harness_phase22_broad_business_evaluation_bridge_planner_lifecycle_rerun2` accepted `3/3` - latest local Planner Autonomy slice accepted: full MCP-discovery suite passed `268/268` with `9` skipped; broad MCP/living-chat/route/meaning slice passed `305/305` with `9` skipped; build passed - inventory template lift accepted locally: catalog/data-need/planner/turn-input slice passed `139/139` with `6` skipped; full MCP-discovery slice passed `276/276` with `9` skipped; build passed; graphify stayed at `5912 nodes`, `12833 edges`, `138 communities` - inventory runtime-boundary hardening accepted locally: runtime-bridge/answer-adapter/pilot-executor slice passed `68/68` with `1` skipped; full MCP-discovery slice passed `277/277` with `9` skipped; build passed; graphify rebuilt to `5913 nodes`, `12837 edges`, `138 communities` - inventory exact-runtime bridge accepted locally: runtime-bridge/answer-adapter/pilot-executor slice passed `70/70` with `1` skipped; full MCP-discovery slice passed `279/279` with `9` skipped; build passed; graphify rebuilt to `5930 nodes`, `12884 edges`, `135 communities` - unambiguous metadata-surface lane inference accepted locally: planner slice passed `36/36`; full MCP-discovery slice passed `281/281` with `9` skipped; build passed; graphify rebuilt to `5937 nodes`, `12899 edges`, `138 communities` - live inventory exact-bridge rerun `inventory_stock_exact_bridge_live_20260501_after_runtime_bridge` is recorded as infrastructure-blocked, not accepted: route/intent/recipe/capability matched, but MCP calls aborted and direct `get_metadata` timed out while proxy health showed `active_sessions_count=0` with pending commands - catalog chain-template scoring accepted locally: catalog/planner slice passed `54/54`; full MCP-discovery slice passed `282/282` with `9` skipped; build passed; graphify rebuilt to `5938 nodes`, `12903 edges`, `139 communities` - structured chain-template planner contract accepted locally: planner slice passed `36/36`; full MCP-discovery slice passed `282/282` with `9` skipped; build passed; graphify rebuilt to `5939 nodes`, `12906 edges`, `138 communities` - structured chain-template runtime/debug propagation accepted locally: runtime/debug slice passed `18/18`; full MCP-discovery slice passed `282/282` with `9` skipped; build passed; graphify rebuilt to `5940 nodes`, `12909 edges`, `137 communities` - subject-aware bidirectional comparison arbitration accepted locally: planner slice passed `36/36`; full MCP-discovery slice passed `282/282` with `9` skipped; build passed; graphify rebuilt to `5940 nodes`, `12909 edges`, `137 communities` - structured catalog-alignment verdict accepted locally: planner/runtime/debug slice passed `54/54`; full MCP-discovery slice passed `282/282` with `9` skipped; build passed; graphify rebuilt to `5941 nodes`, `12911 edges`, `136 communities` - representative catalog-alignment regression guard accepted locally: planner slice passed `37/37`; full MCP-discovery slice passed `283/283` with `9` skipped; build passed; graphify rebuilt to `5942 nodes`, `12912 edges`, `140 communities` - catalog-alignment reason-code telemetry accepted locally: planner/runtime slice passed `53/53`; full MCP-discovery suite passed `283/283` with `9` skipped; build passed; graphify rebuilt to `5943 nodes`, `12915 edges`, `136 communities` - catalog-alignment status verdict accepted locally: planner/runtime/debug slice passed `55/55`; full MCP-discovery suite passed `283/283` with `9` skipped; build passed; graphify rebuilt to `5943 nodes`, `12915 edges`, `136 communities` - catalog-alignment replay artifact surfacing accepted locally: Python truth-harness/acceptance tests passed `4/4`; graphify rebuilt to `5946 nodes`, `12918 edges`, `136 communities` - catalog-alignment divergence warning accepted locally: Python truth-harness/acceptance tests passed `5/5`; graphify rebuilt to `5947 nodes`, `12920 edges`, `138 communities` - catalog-alignment acceptance invariant accepted locally: Python truth-harness/acceptance tests passed `6/6`; graphify rebuilt to `5949 nodes`, `12923 edges`, `136 communities` - catalog-alignment spec assertions accepted locally: Python truth-harness/acceptance tests passed `7/7`; graphify rebuilt to `5951 nodes`, `12926 edges`, `139 communities` - phase66 planner-alignment spec hardening accepted locally: Python truth-harness/acceptance tests passed `7/7`; `load_truth_harness_spec` confirmed expected top matches `[value_flow, value_flow, value_flow, value_flow_comparison, value_flow_comparison, value_flow_ranking, value_flow_ranking]` - phase32 selected-counterparty planner-alignment spec hardening and AGENT source-catalog surfacing accepted locally: Python replay-tooling tests passed `9/9`; `load_truth_harness_spec` confirmed expected top matches `[entity_resolution, value_flow, value_flow, value_flow_comparison, document_evidence, movement_evidence]`; regenerated source catalog exposes `planner_catalog_alignment` as a reusable tag - phase83 mixed planner-brain spec generation accepted locally: Python replay-tooling tests passed `10/10`; generated spec has `20` steps and `15` expected catalog top-match checks after the phase19/21/22 alignment hardening; regenerated source catalog exposes `planner_catalog_alignment` with `26` reusable entries; graphify rebuilt to `5952 nodes`, `12927 edges`, `138 communities` - checked-source error sanitation accepted: targeted answer/candidate/policy tests passed `61/61` with `1` skipped; build passed; `phase83_first2_sanity_live_20260501_errorfilter` confirms the user-facing assistant section no longer exposes raw `MCP fetch failed` or `Entity-resolution could not continue` strings; graphify rebuilt to `5953 nodes`, `12930 edges`, `137 communities` - live-readiness guard accepted: `scripts/check_mcp_live_readiness.py --confirm-live --wait-for-polling-seconds 60` now confirms backend/proxy/direct read-only 1C evidence before expensive live replays; - guarded phase83 acceptance: `phase83_planner_brain_alignment_live_20260501_readygate_rerun3` accepted `20/20`, with `0` warnings, `0` failures, `catalog_alignment_ok=true`, `direct_answer_ok=true`, `temporal_honesty_ok=true`, `selected_object_continuity_ok=true`, `truth_gate_ok=true`, `human_answer_quality_ok=true`, and `meta_context_integrity_ok=true`; - surface-grounded catalog promotion accepted locally: targeted planner/response-policy/pilot/continuity slice passed `109/109`, build passed, and graphify rebuilt to `5973 nodes`, `12971 edges`, `138 communities`. - accepted phase83 is saved as an autorun canary: `AGENT | Planner Autonomy phase83: мозг маршрутов, pivots и legacy continuity` (`gen-ag05011759-6f85fc`). Current architectural reading: - the system is already materially past the dangerous regression breakpoint; - it is now safe for continued architecture hardening and controlled domain-by-domain enablement under replay gates; - it is materially closer to pre-multidomain stability, but still not safe to declare broad low-risk expansion over arbitrary unfamiliar 1C questions. - the practical next target is no longer Post-F rescue itself; it is broader open-world bounded autonomy over 1C evidence while preserving the Post-F semantic-integrity invariants as regression gates. - from this point onward, readiness must be judged not only by route truth and replay pass rate, but also by whether already-supported questions stay semantically correct through stale memory, pivots, clarifications, and mixed scope resets. For the detailed audit, current percentages, and remaining debt, read: - [08 - current_status_audit_2026-04-17.md](./08%20-%20current_status_audit_2026-04-17.md) - [09 - pre_expansion_cut_2026-04-17.md](./09%20-%20pre_expansion_cut_2026-04-17.md) - [10 - regression_breakpoint_analysis_2026-04-17.md](./10%20-%20regression_breakpoint_analysis_2026-04-17.md) - [11 - continuity_stabilization_plan_2026-04-17.md](./11%20-%20continuity_stabilization_plan_2026-04-17.md) - [12 - manual_run_system_analysis_3NilqwT1G2_2026-04-18.md](./12%20-%20manual_run_system_analysis_3NilqwT1G2_2026-04-18.md) - [13 - pre_multidomain_readiness_audit_2026-04-18.md](./13%20-%20pre_multidomain_readiness_audit_2026-04-18.md) - [14 - semantic_dialog_authority_recovery_plan_2026-04-19.md](./14%20-%20semantic_dialog_authority_recovery_plan_2026-04-19.md) - [15 - mcp_bounded_autonomy_reset_plan_2026-04-21.md](./15%20-%20mcp_bounded_autonomy_reset_plan_2026-04-21.md) - [16 - data_need_graph_and_open_world_mcp_plan_2026-04-22.md](./16%20-%20data_need_graph_and_open_world_mcp_plan_2026-04-22.md) - [17 - post_f_semantic_integrity_hardening_2026-04-23.md](./17%20-%20post_f_semantic_integrity_hardening_2026-04-23.md) - [19 - inventory_stock_open_world_breadth_proof_2026-05-01.md](./19%20-%20inventory_stock_open_world_breadth_proof_2026-05-01.md) - [20 - planner_autonomy_consolidation_2026-05-01.md](./20%20-%20planner_autonomy_consolidation_2026-05-01.md) ## Architectural Objects Of Planning This package makes five objects explicit: 1. `state model` 2. `transition model` 3. `capability contract model` 4. `coverage / evidence / truth gate` 5. `assistantService extraction plan` These are the objects that should now drive refactoring discussions. ## How To Use The Package Read in this order: 1. baseline note in `docs/ARCH/11 - unified_project_architecture_and_reference_update_plan_2026-04-15.md` 2. `01 - project_architecture_baseline_map.md` 3. `02 - state_and_transition_contracts.md` 4. `03 - capability_contract_spec.md` 5. `04 - coverage_evidence_truth_gate.md` 6. `05 - assistantService_extraction_map.md` 7. `06 - phase_acceptance_matrix.md` 8. `07 - external_reference_appendix.md` 9. `08 - current_status_audit_2026-04-17.md` 10. `09 - pre_expansion_cut_2026-04-17.md` 11. `10 - regression_breakpoint_analysis_2026-04-17.md` 12. `11 - continuity_stabilization_plan_2026-04-17.md` 13. `12 - manual_run_system_analysis_3NilqwT1G2_2026-04-18.md` 14. `13 - pre_multidomain_readiness_audit_2026-04-18.md` 15. `14 - semantic_dialog_authority_recovery_plan_2026-04-19.md` 16. `15 - mcp_bounded_autonomy_reset_plan_2026-04-21.md` 17. `16 - data_need_graph_and_open_world_mcp_plan_2026-04-22.md` 18. `17 - post_f_semantic_integrity_hardening_2026-04-23.md` 19. `18 - post_f_code_documentation_sync_2026-04-24.md` 20. `19 - inventory_stock_open_world_breadth_proof_2026-05-01.md` 21. `20 - planner_autonomy_consolidation_2026-05-01.md` ## Planning Rules - Do not treat this package as a rewrite plan. - Do not dissolve `AddressQueryService` into generic chat logic. - Do not move state back into transcript-only memory. - Do not let answer wording substitute for policy/runtime fixes. - Use scenario-based acceptance as the primary gate for all phases. ## Expected Outcome When this package is fully operational, the project should stop being described as: - "a big custom assistant service with many heuristics" and start being described as: - "a stateful exact-data assistant with explicit transition contracts and isolated truth gating." As of `2026-04-24`, the project is already materially closer to the target description and is no longer in the same acute collapse state. The remaining blocker is no longer the original continuity failure itself, no longer the A/B/C or D/E/F build-out, and no longer the first Post-F rescue slice. The active blocker is now the combination of: - unfinished convergence from reviewed bounded MCP chains toward broader open-world autonomy; - continued use of Post-F semantic integrity invariants as regression gates while that breadth grows. The biggest remaining blockers are: - broader open-world primitive search is still narrower than the future arbitrary 1C blast radius; - dynamic schema traversal is still not broad enough for many unfamiliar 1C asks outside the repaired families; - new stale-scope or post-pivot seams may still appear in future breadth work and must be treated as regression-gated semantic defects, not as wording polish; - residual `assistantService` overload; - central intent pressure in `resolveAddressIntent()`; - semantic robustness gaps may still appear where already-supported questions meet new wording, typo pressure, short follow-up retargets, or human-answer mismatch.