# 14 Sidex / MNote Workbench Gap Follow-up Review v1 > 状态:reference > > 归档说明(2026-05-21):本 follow-up review 已拆分出 `5-24`、`5-25`、`5-26`、`4-45` 等执行项;本文保留为后续 workbench 对照参考,不作为直接执行清单。 > > 日期:2026-05-21 > > 范围:在 12 号 review 已覆盖的基础上,继续对照 Sidex / VSCode workbench,收口当前仍最有价值的 editor/workbench 差距。 ## 1. 本轮背景 上一轮对照已经把 P0/P1 的大方向列出,也推动了 main resource tab、Office local writeback、side target、filetree action layer 的若干补齐。当前需要继续沿 Sidex / VSCode 对照,找出仍值得优先参考的 workbench 细节,避免把精力花在已经收口或不值得照搬的部分。 ## 2. 当前已收口或已在推进的部分 - `resourceTabRegistry` 已有基础的 active tab / close / URL state 行为。 - `openTarget=side` 已有轻量 side target 合同。 - `mindmap` 已能进入 main editor resource tab。 - `open/edit` 相关 Office 行为已区分默认 view、显式 edit、new-window 与 main resource tab。 - local folder sort order、close guard、filetree readonly action layer 已有对应 checklist。 ## 3. 仍值得继续参考 Sidex 的切面 ### 3.1 Open Editors 视图 / tab 模型聚合 VSCode 的 `OpenEditorsView` 不是单纯 tab strip,而是和 group model、dirty state、label refresh、active focus、drag and context menu 绑在一起。MNote 目前有 `resourceTabRegistry` 和 DOM tab strip,但还缺少一个更像“可被 Sidebar / 搜索 / 快捷键复用”的轻量 open editors 聚合视图。 ### 3.2 tab 键盘 / MRU / 上下文菜单动作一致性 VSCode 的 tab 组支持聚焦、左右切换、关闭、关闭其他、固定、上下文菜单等。MNote 当前主要靠鼠标点击和少量 close 行为,键盘 roving / MRU / group context action 仍可参考。 ### 3.3 资源打开目标的 resolver 集中化 Sidex 的 Explorer 不直接决定具体 editor 类型,而是统一交给 editor service + editor input resolver。MNote 现在的资源 open 逻辑已收拢不少,但正文附件、FileTree、side target、new-window 仍有分支,需要继续收敛到一个更明确的 resolver 入口。 ### 3.4 资源生命周期与 filetree / open editors 联动 VSCode 的 Open Editors / Explorer / working copy / dirty indicator 是一条链。MNote 需要继续确认: - tab 关闭和 dirty / saving / conflict 提示 - filetree active row 与 resource tab active state 的联动 - open editors 视图是否值得在当前阶段做成轻量聚合 ## 4. 不建议继续照搬的部分 - 不要直接引入完整多 group grid。 - 不要照搬完整 DI / service container。 - 不要把 Monaco 文本模型当成 MNote 主事实源。 - 不要把 VSCode 插件宿主体系当成当前主线。 ## 5. 本轮执行拆分 拆为四个方向并行推进: - `design/05-editor-mainline/done/5-24-open-editors-lightweight-view-checklist-v1.md` - `design/05-editor-mainline/done/5-25-editor-tab-keyboard-and-mru-checklist-v1.md` - `design/05-editor-mainline/process/5-26-resource-open-resolver-convergence-checklist-v1.md` - `design/04-tree-domain/process/4-45-filetree-open-editors-lifecycle-link-checklist-v1.md` ## 6. 预期结果 - 先用 review / checklist 明确还值得参考的 Sidex 切面。 - 再派发多个 Reasonix 并行执行。 - 由 Codex 复核是否真的能对齐 MNote 的主线,而不是把 VSCode 全量搬过来。