Files
confidence-engine/docs/context-routing-validation.md

9.3 KiB
Raw Permalink Blame History

Context Routing Validation — Experiment 36

Documents Initially Loaded

  1. docs/current-handoff.md (86 lines) — first return-to-work entry point
  2. docs/current-project-state.md (132 lines) — active state and capabilities
  3. docs/task-context-packs.md (110 lines) — routing for four work types

Total: 328 lines loaded before any expansion.

Additional Documents Required

docs/ui-mock-reference.md (62 lines)

Why: Task 2 required identifying mock scenarios for "long investigation" and "contradictory evidence". The task-context-packs Routing Test B claimed these were identifiable without loading ui-mock-reference, but the specific scenario names were not stated in any initial document. Loading confirmed both exist: "Long investigation (1015 turns)" and "Contradiction". Routing should have included it: YES — this is a routing defect. The pack's Routing Test B presents an unverifiable claim as fact.

docs/project-knowledge-inventory.md (214 lines)

Why: Task 4 asked where a new developer should begin for engine experiments. Current handoff → project-state → task-context-packs gave the path, but inventory confirmed the Engine Experiment pack's four "always read" documents are all verifiably present in the repository. Also provided confirmation of what the knowledge-management phase created. Routing should have included it: DEBATED — the inventory validates pack completeness but was not strictly necessary to answer Task 4 from routing alone.

docs/current-implementation-verification.md (110 lines)

Why: Cross-checked Behaviour Selection's isolation against current-project-state §3's classification. Found section 3b confirming selectBehaviour has no callers outside its module. Routing should have included it: DEBATED — current-project-state already stated the same fact; this was a corroboration, not a gap fill.

Tasks Completed

Task 1 — Does Behaviour Selection affect engine behaviour?

  • Answer: No. It is isolated — no import or call exists in any file under lib/ or app/.
  • Initial docs sufficient: Yes (current-project-state §3 + handoff §2).
  • Expansion needed: No.

Task 2 — Correct mock scenarios for long investigation and contradictory evidence?

  • Answer: "Long investigation (1015 turns)" and "Contradiction" from ui-mock-reference.md.
  • Initial docs sufficient: No. Routing Test B claimed they were, but the claim was unverifiable until ui-mock-reference was loaded.
  • Expansion needed: Yes — docs/ui-mock-reference.md.

Task 3 — Why passive classifiers are not part of active reasoning?

  • Answer: Passive classifiers (Experiments 1825B) record diagnostic signals for future use but have no integration into the turn cycle. Investigation-state assessment is the only one called at all, and its result goes into a diagnostics field — never checked by conditional branches. Others have zero callers. None control user-facing decisions or path selection.
  • Initial docs sufficient: Yes (current-project-state §2–§5 + handoff §2).
  • Expansion needed: No.

Task 4 — Where should a new developer begin for the next engine experiment?

  • Answer: Read docs/current-handoff.mddocs/current-project-state.md → Engine Experiment pack from docs/task-context-packs.md, which directs them to four always-read documents (current-project-state, current-working-principles, architecture-guardrails, current-implementation-verification) plus the immediately previous experiment entry in the design log. The pack's "Stop and ask" rules prevent blind expansion.
  • Initial docs sufficient: Yes — answerable from initial context; inventory loaded only for confirmation of pack document existence.
  • Expansion needed: No.

Routing Failures Found

One genuine failure: Routing Test B in task-context-packs.md. The test states that mock scenarios for "long investigation" and "contradiction" are identifiable without loading ui-mock-reference. This was presented as a self-evident fact but could not be verified from the stated documents alone — the specific scenario names exist only in ui-mock-reference.md. The routing is incomplete; it should have included the mock reference file.

One questionable exclusion: project-knowledge-inventory for Task 4. The task-context-packs Engine Experiment pack lists four "always read" documents but does not themselves confirm all four exist. A cautious developer would load the inventory to verify, adding ~215 lines. This is acceptable cost but worth noting as a gap in the pack's self-validation.

Documentation Improvements Discovered

  1. Routing Test B must include ui-mock-reference.md. Remove the "No extra file required" claim and add the mock reference to the Engine Experiment pack's routing chain when tasks involve scenario selection.
  2. Packs should confirm their listed documents exist. Adding a verification check (or removing unverified entries) would prevent the need for inventory cross-referencing.

Overall Assessment: Mostly ready

Evidence: Two of four tasks were completed from initial context only. One routing defect was found (Task 2's claim was unverifiable without extra loading). The system works but Routing Test B demonstrates that "sufficient" claims should be evidence-based, not assumed. After fixing Test B, the reduced context system is ready for normal work.


Experiment 37 — Cross-Boundary Routing Validation

Routing Correction Applied

Updated task-context-packs.md Routing Test B: docs/ui-mock-reference.md is confirmed as part of the UI and Mock pack; scenario names and usage guidance originate from that document, not from the general entry documents alone. This is a normal routing inclusion, not an exceptional addition.

Task 4 conclusion clarified: answerable from initial context; inventory loaded only for confirmation. The Engine Experiment pack's four "always read" documents form a valid path without requiring the knowledge inventory.

Totals corrected to "two of four tasks completed from initial context only." Line counts updated to match wc -l output.

Cross-Boundary Test — Condition Status Display in Workspace

Task: Determine what is active vs passive for displaying condition-status information in the workspace without modifying the reasoning loop. Identify mock scenario, relevant files to inspect, and whether both engine and UI packs are needed.

Primary pack selected: Knowledge-Management pack (handoff + project-state + context-packs). Boundary identified: Task requires understanding passive diagnostic capabilities (engine side) AND workspace display behavior (UI side). Boundary = Engine ↔ UI.

Second pack selected: UI and Mock pack for docs/ui-mock-reference.md (scenario names for mock investigation work).

Documents loaded:

Document Lines Purpose
docs/current-handoff.md 85 Return-to-work entry, confirm experiment status
docs/current-project-state.md 131 Passive classifiers (§2), active reasoning loop (§3)
docs/task-context-packs.md 110 Identify cross-boundary need; Pack 2 for UI scenario routing
docs/ui-mock-reference.md 62 Scenario names and usage guidance for mock investigation

Total initial context: 328 lines. Additional loaded: 62 lines. Grand total: 390 lines.

Cross-boundary task result:

  • Condition-status capability is passive: decision-condition status evaluation records signals for future use but has no integration into the active turn cycle; it never controls user-facing decisions or path selection.
  • Active reasoning loop must remain unchanged: deterministic pipeline from scenario reconstruction through question formulation to turn orchestration — none of these pathways are affected by passive condition-status data.
  • Suitable mock scenario: "Long investigation (1015 turns)" from ui-mock-reference.md, where the workspace can display accumulated diagnostic signals over time without interrupting the active reasoning cycle.
  • Relevant implementation areas to inspect later: lib/graph/conditions/decision-condition-status.js or equivalent (the decision-condition status evaluation module); lib/graph/scope-detection.js or similar (evidence scope detection); UI workspace component files under app/ for passive display integration.
  • Both Engine and UI packs genuinely necessary: engine pack identifies which capabilities are active vs passive; UI pack identifies how the workspace presents state to users. Neither alone suffices for this cross-boundary task.
  • No archive or full history was required.

Context remained manageable: Yes. 390 lines total. Each document loaded for a specific named purpose. No blind expansion.

Knowledge-Manship Completion Criteria Review

Criterion Status
1. Fresh session can resume from handoff + one pack met
2. Current state verified against implementation met
3. Historical material outside default loading met
4. Current principles separated from aspirational architecture met
5. Task-specific routing works for engine and UI tasks met
6. Cross-boundary task tested met (this experiment)
7. Maintaining handoff does not require reading full history met

All seven criteria are now met.

Knowledge-Manship Assessment

Knowledge-management structure is ready for Rob's review before engine experiments resume.