Skip to content

Commit a20531b

Browse files
committed
feat(agent-workspace): explain stable history continuity
1 parent c06913d commit a20531b

11 files changed

Lines changed: 114 additions & 23 deletions

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -471,10 +471,11 @@ It is conversation-product hardening on top of the shipped shell.
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.
472472
`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.
473473
`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.
474+
`M8.36` now explains recommendation stability across adjacent history events, so the current-atom history surface also shows when a newer event kept the same next step in place.
474475

475476
Priority order:
476477

477-
1. deepen personalization on top of the shipped primary/secondary/drift explanation surface,
478+
1. deepen personalization on top of the shipped primary/secondary/drift/stability explanation surface,
478479
2. expand broader operator rollups only when they clearly compound the same current-atom continuity loop,
479480
3. keep markdown-reader improvements secondary unless they clearly compound the same study loop.
480481

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

Lines changed: 25 additions & 9 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.35` 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.36` 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.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,
21+
- keep closing the correction/product/operator gap exposed after `M8.20-M8.36`,
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, `M8.35` as the adjacent-history drift explanation baseline, and `M8.36` as the adjacent-history stability explanation baseline,
2323
- 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.35)
26+
## Current Mainline Snapshot (2026-04-21 Baseline Split: Foundation M8.18 / Conversation M8.36)
2727

2828
- Foundation baseline on `main` is currently:
2929
- status `integrated`
@@ -37,12 +37,12 @@ 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.35)
40+
## Reconciliation Notes (2026-04-21 Post-M8.36)
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 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.
44+
- The active mainline question is also no longer whether tradeoff, drift, and stability explanation should be added.
45+
`M8.34`, `M8.35`, and `M8.36` now ship that continuity-explanation layer on the expanded history decision surface.
4646
- The next gap is no longer local explanation opacity.
4747
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.
4848
- Remote `main` CI is currently green on the latest push.
@@ -235,6 +235,22 @@ Execution anchor:
235235
- diagnostics snapshot coverage for stored preview payloads,
236236
- EN/ZH re-render coverage for localized preview text.
237237

238+
## Latest Mainline Increment (2026-04-21 M8.36 Active-Atom Adjacent History Stability Explanation)
239+
240+
- Extended the expanded history decision surface with adjacent-event stability explanation:
241+
- older current-atom history items now explain when the next recommended step stayed stable across newer adjacent events,
242+
- stability copy stays bounded to the already-available ranking inputs and the same local recent-history window,
243+
- the rail now makes repeated next-step continuity readable without forcing manual cross-card comparison.
244+
- Kept the slice frontend-bounded:
245+
- no backend route, API contract, persistence model, or capability schema changed,
246+
- stability resolution reuses the shipped follow-up descriptor logic plus the same bounded recent-history list.
247+
- Closed the next post-`M8.35` explanation gap:
248+
- operators no longer have to infer whether a newer adjacent event reinforced the same next step,
249+
- the continuity surface now explains both recommendation drift and recommendation stability in place.
250+
- Expanded regression coverage for:
251+
- adjacent history items rendering explicit stability explanation when the recommended next step remains unchanged across newer events,
252+
- EN/ZH rerender coverage for the new stability label plus explanation copy.
253+
238254
## Latest Mainline Increment (2026-04-21 M8.35 Active-Atom Adjacent History Drift Explanation)
239255

240256
- Extended the expanded history decision surface with adjacent-event drift explanation:
@@ -1405,8 +1421,8 @@ Note: foundation-lane gates now exist on `main`; keep them in the normal verific
14051421

14061422
1. Treat backend sufficiency as closed-by-default while the gate remains green; do not reopen heavier backend work without new measured pressure.
14071423
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.
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,
1424+
3. Make the next planning round about post-`M8.36` bounded conversation-product compounding:
1425+
- deepen personalization on top of the now-readable primary/secondary/drift/stability explanation surface,
14101426
- add broader operator rollup/reporting only when it compounds the same current-atom continuity loop,
14111427
- keep markdown-reader improvements secondary unless they strengthen the same study loop.
14121428
4. Treat notification-threshold governance as closed after `M7.29`; do not plan `M7.30+` unless a materially new operator requirement appears.

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,7 @@ 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-
- `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,
251+
- `M8.34` primary-vs-secondary tradeoff explanation, `M8.35` adjacent-history drift explanation, and `M8.36` adjacent-history stability explanation are now integrated on top of the shipped signal-enabled current-atom recent-activity card,
252252
- next only deepen personalization or broader operator rollups when they clearly compound that same readable current-atom continuity loop.
253253
2. markdown-reader improvement:
254254
- only when it clearly compounds knowledge review or focus-mode study loops.

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -459,10 +459,11 @@
459459
`M8.33` 现在又在这层 rationale surface 之上补上置信信号,让每条展开的 history item 直接暴露排序 / 新鲜度 / 备选可用性,而不是把建议可信度继续留给操作者自己猜。
460460
`M8.34` 现在又解释主建议为什么继续排在当前 secondary alternative 前面,让展开后的 history item 不再把主建议 vs 备选决策留成隐含信息。
461461
`M8.35` 现在又解释相邻 history event 之间的 recommendation drift,让当前 atom history surface 不再要求操作者手工对比多张展开卡片。
462+
`M8.36` 现在又解释相邻 history event 之间的 recommendation stability,让当前 atom history surface 也能直接说明“新事件是否继续保持同一下一步”。
462463

463464
优先顺序:
464465

465-
1. 在当前已落地的 primary/secondary/drift explanation surface 之上继续加深 personalization,
466+
1. 在当前已落地的 primary/secondary/drift/stability explanation surface 之上继续加深 personalization,
466467
2. 只有当更宽的 operator rollup 能明确复利同一 current-atom continuity loop 时才继续扩展,
467468
3. Markdown 阅读器提升继续保持次优先级,除非它能明确加强同一学习闭环。
468469

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

Lines changed: 25 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
## 范围
77

88
- 聚焦对象:本地优先学习平台(摄入、检索、学习路径、导师、记忆、治理)。
9-
- 时间窗口:`v1.7.0` 至 2026-04-21 foundation-integration checkpoint、2026-04-21 UTC CI 复盘周期,以及 post-`M8.35` 对齐复盘。
9+
- 时间窗口:`v1.7.0` 至 2026-04-21 foundation-integration checkpoint、2026-04-21 UTC CI 复盘周期,以及 post-`M8.36` 对齐复盘。
1010
- 证据规则:每条进展结论都需映射到:
1111
- 契约层(`src/learning/api.ts``src/learning/types.ts`),
1212
- 路由/运行时层(`src/server.ts`),
@@ -18,12 +18,12 @@
1818
当前重心是 **建立在已转绿 backend 基线之上的 conversation-product 加固**
1919

2020
- 让 backend sufficiency 继续作为常驻 decision gate,而不是继续占用主动执行预算,
21-
- 持续收口 `M8.20-M8.35` 之后暴露出的 correction / product / operator 缺口,
22-
-`M8.23` 视作 conversation-memory / correction action 的 operator-visibility 基线,将 `M8.24` 视作当前 atom action-surface 基线,将 `M8.25` 视作当前 atom pane-state continuity 基线,将 `M8.26` 视作当前 atom study-loop summary 基线,将 `M8.27` 视作当前 atom recent-result continuity 基线,将 `M8.28` 视作当前 atom result-preview 基线,将 `M8.29` 视作当前 atom history-drill-down 基线,将 `M8.30` 视作当前 atom history follow-up 基线,将 `M8.31` 视作当前 atom history freshness-ranking 基线,将 `M8.32` 视作当前 atom history rationale/alternative 基线,将 `M8.33` 视作当前 atom history confidence-signal 基线,将 `M8.34` 视作主建议 vs secondary alternative 解释基线,并将 `M8.35` 视作相邻 history drift 解释基线,
21+
- 持续收口 `M8.20-M8.36` 之后暴露出的 correction / product / operator 缺口,
22+
-`M8.23` 视作 conversation-memory / correction action 的 operator-visibility 基线,将 `M8.24` 视作当前 atom action-surface 基线,将 `M8.25` 视作当前 atom pane-state continuity 基线,将 `M8.26` 视作当前 atom study-loop summary 基线,将 `M8.27` 视作当前 atom recent-result continuity 基线,将 `M8.28` 视作当前 atom result-preview 基线,将 `M8.29` 视作当前 atom history-drill-down 基线,将 `M8.30` 视作当前 atom history follow-up 基线,将 `M8.31` 视作当前 atom history freshness-ranking 基线,将 `M8.32` 视作当前 atom history rationale/alternative 基线,将 `M8.33` 视作当前 atom history confidence-signal 基线,将 `M8.34` 视作主建议 vs secondary alternative 解释基线, `M8.35` 视作相邻 history drift 解释基线,并将 `M8.36` 视作相邻 history stability 解释基线,
2323
- 把剩余近端预算继续压在更深 personalization 与 operator rollup 质量上,而不是继续重开“本地 explanation 还不够”的缺口,
2424
- 远端 `main` CI 解释继续基于代码事实:最近一组已完整结束的主线工作流为绿色,新推送在整组工作流结束前只应视为 pending。
2525

26-
## 当前主线快照(2026-04-21 基线拆分:Foundation M8.18 / Conversation M8.35
26+
## 当前主线快照(2026-04-21 基线拆分:Foundation M8.18 / Conversation M8.36
2727

2828
- `main` 上的 foundation 基线当前为:
2929
- 状态 `integrated`
@@ -37,12 +37,12 @@
3737
- 下方“主线最新增量”章节按时间顺序保留历史记录。
3838
- 历史段落中出现的 `in_progress` / `no-go` 代表过去 checkpoint 结论,不代表当前仓库状态。
3939

40-
## 对齐备注(2026-04-21 Post-M8.35
40+
## 对齐备注(2026-04-21 Post-M8.36
4141

4242
- 当前主线问题已经不再是 backend sufficiency 是否还要继续推进。
4343
在 gate 继续为绿的前提下,这条 lane 默认视为闭环。
44-
- 当前主线问题也不再是“是否还需要补 tradeoff / drift explanation”。
45-
`M8.34``M8.35` 已经把这层 continuity explanation 落到展开的 history 决策面上。
44+
- 当前主线问题也不再是“是否还需要补 tradeoff / drift / stability explanation”。
45+
`M8.34``M8.35``M8.36` 已经把这层 continuity explanation 落到展开的 history 决策面上。
4646
- 当前剩余缺口不再是本地 explanation 不透明。
4747
下一步真正的问题是:在这块已可读的 current-atom history surface 之上,还要加多少 personalization 与 operator rollup 才值得。
4848
- 远端 `main` CI 当前在最新推送上为绿。
@@ -235,6 +235,22 @@
235235
- diagnostics snapshot 中 preview payload 的可见性,
236236
- EN/ZH 对 preview 文本的重渲覆盖。
237237

238+
## 主线最新增量(2026-04-21 M8.36 当前 Atom 相邻 History Stability 解释)
239+
240+
- 已把展开的 history 决策面继续补上相邻事件 stability explanation:
241+
- 较旧的当前 atom history item 现在会显式解释:为什么推荐下一步在更新的相邻事件之后仍保持稳定,
242+
- stability 文案继续只使用当前已存在的 ranking 输入与同一段本地 recent-history 窗口,
243+
- 操作者不再需要手工比对多张展开卡片,才能判断“新事件是否继续强化同一下一步”。
244+
- 继续保持 frontend-bounded:
245+
- 没有新增 backend route、API contract、持久化模型或 capability schema,
246+
- stability 解析完全复用已落地的 follow-up descriptor 逻辑与同一份有界 recent-history 列表。
247+
- 关闭了 post-`M8.35` 的下一处 explanation gap:
248+
- 更新的相邻 history event 是否继续强化同一 recommended next step,现在可以在原位读懂,
249+
- 当前 continuity surface 现在已同时解释 recommendation drift 与 recommendation stability。
250+
- 回归覆盖继续扩到:
251+
- 相邻 history item 在推荐动作保持不变时渲染显式 stability explanation,
252+
- EN/ZH 对新 stability label 与 explanation copy 的重渲覆盖。
253+
238254
## 主线最新增量(2026-04-21 M8.35 当前 Atom 相邻 History Drift 解释)
239255

240256
- 已把展开的 history 决策面继续补上相邻事件 drift explanation:
@@ -1408,8 +1424,8 @@ npm test -- src/learning/KnowledgeLearningPlatform.persistence.test.ts --runInBa
14081424

14091425
1. backend sufficiency 在 gate 继续为绿时默认视为已收口;没有新的 measured pressure 前,不重开更重 backend 工作。
14101426
2. 远端 `main` CI 继续以最近一组已完整结束的工作流为事实依据;只有出现新的失败 run,才重开 CI-triage 叙事。
1411-
3. 下一轮 planning 应只讨论 post-`M8.35` 的有界 conversation-product 复利:
1412-
- 在当前已可读的 primary/secondary/drift explanation surface 之上继续加深 personalization,
1427+
3. 下一轮 planning 应只讨论 post-`M8.36` 的有界 conversation-product 复利:
1428+
- 在当前已可读的 primary/secondary/drift/stability explanation surface 之上继续加深 personalization,
14131429
- 只有当更宽的 operator rollup / reporting 能复利同一 current-atom continuity loop 时才继续扩展,
14141430
- Markdown 阅读器提升继续保持次优先级,除非它能直接加强同一学习闭环。
14151431
4. notification-threshold 治理链路继续视为在 `M7.29` 后已收口;没有新的强运维需求前,不再规划 `M7.30+`

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@
247247
- 最小 correction / feedback 收口已经通过“缺失托管状态 -> 显式下一步提示”集成到主线,
248248
- conversation-memory / correction action 的 operator-facing visibility 已经通过持久化 diagnostics summary / index 计数集成到主线,
249249
- 围绕 focus mode 与 learning path 的更强 agent action surface 已经通过当前 atom quick-action rail、toolbar routing、continuity note / path-target diagnostics、capability-taxonomy summary card、recent-activity history card、这张卡上的本地化 result-detail preview、可展开的 history drill-down、确定性的 history follow-up affordance、这条 affordance 的 continuity-aware freshness ranking,以及有界的 rationale / secondary-alternative 渲染集成到主线,
250-
- `M8.34` 主建议 vs secondary alternative 解释与 `M8.35` 相邻 history drift 解释现已落在已经带 signal 的 current-atom recent-activity card 上,
250+
- `M8.34` 主建议 vs secondary alternative 解释、`M8.35` 相邻 history drift 解释与 `M8.36` 相邻 history stability 解释现已落在已经带 signal 的 current-atom recent-activity card 上,
251251
- 下一步只在它们能继续复利同一可读 continuity loop 时,再进入更深 personalization 或更宽的 operator rollup。
252252
2. markdown reader 提升:
253253
- 只有在它能明确加强知识 review 或 focus-mode 学习闭环时,再提升优先级。

0 commit comments

Comments
 (0)