Skip to content

Commit c06913d

Browse files
committed
feat(agent-workspace): explain history tradeoffs and drift
Extend expanded current-atom history items with explicit primary-vs- secondary tradeoff copy and adjacent-event drift explanation, keep the surface bilingual, and refresh the progress docs so mainline now records M8.34/M8.35 as shipped.
1 parent 5da463f commit c06913d

11 files changed

Lines changed: 409 additions & 44 deletions

docs/diataxis/en/explanation/agent-conversation-focus-mode-plan.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -469,13 +469,14 @@ It is conversation-product hardening on top of the shipped shell.
469469
`M8.31` now makes those follow-up suggestions continuity-aware, so older history entries skip already-completed recent steps when a fresher deterministic action exists.
470470
`M8.32` now explains those freshness-aware suggestions and exposes one secondary alternative, so expanded history items read like bounded decision surfaces instead of opaque action picks.
471471
`M8.33` now layers confidence signals onto that rationale surface, so each expanded history item exposes rank/freshness/alternative-availability evidence instead of leaving suggestion certainty implicit.
472+
`M8.34` now explains why the primary follow-up stayed ahead of the surfaced secondary alternative, so expanded history items no longer leave the primary-vs-secondary choice implicit.
473+
`M8.35` now explains recommendation drift across adjacent history events, so the current-atom history surface no longer requires manual cross-card comparison for that change.
472474

473475
Priority order:
474476

475-
1. `M8.34`: explain why the primary follow-up beat the surfaced secondary alternative using existing ranking inputs only,
476-
2. `M8.35`: explain confidence drift when adjacent history events change the recommended next step,
477-
3. only then deeper personalization work,
478-
4. markdown-reader improvements only when they clearly compound the same study loop.
477+
1. deepen personalization on top of the shipped primary/secondary/drift explanation surface,
478+
2. expand broader operator rollups only when they clearly compound the same current-atom continuity loop,
479+
3. keep markdown-reader improvements secondary unless they clearly compound the same study loop.
479480

480481
## Related Pages
481482

docs/diataxis/en/explanation/development-progress-dashboard.md

Lines changed: 46 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ It explicitly separates branch-level implementation status from mainline integra
66
## Scope
77

88
- Focus area: local-first knowledge mastery platform (ingest, retrieval, learning path, tutor, memory, governance).
9-
- Time window: `v1.7.0` through the 2026-04-21 foundation-integration checkpoint, the 2026-04-21 UTC CI review cycle, and the post-`M8.33` reconciliation pass.
9+
- Time window: `v1.7.0` through the 2026-04-21 foundation-integration checkpoint, the 2026-04-21 UTC CI review cycle, and the post-`M8.35` reconciliation pass.
1010
- Evidence rule: every progress claim must map to:
1111
- contract layer (`src/learning/api.ts`, `src/learning/types.ts`),
1212
- route/runtime layer (`src/server.ts`),
@@ -18,12 +18,12 @@ Current top priority is not feature-count expansion.
1818
Current top priority is **conversation-product hardening on top of the already-green backend baseline**:
1919

2020
- keep backend sufficiency as a standing decision gate rather than an active execution lane,
21-
- keep closing the correction/product/operator gap exposed after `M8.20-M8.33`,
22-
- treat `M8.23` as the operator-visibility baseline for conversation-memory/correction actions, `M8.24` as the active-atom action-surface baseline, `M8.25` as the active-atom pane-state continuity baseline, `M8.26` as the active-atom study-loop summary baseline, `M8.27` as the active-atom recent-result continuity baseline, `M8.28` as the active-atom result-preview baseline, `M8.29` as the active-atom history-drill-down baseline, `M8.30` as the active-atom history follow-up baseline, `M8.31` as the active-atom history freshness-ranking baseline, `M8.32` as the active-atom history rationale/alternative baseline, and `M8.33` as the active-atom history confidence-signal baseline,
23-
- keep the remaining near-term budget on deeper continuity explanation quality around alternative tradeoffs and confidence drift instead of reopening backend scope,
21+
- keep closing the correction/product/operator gap exposed after `M8.20-M8.35`,
22+
- treat `M8.23` as the operator-visibility baseline for conversation-memory/correction actions, `M8.24` as the active-atom action-surface baseline, `M8.25` as the active-atom pane-state continuity baseline, `M8.26` as the active-atom study-loop summary baseline, `M8.27` as the active-atom recent-result continuity baseline, `M8.28` as the active-atom result-preview baseline, `M8.29` as the active-atom history-drill-down baseline, `M8.30` as the active-atom history follow-up baseline, `M8.31` as the active-atom history freshness-ranking baseline, `M8.32` as the active-atom history rationale/alternative baseline, `M8.33` as the active-atom history confidence-signal baseline, `M8.34` as the primary-vs-secondary tradeoff explanation baseline, and `M8.35` as the adjacent-history drift explanation baseline,
23+
- keep the remaining near-term budget on deeper personalization and operator rollup quality now that the continuity-explanation gap is closed on the active history surface,
2424
- keep remote `main` CI interpretation evidence-based: the latest fully completed `main` workflow set is green, and new pushes should be treated as pending until their workflow set finishes.
2525

26-
## Current Mainline Snapshot (2026-04-21 Baseline Split: Foundation M8.18 / Conversation M8.33)
26+
## Current Mainline Snapshot (2026-04-21 Baseline Split: Foundation M8.18 / Conversation M8.35)
2727

2828
- Foundation baseline on `main` is currently:
2929
- status `integrated`
@@ -37,15 +37,14 @@ Current top priority is **conversation-product hardening on top of the already-g
3737
- Historical increment sections below remain chronological archive entries.
3838
- When a historical section says `in_progress` / `no-go`, read it as past checkpoint truth rather than current repo state.
3939

40-
## Reconciliation Notes (2026-04-21 Post-M8.33)
40+
## Reconciliation Notes (2026-04-21 Post-M8.35)
4141

4242
- The active mainline question is no longer whether backend sufficiency work should continue.
4343
That lane is closed-by-default while its gate stays green.
44-
- The active mainline question is also no longer whether confidence signals should be added.
45-
`M8.33` already shipped that slice on the expanded history decision surface.
46-
- The remaining explanation gap is narrower and code-shaped:
47-
- the UI still does not explain why the primary follow-up beat the surfaced secondary alternative,
48-
- the UI still does not explain recommendation drift across adjacent history events without manual comparison.
44+
- The active mainline question is also no longer whether tradeoff and drift explanation should be added.
45+
`M8.34` and `M8.35` now ship that continuity-explanation layer on the expanded history decision surface.
46+
- The next gap is no longer local explanation opacity.
47+
The remaining product question is how much deeper personalization and operator rollup value should sit on top of this now-readable current-atom history surface.
4948
- Remote `main` CI is currently green on the latest push.
5049
Current-facing docs must treat CI repair as dormant unless a fresh failing run exists.
5150

@@ -236,6 +235,38 @@ Execution anchor:
236235
- diagnostics snapshot coverage for stored preview payloads,
237236
- EN/ZH re-render coverage for localized preview text.
238237

238+
## Latest Mainline Increment (2026-04-21 M8.35 Active-Atom Adjacent History Drift Explanation)
239+
240+
- Extended the expanded history decision surface with adjacent-event drift explanation:
241+
- older current-atom history items now explain when a newer adjacent event changed the recommended next step,
242+
- drift copy stays bounded to the already-available ranking inputs instead of introducing new scoring state,
243+
- the rail now makes recommendation drift readable without forcing manual comparison across expanded cards.
244+
- Kept the slice frontend-bounded:
245+
- no backend route, API contract, persistence model, or capability schema changed,
246+
- drift resolution reuses the same bounded recent-history list plus the shipped follow-up descriptor logic.
247+
- Closed the second post-`M8.33` explanation gap:
248+
- operators no longer have to infer adjacent-event recommendation changes by hand,
249+
- the continuity surface now explains both confidence posture and recommendation drift in place.
250+
- Expanded regression coverage for:
251+
- adjacent history items rendering explicit drift explanation when the recommended next step changes,
252+
- EN/ZH rerender coverage for the new drift label plus tradeoff explanation copy.
253+
254+
## Latest Mainline Increment (2026-04-21 M8.34 Active-Atom Primary-vs-Secondary Tradeoff Explanation)
255+
256+
- Extended the expanded history follow-up surface with explicit primary-vs-secondary tradeoff explanation:
257+
- each expanded current-atom history item now states why the primary follow-up stayed ahead of the surfaced secondary alternative,
258+
- tradeoff copy stays bounded to existing ranking inputs: candidate order, freshness, and typed-vs-fallback availability,
259+
- secondary alternatives remain actionable while the rail now explains why they were not promoted.
260+
- Kept the slice frontend-bounded:
261+
- no backend route, API contract, persistence model, or capability schema changed,
262+
- tradeoff resolution reuses the shipped follow-up candidate ordering plus the existing point capability/fallback model.
263+
- Closed the first post-`M8.33` explanation gap:
264+
- operators no longer have to infer why one surfaced alternative remained secondary,
265+
- the current-atom history card now explains the primary-vs-secondary decision before deeper personalization work.
266+
- Expanded regression coverage for:
267+
- explicit tradeoff copy on expanded history items,
268+
- EN/ZH rerender coverage for the new tradeoff label and explanation copy.
269+
239270
## Latest Mainline Increment (2026-04-21 M8.33 Active-Atom History Confidence Signals)
240271

241272
- Extended the expanded history follow-up surface with explicit confidence evidence:
@@ -1374,11 +1405,10 @@ Note: foundation-lane gates now exist on `main`; keep them in the normal verific
13741405

13751406
1. Treat backend sufficiency as closed-by-default while the gate remains green; do not reopen heavier backend work without new measured pressure.
13761407
2. Treat remote `main` CI as evidence-bound to the latest fully completed workflow set; only reopen CI-triage narrative when a fresh failing run exists.
1377-
3. Make the next planning round about post-`M8.33` bounded conversation-product hardening:
1378-
- `M8.34`: explain why the primary follow-up beat the surfaced secondary alternative using existing ranking inputs only,
1379-
- `M8.35`: explain confidence drift when adjacent history events change the recommended next step,
1380-
- only then deeper personalization work,
1381-
- markdown-reader improvements only when they compound the same study loop.
1408+
3. Make the next planning round about post-`M8.35` bounded conversation-product compounding:
1409+
- deepen personalization on top of the now-readable primary/secondary/drift explanation surface,
1410+
- add broader operator rollup/reporting only when it compounds the same current-atom continuity loop,
1411+
- keep markdown-reader improvements secondary unless they strengthen the same study loop.
13821412
4. Treat notification-threshold governance as closed after `M7.29`; do not plan `M7.30+` unless a materially new operator requirement appears.
13831413
5. Keep markdown-reader governance bounded and secondary until the conversation-product lane is explicitly reprioritized.
13841414

docs/diataxis/en/explanation/local-backend-sufficiency-and-escalation-plan.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,8 @@ Recommended next product order:
248248
- the minimum correction / feedback closure is now integrated through explicit next-step guidance on missing managed state,
249249
- operator-facing visibility for conversation-memory and correction actions is now integrated through persisted diagnostics summary/index counts,
250250
- stronger agent action surfaces around focus mode and learning path are now integrated through the active-atom quick-action rail, toolbar routing, continuity notes/path-target diagnostics, capability-taxonomy summary cards, the recent-activity history card, localized result-detail previews on that history surface, expandable history drill-down, deterministic history follow-up affordances, continuity-aware freshness ranking for those affordances, and bounded rationale/secondary-alternative rendering,
251-
- next prioritize `M8.34` primary-vs-secondary tradeoff explanation and `M8.35` confidence-drift explanation on top of the shipped signal-enabled current-atom recent-activity card before deeper personalization work.
251+
- `M8.34` primary-vs-secondary tradeoff explanation and `M8.35` adjacent-history drift explanation are now integrated on top of the shipped signal-enabled current-atom recent-activity card,
252+
- next only deepen personalization or broader operator rollups when they clearly compound that same readable current-atom continuity loop.
252253
2. markdown-reader improvement:
253254
- only when it clearly compounds knowledge review or focus-mode study loops.
254255

docs/diataxis/zh/explanation/agent-conversation-focus-mode-plan.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -457,13 +457,14 @@
457457
`M8.31` 现在又让这条 follow-up suggestion 具备 continuity-aware freshness:只要存在更新鲜的确定性动作,较旧 history item 就会跳过已经完成过的近期步骤。
458458
`M8.32` 现在又给这条 freshness-aware suggestion 补上原因解释与一个 secondary alternative,让展开后的 history item 更像有界决策面,而不是黑盒动作推荐。
459459
`M8.33` 现在又在这层 rationale surface 之上补上置信信号,让每条展开的 history item 直接暴露排序 / 新鲜度 / 备选可用性,而不是把建议可信度继续留给操作者自己猜。
460+
`M8.34` 现在又解释主建议为什么继续排在当前 secondary alternative 前面,让展开后的 history item 不再把主建议 vs 备选决策留成隐含信息。
461+
`M8.35` 现在又解释相邻 history event 之间的 recommendation drift,让当前 atom history surface 不再要求操作者手工对比多张展开卡片。
460462

461463
优先顺序:
462464

463-
1. `M8.34`:只用现有 ranking 输入解释主建议为什么赢过当前展示的 secondary alternative,
464-
2. `M8.35`:解释相邻 history event 之间推荐动作为何发生 confidence drift,
465-
3. 之后才进入更深的 personalization 工作,
466-
4. Markdown 阅读器提升只有在能明确复利同一学习闭环时才进入前列。
465+
1. 在当前已落地的 primary/secondary/drift explanation surface 之上继续加深 personalization,
466+
2. 只有当更宽的 operator rollup 能明确复利同一 current-atom continuity loop 时才继续扩展,
467+
3. Markdown 阅读器提升继续保持次优先级,除非它能明确加强同一学习闭环。
467468

468469
## 关联页面
469470

0 commit comments

Comments
 (0)