АРЧ АП11 - Оркестрация: дожать агентный прогон по selected-object continuity и сохранить accepted

This commit is contained in:
2026-04-17 18:24:02 +03:00
parent c2bafcff9b
commit 7f42d8ab50
22 changed files with 1775 additions and 816 deletions
@@ -25,16 +25,16 @@ This snapshot is based on:
Latest graph rebuild:
- `5251 nodes`
- `11337 edges`
- `136 communities`
- `5261 nodes`
- `11347 edges`
- `134 communities`
Most relevant current god nodes for turnaround `11`:
1. `resolveAddressIntent()`
2. `composeFactualReplyBody()`
3. `ChannelRegistry`
4. `CanonicalStore`
2. `ChannelRegistry`
3. `CanonicalStore`
4. `composeFactualReplyBody()`
5. `compactWhitespace()`
The relevant conclusion is not that every god node is part of turnaround `11`.
@@ -42,7 +42,7 @@ The relevant conclusion is not that every god node is part of turnaround `11`.
The relevant conclusion is:
- `resolveAddressIntent()` remains the main unresolved domain-intent concentration point;
- `composeFactualReplyBody()` now carries the remaining answer-shaping concentration after packaging extraction;
- `composeFactualReplyBody()` still carries answer-shaping pressure, but it is no longer a top-3 god node after the latest extractions;
- `assistantService` still appears as a large coordinator-heavy community rather than a thin shell.
## What Is Already Real In Code
@@ -126,7 +126,7 @@ This is enough to build targeted semantic packs that are not single-domain toy s
## Honest Phase Status
Estimated overall turnaround completion: `~88%`
Estimated overall turnaround completion: `~90%`
### Phase 0. Shared Baseline
@@ -177,19 +177,21 @@ Remaining debt:
### Phase 4. Coverage / Evidence / Truth Gate Isolation
Status: `86%`
Status: `89%`
Reason:
- explicit truth and coverage/evidence contracts exist;
- answer policy reads those contracts rather than rebuilding verdicts blindly from raw rows.
- reply-packaging mechanics are now explicitly split into `address_runtime/replyPackaging.ts` instead of staying fully in `composeStage.ts`.
- named reply contracts and answer semantics presets now also live in `address_runtime/replyContracts.ts` instead of being rebuilt inline across major factual branches.
- inventory answer construction now has an explicit owner in `address_runtime/inventoryReplyBuilders.ts` instead of staying inline inside `composeFactualReplyBody()`.
Remaining debt:
- `composeFactualReplyBody()` is still a major concentration point;
- `composeFactualReplyBody()` is still a major concentration point, but its graph pressure is lower than in the previous snapshot;
- humanized blocked/limited semantics are not yet fully separated from answer semantics across all paths;
- `composeStage.ts` still remains too large even after packaging extraction.
- `composeStage.ts` still remains too large even after packaging extraction and inventory-family extraction.
### Phase 5. AssistantService Extraction
@@ -247,6 +249,8 @@ Compared with the pre-turnaround baseline, the system is now materially better i
- organization data-scope probing is no longer owned only by coordinator-local helper bodies;
- debug payload assembly is now further isolated from top-level turn coordination;
- reply formatting and reply-type classification now have an explicit owner outside `composeStage.ts`;
- confirmed-balance and heuristic-candidate reply contracts now have explicit builders instead of repeated inline `semantics` objects in major compose branches;
- inventory factual replies are now owned by a dedicated module rather than embedded directly in the central compose body;
- architecture regressions can now be localized to route, transition, truth gate, coverage/evidence, boundary, or meta/memory layers.
## What Still Remains The Main Architectural Debt
@@ -263,7 +267,7 @@ This means capability and contour growth still concentrate pressure there.
### 3. `composeFactualReplyBody()` is still too central
Truth contracts are now explicit, and reply packaging has started moving into its own owner, but final answer-shaping still retains too much architecture weight.
Truth contracts are now explicit, and reply packaging, reply contracts, and the inventory answer family have all started moving into their own owners, but final answer-shaping still retains too much architecture weight.
This is the main remaining reason why user-facing humanization and limitation semantics are not completely isolated yet.
@@ -284,7 +288,7 @@ But not every business family has reached the same contract maturity.
The next honest architecture slice should be:
1. continue reducing `assistantService.ts` to a thinner coordinator;
2. continue isolating answer semantics further away from `composeFactualReply()` now that reply packaging has its own owner seam;
2. continue isolating answer semantics further away from `composeFactualReplyBody()` now that reply packaging and reply contracts have their own owner seams;
3. keep extending AGENT packs with mixed business + meta + interruption patterns instead of single-family smoke tests;
4. keep using scenario acceptance as the main sign-off rather than unit-test green status alone.