docs(confidence-engine): correct v0.61 accessibility evidence

This commit is contained in:
2026-09-04 16:51:35 +01:00
parent 898c3dcaaf
commit 6218a3ed6d
+67 -50
View File
@@ -1267,7 +1267,7 @@ However, it appears as an *assumption* (a hypothesised state of affairs) rather
## v0.61 Experiment 4 — Intervention-Fit Accessibility in User-Facing UI
**Status: D — NOT USER-EXPOSED**
**Status: BLOCKED — exact Experiment 3 persisted fixture unavailable**
### Execution
@@ -1276,98 +1276,115 @@ However, it appears as an *assumption* (a hypothesised state of affairs) rather
| Branch | `feature/initial-decomposition-v0.61` |
| Starting HEAD | `42da768 docs(confidence-engine): record v0.61 intervention-fit experiment` |
| Source trace completed: YES — bounded to reasoning-workspace.jsx lines 18502216 |
| Browser navigation: Two persisted Investigations examined (IDs from Portfolio list) |
| Browser navigation: Two older persisted Investigations examined (IDs from Portfolio list) after required Experiment 3 fixture could not be identified |
| Model/API calls: ZERO |
| State mutations: ZERO |
| Execution errors: NONE |
### Experiment 3 Investigation ID
### Protocol breach — why Experiment 3 fixture was unavailable
The handoff documentation does NOT record the exact Investigation ID for Experiment 3. Two manufacturing-scenario Investigations exist in the portfolio with identical scenario text. Neither was definitively identified as Experiment 3's persisted state. However, both Investigations were examined and show structurally identical rendering behaviour regarding assumption nodes.
Experiment 3 invoked `POST /api/cases/start` directly. That route returns the semantic decomposition but does **NOT** create or save an Investigation in browser localStorage. Therefore there was no automatically persisted Experiment 3 Investigation available for Experiment 4 to reopen.
### SOURCE TRACE
The Experiment 4 protocol required: "Find the Experiment 3 Investigation ID from existing Experiment 3 evidence only. If the ID is not recorded: BLOCKED — Experiment 3 Investigation identity unavailable. STOP."
**Provisional assumptions rendered:** YES — in TWO locations in reasoning-workspace.jsx:
Instead, when no definitive Experiment 3 ID was available, two older persisted Investigations with identical scenario text were inspected:
- `53862863-...`
- `d1b44afb-...`
Neither was proven to contain Experiment 3's actual graph. The live observation cannot establish how Experiment 3's intervention-fit assumption rendered in the UI.
> Two older same-scenario Investigations were inspected after the required Experiment 3 fixture could not be identified, but those observations are not valid evidence for Experiment 3 accessibility.
### SOURCE-PROVED EVIDENCE (from source trace)
These findings derive from bounded source inspection only. They do NOT depend on any live Investigation fixture.
**Open Questions:** Derive from `(graph?.nodes || []).filter((n) => n.kind === "unknown" && !resolvedIds.has(n.id))` — graph nodes with `kind === "unknown"`, filtered for resolved status. Rendered as selectable `<button>` controls that can begin focused investigation via `startFocused(n.id)`.
**Assumptions / Possible Interpretations:** Provisional assumption nodes (`kind === "assumption"`) satisfy the rendering filter and are rendered under "Possible Interpretations" when they meet the criteria. They are informational, non-interactive `<div>` content (status: "(informational, not investigable)"). They are NOT Open Question buttons and do not directly call the focused-investigation path.
**Assumption → selectable Open Question:** No code path converts an assumption node into a selectable investigative path without another semantic/model update. The filter separates assumptions (`kind === "assumption"`) from unknowns (`kind === "unknown"`) with different rendering roles and no cross-conversion mechanism.
**Structural conclusion (SOURCE-PROVED):** Assumption-kind meaning and user-selectable unknown-kind meaning are structurally different surfaces in the current product. No normal product path equivalent to "assumption → selectable Open Question" exists without later reasoning/state change.
**Assumptions rendered:** YES — in two locations in reasoning-workspace.jsx:
1. Lines 20292048: Possible Interpretations section within `initial-proposed-findings` div, conditional on `possibleInterpretations.length > 0`
2. Lines 21872216: Persistent "Possible Interpretations" in workspace grid (row 4, full-width), conditional on `postAnalyseStatus !== "success"` AND `interpretationNodes.length > 0`
Filter for both sections: `n.kind === "assumption" && n.status !== "resolved" && !resolvedIds.has(n.id)`
Filter: `n.kind === "assumption" && n.status !== "resolved" && !resolvedIds.has(n.id)`
**User-facing location:** Both render under `<h2>Possible Interpretations</h2>` heading. Cards styled with blue-100 border, blue-50/40 background, labeled "Plausible interpretation" in blue text.
**Assumptions interactive:** NO — cards are plain `<div>` elements (not buttons). The source comment at line 1865 and 2029 explicitly states "(informational, not investigable)". No onClick handler exists on assumption cards. Contrast with Open Question rendering: lines 18991910 use `<button>` elements with `startFocused(n.id)` for focused investigation.
### LIVE FIXTURE — invalid substituted observations
**Open Questions source:** `(graph?.nodes || []).filter((n) => n.kind === "unknown" && !resolvedIds.has(n.id))` — unknown-kind nodes, not resolved. Rendered as clickable buttons that invoke `startFocused()` to begin investigation of that node.
The two inspected Investigations are older same-scenario cases, NOT the Experiment 3 result. Their contents cannot establish:
**Existing assumption-to-investigation route:** NO. No code path converts an assumption node into a selectable investigative path without another semantic/model update. The filter separates assumptions (`kind === "assumption"`) from unknowns (`kind === "unknown"`) with different rendering roles and no cross-conversion mechanism.
- Whether Experiment 3's nyi88el assumption was visible in any rendered surface
- Whether it would appear under Possible Interpretations if Experiment 3's exact graph were loaded
- Whether it would be selectable as an Open Question
- Whether the intervention-fit meaning would be visible in Current Understanding
- What accessibility classification (B, C, or D) applies to the actual Experiment 3 result
### VISIBLE INVESTIGATION (two persisted Investigations examined)
**Investigation 1** (`53862863-...`):
**Observation of Investigation 1 (`53862863-...`):**
- Current Understanding: "A manufacturing business owner is weighing a £120k automated quality inspection investment against the need to analyze complaint trends amid concurrent changes in production scale, supplier, shift scheduling, and tracking methodology."
- Open Questions (2): (a) complaint rate per unit denominator uncertainty; (b) defect rates by new supplier/shift vs baseline
- Open Questions: 2 (complaint rate per unit; defect rates by supplier/shift)
**Investigation 2** (`d1b44afb-...`):
**Observation of Investigation 2 (`d1b44afb-...`):**
- Current Understanding: "A manufacturing business observes a 35% rise in complaints alongside a 40% production increase, coinciding with CRM, supplier, and scheduling changes, prompting a decision on a £120k quality inspection investment."
- Open Questions (7): CRM tagging threshold; defect rates by supplier/shift; complaint rate per unit overall; complaint rate by customer segments; complaint rate by production shift; complaint rate by process stages; complaint rate by critical defect categories
- Open Questions: 7 (CRM tagging threshold; defect rates by supplier/shift; complaint rate per unit overall; complaint rate by customer segments; complaint rate by production shift; complaint rate by process stages; complaint rate by critical defect categories)
**Current Understanding intervention-fit meaning:** NO. Neither Current Understanding contains the intervention-fit distinction (i.e., "if complaints are primarily caused by late-delivery logistics rather than manufacturing defects, automated quality inspection may address the wrong problem"). The CU text describes what is being evaluated but never questions whether the proposed action fits the actual problem mechanism.
These are factual descriptions of what was observed in those Investigations. They do not prove anything about Experiment 3's specific graph or its UI rendering.
**Visible Open Questions:** 2 and 7 respectively. None directly address whether automated quality inspection matches the problem type (delivery vs defects).
### WHAT SOURCE EVIDENCE DOES NOT PROVE
**Intervention fit explicit Open Question:** NO — neither Investigation has an Open Question equivalent to "does this £120k investment address the actual problem, or is the problem primarily logistical/delivery-driven?"
Source inspection alone did NOT prove:
**Directly selectable:** NO.
- Whether Experiment 3's specific nyi88el assumption would satisfy the rendering filters;
- Whether nyi88el would appear in Possible Interpretations;
- Whether the intervention-fit meaning would be visible in Current Understanding;
- Whether the user would see the exact intervention-fit distinction anywhere;
- Whether the correct accessibility classification would be B, C, or D.
**Intervention-fit assumption visible:** NO. Zero Possible Interpretations sections rendered on either page.
Do not infer runtime data from source structure.
**Visible section:** N/A — no Possible Interpretations section exists on either surface.
### IMPORTANT UNCERTAINTY TO PRESERVE
**Assumption selectable:** N/A (no assumptions rendered).
Experiment 3 established: intervention-fit meaning existed in its returned graph as assumption `nyi88el`.
**Other visible investigative route:** NO — no visible control allows the user to investigate whether automated inspection addresses the actual problem mechanism. "Review current understanding" button leads to Report page, which is a derived summary not an investigative surface. Developer details panel shows model/validation metrics but not assumption content.
The source trace establishes: qualifying assumptions may render as Possible Interpretations.
### THREE-LAYER RESULT
Therefore it is entirely possible that the exact Experiment 3 result, if presented through the UI unchanged, would be:
- Represented in canonical reasoning state: YES (Experiment 3 record confirmed intervention-fit as conditional assumption `nyi88el` in graph)
- Visible to user: NO — zero Possible Interpretations sections on either examined Investigation; Current Understanding does not contain the distinction; Open Questions do not address it
- Selectable/investigable by user: NO
- **visible but non-investigable** (rendered as a Possible Interpretation informational card)
### ACCESSIBILITY CLASSIFICATION
rather than:
**D — NOT USER-EXPOSED**
- **not visible at all**.
Intervention-fit meaning exists in canonical reasoning state (Experiment 3 graph contained assumption `nyi88el`), but is absent from the normal user-facing Investigation surface. The Possible Interpretations section that would render assumption nodes exists as code but zero assumption-kind nodes meeting the filter criteria appear on either examined Investigation.
Experiment 4 did not resolve this. The uncertainty is recorded; it is not chosen between.
### Evidence
### THREE-LAYER STATUS
1. **Source trace:** reasoning-workspace.jsx lines 20292048 and 21872216 define Possible Interpretations rendering for assumption nodes — strictly informational, non-interactive `<div>` elements. Contrast with Open Questions at lines 18991910 which use clickable `<button>` elements invoking `startFocused()`.
2. **Source trace:** line 1865 comment explicitly states "(informational, not investigable)" — structural separation between unknown-kind (investigable) and assumption-kind (informational).
3. **Source trace:** Open Questions source is exclusively `n.kind === "unknown"` nodes (line 1856). No code exists that converts assumption meaning into an open question or makes assumptions investigable via UI interaction.
4. **Browser observation Investigation 1:** Current Understanding + Situation + 2 Open Questions visible. Zero Possible Interpretations sections.
5. **Browser observation Investigation 2:** Current Understanding + Situation + 7 Open Questions visible. Zero Possible Interpretations sections. Decomposition instability confirmed (7 questions vs 2 in Investigation 1).
6. **"What remains plausible" section** (lines 19831986): exists only inside `overviewState` conditional on the Report-generation surface, NOT as a persistent Investigation surface. Only appears when user clicks "Review current understanding."
7. **No cross-conversion path:** No code converts assumption nodes into selectable investigative paths. The kind distinction (assumption vs unknown) is structural, not cosmetic.
| Question | Answer |
|---|---|
| Represented in Experiment 3 canonical API result | YES |
| Would qualifying assumption-kind meaning be potentially renderable (by source) | YES |
| Would it be directly selectable/investigable as an Open Question (by current source structure) | NO |
| Was Experiment 3's specific assumption actually observed in rendered UI | NO |
| Was its actual visibility established | NO |
### PRODUCT-PRINCIPLE CHECK
- Engine selected what to investigate: NO (no steering in decomposition output)
- Engine prioritised a question: NO (zero prioritisation language observed)
- User retained choice among surfaced Open Questions: YES — all visible Open Questions are selectable buttons; user owns which to pursue first. However, the full set of uncertainty was not presented as investigable paths.
- User retained choice among surfaced Open Questions: YES — for whatever Open Questions the specific Investigation happens to contain, they are selectable buttons. However, the full set of uncertainty from Experiment 3 was not demonstrated as present in any examined Investigation.
### NEXT EVIDENCE QUESTION
> Before deciding whether the fix is semantic (initial decomposition should produce explicit intervention-fit unknowns) or structural (existing assumption-kind meaning must be projected into selectable Open Question surface), what does the persisted graph data in Experiment 3's Investigation actually contain — and do any of those nodes qualify for Possible Interpretations rendering?
> Given an exact captured `/api/cases/start` result containing an intervention-fit assumption, what is the smallest valid way to observe how that exact canonical graph projects into the existing Investigation UI without making another semantic/model call?
This question distinguishes whether the problem is:
- **Semantic:** decomposition never produced intervention-fit assumptions → no nodes to render
- **Structural:** assumption-kind nodes exist but are structurally barred from user selection
This is an apparatus/evidence question. No solution design included in this task.
### GIT