docs(confidence-engine): record restored workspace findings

This commit is contained in:
2026-08-28 12:03:13 +01:00
parent 10cbcbdd05
commit 06f3f501d2
+104 -2
View File
@@ -1019,7 +1019,9 @@ The remaining boundaries are NOT persistence issues. They belong to the next fea
### v0.49 — MULTI-TURN / COLD-RETURN ACTIVITY VISIBILITY REPAIR (2026-08-28) ### v0.49 — MULTI-TURN / COLD-RETURN ACTIVITY VISIBILITY REPAIR (2026-08-28)
**Closed:** Multi-turn/cold-return regression in Open Question activity visibility (INVESTIGATING cue). **Checkpointed:** Single-turn visibility: passed. Multi-turn identity regression: repaired at 10cbcbd. Cold-return activity visibility: checkpointed subject to the canonical identity rule (`c.targetNodeId === nodeId || c.originatingTargetNodeId === nodeId`).
**This repair does NOT solve** restored workspace lifecycle or reopened Finding interaction controls (see RESTORE / PRESENTATION FINDINGS section below).
**Root cause:** `ThreadContributionsBadge`, `PriorContributionsSummary`, and `SecondaryPreviousLearning` all filtered contributions via `c.targetNodeId === nodeId`. Multi-turn follow-up Contributions carry a different immediate `targetNodeId` while the canonical origin remains on Findings (`originatingTargetNodeId`). When only the follow-up turn survives cold return, the filter finds zero matches. **Root cause:** `ThreadContributionsBadge`, `PriorContributionsSummary`, and `SecondaryPreviousLearning` all filtered contributions via `c.targetNodeId === nodeId`. Multi-turn follow-up Contributions carry a different immediate `targetNodeId` while the canonical origin remains on Findings (`originatingTargetNodeId`). When only the follow-up turn survives cold return, the filter finds zero matches.
@@ -1035,6 +1037,104 @@ The remaining boundaries are NOT persistence issues. They belong to the next fea
--- ---
## RESTORE / PRESENTATION FINDINGS — MANUAL USER-PATH (2026-08-28)
### Open restore / focused-workspace presentation issue
The following findings were established by manual user-path testing after the v0.49 multi-turn activity visibility repair at 10cbcbd. They are **separate and additional** to that repair; the identity fix for INVESTIGING cue on Open Question cards remains valid and unimpaired.
#### A. Cold return can land on underlying investigation surface rather than focused-overlay
After manually completing focused investigation work, closing the browser, and returning later:
- The application can hydrate into the **underlying/main investigation surface** (case overview + situation + open questions with INVESTIGING cues) rather than automatically reopening the focused-investigation overlay.
- The main/restored surface includes: Open Questions (with INVESTIGING cues), Situation, persisted investigation content, and a saved-state message/banner stating that previous investigation state is still saved and can continue or restart.
- **No focused overlay is automatically reopened.**
This indicates there appear to be **distinct presentation states**:
A. Restored underlying investigation surface (case overview)
B. Focused-investigation overlay (opened per Open Question)
The ownership / lifecycle relationship between A and B has NOT yet been traced or resolved.
#### B. Restored surface + saved-state banner presents semantically odd signal
The main investigation is already visibly restored when the UI simultaneously presents messaging equivalent to:
> "Your previous investigation state is still saved. You can continue where you left off or start fresh."
This may indicate a **restored/resumed workspace-state distinction** that is not currently obvious to the user.
**Do not conclude persistence is broken.** Persistence remains demonstrated working. This is a **presentation / workspace-lifecycle observation**.
#### C. Reopened focused stream loses Finding interaction controls
After returning to the restored investigation and manually reopening the previously investigated focused stream:
- Prior Finding proposition(s) are visible under "What this tells us"
- The Finding text itself survives
- **The controls "Not quite" / "Not relevant" are absent**
This differs from the live current-turn focused surface where canonical Findings display those controls.
**REOPENED CANONICAL FINDING CONTROLS — UNRESOLVED**
Leading hypothesis (unproved): the reopened/restored rendering path may be presenting Contribution-derived observation text or another historical representation instead of the same canonical Finding objects used by the live current-turn path. **This is NOT YET PROVED.**
---
### Separation from prior repair
The recent activity-visibility repair at 10cbcbd:
- Repaired INVESTIGATING cue identity for direct/originating focused-thread identity via `c.targetNodeId === nodeId || c.originatingTargetNodeId === nodeId`
- **Does NOT solve** restored workspace lifecycle (section A)
- **Does NOT solve** reopened Finding interaction controls (section C)
These are distinct issues with distinct boundary surfaces.
### What remains proved (unchanged from prior handoff)
- post-authoritative Current Understanding isolation was proved
- Done-for-now promotion was deterministically and live verified
- promotion survives reload
- no case/update or extra LLM call is required for Done-for-now promotion
The new manual observations are **presentation/lifecycle issues downstream of persisted state**, not evidence that the promotion seam failed. Do NOT reopen those completed v0.49 findings.
### What remains unresolved
| Item | Status |
|------|--------|
| Cold-return can land on underlying surface rather than focused overlay | MANUALLY OBSERVED — unproven presentation/lifecycle gap |
| Saved-state banner + already-restored investigation signal | MANUALLY OBSERVED — semantic oddity of workspace state |
| Reopened Finding proposition survives | PROVED (text persists) |
| Reopened Not quite / not relevant controls absent | UNRESOLVED — hypothesis noted, root cause unproved |
### NEXT BOUNDARY — REOPENED FOCUSED FINDING PRESENTATION / RESTORE WORKSPACE OWNERSHIP
**Do NOT implement this trace now. Record as next bounded investigation.**
The immediate next trace should compare:
| LIVE CURRENT-TURN FOCUSED RENDERING | versus | COLD-RESTORED / REOPENED FOCUSED RENDERING |
|---|---|---|
| canonical Finding objects present | vs | whether same objects survive reopen |
| Finding.id available | vs | identity continuity |
| proposition | vs | wording continuity |
| userDisposition available | vs | disposition survival |
| onUpdateFindingDisposition | vs | callback availability |
| onUpdateFindingProposition | vs | rewording availability |
The trace must identify the **first boundary** where any of the fields above stop being available or stop being rendered.
Also trace whether:
- the main restored surface (A) and the focused overlay (B) are driven by **distinct lifecycle/presentation state**, and if so, what governs the transition between them;
- the reopened Finding controls gap is a rendering-path difference or a data-model gap.
---
### BRANCH CLEAN STATE ### BRANCH CLEAN STATE
This branch has NO tracked working tree changes at HEAD b215846. Documentation closure recorded in this section only. No production or test modifications required. This branch has NO tracked working tree changes at HEAD b215846. Documentation closure recorded in this section only. No production or test modifications required.
@@ -1589,6 +1689,7 @@ With Contribution persistence demonstrated working, the remaining unresolved bou
1. **Follow-up selected-question duplication** (OPEN UI ISSUE) — proposed follow-up appears simultaneously as ACTIVE QUESTION and STILL-AVAILABLE FOLLOW-UP; proposal state vs active-question state disconnect 1. **Follow-up selected-question duplication** (OPEN UI ISSUE) — proposed follow-up appears simultaneously as ACTIVE QUESTION and STILL-AVAILABLE FOLLOW-UP; proposal state vs active-question state disconnect
2. **Focused → global ownership/integration** (STILL OPEN) — how accumulated focused Findings map into the global SituationGraph reasoning layer 2. **Focused → global ownership/integration** (STILL OPEN) — how accumulated focused Findings map into the global SituationGraph reasoning layer
3. **Current Understanding incorporating focused learning** (STILL OPEN) — narrative understanding should be reconstructed from globally eligible Findings + graph state, not directly from latest focused result 3. **Current Understanding incorporating focused learning** (STILL OPEN) — narrative understanding should be reconstructed from globally eligible Findings + graph state, not directly from latest focused result
4. **Reopened focused Finding presentation / restore workspace ownership** (NEW — MANUAL OBSERVATION) — cold return can land on underlying surface; reopened Finding controls absent
**Selected next boundary: Focused → global Finding integration / Previous Learning presentation.** **Selected next boundary: Focused → global Finding integration / Previous Learning presentation.**
@@ -1641,11 +1742,12 @@ State: 1 contribution targeting n58lwnx, 3 findings.
- No CSS animation, transition, or expansion behavior — just a static indicator. - No CSS animation, transition, or expansion behavior — just a static indicator.
- Does NOT affect which cards are clickable/investigable (UNCLEAR handles that). - Does NOT affect which cards are clickable/investigable (UNCLEAR handles that).
#### Remaining open boundaries (unchanged) #### Remaining open boundaries
1. **Follow-up selected-question duplication** (OPEN UI ISSUE) — proposed follow-up appears simultaneously as ACTIVE QUESTION and STILL-AVAILABLE FOLLOW-UP; proposal state vs active-question state disconnect 1. **Follow-up selected-question duplication** (OPEN UI ISSUE) — proposed follow-up appears simultaneously as ACTIVE QUESTION and STILL-AVAILABLE FOLLOW-UP; proposal state vs active-question state disconnect
2. **Focused → global ownership/integration** (STILL OPEN) — how accumulated focused Findings map into the global SituationGraph reasoning layer 2. **Focused → global ownership/integration** (STILL OPEN) — how accumulated focused Findings map into the global SituationGraph reasoning layer
3. **Current Understanding incorporating focused learning** (STILL OPEN) — narrative understanding should be reconstructed from globally eligible Findings + graph state, not directly from latest focused result 3. **Current Understanding incorporating focused learning** (STILL OPEN) — narrative understanding should be reconstructed from globally eligible Findings + graph state, not directly from latest focused result
4. **Reopened focused Finding presentation / restore workspace ownership** (NEW — MANUAL OBSERVATION) — cold return can land on underlying surface; reopened Finding controls absent
**Selected next boundary: Focused → global Finding integration / Previous Learning presentation.** **Selected next boundary: Focused → global Finding integration / Previous Learning presentation.**