|
| 1 | +--- |
| 2 | +date: 2026-04-21 |
| 3 | +topic: mainline-progress-reconciliation-after-m8-33 |
| 4 | +--- |
| 5 | + |
| 6 | +# Mainline Progress Reconciliation After M8.33 Requirements |
| 7 | + |
| 8 | +## Problem Frame |
| 9 | + |
| 10 | +`main` no longer needs another abstract discussion about whether the conversation-product lane exists. |
| 11 | +That question was already answered by backend sufficiency governance plus the shipped `M8.24-M8.33` active-atom surface. |
| 12 | + |
| 13 | +As of `01b25fc`, current mainline reality is: |
| 14 | + |
| 15 | +- backend sufficiency is a standing gate, not the active execution lane, |
| 16 | +- remote `main` CI is green on the latest push, |
| 17 | +- the active product lane is the current-atom recent-activity card and its follow-up decision surface, |
| 18 | +- the remaining gap is not "add more product surface" in general, but "which missing explanation unit still forces the operator to reason by hand?" |
| 19 | + |
| 20 | +The stale risk is now documentation drift, not missing code discovery: |
| 21 | + |
| 22 | +- older checkpoint docs still stop at `M8.21` or `M8.32`, |
| 23 | +- some headings still frame the current snapshot around the foundation baseline marker `M8.18`, which is true for the backend baseline but misleading for the current conversation-product lane, |
| 24 | +- the next-direction wording is still broader than the code now justifies. |
| 25 | + |
| 26 | +## Verified Mainline Reality |
| 27 | + |
| 28 | +- `main` currently points at `01b25fc`. |
| 29 | +- Latest remote `main` workflow set for that commit is green: |
| 30 | + - `Migration Gates` |
| 31 | + - `Fixrisk Operational Readiness` |
| 32 | + - `Mobile E2E Detox Contracts` |
| 33 | + - `Docs Diataxis Site` |
| 34 | + - `Docs GitHub Pages Publish` |
| 35 | +- Current active-atom conversation surface already ships: |
| 36 | + - quick-action rail and active-card routing, |
| 37 | + - focus/path coexistence and fullscreen lifecycle, |
| 38 | + - latest study-action summaries, |
| 39 | + - recent current-atom activity history, |
| 40 | + - localized result previews, |
| 41 | + - expandable history drill-down, |
| 42 | + - deterministic follow-up actions, |
| 43 | + - freshness-aware suggestion ranking, |
| 44 | + - rationale plus secondary alternative, |
| 45 | + - confidence signals derived from rank, freshness, recent-step skip, and alternative availability. |
| 46 | +- Current local verification baseline already proves this lane: |
| 47 | + - `npm run test:agent-workspace:contracts` |
| 48 | + - `npm run verify:agent-workspace:runtime` |
| 49 | + - `npm run docs:diataxis:check` |
| 50 | + - `npm run docs:site:build` |
| 51 | + |
| 52 | +## Deep Comparison: Prior Direction vs Current Code |
| 53 | + |
| 54 | +| Prior source | Earlier direction | Current code reality | Judgment | Consequence | |
| 55 | +| --- | --- | --- | --- | --- | |
| 56 | +| `docs/brainstorms/2026-04-20-mainline-checkpoint-ci-hardening-and-post-m8-direction-requirements.md` | foundation/backend independence should dominate next planning | backend sufficiency is already closed-by-default while the gate stays green; `M8.24-M8.33` shipped afterward | stale as current direction | keep as archive checkpoint, not current execution source | |
| 57 | +| `docs/brainstorms/2026-04-21-mainline-conversation-product-hardening-after-m8-21-requirements.md` | narrow next lane to correction/operator/focus surfaces after `M8.21` | that narrowing was directionally correct, but mainline has already shipped through `M8.33` and needs a stricter next-unit definition | correct but incomplete | supersede as current top-level direction record | |
| 58 | +| `docs/diataxis/*/explanation/development-progress-dashboard.md` | current top lane is post-`M8.33` continuity explanation quality | true, but still too broad and one heading still mixes foundation marker `M8.18` with current product state | partially stale wording | refine headings and next-direction bullets to concrete `M8.34/M8.35` units | |
| 59 | +| `docs/diataxis/*/explanation/agent-conversation-focus-mode-plan.md` | explanation-quality work should continue after `M8.33` | true, but the next unit is no longer generic “more confidence signals”; that landed already | needs narrowing | update priority order to the missing explanation units only | |
| 60 | +| `docs/diataxis/*/explanation/local-backend-sufficiency-and-escalation-plan.md` | next budget belongs to product/memory/operator surface | still correct | not stale, but still category-level | tighten wording to concrete post-`M8.33` units | |
| 61 | + |
| 62 | +## Critical Findings |
| 63 | + |
| 64 | +1. Remote `main` CI is not the blocker. |
| 65 | + Current documentation should stop speaking as if CI repair is an active lane unless a fresh failing run exists. |
| 66 | + |
| 67 | +2. “Add confidence signals” is no longer a valid next-step description. |
| 68 | + `M8.33` already shipped that slice. |
| 69 | + |
| 70 | +3. The current explanation gap is narrower: |
| 71 | + the UI still tells the operator which step is primary and that another alternative exists, |
| 72 | + but it still does not explain why primary beat secondary using the ranking inputs already available. |
| 73 | + |
| 74 | +4. A second gap remains adjacent to that one: |
| 75 | + when the recommended next step changes across adjacent history events, the operator still has to manually compare expanded cards to infer the drift reason. |
| 76 | + |
| 77 | +## Next Direction |
| 78 | + |
| 79 | +The next bounded units should be: |
| 80 | + |
| 81 | +1. `M8.34` primary-vs-secondary tradeoff explanation: |
| 82 | + - show why the primary action beat the surfaced secondary alternative, |
| 83 | + - stay inside existing ranking inputs only: candidate order, recent-step skip, fallback vs typed capability, freshness. |
| 84 | +2. `M8.35` confidence-drift explanation across adjacent history items: |
| 85 | + - explain why a newer event changed the recommended next step, |
| 86 | + - avoid forcing the operator to compare two expanded cards manually. |
| 87 | +3. only then deeper personalization or operator rollups: |
| 88 | + - user-specific adaptation, |
| 89 | + - broader correction/memory reporting, |
| 90 | + - larger product-side memory orchestration. |
| 91 | +4. markdown-reader work remains secondary until this explanation lane stops being the highest-leverage gap. |
| 92 | + |
| 93 | +## Requirements |
| 94 | + |
| 95 | +**Truth Refresh** |
| 96 | +- R1. Add this post-`M8.33` reconciliation document as the new current source-of-truth item. |
| 97 | +- R2. `docs/brainstorms/index.md` must list it first under `Current`. |
| 98 | +- R3. EN/ZH development dashboards must reference it first in execution anchors and plan-alignment sections. |
| 99 | +- R4. EN/ZH dashboards must stop using the bare heading `Current Mainline Snapshot (2026-04-21 M8.18)` because it confuses the foundation baseline marker with the current product lane. |
| 100 | + |
| 101 | +**Direction Narrowing** |
| 102 | +- R5. EN/ZH dashboard next-direction sections must explicitly name `M8.34` and `M8.35` as the next bounded units. |
| 103 | +- R6. EN/ZH focus-mode delivery pages must use the same narrowed order. |
| 104 | +- R7. EN/ZH backend-sufficiency pages must preserve “backend closed-by-default” language and point the next budget at the same narrowed units. |
| 105 | +- R8. No current-facing doc may describe remote `main` CI repair as the active blocker unless a fresh failing run exists. |
| 106 | + |
| 107 | +**Scope Control** |
| 108 | +- R9. No document update may reopen backend escalation as the default next lane. |
| 109 | +- R10. No document update may imply markdown-reader work moved ahead of the conversation-product explanation lane. |
| 110 | +- R11. No document update may claim operator-wide correction reporting is already shipped; it is still a later unit. |
| 111 | + |
| 112 | +## Success Criteria |
| 113 | + |
| 114 | +- this document exists and is linked first from the brainstorm index, |
| 115 | +- EN/ZH development dashboards point to it first and use narrowed post-`M8.33` next-direction wording, |
| 116 | +- EN/ZH focus-mode and backend-sufficiency pages align with the same bounded units, |
| 117 | +- docs verification passes, |
| 118 | +- `main` is updated, |
| 119 | +- remote `main` CI stays green, |
| 120 | +- worktree is clean after push. |
| 121 | + |
| 122 | +## Scope Boundaries |
| 123 | + |
| 124 | +- This document does not reopen backend implementation. |
| 125 | +- This document does not add a new memory platform. |
| 126 | +- This document does not claim operator-wide correction history is complete. |
| 127 | +- This document does not reprioritize markdown-reader work ahead of the current conversation-product lane. |
| 128 | + |
| 129 | +## Recommended Execution Order |
| 130 | + |
| 131 | +1. update the brainstorm index, |
| 132 | +2. refresh EN/ZH development dashboards, |
| 133 | +3. refresh EN/ZH focus-mode and backend-sufficiency explanation pages, |
| 134 | +4. run docs verification, |
| 135 | +5. push to `main`, |
| 136 | +6. confirm remote CI green and clean worktree. |
0 commit comments