124 lines
9.3 KiB
Markdown
124 lines
9.3 KiB
Markdown
# 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 (10–15 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 (10–15 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 18–25B) 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.md` → `docs/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 (10–15 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.
|