# 1-8 [process] MVP 后阶段 process 执行总序 v1 > 创建时间:2026-05-21 > > 当前状态:`PROCESS` > > 目标:把本轮 design governance 后剩余的主线 `process/` 文档排成可执行顺序,避免后续 worker 在 active process 中自行猜优先级。 > > 上位依据: > - `/mnt/Data1T/mnote/ARCHITECTURE.md` > - `/mnt/Data1T/mnote/CURRENT_ARCHITECTURE.md` > - `/mnt/Data1T/mnote/design/README.md` > - `/mnt/Data1T/mnote/design/01-05-current-priority-overview.md` > - `/mnt/Data1T/mnote/design/10-review/done/15-design-governance-mvp-post-review-v1.md` ## 1. 一句话顺序 后续执行顺序固定为: > **先补阻塞验证和工作区身份底座,再收 Page Aggregate / BufferStore / live cache / command context,随后补资源打开与文件树 action,最后扩 AI、mindmap、Wolai 对标和远期分享同步。** 不要从 `process/` 中按编号顺序机械执行。编号只代表历史产生顺序,不代表当前优先级。 ## 2. 状态分类 ### 2.1 Active Process 代表仍需继续推进的执行或架构收口文档。 判定规则: - 有未完成 checklist。 - 或者是当前主线架构入口,仍会指导后续实现。 - 或者有明确阻塞项、smoke 缺口、compat 瘦身缺口。 ### 2.2 Reference 放在对应大类的 `reference/`,不是当前直接执行 checklist。 典型文档: - 参考实现采用矩阵。 - Wolai / 思源 / Sidex / Hermes 对照证据。 - P3 / future 候选合同。 - 已拆成执行 checklist 的 review 原始证据。 处理规则: - 不迁入 `done/`,因为不是“当前代码已完成”的实现文档。 - 不保留在 `process/`,避免干扰后续执行队列。 - 不当作当前 sprint 的任务源。 - 需要转实施时,新建更小的执行 checklist。 ### 2.3 Done / Old - 已完成且有真实代码、测试、smoke 或明确验收证据:移动到同域 `done/`。 - 已被覆盖且口径过时但未完成:移动到 `design/old//process/` 并标 `[recycle]`。 - 本轮已完成一批 `done/` 归档,详见 `15-design-governance-mvp-post-review-v1.md`。 ## 3. P0:先清阻塞和验证红灯 这一步先处理“会干扰后续判断”的验证缺口,不扩新产品面。 ### P0.1 FileTree action / open editors smoke 前置 入口文档: - `design/04-tree-domain/process/4-45-filetree-open-editors-lifecycle-link-checklist-v1.md` - `design/04-tree-domain/process/4-44-filetree-action-layer-paste-drop-delete-v1.md` 执行目标: 1. 修复或明确 `task430-vscode-explorer-stage7-smoke.js` / `task471-local-folder-bulk-resource-trash-smoke.js` 的 workspace bootstrap 前置条件。 2. 把 4-44 中未通过的 browser smoke 跑绿,或把环境阻塞写成可复现 bug。 3. 补 open editor / filetree active row / lifecycle 状态断言。 验收: - `node --check scripts/task430-vscode-explorer-stage7-smoke.js` - `node --check scripts/task471-local-folder-bulk-resource-trash-smoke.js` - 对应 smoke 实跑通过,或形成 `bugs/04-tree-domain/process/` 中明确 bug。 归档条件: - `4-45` 四项 checklist 完成后归档到 `04-tree-domain/done/`。 - `4-44` browser smoke 全绿后归档到 `04-tree-domain/done/`。 ### P0.2 local folder no-refresh / restore focus 入口文档: - `design/04-tree-domain/process/4-34-filetree-trash-dual-browser-no-refresh-v1.md` - `design/04-tree-domain/process/4-28-trash-restore-location-reveal-focus-v1.md` 执行目标: 1. 补 local folder 非 md 资源 trash / restore / purge 的双浏览器 no-refresh 证据。 2. 补 restore 后 DOM focus / reveal 的浏览器证据。 验收: - 新增或复用 task436 等价 smoke,证明 B 浏览器不刷新能看到 local folder 资源生命周期变化。 - restore location / reveal / focus smoke 截图和 JSON 证据落盘。 归档条件: - local folder 子项通过后,`4-34` 归档。 - React / Rust 主壳 focus 证据完成后,`4-28` 归档。 ## 4. P1:统一工作区身份、BufferStore 和 Page Aggregate 这一步是 MVP 后阶段真正的底座收口。 ### P1.1 WorkspacePath / ObjectIdentity 入口文档: - `design/01-tree-first-graph-kernel/process/1-4-next-phase-execution-roadmap-v1.md` - `design/01-tree-first-graph-kernel/process/1-5-next-phase-sequential-execution-checklist-v1.md` - `design/01-tree-first-graph-kernel/process/1-6-next-phase-gap-closure-checklist-v1.md` - `design/05-editor-mainline/process/5-26-resource-open-resolver-convergence-checklist-v1.md` 执行目标: 1. 统一 page `.md`、raw local file、directory、asset folder、mindmap、office 的 canonical identity。 2. 让 FileTree open target、主编辑器 tab、Open Editors snapshot 和 URL active state 消费同一套 identity。 3. 解决 `5-26` 中“正文附件 open resolver 与 FileTree open resolver 收敛”未闭环问题。 验收: - `cargo test -p mnote-web filetree_runtime -- --test-threads=1` - `cargo test -p mnote-web web_shell -- --test-threads=1` - 覆盖 markdown / office / mindmap / raw file / directory 的 browser smoke。 归档条件: - `5-26` checklist 完成后归档。 - `1-5 / 1-6` 中对应 identity 缺口完成打勾。 ### P1.2 DocumentBuffer / BufferStore 入口文档: - `design/01-tree-first-graph-kernel/process/1-5-next-phase-sequential-execution-checklist-v1.md` - `design/01-tree-first-graph-kernel/process/1-6-next-phase-gap-closure-checklist-v1.md` - `design/05-editor-mainline/process/5-6-page-aggregate-alignment-checklist-v1.md` 执行目标: 1. 让 tiptap、resource tab、watcher、agent 写入和冲突 UI 共用打开态与文件版本仲裁。 2. 避免 dirty editor、资源 tab、文件树点击分别维护状态。 3. 把已有 BufferStore 基础设施接到更多真实 runtime 消费点。 验收: - `cargo test -p mnote-web document_buffer -- --test-threads=1` - `cargo test -p mnote-web local_folder -- --test-threads=1` - 外部修改、dirty buffer、agent writeback、tab 切换 smoke 全部可解释。 归档条件: - `1-6` 中 BufferStore 运行时接入、浏览器读回、冲突 UI 相关项完成。 ### P1.3 Page Aggregate compat 瘦身 入口文档: - `design/05-editor-mainline/process/5-6-page-aggregate-alignment-checklist-v1.md` - `design/05-editor-mainline/reference/5-5-page-aggregate-single-truth-alignment-v1.md` - `design/03-rust-web/process/3-13-rust-web-local-markdown-gfm-ast-parser-migration-v1.md` 执行目标: 1. 收敛 `body.content` / compat join / 临时转换分支。 2. 补 GFM AST parser 写侧尾项:web shell 单测、手写 parser 过渡标记、临时适配分支清理。 3. 明确 `PageAggregateClientState` 哪些仍是合法 draft state,哪些应退出事实源地位。 验收: - `cargo test -p mnote-web local_markdown -- --test-threads=1` - `cargo test -p mnote-web web_shell -- --test-threads=1` - Page Aggregate body/options/title smoke 不回退。 归档条件: - `3-13` 三个未完成项完成后归档。 - `5-6` 剩余 Phase G/H 小尾项完成或拆成更小 checklist 后归档。 ## 5. P2:tree live cache 与 command context ### P2.1 Tree realtime live cache 入口文档: - `design/03-rust-web/process/3-3-rust-web-tree-realtime-event-stream-v1.md` - `design/03-rust-web/process/3-1-rust-web-long-term-checklist-v2.md` 执行目标: 1. 把 local-folder watcher、projection refresh、WS/SSE snapshot/delta/resync 收进同一 live cache。 2. 减少 polling、手动 refresh 和双路径补偿。 3. 明确 Convex realtime 只服务 cloud / sync replica,不回到 local-first 默认真相层。 验收: - tree create / rename / move / archive / restore / purge 双浏览器 smoke。 - local folder watcher 修改 `.md`、resource、directory 后主壳不整页刷新。 归档条件: - `3-3` 中统一 live cache 和 no-refresh 矩阵完成后归档。 ### P2.2 Command context / context key 入口文档: - `design/01-tree-first-graph-kernel/process/1-5-next-phase-sequential-execution-checklist-v1.md` - `design/04-tree-domain/process/4-44-filetree-action-layer-paste-drop-delete-v1.md` 执行目标: 1. 菜单、快捷键、按钮、AI 写入能力共享 enablement 判断。 2. 让 readonly、dirty、permission、resource kind、open target 统一成为 context key。 3. 降低 filetree / editor / AI 各自硬编码能力判断的概率。 验收: - Rust 或 JS 单测覆盖 context key `when` 判断。 - 文件树右键、主编辑器附件菜单、快捷键的 disabled/hidden 行为一致。 归档条件: - `4-44` action layer smoke 全绿。 - `1-5` command context 对应项完成。 ## 6. P3:AI 主线继续收口 ### P3.1 online markdown final content truth 入口文档: - `design/07-ai/process/7-27-online-markdown-writeback-final-content-truth-v2.md` 执行目标: 1. 修正 online / compat `mnote.doc.markdown_edit` 的 final markdown 写回真相。 2. 避免 full_content 和多 operation 场景仍从旧 blocks 二次推导。 3. 保持 local-first 默认编辑仍走 agent 原生 patch/diff,不把 `markdown_edit` 升回默认主路径。 验收: - `cargo test -p mnote-web hermes_tools -- --test-threads=1` - 覆盖 full_content、多 op、inline content、selection scope 的回归测试。 归档条件: - 7-27 的 6 步实施计划完成后归档。 ### P3.2 ACP runtime 后续步骤 入口文档: - `design/07-ai/process/7-15-page-ai-acp-agent-runtime-unified-layer-v1.md` - `design/07-ai/process/7-12-page-ai-hermes-tool-routing-and-review-surface-v1.md` 执行目标: 1. 继续拆 `7-15` step 8 之后:Reasonix wrapper、前端 runtime selector、存量迁移、旧 HTTP proxy 兼容隔离。 2. 给 `7-12` 的 manifest / review surface / state event 仍未完成项拆新 checklist。 3. Phase C / Review Mode 仍冻结,不在未解冻前实现流式 apply。 验收: - ACP Hermes 与 ACP Reasonix 均能真实回复。 - session load、permission、tool location、plan UI 不回退。 归档条件: - `7-15` 后续步骤拆成并完成具体 checklist 后再归档。 - `7-12` Phase B-F 完成或冻结项移出后再归档。 ## 7. P4:mindmap、Wolai 对标和参考流程 ### P4.1 Mindmap 尾项 入口文档: - `design/06-mindmap/process/6-mindmap-kernel-phase6-projection-editor-v1.md` - `design/06-mindmap/process/6-mindmap-phase6-leptos-ui-shell-reuse-checklist-v1.md` - `design/06-mindmap/reference/6-mindmap-leptos-adapter-reference-notes-v1.md` 执行目标: 1. 明确 simplemindmap 当前产品化边界。 2. 给 KMind visual parity 设置可退出标准,避免无限尾项。 3. 后续 AI 操作 mindmap 时以 Resource Tree 对象能力为入口,不塞入 Markdown 正文真相。 验收: - mindmap open / save / filetree active / resource tab smoke 继续通过。 - KMind parity 未完成项要么完成,要么明确降级为参考。 ### P4.2 Wolai-aline 持续项 入口文档: - `design/05-editor-mainline/process/5-9-wolai-aline-continuous-checklist-v1.md` - `design/08-wolai-aline-test-flow/reference/wolai-aline-test-flow-v1.md` - `design/05-editor-mainline/reference/5-7-wolai-page-tree-main-editor-experience-restoration-v1.md` 执行目标: 1. 清理 `5-9` 中已被 `5-6` 覆盖但仍显示 TODO 的 Page Aggregate 项。 2. 对 A4 字体 token、E18 paste/clipboard 等仍有价值项补 smoke 或降级。 3. 所有 Wolai 对标任务继续按 `wolai-aline` skill 和 `08` 流程执行。 归档条件: - `5-9` 剩余项全部完成或降级后归档。 ## 8. P5:远期 / 候选 / 参考 这些文档不进入当前直接执行序列,只有当产品优先级明确时再拆 checklist: - `design/03-rust-web/reference/3-17-convex-export-web-entry-v1.md` - CLI 已有迁移闭环;Web 管理入口未排期。 - `design/04-tree-domain/reference/4-23-local-cloud-explicit-bridge-p3-candidate-v1.md` - P3 候选,不能进入 local-first 默认主链。 - `design/07-ai/reference/7-17-acp-session-convex-sharing-contract-v1.md` - Future sharing contract。 - `design/07-ai/reference/7-28-resource-ai-tool-contract-v1.md` - mindmap / office Resource AI tool 草案。 - `design/09-siyuan-reference/reference/9-siyuan-reference-boundary-and-adoption-v1.md` - 参考边界,不是实施入口。 - `design/10-review/reference/12-*`、`13-*`、`14-*` - 原始 review 证据;执行项已拆出或归档。 ## 9. 推荐执行批次 ### Batch A:清验证阻塞 1. `4-45` 2. `4-44` 3. `4-34` 4. `4-28` 完成后预期:tree/filetree action 和 trash/no-refresh 的判断不再被 smoke 红灯干扰。 ### Batch B:身份与打开态 1. `5-26` 2. `1-5` identity 子项 3. `1-6` BufferStore / conflict browser 子项 完成后预期:页面、资源、tab、filetree active、open editors 可围绕同一 identity 和 buffer state 工作。 ### Batch C:Page Aggregate / local markdown 写侧 1. `3-13` 2. `5-6` 3. `1-5` Page Aggregate 子项 完成后预期:正文真相、runtime projection、compat join 的边界更薄。 当前批次状态: - `3-13` 的空引用块、空表格单元格、legacy marks、web_shell 过渡注释已由 Batch C 追认。 - `1-6` 的 A2 浏览器可见读回、C1 export smoke 已由 Batch C 复核完成。 - `5-26` 仍保持 process,等待最小可复核实现或新的 browser evidence。 ### Batch D:live cache / command context 1. `3-3` 2. `1-5` command context 子项 3. `4-44` 若 Batch A 未完成则回补 完成后预期:树域实时与 enablement 判断更统一。 ### Batch E:AI 与资源工具 1. `7-27` 2. `7-15` 后续拆分 3. `7-12` Phase B-F 拆分 4. `7-28` 仅在 mindmap / office AI 明确排期后进入 完成后预期:local-first AI 主路径稳定,cloud/compat 工具不再误导默认路径。 ### Batch F:体验对标与远期 1. `6-mindmap-*` 2. `5-9` 3. `3-17` 4. `4-23` 5. `7-17` 完成后预期:产品体验和分享同步进入产品化,而不是继续扩底层 compat。 ## 10. 每轮执行的固定流程 每次从本文选一个 batch 后,按以下流程推进: 1. 先读本文和对应入口文档。 2. 对该 batch 新建或更新一个小 checklist,不直接修改大而旧的全景文档。 3. 如果有 2 个以上互不冲突方向,按 Reasonix parallel flow 拆 worker。 4. worker 只改其 ownership 范围,不提交 git。 5. Codex 复核 diff、跑 targeted tests / browser smoke。 6. 完成后: - 更新 checklist 状态和证据。 - 能归档的移动到 `done/`。 - 被覆盖但未完成的移入 `old/` 并标 `[recycle]`。 - 更新本文对应 batch 状态。 - 运行 `codegraph sync .`。 ## 11. 不做事项 - 不按文件编号顺序清空 process。 - 不把 `reference/` 下的资料当作当前实现任务。 - 不因为文档老就移动到 `done/`;必须有真实完成证据。 - 不把 Phase C / Review Mode / cloud sync / sharing future 合同提前实现。 - 不恢复旧 Next / BlockNote / Convex 默认主存储口径。