chore: align mvp design governance
- 统一 local-first MVP 后阶段架构口径,补充 process 执行总序和 Reasonix 协作记录 - 归档已完成的 design checklist,标注参考型 process,更新 AGENTS/REASONIX/架构文档 - 补充文件树/主编辑器下载与上下文菜单相关实现、bug 记录和 smoke 脚本 验证:git diff --check;codegraph sync .;cargo test -p mnote-web;node --check scripts/task476-filetree-editor-context-menu-download-smoke.js
This commit is contained in:
@@ -0,0 +1,271 @@
|
||||
# Design Governance Report — Worker A
|
||||
|
||||
审查范围:`design/01-tree-first-graph-kernel/process/`、`design/02-convex-rust-long-term-architecture/process/`、`design/03-rust-web/process/`
|
||||
|
||||
审查时间:2026-06-17
|
||||
|
||||
上位依据:`design/01-05-current-priority-overview.md`(2026-05-21 口径)
|
||||
|
||||
---
|
||||
|
||||
## 总览
|
||||
|
||||
| 域 | 文件 | 建议状态 | 高风险项 |
|
||||
|----|------|---------|---------|
|
||||
| 01 | 1-tree-first-graph-kernel-v1.md | **keep-process** | 无 |
|
||||
| 01 | 1-1-tree-first-graph-kernel-checklist-v2.md | **keep-process** | 无 |
|
||||
| 01 | 1-2-tree-first-graph-product-vision-progress-v1.md | **keep-process** | 无 |
|
||||
| 01 | 1-3-current-priority-execution-checklist-v1.md | **keep-process** | 无 |
|
||||
| 01 | 1-4-next-phase-execution-roadmap-v1.md | **keep-process** | 无 |
|
||||
| 01 | 1-5-next-phase-sequential-execution-checklist-v1.md | **keep-process** | ⚠ 多数 items 未勾选 |
|
||||
| 01 | 1-6-next-phase-gap-closure-checklist-v1.md | **keep-process** | ⚠ browser smokes 未复跑 |
|
||||
| 01 | 1-7-local-workspace-root-page-bundle-checklist-v1.md | **archive-done** | 无 |
|
||||
| 02 | 2-3-local-workspace-access-control-productization-v1.md | **archive-done** | 无 |
|
||||
| 03 | 3-rust-web-long-term-architecture-v1.md | **keep-process** | 无 |
|
||||
| 03 | 3-1-rust-web-long-term-checklist-v2.md | **keep-process** | 无 |
|
||||
| 03 | 3-3-rust-web-tree-realtime-event-stream-v1.md | **keep-process** | 无 |
|
||||
| 03 | 3-13-rust-web-local-markdown-gfm-ast-parser-migration-v1.md | **keep-process** | ⚠ 3 unsub items |
|
||||
| 03 | 3-15-local-markdown-asset-upload-relative-path-v1.md | **keep-process** | ⚠ browser smoke 待补 |
|
||||
| 03 | 3-17-convex-export-web-entry-v1.md | **needs-human-confirmation** | ⚡ 设计稿但未落码 |
|
||||
|
||||
---
|
||||
|
||||
## 逐文件审查
|
||||
|
||||
---
|
||||
|
||||
### 1. `01-tree-first-graph-kernel/process/1-tree-first-graph-kernel-v1.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** `01-05-current-priority-overview.md` §1 明确列为当前仍然有效的 3 份上位主线之一。文档更新于 2026-04-22,全文固定 "tree-first graph kernel" 长期方向,不使用旧 Convex 默认存储 / Next 主入口 / BlockNote 默认编辑器口径。
|
||||
|
||||
**归档/保留原因:** 仍是 tree-first kernel 方向的权威定义文档,所有后续设计以此为基础。
|
||||
|
||||
---
|
||||
|
||||
### 2. `01-tree-first-graph-kernel/process/1-1-tree-first-graph-kernel-checklist-v2.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** `01-05-current-priority-overview.md` §3 明确列为"仍然有效但不在第一线"的 process 文档。文档头部已标注优先级转移说明,使用 `DONE / PARTIAL / NOT_STARTED` 状态体系,反映真实代码状态而非乐观口径。
|
||||
|
||||
**归档/保留原因:** 仍是 Kernel Phase 全景参考,Phase 0-3 已 DONE,Phase 4-9 进度清晰。
|
||||
|
||||
---
|
||||
|
||||
### 3. `01-tree-first-graph-kernel/process/1-2-tree-first-graph-product-vision-progress-v1.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** 更新于 2026-05-19,引用 `01-05-current-priority-overview.md` 作为上位依据。使用 local-first MVP 后阶段口径。包含对照 Wolai 帮助中心的详细块类型覆盖率、AI 操作能力缺口分析,以及三条架构收口主线的进度百分比。
|
||||
|
||||
**归档/保留原因:** 唯一一份产品愿景 vs 实现进展的对照文档,提供 gap analysis(AI 操作思维导图 / Office 文件),对产品规划仍有参考价值。
|
||||
|
||||
---
|
||||
|
||||
### 4. `01-tree-first-graph-kernel/process/1-3-current-priority-execution-checklist-v1.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** `01-05-current-priority-overview.md` §6 明确引用为"持续推进 checklist"。文档 P0-P6 全部勾选且有验证证据(单测命令 + smoke 脚本),P7 已完成阶段性瘦身。迁移到 done/ 的标准清晰列出并已满足。
|
||||
|
||||
**归档/保留原因:** 当前最活跃的执行清单,`1-3` 本身作为持续执行清单保留在 process/,已完成的上位设计各自在 done/。
|
||||
|
||||
---
|
||||
|
||||
### 5. `01-tree-first-graph-kernel/process/1-4-next-phase-execution-roadmap-v1.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** 更新于 2026-05-19,引用 `01-05` 和 `1-3`。全文核心论点是"架构收口为主,产品化闭环为辅",与当前 local-first MVP 后阶段口径完全一致。
|
||||
|
||||
**归档/保留原因:** 定义了下一阶段路线图(WorkspacePath → BufferStore → Page Aggregate kernel-native → command context → live cache),仍有效。
|
||||
|
||||
---
|
||||
|
||||
### 6. `01-tree-first-graph-kernel/process/1-5-next-phase-sequential-execution-checklist-v1.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** 更新于 2026-05-19,引用 `1-4` 和 `1-3`。所有执行原则和 Phase A0-A7 定义仍符合当前架构方向。
|
||||
|
||||
**归档/保留原因:** 提供了顺序执行的详细清单,且多数 items 尚未勾选,说明它是未来的工作计划而非已完成的文档。
|
||||
|
||||
**⚠ 风险:** 全场 687 行,大多数 checkbox 未勾选。如果团队当前执行顺序已不按此 checklist 推进(例如优先做 BufferStore 而非 smokes),应降级为 `mark-process-reference` 或更新本文件。当前保留但需关注执行偏差。
|
||||
|
||||
---
|
||||
|
||||
### 7. `01-tree-first-graph-kernel/process/1-6-next-phase-gap-closure-checklist-v1.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** 创建于 2026-05-19,状态 `PARTIALLY_DONE`。引用 `1-5` 和 `1-4`。基于 Reasonix 执行汇总的缺口补齐文档。
|
||||
|
||||
**归档/保留原因:** 记录了哪些缺口已由 Reasonix 执行填补(BufferStore、CommandContext、export/rollback),哪些仍未完成(browser smokes、conflict UI)。仍有跟踪价值。
|
||||
|
||||
**⚠ 风险:** §6.2 列出 6 个未复跑的 browser smokes。这些 smokes 如果长期不跑,本文件的剩余项跟踪价值下降。
|
||||
|
||||
---
|
||||
|
||||
### 8. `01-tree-first-graph-kernel/process/1-7-local-workspace-root-page-bundle-checklist-v1.md`
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
**证据:**
|
||||
- 所有 checklist items 全部勾选并附验证命令
|
||||
- 8 个 Rust 单测通过(`create_default_local_workspace_uses_managed_data_root`、`local_tree_command_create_page_creates_timestamped_markdown_and_sibling_folder` 等)
|
||||
- HTTP smoke 通过:`node scripts/task443-local-markdown-asset-upload-smoke.js`
|
||||
- 浏览器验收完成(截图保存到 `tmp/page-bundle-*`)
|
||||
- 磁盘结构验证通过:无默认 `pages/`、`assets/`、`mindmaps/` 顶层目录,新建页面带 `HHMMSS` 时间戳
|
||||
|
||||
**代码证据:**
|
||||
- `create_default_local_workspace_for_actor_at_base` — `local_folder_source.rs:1494`
|
||||
- 同名目录作为页面子容器 — 单测 `local_page_tree_uses_sibling_directory_as_page_children_container`
|
||||
- 文件树不合并 `.md` 和同名目录 — 单测 `local_file_tree_keeps_markdown_and_sibling_folder_as_separate_rows`
|
||||
|
||||
**归档/保留原因:** 所有目标已实现且有验收证据。设计稿的收口方向是"默认工作区只保留用户内容根目录和 `.mnote/` 系统目录"——已落地。
|
||||
|
||||
---
|
||||
|
||||
### 9. `02-convex-rust-long-term-architecture/process/2-3-local-workspace-access-control-productization-v1.md`
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
**证据:**
|
||||
- A1-A5 (P0 管理员控制面 API):全部完成,`GET/POST/DELETE /api/admin/access-policy/*` 已实现并有单测覆盖
|
||||
- B1-B5 (P1 权限覆盖审计):全部完成,覆盖 local folder open、page body write、tree command、Hermes/Reasonix、shared AI session
|
||||
- `01-05-current-priority-overview.md` §5 已将"管理员目录授权 UI/API"列为"已有最小实现与验证证据,不再作为当前第一优先级"
|
||||
|
||||
**代码证据:**
|
||||
- `rust/crates/mnote-web/src/routes/local_folder_source.rs` — `add_local_access_grant_for_context`、`create_local_access_grant`、`ensure_local_workspace_access_for_actor`
|
||||
- `rust/crates/mnote-web/src/ssr/pages/admin.rs` — 管理员 UI
|
||||
- `rust/crates/mnote-web/src/routes/mod.rs` — route registration
|
||||
|
||||
**归档/保留原因:** 所有 checklist items 已勾选并有单测/代码证据。文档中定义的产品化目标(管理员可管理、agent 可复用、全入口不绕过)已实现。后续 access control 扩展可在新文档中推进。
|
||||
|
||||
---
|
||||
|
||||
### 10. `03-rust-web/process/3-rust-web-long-term-architecture-v1.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** `01-05-current-priority-overview.md` §1 明确列为当前仍然有效的 3 份上位主线之一。更新于 2026-05-09,定义了 Rust Web 分层方案(axum + Leptos Islands + Hermes)。
|
||||
|
||||
**归档/保留原因:** 仍是 Rust Web 架构的权威定义文档。
|
||||
|
||||
---
|
||||
|
||||
### 11. `03-rust-web/process/3-1-rust-web-long-term-checklist-v2.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** `01-05-current-priority-overview.md` §3 明确列为"仍然有效但不在第一线"。文档头部已标注优先级转移说明(2026-04-22 + 2026-04-29 复核补充)。Phase 0-8 状态清晰(DONE / PARTIAL / NOT_STARTED),反映真实代码状态。
|
||||
|
||||
**归档/保留原因:** 仍是 Rust Web 实施全景参考。Phase 1 接近 DONE、Phase 8 接近 DONE、Phase 3/4/5/7 为 PARTIAL。
|
||||
|
||||
---
|
||||
|
||||
### 12. `03-rust-web/process/3-3-rust-web-tree-realtime-event-stream-v1.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** `01-05-current-priority-overview.md` §2.3 引用为 Tree Realtime 当前状态文档。2026-05-18 补充 local-first 口径,明确 Convex realtime substrate 仅适用于 convex_workspace。有明确 §9.2 "仍未完成" 说明不能移到 done/。
|
||||
|
||||
**归档/保留原因:** 有明确 §9.2 未完成项(Sidebar/page subtree/filetree 未全部统一到同一条 live stream cache;WS 尚未成为主实时链路)。README 中明确了 done/ 迁移前必须完成的验收标准。无风险。
|
||||
|
||||
---
|
||||
|
||||
### 13. `03-rust-web/process/3-13-rust-web-local-markdown-gfm-ast-parser-migration-v1.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** 文档自身 §11.9 明确标注 "[ ] 迁移完成后把设计稿状态从 process 移到 done" 未勾选。剩余 3 项未完成:
|
||||
1. "[ ] 新增 web shell 单测,验证 legacy <-> Tiptap 转换不丢 marks"
|
||||
2. "[ ] 把手写 parser 标记为过渡实现"
|
||||
3. "[ ] 移除 web_shell.rs 中只为补丁存在的临时适配分支"
|
||||
|
||||
**归档/保留原因:** 迁移工作未完成。当前读侧 AST 已就位,写侧回 Markdown 仍部分依赖手写规则。无口径冲突。
|
||||
|
||||
**⚠ 风险:** 3 个未完成项如果长期无人推进,应降级为 `mark-process-reference`。但当前准确。
|
||||
|
||||
---
|
||||
|
||||
### 14. `03-rust-web/process/3-15-local-markdown-asset-upload-relative-path-v1.md`
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
**证据:** 文档状态头明确标注"(代码、单测和 HTTP smoke 已完成;真实浏览器 smoke 待补)"。§9 checklist 中除浏览器 smoke 外所有项目已勾选。实现与缺陷闭环在 `bugs/03-rust-web/done/3-16`。
|
||||
|
||||
**代码证据:**
|
||||
- `local_markdown_asset_upload_copies_next_to_markdown_with_relative_path` 单测通过
|
||||
- HTTP smoke 覆盖 `/api/local-folder/assets/upload` 真实 multipart 上传
|
||||
|
||||
**归档/保留原因:** 代码实现已完成,仅缺浏览器 smoke 这一最终验收。应该保持 process 直到 browser smoke 通过。
|
||||
|
||||
**⚠ 风险:** 缺少浏览器 smoke 意味着编辑器上传面板的实际用户体验未验证。低风险。
|
||||
|
||||
---
|
||||
|
||||
### 15. `03-rust-web/process/3-17-convex-export-web-entry-v1.md`
|
||||
|
||||
**建议状态:needs-human-confirmation → 候选人:mark-process-reference**
|
||||
|
||||
**证据:** 状态标记为 `process`,但文档是一份 Web 控制台 UI 的设计提案("后续落码顺序"列出 5 步尚未实现的落码步骤)。CLI 工具已存在:
|
||||
- `scripts/export-convex-workspace-to-local.js` 支持 `--dry-run`、`--manifest`、`--conflict-report`、`--rollback`
|
||||
- `task444` 和 `task455` smoke 通过
|
||||
|
||||
`01-05-current-priority-overview.md` §5 已将 P6 (Convex 导出) 列为"已有最小实现与验证证据,不再作为当前第一优先级"。
|
||||
|
||||
**建议补充说明:** 文档作为 Web 入口设计稿保留在 process/ 会产生"这是当前待办"的误导。建议:
|
||||
|
||||
- **选项 A (推荐):mark-process-reference** — 保持文档但标记为参考设计,不误认为待办。保留 CLI 设计供后续 Web 入口实现时参考。
|
||||
- **选项 B:keep-process** — 如果团队明确要在短期内实现 Web 入口。
|
||||
- **选项 C:archive-old-process** — 如果决定 CLI 能力已足够,不优先做 Web UI。
|
||||
|
||||
**⚠ 风险:** 如果标记为 process,用户可能误以为 Web 入口已进入实施状态。实际上 5 个落码步骤均未开始。
|
||||
|
||||
---
|
||||
|
||||
## 汇总统计
|
||||
|
||||
| 建议状态 | 数量 | 文件 |
|
||||
|---------|------|------|
|
||||
| keep-process | 11 | 1, 1-1, 1-2, 1-3, 1-4, 1-5, 1-6, 3, 3-1, 3-3, 3-13, 3-15 |
|
||||
| archive-done | 2 | 1-7, 2-3 |
|
||||
| needs-human-confirmation | 1 | 3-17 |
|
||||
|
||||
> 注:3-15 虽推荐 keep-process,但其代码实现已完成,仅缺浏览器 smoke;在 browser smoke 通过后应自动进入 archive-done。
|
||||
|
||||
---
|
||||
|
||||
## 最高风险项
|
||||
|
||||
1. **`3-17-convex-export-web-entry-v1.md` (needs-human-confirmation)** — 被标记为 process 但实质是未落码的设计稿,可能误导读者以为 Web 入口在实施中。需人工确认是降级为参考、归档、还是推进落地。
|
||||
|
||||
2. **`1-5-next-phase-sequential-execution-checklist-v1.md` (keep-process, ⚠)** — 全场 687 行,大多数 checkbox 未勾选。如果执行计划已偏离此 checklist,内容可能过时。
|
||||
|
||||
3. **`1-6-next-phase-gap-closure-checklist-v1.md` (keep-process, ⚠)** — 6 个 browser smokes 长期未复跑降低剩余项跟踪价值。
|
||||
|
||||
4. **`3-13-rust-web-local-markdown-gfm-ast-parser-migration-v1.md` (keep-process, ⚠)** — 3 个未完成项如果无人认领,迁移工作将停滞在 partial 状态。
|
||||
|
||||
---
|
||||
|
||||
## 验证命令
|
||||
|
||||
```bash
|
||||
# 确认文件存在
|
||||
find design/01-tree-first-graph-kernel/process design/02-convex-rust-long-term-architecture/process design/03-rust-web/process -maxdepth 1 -type f -name '*.md' | sort
|
||||
# 确认归档建议的文件已落地代码
|
||||
cargo test -p mnote-web create_default_local_workspace_uses_managed_data_root -- --nocapture
|
||||
cargo test -p mnote-web local_tree_command_create_page_creates_timestamped_markdown_and_sibling_folder -- --nocapture
|
||||
cargo test -p mnote-web local_workspace_access -- --nocapture
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 未完成项
|
||||
|
||||
- 本报告仅为只读审查,未移动任何 `design/` 文件。
|
||||
- 如果审核通过,`1-7` 和 `2-3` 应移至各自域的 `done/`。
|
||||
- `3-17` 需人工确认最终状态。
|
||||
@@ -0,0 +1,230 @@
|
||||
# Design Governance Report — Worker B: 04-tree-domain
|
||||
|
||||
> 生成时间: 2026-05-21
|
||||
> 范围: `design/04-tree-domain/process/` 全部 12 个 process 文档
|
||||
> 状态: 只读审查,未修改任何 `design/` 文件
|
||||
|
||||
---
|
||||
|
||||
## Executive Summary
|
||||
|
||||
审查 12 个 process 文档,建议分布:
|
||||
|
||||
| 状态 | 数量 | 文档 |
|
||||
|------|------|------|
|
||||
| archive-done | 6 | 4-27, 4-39, 4-40, 4-41, 4-42, 4-43 |
|
||||
| keep-process | 5 | 4-28, 4-34, 4-38, 4-44, 4-45 |
|
||||
| mark-process-reference | 1 | 4-23 |
|
||||
|
||||
**最高风险项**:
|
||||
1. **4-45 checklist 完全未执行** — 4 项全部未勾选,Worker D 停留在计划阶段未产出任何变更
|
||||
2. **4-34 local folder 子项仍无 no-refresh 证据** — Convex 侧已全部通过但 local folder 侧仍标 reload,这是 dual-browser 矩阵的唯一缺口
|
||||
3. **4-44 仍有 3 个 browser smoke 未勾选** — Rust 代码改动已合入但 task430/task471 及新增 smoke 未通过
|
||||
4. **4-28 React DOM focus 仍缺浏览器证据** — 核心 restore location 已实现但前端焦点行为未验证
|
||||
|
||||
---
|
||||
|
||||
## 逐文档审查
|
||||
|
||||
### 4-23 — Local / Cloud 显式桥接 P3 候选合同 v1
|
||||
|
||||
**建议状态:mark-process-reference**
|
||||
|
||||
- **证据**: 这是 P3 候选设计合同,定义了 `tree.bridge.import/export/publish/sync` 的 preview/execute 契约。文档无 checklist、无 code change、无 execution record。
|
||||
- **归档/保留原因**: 这是一个**候选策略文档**,不是执行 checklist。P3 未排入当前 sprint,文档本身定义了清晰的 done gate(P0/P1/P2 smoke 全绿+preview UI 组件复用+rollback plan+浏览器 smoke)。作为长期架构参考保留比归档更有价值。
|
||||
- **补充说明**: 文档质量高,边界定义清晰。建议在文档头部加注 "P3 Candidate — 未进入实现,参考保留"。
|
||||
|
||||
### 4-27 — Resource Lifecycle Command Cutover v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**:
|
||||
- Section 2 "已落地范围" 列出 7 个已实现条目:`bridge-runtime` 新增 4 个命令计划、`storage-convex-bridge` 映射、`wolai-frontend` `/api/media/batch` 和 `/api/media/purge` 迁移、`mnote-web` Rust 3000 兼容 alias。
|
||||
- Section 3 的 "未完成边界"(双浏览器 no-refresh、reveal/focus、projection delta)已由 4-34 和 4-28 覆盖。
|
||||
- Section 7 "剩余边界"(rename 仅覆盖附件、empty-trash 仍为批量合同、前端 Sidebar 仍走旧 URL)是有意保留的边界,非未完成任务。
|
||||
- Section 8 sub-stage(local_folder file_path resource lifecycle)已全部合入并通过:`tree.resource.archive/restore/purge` 进入 `.mnote/trash`, `trash-index.json`, `task437` smoke 通过。
|
||||
- 2026-05-15 验收测试全部:4 项 `cargo test` 通过,2 项 wolai-frontend 测试通过。
|
||||
- **归档原因**: 核心命令切换已完成归档。未完成项已明确转移至后续文档(4-34/4-28)或是有意保留的边界(empty-trash 批量合同、rename 范围限制)。
|
||||
- **补充说明**: 归档前建议在文件头部加注引用 `4-34`(dual browser)、`4-28`(reveal/focus) 和 `4-37`(trash modal) 作为后续入口。
|
||||
|
||||
### 4-28 — Trash Restore Location Reveal Focus v1
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
- **证据**:
|
||||
- **已落地**:`restore_parent_id`/`restore_sort_order` schema,`documents.softDelete` 快照写入,`documents.restore` 位置恢复与 fallback 逻辑,Sidebar 恢复后展开 focus。
|
||||
- **已验证**:4 个测试文件(32 items)通过,`task429` browser smoke 通过覆盖 restore_location/fallback/sort_order 无重复。
|
||||
- Section 5 "待补" 仍有 2 项未完成:React Sidebar Drawer 的恢复后 DOM focus 缺浏览器证据;双浏览器 no-refresh 归入阶段 8。
|
||||
- **留存原因**: React Sidebar Drawer DOM focus 的浏览器证据未补。当前 3000 主壳 smoke 已覆盖 "恢复后无需刷新可见/reveal",但 "DOM focus" 断言是 React Drawer 代码路径的独立验证。
|
||||
- **补充说明**: React DOM focus 是一个较小的缺口,可考虑在下一轮补充一个 focused smoke 后归档。
|
||||
|
||||
### 4-34 — Filetree Trash Dual Browser No Refresh v1
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
- **证据**:
|
||||
- **Convex 侧全部通过**:task432(页面) + task433(附件) + task434(mindmap/table) 双浏览器 no-refresh smoke 全部通过且记录了事件来源。
|
||||
- task435(empty-trash 汇总) 作为 3.4 提及但**无独立执行记录**,不过其实已被 task432-434 的 empty-trash 子步骤覆盖。
|
||||
- **local folder 侧未完成**:3.5 task436 无执行记录。文档明确标注 "非 md 本地资源文件 watcher / trash / restore / purge 仍单列为待补"。
|
||||
- 完成标准要求 local folder 子项也通过 task436 或等价 smoke;当前状态标 reload,不能标 no-refresh。
|
||||
- **留存原因**: local folder 双浏览器 no-refresh 仍然是明确缺口。同时 `resync_required` delta 事件合同需在后续新增资源 route 时补回归。
|
||||
- **补充说明**: 建议将 Convex 侧已完成的部分在文档内打上标记(如 `[Convex ✓]`),只保留 local folder 暴露项作为未完成。
|
||||
|
||||
### 4-38 — FileTree Resource Lifecycle 与 Open Target 收口 Checklist v1
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
- **证据**:
|
||||
- 已勾选:`local-file:<relativePath>`、`resolve_local_raw_file_id`、`local-file` restore/purge 测试、local mindmap 单独删除入 trash index、local move `sortOrder` 返回 `_unsupportedFields`、Rust `cargo test` 通过。
|
||||
- **未勾选**:扩展 File Tree open target、保留 `local:asset:/local:node:` 兼容、前端 delete/bulk delete 优先走 `/api/tree/commands`、browser smoke 覆盖全链、task437 继续通过。
|
||||
- 执行记录确认 "未完成:File Tree open target 合同扩展、前端 delete/bulk delete 全面 cutover、浏览器垃圾箱资源行全链 smoke"。
|
||||
- **留存原因**: 虽然核心 Rust 变更已合入,但 open target 扩展已有 4-39 承接,前端 cutover 和 browser smoke 尚未完成。需待这些子项完成后归档。
|
||||
- **补充说明**: 建议在文档头部加注 "open target 合同由 4-39/4-42 覆盖;bulk delete 由 4-41 覆盖"。本文件的剩余项(前端 cutover + browser smoke)可浓缩后移至更轻量文档。
|
||||
|
||||
### 4-39 — FileTree Open Target 与 Resource Identity Checklist v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**:
|
||||
- **全部 5 项 checklist 已勾选**:扩展 `FileTreeOpenTarget`(`LocalFile`/`Directory` variant + `resourceKind`)、open target 包含 canonical identity、`parse_open_target_from_row` 兼容旧格式、camelCase 序列化、Rust 单测通过。
|
||||
- **验收全部通过**:`cargo test -p mnote-web filetree_runtime`、`runtime_api`、`tree_shell_filetree_mode_embeds_asset_state` 全部通过。
|
||||
- **归档原因**: Checklist 全部完成。唯一剩余项 "上游 row dataset 补齐 rootUri" 已由 4-42 承接。
|
||||
- **补充说明**: 归档时建议在头部引用 4-42 作为 rootUri 补齐的后续文档。
|
||||
|
||||
### 4-40 — Resource Lifecycle Command Cutover 与垃圾箱 Smoke Checklist v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**:
|
||||
- 从 7 项 checklist 中,6 项已勾选:旧 route 保留 fallback、command response 保留 artifact、trash workbench 显示 local resource、新增 browser smoke (task437 + task464)。
|
||||
- **唯一未勾选项**:"前端 local resource delete/bulk delete 优先调用 `/api/tree/commands` archive/purge/restore" — 这已被 4-41 覆盖。
|
||||
- **验收全部通过**:`task437`、`task464` smoke 通过,`cargo test resource_trash` 和 `cargo test tree_command_local_folder` 通过。
|
||||
- **归档原因**: 文档定义的 smoke 覆盖率目标已完成。前端 cutover 的剩余项已由 4-41 清晰承接。
|
||||
|
||||
### 4-41 — FileTree Bulk Resource Command Cutover Checklist v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**:
|
||||
- **全部 6 项 checklist 已勾选**:local file asset/mindmap/table bulk delete 使用 tree command、成功后刷新 snapshot/trash、失败保留错误、smoke 覆盖不同 resource kind。
|
||||
- **验收全部通过**:`task464`、`task471` smoke 通过,`cargo test sidebar_filetree_local_table_bulk_delete_uses_tree_command` 和 `tree_command_local_folder` 通过。
|
||||
- **归档原因**: Checklist 已全部完成。云端 table 保留旧 fallback 是有意保留的边界(已勾选禁止事项)。
|
||||
|
||||
### 4-42 — FileTree Open Target RootUri Contract Checklist v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**:
|
||||
- **全部 5 项 checklist 已勾选**:`FileTreeRuntimeEnvironment.rootUri`、`resolve_open_target` 使用 rootUri、SSR state 传入 rootUri、反序列化兼容缺失 rootUri、Rust 单测覆盖。
|
||||
- **验收全部通过**:3 项 `cargo test` 全部通过。
|
||||
- **归档原因**: 文档定义的 rootUri 合同已全部实现。这是 P0-4 的收尾文档,已经完成其使命。
|
||||
|
||||
### 4-43 — Local Folder Sort Order Persistence Checklist v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**:
|
||||
- **全部 6 项 checklist 已勾选**:`.mnote/file-order.json` 持久化、move sortOrder 写入、projection 消费排序记录、rename/archive/restore 后清理悬挂项、Rust 合同测试、browser smoke。
|
||||
- **验收全部通过**:`cargo test local_tree_command_move_with_sort_order` 和 `tree_command_local_folder` 通过,`task472` smoke 通过。
|
||||
- **归档原因**: 完整的端到端实现。`_unsupportedFields.sortOrder` 退役记录清晰。
|
||||
|
||||
### 4-44 — FileTree Action Layer Paste / Drop / Delete Checklist v1
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
- **证据**:
|
||||
- **Rust 代码已合入**:`recordFileTreeAction`/`recordFileTreeActionStatus`、右键 `paste-into` 使用菜单触发 row、`layout.rs` readonly 阻断(data 属性标记 + alert fallback)、paste/drop preflight。
|
||||
- **验收 2/5 已勾选**:`cargo test -p mnote-web layout` 和 `tree_command_local_folder` 通过。
|
||||
- **3 项验收未勾选**:`node scripts/task430-vscode-explorer-stage7-smoke.js`、`node scripts/task471-local-folder-bulk-resource-trash-smoke.js`、新增 `task47*-filetree-action-layer-smoke.js`。
|
||||
- **留存原因**: Rust 侧变更已合入但 browser smoke 验证未通过。task471 的语义断言依赖 environment preparation(4-45 也依赖同一个环境)。无法在不验证 smoke 的情况下确认动作层行为正确。
|
||||
- **补充说明**: task430 的 workspace bootstrap 问题(4-45 提及)是前置阻塞项。建议先修复 task430 前置条件,再补全 4-44 的 smoke 验收。
|
||||
|
||||
### 4-45 — FileTree / Open Editors Lifecycle Link Checklist v1
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
- **证据**:
|
||||
- **全部 4 项 checklist 未勾选**:
|
||||
1. "跑或修复 task430 / task471 的可复现前置条件" — 未完成
|
||||
2. "明确哪些 smoke 已过、哪些因环境阻塞" — 未完成
|
||||
3. "补充 open editor / filetree active row / lifecycle 状态断言建议" — 未完成
|
||||
4. "更新 4-44 checklist 执行记录" — 未完成
|
||||
- 执行记录仅包含 Worker D 的讨论和计划,没有实际变更。
|
||||
- **留存原因**: 这是一份非常新的文档(2026-05-21),所有项都未验证。它不是高复杂度文档,但需要解决 task430 workspace bootstrap 前置问题后才能推进。如果 task430 环境问题没有阻碍,可在 1-2 小时内完成所有 4 项。
|
||||
- **补充说明**: 这是一份"接通型"文档 — 它的主要目标是让 4-44 的 smoke 验证可复现,以及让 open editor state 可观测。建议优先修 task430 workspace bootstrap,这同时解除 4-44 和 4-45 的阻塞。
|
||||
|
||||
---
|
||||
|
||||
## 交叉依赖分析
|
||||
|
||||
```text
|
||||
4-23 ──→ P3 候选,不依赖其他文档
|
||||
4-27 ──→ 核心 cutover,4-34/4-28 承接其尾项
|
||||
4-28 ──→ 依赖 4-27 的 restore 命令,React DOM focus 单列为待补
|
||||
4-34 ──→ Convex 侧依赖 4-27 的命令,local folder 侧为独立待补
|
||||
4-38 ──→ open target 子项由 4-39/4-42 完成;bulk delete 由 4-41 完成
|
||||
4-39 ──→ rootUri 子项由 4-42 完成 [已归档]
|
||||
4-40 ──→ bulk delete 子项由 4-41 完成 [已归档]
|
||||
4-41 ──→ 独立完成 [已归档]
|
||||
4-42 ──→ 独立完成 [已归档]
|
||||
4-43 ──→ 独立完成 [已归档]
|
||||
4-44 ──→ 依赖 task430 workspace bootstrap(同 4-45 阻塞项)
|
||||
4-45 ──→ 依赖 task430 workspace bootstrap
|
||||
```
|
||||
|
||||
## 全局风险排序
|
||||
|
||||
| 风险 | 文档 | 描述 | 影响 |
|
||||
|------|------|------|------|
|
||||
| 🔴 高 | 4-45 | 4 项 checklist 全部未勾选,Worker D 无产出 | open editor lifecycle 状态不可观测 |
|
||||
| 🔴 高 | 4-34 | local folder 双浏览器 no-refresh 未解决 | 唯一未完成的 dual-browser 缺口 |
|
||||
| 🟡 中 | 4-44 | 3 个 browser smoke 未通过 | action layer 代码合入但未经验证 |
|
||||
| 🟡 中 | 4-28 | React DOM focus 无浏览器证据 | location restore 已实现但焦点行为未确认 |
|
||||
| 🟢 低 | 4-38 | 前端 cutover 代码未完成但已有 4-39/4-41 覆盖 | 信息过期风险,非功能缺口 |
|
||||
| 🟢 低 | 4-23 | P3 候选,从未进入实现 | 无实际风险 |
|
||||
|
||||
---
|
||||
|
||||
## 建议归档路径(非执行)
|
||||
|
||||
以下仅作为人工决策参考,本次报告**未移动任何文件**:
|
||||
|
||||
| 文档 | 建议目标 | 前提条件 |
|
||||
|------|----------|----------|
|
||||
| 4-27 | `done/` | 添加引用 4-34/4-28 的头部注释 |
|
||||
| 4-39 | `done/` | 添加引用 4-42 的头部注释 |
|
||||
| 4-40 | `done/` | 无 |
|
||||
| 4-41 | `done/` | 无 |
|
||||
| 4-42 | `done/` | 无 |
|
||||
| 4-43 | `done/` | 无 |
|
||||
| 4-23 | `process/` 保留 | 添加 "P3 Candidate" 头注 |
|
||||
| 4-28 | `process/` 保留 | React DOM focus smoke 通过后归档 |
|
||||
| 4-34 | `process/` 保留 | task436 或等价 local folder no-refresh 证据通过后归档 |
|
||||
| 4-38 | `process/` 保留 | 剩余前端 cutover + UI smoke 通过后归档 |
|
||||
| 4-44 | `process/` 保留 | 3 个 smoke 全部通过后归档 |
|
||||
| 4-45 | `process/` 保留 | 所有 4 项 checklist 完成后归档 |
|
||||
|
||||
---
|
||||
|
||||
## 报告说明
|
||||
|
||||
**路径**: `.codex/reasonix-tasks/results/design-governance-worker-b-04-tree.md`
|
||||
|
||||
**只读约束**: 本文只创建了报告文件,未移动、修改或删除任何 `design/` 文件。上述归档/移动建议需由人工或后续 Worker 执行。
|
||||
|
||||
**验证命令**:
|
||||
```bash
|
||||
# 确认报告文件存在
|
||||
find .codex/reasonix-tasks/results/ -name '*worker-b*'
|
||||
|
||||
# 确认未修改任何设计文件
|
||||
cd /mnt/Data1T/mnote && git diff --stat design/
|
||||
|
||||
# 复现 Rust 验收(抽样)
|
||||
cargo test --manifest-path rust/Cargo.toml -p mnote-web filetree_runtime -- --test-threads=1
|
||||
cargo test --manifest-path rust/Cargo.toml -p mnote-web tree_command_local_folder -- --test-threads=1
|
||||
|
||||
# 检查 smoke 脚本语法
|
||||
node --check scripts/task430-vscode-explorer-stage7-smoke.js
|
||||
node --check scripts/task471-local-folder-bulk-resource-trash-smoke.js
|
||||
```
|
||||
@@ -0,0 +1,254 @@
|
||||
# Design Governance Report — Worker C: 05/06/08/09 Review
|
||||
|
||||
> Generated: 2026-05-21
|
||||
> Scope: `design/05-editor-mainline/process/`, `design/06-mindmap/process/`, `design/08-wolai-aline-test-flow/process/`, `design/09-siyuan-reference/process/`
|
||||
|
||||
---
|
||||
|
||||
## Executive Summary
|
||||
|
||||
Of 22 process documents reviewed:
|
||||
|
||||
| Status | Count | Documents |
|
||||
|--------|-------|-----------|
|
||||
| archive-done | 10 | 5-15, 5-17, 5-18, 5-19, 5-20, 5-21, 5-22, 5-23, 5-24, 5-25 |
|
||||
| keep-process | 4 | 5-26, 5-9, 5-6 (partial), 6-mindmap-phase6-leptos-ui-shell-reuse-checklist |
|
||||
| mark-process-reference | 7 | 5-5, 5-2, 5-7, 5-14, 6-mindmap-leptos-adapter-reference-notes, wolai-aline-test-flow-v1, 9-siyuan-reference |
|
||||
| needs-human-confirmation | 1 | 5-16 (minor open items, superseded by later docs) |
|
||||
|
||||
**Highest risk**: 5-26 remains unexecuted — convergence plan proposed but never landed. 5-9 Phase F (Page Aggregate items) still shows TODO but the work was done in 5-6 checklists (mild stale reference risk). Mindmap `leptos-mindmap` checklist is large and has visual parity items that haven't been systematically closed.
|
||||
|
||||
---
|
||||
|
||||
## 1. `design/05-editor-mainline/process/` — 18 files
|
||||
|
||||
### 5-15 — local-markdown-path-identity-unification-checklist-v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**: 所有 P0 (3 items) 和 P1 (1 item) checklist 均已勾选完成。文档末尾 `执行状态(2026-05-19)` 列出了所有已完成的验收命令和补充清理(删除 `ParsedLocalMarkdownPage.mnote_id` 字段)。
|
||||
- **归档原因**: 这是一个单次执行的 checklist,所有目标均已验证通过。后续身份逻辑若有回归需求,可查阅 `done/`。
|
||||
- **补充说明**: 验收命令完整可复现,是存档质量良好的 checklist。
|
||||
|
||||
### 5-16 — editor-group-resource-tab-safety-checklist-v1
|
||||
|
||||
**建议状态:needs-human-confirmation**
|
||||
|
||||
- **证据**: 核心项已完成:resource tab MRU、关闭 guard、`aria-selected`/`tabindex`、task460 smoke。剩余未完成项:正式 `MainEditorTabEntry` 模型(后被 5-18 的状态模型覆盖)、打开失败 placeholder tab(后被 5-18 完整实现)。
|
||||
- **留存原因**: 未完成的 2 项已被后续 checklists (5-18) 解决,文档本身已无独立未完成工作。
|
||||
- **建议**: 若确认 5-18 已完全覆盖 placeholder tab 需求,可归档。需人工确认。
|
||||
|
||||
### 5-17 — resource-editor-kind-and-smoke-matrix-checklist-v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**: 核心项已完成:PDF 独立 badge kind、file fallback badge、smoke 覆盖 markdown/text/code/image/pdf 未知类型。`scripts/task461-resource-kind-smoke.js` 已通过。
|
||||
- **归档原因**: 未完成项(正式 resolver 抽象、Office DocumentServer 回源、`active-tab/side/new-window` 统一 resolver)已由 5-19 和 5-26 覆盖。本文件是 5-17→5-19→5-26 递进的第一层,已完成的历史阶段。
|
||||
|
||||
### 5-18 — main-editor-tab-state-and-error-placeholder-checklist-v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**: 所有 checklist 项已勾选。`createResourceSession` 已补 `lastActiveAt`,`openResourceInActiveTab` 失败时保留 error placeholder tab。`task462` smoke 通过。
|
||||
- **归档原因**: 未完成项(`lastActiveAt` 未用于排序、dirty guard 无 UI 确认弹窗)属于后续 5-20 的独立主题。本文件闭环了主状态模型和错误占位。
|
||||
|
||||
### 5-19 — resource-open-resolver-and-onlyoffice-checklist-v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**: 所有 checklist 项已执行。`resolveResourceOpen` 已定义,`buildOnlyOfficeOpenUrl` 已修正回源 URL,`task463` smoke 覆盖 docx/pptx/xlsx badge、iframe、new-window。
|
||||
- **归档原因**: 唯一未完成项——“未验证真实外部 DocumentServer 协同编辑会话”,这属于外部服务可用性测试而非设计执行,不应阻塞归档。
|
||||
|
||||
### 5-20 — resource-tab-close-confirm-checklist-v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**: 所有 checklist 项已勾选并验证。`showResourceTabCloseGuardNotice` 对 dirty/saving/hasExternalConflict 输出可见提示,`task460` 断言可见提示不堆叠。
|
||||
- **归档原因**: 单次执行 checklist,已完成闭环。
|
||||
|
||||
### 5-21 — editor-tab-url-active-identity-checklist-v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**: 所有项已勾选。resource tab 激活写入 `resourceTab=<canonical identity>` URL state,filetree row 设 `data-active=true`,`task457` 覆盖全路径。
|
||||
- **归档原因**: 单次执行 checklist,已验证。
|
||||
|
||||
### 5-22 — mindmap-main-editor-tab-kind-v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**: 所有项已勾选。`kind=mindmap` resource tab 使用 `resource:mindmap:...` identity,`task169` 从旧 object shell 口径切到 main editor resource tab 口径。
|
||||
- **归档原因**: 已执行完成。旧 `task169` realtime 深测被标记为 `retiredRealtimeTopicEditing`,不含未完成工作。
|
||||
|
||||
### 5-23 — editor-side-target-secondary-pane-v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**: 所有项已勾选。`openResourceAsSideTarget`,资源侧栏目标显示 unsupported placeholder,`task472` smoke 通过。
|
||||
- **归档原因**: 已完成闭环。
|
||||
|
||||
### 5-24 — open-editors-lightweight-view-checklist-v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**: 所有项已勾选。`mnote.open_editors_snapshot.v1` 已暴露 snapshot 合同。`cargo test -p mnote-web web_shell` 通过。
|
||||
- **归档原因**: 执行记录清晰,UI 当前阶段保持为可观测模型(无 sidebar UI 新增)。
|
||||
|
||||
### 5-25 — editor-tab-keyboard-and-mru-checklist-v1
|
||||
|
||||
**建议状态:archive-done**
|
||||
|
||||
- **证据**: 所有项已勾选。`bindMainEditorTabStrip()` keyboard roving focus、Enter/Space 激活、关闭后 MRU focus 迁移已实现。`cargo test` 通过。
|
||||
- **归档原因**: Reasonix Worker B 输出 proposal,Codex 实现最小安全集。闭环。
|
||||
|
||||
### 5-26 — resource-open-resolver-convergence-checklist-v1
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
- **证据**: 执行记录明确记载 "Worker C 进程停留在计划提交阶段,没有生成 final.md"。"审查...重复判断" 和 "给出最小收敛方案" 未完成。Checklist 第 4 节 2 个主项未勾选。
|
||||
- **留存原因**: 仍有收敛正文附件与 FileTree 资源打开策略的实际工作待做。但 5-17/5-19 已完成了第一轮 resolver 建设,5-26 的收敛优先级较低。
|
||||
- **补充建议**: 可降级为 Low Priority process,或在 next sprint 以 1-2 小时限时任务完成。
|
||||
|
||||
### 5-5 — page-aggregate-single-truth-alignment-v1
|
||||
|
||||
**建议状态:mark-process-reference**
|
||||
|
||||
- **证据**: 这是战略设计文档,非 checklist。定义了 Page Aggregate 的 Phase F-J 方向和长期架构目标。文档末尾明确结论 `leptos-tiptap 主编辑区已基本可用,但页面聚合仍未收口`。
|
||||
- **保留原因**: 作为长期架构参考仍有效。不应归档为 done(聚合未完全闭环),但也不需要作为 process 继续执行(方向已定)。
|
||||
- **建议补充说明**: 建议在文档头部加注 `参考: 当前执行进度见 5-6`。
|
||||
|
||||
### 5-6 — page-aggregate-alignment-checklist-v1
|
||||
|
||||
**建议状态:keep-process (partial)**
|
||||
|
||||
- **证据**: 大部分 Phase (F/G/H/I/J) 已基本完成。仍有较小缺口:Phase G 退出标准第 2 项(新增字段不散落 props)未勾选;Phase H 页面设置分类第 2 项(哪些项降级/隐藏)未勾选。
|
||||
- **留存原因**: 文档非常大(34KB+),大部分已完成但仍有小缺口。可将这些微小项转到新的浓缩 checklist,或在本文件内更新状态后归档。
|
||||
- **建议**: 考虑将已完成的 Phase F/G/H/I/J 子项标记 final,剩余的微量工作移至更轻量文档继续。
|
||||
|
||||
### 5-2 — tiptap-notion-like-template-adoption-v1
|
||||
|
||||
**建议状态:mark-process-reference**
|
||||
|
||||
- **证据**: 这不是 checklist,是策略分析文档。结论是 `以后续主编辑器开发继续以 Tiptap 官方能力模型为体验上限...已完成主编辑器接入和 Rust truth 落地`。
|
||||
- **保留原因**: 作为 tiptap 编辑器的设计参考和 P0.5 边界定义仍有价值。不应继续视为 process 执行清单。
|
||||
|
||||
### 5-7 — wolai-page-tree-main-editor-experience-restoration-v1
|
||||
|
||||
**建议状态:mark-process-reference**
|
||||
|
||||
- **证据**: 文档自身已声明执行口径转交 5-9 checklist 和 `wolai-aline` skill。包含大量 Wolai 参考截图路径和差异矩阵,是重要的取证基线。
|
||||
- **保留原因**: 宝贵的 Wolai 对标取证基线记录和交互合同定义,作为 reference 保留。不应继续作为执行 checklist。
|
||||
|
||||
### 5-9 — wolai-aline-continuous-checklist-v1
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
- **证据**: 这是活跃的 checklist 文档。Phase A-E 大部分项目已完成(GREEN/PARITY),但存在未完成项:
|
||||
- **A4** (字体栈与基础 token): 仍为 TODO
|
||||
- **E18** (Clipboard/Paste): 仍为 TODO
|
||||
- **F1-F5** (Page Aggregate 相关): 仍为 TODO — 但这些在 5-6 中已大部分完成
|
||||
- Phase `已退役` 段落记录了一些退役项
|
||||
- **留存原因**: 仍有少量待办项 (A4, E18, F1-F5)。但 F1-F5 的内容实际已在 5-6 中完成,这里存在陈旧风险。
|
||||
- **建议**: 审查 F1-F5 是否应追认完成或引用 5-6 的进展;A4 和 E18 可考虑转入低优先级或归档。
|
||||
|
||||
### 5-14 — zed-lapce-vscode-reference-adoption-matrix-v1
|
||||
|
||||
**建议状态:mark-process-reference**
|
||||
|
||||
- **证据**: 这是参考采用矩阵设计文档,非 checklist。定义了 Zed/Lapce/VS Code/SideX 各自的参考职责和 P0-P3 实施建议。
|
||||
- **保留原因**: 作为代码引用架构的权威参考文档很有价值。不应作为执行 checklist,但推荐作为后续 BufferStore、WorkspacePath 等模块设计时的引用入口。
|
||||
- **补充说明**: 文档质量高、边界清晰,建议在 `done/` 也做一份副本或在 05-mainline README 中交叉引用。
|
||||
|
||||
---
|
||||
|
||||
## 2. `design/06-mindmap/process/` — 3 files
|
||||
|
||||
### 6-mindmap-kernel-phase6-projection-editor-v1
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
- **证据**: 这是 Phase 6 mindmap 的主架构设计文档。Phase 6.1 (真实 simple-mind-map runtime cutover) 已于 2026-05-10 完成。但文档定义的长期方向(Rust-native engine 路线)仍是未来可选项。
|
||||
- **留存原因**: 定义了三路线定位和 Rust 内核+KMind-like 编辑器的当前主线。仍有 `10.1 现实复核差距` 中记录的 Phase 6.1 尾项(`view_data_change` 持久化、toolbar zoom 绑定、RichText 插件)。
|
||||
- **补充说明**: 有 1 份对应的 done checklist (`6-mindmap-phase6-kmind-parity-detail-checklist-v1.md`),建议在 process 文档头部加注引用。
|
||||
|
||||
### 6-mindmap-leptos-adapter-reference-notes-v1
|
||||
|
||||
**建议状态:mark-process-reference**
|
||||
|
||||
- **证据**: 这是审计参考笔记,非执行 checklist。详细记录了 lx-doc/mind-map 的 Vue 组件到 kernel command 的映射,以及历史 React UI 壳的能力清单(8 个表格)。
|
||||
- **保留原因**: 作为 adapter 实现和命令映射的详细参考,在后续 rust-native UI shell 开发时仍有价值。不应作为执行清单。
|
||||
|
||||
### 6-mindmap-phase6-leptos-ui-shell-reuse-checklist-v1
|
||||
|
||||
**建议状态:keep-process**
|
||||
|
||||
- **证据**: 这是活跃的执行 checklist。Task 1-7 和 Task 8 (Context Menu) 大部分已完成。Task 9 (KMind visual parity) 的 9 个子项中有未封闭的项(node style panel、base style panel 等详细面板界面仍有差距)。
|
||||
- **留存原因**: 仍有未完成的 visual parity 细节项。KMind 视觉对齐是一个持续的收口过程(对应 `done/` 下的 detail checklist)。
|
||||
- **补充说明**: 文档很大(43KB+),建议将已完成 Task 移入 `done/`,只保留未完成的 Task 9+ 视觉差异项。
|
||||
|
||||
---
|
||||
|
||||
## 3. `design/08-wolai-aline-test-flow/process/` — 1 file
|
||||
|
||||
### wolai-aline-test-flow-v1
|
||||
|
||||
**建议状态:mark-process-reference**
|
||||
|
||||
- **证据**: 这是对标测试流程的方法论文档,非 checklist。定义了标准流程(明确小任务→取 Wolai 基线→写 RED smoke→实现→本地验证→subagent 复测→主线程复核)、安全边界、资源路径和 subagent 模板。
|
||||
- **保留原因**: 作为 Wolai 对标的标准流程参考仍有效。不应归档(仍在持续使用),也不应作为 process checklist(不是执行清单)。
|
||||
- **补充说明**: 文档质量高,应保持为 process/ 中唯一的流程定义文件。
|
||||
|
||||
---
|
||||
|
||||
## 4. `design/09-siyuan-reference/process/` — 1 file
|
||||
|
||||
### 9-siyuan-reference-boundary-and-adoption-v1
|
||||
|
||||
**建议状态:mark-process-reference**
|
||||
|
||||
- **证据**: 这是参考边界与采用策略文档,非 checklist。明确区分了思源值得参考的层级(块引用/属性视图/本地工作区心智/导图插件)和不建议照搬的部分(`.sy` 真相层/SQL 主接口/前端运行时)。
|
||||
- **保留原因**: 作为块式笔记能力参考的权威边界稿很有价值。当前无 process 待办项。
|
||||
- **补充说明**: 建议在 process 文档头部或设计根目录 README 中交叉引用,让后续设计者知道“思源参考应当落在哪层”。
|
||||
|
||||
---
|
||||
|
||||
## 5. Cross-Cutting Observations
|
||||
|
||||
### 5.1 主要风险
|
||||
|
||||
1. **5-26 计划未落地**: 资源打开 resolver 收敛方案由 Worker C 提出但从未实现。这是本次审查中唯一有"提议但未实施"记录的文件。风险较低(基本功能已由 5-17/5-19 覆盖),但历史记录显示有一轮未闭环的工作流。
|
||||
|
||||
2. **5-9 F1-F5 陈旧风险**: 5-9 的 F1-F5 (Page Aggregate 相关项) 标记为 TODO,但实际工作在 5-6 中已大部分完成。存在同一工作两处记录不一致的问题。建议审查 5-9 F1-F5 是否应追认或标注 "参见 5-6"。
|
||||
|
||||
3. **6-mindmap 视觉差距无限延伸**: `6-mindmap-phase6-leptos-ui-shell-reuse-checklist-v1` 最后阶段(Task 9+)的 KMind visual parity 项目可能变成无限尾随工程。建议明确一个 "足够好" 的退出标准。
|
||||
|
||||
### 5.2 建议立即行动项
|
||||
|
||||
- 将 5-15/5-17/5-18/5-19/5-20/5-21/5-22/5-23/5-24/5-25 共 10 个文件移至 `done/`
|
||||
- 将 5-5/5-2/5-7/5-14 标记或移动为 reference/ 类文档(当前 mnote 无统一 reference/ 目录,可另议)
|
||||
- 为 5-26 决定是否在下一 sprint 收敛或正式废案
|
||||
- 解决 5-9 F1-F5 的状态不一致问题
|
||||
- 将 6-mindmap 的 3 个文件在 phase 里程碑间做一次已完成/进行中/参考的切分
|
||||
|
||||
### 5.3 无需变更的文档
|
||||
|
||||
- `06-mindmap/done/6-mindmap-phase6-kmind-parity-detail-checklist-v1.md` — 已经是正确位置
|
||||
- `08-wolai-aline-test-flow/process/wolai-aline-test-flow-v1.md` — 保持在 process/ 作为流程定义
|
||||
- `09-siyuan-reference/process/9-siyuan-reference-boundary-and-adoption-v1.md` — 保持在 process/ 作为参考边界稿
|
||||
|
||||
---
|
||||
|
||||
## 报告说明
|
||||
|
||||
**路径**: `.codex/reasonix-tasks/results/design-governance-worker-c-05-06-08-09.md`
|
||||
|
||||
**只读约束**:本文只创建了报告文件,未移动、修改或删除任何 `design/` 文件。上述归档/移动建议需由人工或后续 Worker 执行。
|
||||
|
||||
**验证命令**:
|
||||
```bash
|
||||
# 确认报告文件存在
|
||||
find .codex/reasonix-tasks/results/ -name '*worker-c*'
|
||||
|
||||
# 确认未修改任何设计文件
|
||||
git diff --stat design/
|
||||
```
|
||||
@@ -0,0 +1,362 @@
|
||||
# Worker D:design 07/10 审查报告
|
||||
|
||||
> 执行时间:2026-05-27
|
||||
> 范围:`design/07-ai/process/` + `design/10-review/process/`
|
||||
> 口径:local-first MVP 后阶段统一口径
|
||||
> 约束:只读审查,不移动/修改/删除 design 文件
|
||||
|
||||
---
|
||||
|
||||
## 综合结论
|
||||
|
||||
审查的 16 个文档中:
|
||||
|
||||
| 建议状态 | 数量 | 文档 |
|
||||
|---------|------|------|
|
||||
| keep-process | 5 | 7-10, 7-12, 7-14, 7-15, 7-27 |
|
||||
| mark-process-reference | 6 | 7-17, 7-28, 12, 13, 14, 15 |
|
||||
| archive-done(建议归档) | 5 | 7-16, 7-30, 7-31, 7-32, 7-33 |
|
||||
|
||||
**核心发现**:design 07 中 2026-05-16 之前的文档(7-10/12/14/15)均已叠加 local-first 口径修正,无遗留的「BlockNote 默认主链」或「mnote.doc.markdown_edit 唯一主路径」问题。07 最近的 checklist(7-30~7-33)大部分已完成,仅余次要项。10-review 的四份 doc 均为已消耗的审查参考。
|
||||
|
||||
---
|
||||
|
||||
## 逐文档审查
|
||||
|
||||
### 1. `design/07-ai/process/7-10-page-block-ai-tooling-execution-checklist-v1.md`
|
||||
|
||||
**建议状态**:`keep-process`
|
||||
|
||||
**证据**:
|
||||
- Phase 1–7(Page Aggregate → block.move_after)全部已勾,有真实 smoke 证据(tmp JSON + 截图 + 测试通过记录)[phase-1-7-complete]
|
||||
- Phase 8 全部未勾:UI / Review Mode 的 4 项均为未完成状态 [phase-8-pending]
|
||||
- DONE 条件明确要求 Phase 8 未完成即不能归档 [done-condition-unmet]
|
||||
- 已包含 2026-05-16 和 2026-05-19 两轮口径修正,对齐 local-first 文件编辑主线 [section-1.0, 1.0.1]
|
||||
|
||||
**归档/保留原因**:Phase 8 UI / Review Mode 仍冻结(Phase C 政策),但 Phase 1–7 的实打实执行证据在此文档中集中记录。如果强行归档到 done/,则 Phase 8 的跟踪上下文丢失。
|
||||
|
||||
**建议补充说明**:无。
|
||||
|
||||
---
|
||||
|
||||
### 2. `design/07-ai/process/7-12-page-ai-hermes-tool-routing-and-review-surface-v1.md`
|
||||
|
||||
**建议状态**:`keep-process`
|
||||
|
||||
**证据**:
|
||||
- Phase A(设计治理)已勾 [phase-a-done]
|
||||
- Phase B(Manifest 合同收口)全部未勾 [phase-b-open]
|
||||
- Phase C(block-edit-workflow 改造)全部未勾 [phase-c-open]
|
||||
- Phase D(Review session)部分已勾(schema 定义),UI 未勾 [phase-d-partial]
|
||||
- Phase E(状态统一)全部未勾 [phase-e-open]
|
||||
- Phase F(验收 smoke)除 selection guard 外全部未勾 [phase-f-open]
|
||||
- 2026-05-18 已补充 local-first 口径修正 [section-0]
|
||||
|
||||
**归档/保留原因**:定义了当前 AI 编辑的完整架构方向——local-first 文件编辑为主、mnote 兼容工具为辅。Phases B–F 是后续执行 roadmap。
|
||||
|
||||
**建议补充说明**:Phase C 与 Phase C policy(Phase C 冻结)存在矛盾——本文 Phase C 要求将 block-edit-workflow 改造成 router,但统一口径要求「不要恢复 page-ai fast-path」。建议在本文 Phase C 开头标注「当前仍冻结,待 Phase C 解冻后实施」。
|
||||
|
||||
---
|
||||
|
||||
### 3. `design/07-ai/process/7-14-online-local-ai-markdown-editing-convergence-v1.md`
|
||||
|
||||
**建议状态**:`keep-process`
|
||||
|
||||
**证据**:
|
||||
- 当前产品默认形态已切到 local-first workspace [section-0-update]
|
||||
- 明确两层模型:agent 原生 patch/diff 为主、mnote.doc.markdown_edit 为 compat fallback [section-1-conclusion]
|
||||
- Phase A(当前立即)有 5 项,Phase B(Phase A 后)、Phase A/B 后补充、Phase C(远期)均未完成 [section-8-phases]
|
||||
- CLI Main 参考分析深入,已转化为采纳清单 [section-2.1]
|
||||
|
||||
**归档/保留原因**:本文是最全面定义「两层 AI 编辑模型」的设计文档,是当前本地 vs 在线编辑口径的权威来源。Phase A 的部分实现(scope/detail/markdown 优先)仍待执行。
|
||||
|
||||
**建议补充说明**:无。
|
||||
|
||||
---
|
||||
|
||||
### 4. `design/07-ai/process/7-15-page-ai-acp-agent-runtime-unified-layer-v1.md`
|
||||
|
||||
**建议状态**:`keep-process`
|
||||
|
||||
**证据**:
|
||||
- 17 步执行计划中 step-1 到 step-7 已被后续 checklist(7-30 到 7-33)覆盖 [section-9-low-friction]
|
||||
- step-8 到 step-17 仍待实施(Reasonix wrapper、前端运行时选择器、存量迁移、旧代码退役)[steps-in-progress]
|
||||
- 不包含勾选状态,是架构设计而非 checklist [no-checkboxes]
|
||||
- 已包含 2026-05-18 local-first 口径补充 [section-1.2]
|
||||
|
||||
**归档/保留原因**:ACP 统一架构的实施蓝图。后续 checklist(7-30~7-33)已覆盖前 7 步,但 step-8 之后仍需此文档指导。
|
||||
|
||||
**建议补充说明**:建议标注哪些步骤已被 7-30~7-33 覆盖,以便新 reader 快速定位执行状态。
|
||||
|
||||
---
|
||||
|
||||
### 5. `design/07-ai/process/7-16-page-block-ai-real-smoke-followup-matrix-v1.md`
|
||||
|
||||
**建议状态**:`archive-done`
|
||||
|
||||
**证据**:
|
||||
- 3.1 到 3.7 全部已完成,有真实 JSON 和截图证据 [sections-3.1-to-3.7-done]
|
||||
- 3.8(UI / Review Mode 边界)全部未勾 [section-3.8-open]
|
||||
- 本文开头声明「不新增 AI 功能面」——3.8 是唯一剩余项,且已被 Phase C 政策冻结 [scope-statement]
|
||||
- 冻结策略明确写于 7-10 和 7-12:「Phase C 仍冻结,不实施流式 apply 或新的审阅 UI」[phase-c-frozen]
|
||||
|
||||
**归档/保留原因**:本文范围内的所有可执行 smoke 项目已完成。剩余的 3.8(4 项)属于 Phase C 范畴,当前已被统一口径冻结。继续留在 process/ 会产生「还有事要做」的误导,但实际上这些项不能在当前阶段执行。
|
||||
|
||||
**建议补充说明**:由于本 worker 只读不移动文件,此建议需人工确认后执行 `mv`。若 3.8 解冻,需重新打开此文档或创建新 checklist。
|
||||
|
||||
---
|
||||
|
||||
### 6. `design/07-ai/process/7-17-acp-session-convex-sharing-contract-v1.md`
|
||||
|
||||
**建议状态**:`mark-process-reference`
|
||||
|
||||
**证据**:
|
||||
- 文档自标「状态:PROCESS / FUTURE」[status-future]
|
||||
- Phase A(约束固化)已完成「ACP 默认主链可用、账号作用域写入 Convex、旧 HTTP 主链进入 recycle」[phase-a]
|
||||
- Phase B–E 全部标记为项目基本完成后的远期计划 [phases-b-c-d-e]
|
||||
- 本文冻结 API 草案形状,不要求当前实施 [section-6-api-draft]
|
||||
|
||||
**归档/保留原因**:Phase A 已完成。Phase B–E 是项目基本完成后的产品化功能,不改变当前架构方向。保留在 process/ 作为合同参考。
|
||||
|
||||
**建议补充说明**:无。
|
||||
|
||||
---
|
||||
|
||||
### 7. `design/07-ai/process/7-27-online-markdown-writeback-final-content-truth-v2.md`
|
||||
|
||||
**建议状态**:`keep-process`
|
||||
|
||||
**证据**:
|
||||
- 本文是针对 7-24/7-25 已知缺陷的修复设计 [bug-references]
|
||||
- 详细实施计划:6 个步骤(增强 blocks_to_markdown → 实现 parse_final → 实现 build_page_content → 替换写回路径 → 更新 full_content → 清理死代码)[implementation-plan]
|
||||
- 新增 5 个测试矩阵 P0/P1 级 [test-matrix]
|
||||
- 没有代码已完成的证据:本文是设计稿,代码尚未实施 [no-code-evidence]
|
||||
|
||||
**归档/保留原因**:是当前活跃的待实施修复。`mnote.doc.markdown_edit` 在线文档路径仍然以「二次推导」而非「最终 markdown」为写回真源,7-27 是改正此问题的方案。
|
||||
|
||||
**建议补充说明**:高优先级——如果不实施,7-24/7-25 修复后的在线 markdown_edit 在 full_content 和多 operation 场景仍然受限。
|
||||
|
||||
---
|
||||
|
||||
### 8. `design/07-ai/process/7-28-resource-ai-tool-contract-v1.md`
|
||||
|
||||
**建议状态**:`mark-process-reference`
|
||||
|
||||
**证据**:
|
||||
- 定义 mindmap / office 工具合同,无勾选状态 [no-checkboxes]
|
||||
- 无实施记录或代码证据 [no-code-evidence]
|
||||
- 不属于当前 AI 编辑主路径(主路径是文件编辑 + ACP session)[outside-main-path]
|
||||
|
||||
**归档/保留原因**:保留在 process/ 作为远期资源工具设计的参考合同。当前不需要实施——mindmap 和 office 的 AI 操作尚未成为产品优先级。
|
||||
|
||||
**建议补充说明**:无。
|
||||
|
||||
---
|
||||
|
||||
### 9. `design/07-ai/process/7-30-acp-session-load-resume-checklist-v1.md`
|
||||
|
||||
**建议状态**:`archive-done`
|
||||
|
||||
**证据**:
|
||||
- 6/7 项已勾:load_session、ensure_session、ACP run 优先尝试 loaded session、mock 测试覆盖 [checklist-checks]
|
||||
- 仅 1 项未完成:「明确区分 MNote session id 与 ACP adapter session id;需要持久化/返回时字段名不能混淆」[remaining-item]
|
||||
- 执行记录:2026-05-20 Reasonix 实施 + Codex 复核通过 [exec-record]
|
||||
- 验收命令全部通过 [verification-commands]
|
||||
|
||||
**归档/保留原因**:核心功能(session/load → ensure_session 流程)完整实现并通过 Codex 复核。剩余项是 session id 字段全链路持久化问题,不属于功能性缺陷,适合作为后续产品化工作的一部分跟踪。
|
||||
|
||||
**建议补充说明**:由于本 worker 只读不移动文件,此建议需人工 `mv` 到 `design/07-ai/done/`。
|
||||
|
||||
---
|
||||
|
||||
### 10. `design/07-ai/process/7-31-acp-permission-decision-loop-checklist-v1.md`
|
||||
|
||||
**建议状态**:`archive-done`
|
||||
|
||||
**证据**:
|
||||
- 文档自标「状态:done」[status-done-header]
|
||||
- 6/7 项已勾:incoming handler、pending map、SSE permission.requested、HTTP endpoint resolve、超时 deny [checklist-checks]
|
||||
- 仅 1 项未完成:「补 mock ACP 测试:incoming request 等待决策、allow 返回 result、deny 返回 result/error、timeout deny」[remaining-item]
|
||||
- 执行记录 + Codex 修正记录详细 [exec-record]
|
||||
|
||||
**归档/保留原因**:真实 permission 闭环(前端 allow/deny → 后端 JSON-RPC response)已完整实现。剩余 end-to-end mock 测试是测试覆盖的增强项,不妨碍功能完整性。
|
||||
|
||||
**建议补充说明**:虽然文档自标 done,但未完成项可能会导致后续重构时缺少回归保护。建议归档时在备注中标注此测试缺口。
|
||||
|
||||
---
|
||||
|
||||
### 11. `design/07-ai/process/7-32-acp-tool-location-and-open-action-checklist-v1.md`
|
||||
|
||||
**建议状态**:`archive-done`
|
||||
|
||||
**证据**:
|
||||
- 6/7 项已勾:ToolLocation 结构、locations SSE、tool card 展示、打开按钮 [checklist-checks]
|
||||
- 代码层已通过 Codex 复核 [exec-record]
|
||||
- 仅 1 项未完成:「补测试覆盖 locations parse、SSE 数据、前端字符串断言或 smoke」[remaining-item]
|
||||
|
||||
**归档/保留原因**:ACP tool locations 解析、SSE 桥接、前端 tool card 打开动作完整实现。剩余 browser smoke 是验证性补充,核心功能已就绪。
|
||||
|
||||
**建议补充说明**:无。
|
||||
|
||||
---
|
||||
|
||||
### 12. `design/07-ai/process/7-33-acp-session-info-plan-ui-checklist-v1.md`
|
||||
|
||||
**建议状态**:`archive-done`
|
||||
|
||||
**证据**:
|
||||
- 5/6 项已勾:session.info.updated SSE、plan.updated SSE、前端 title 更新持久化、plan 面板渲染、bridge 单测 [checklist-checks]
|
||||
- 仅 1 项未完成:「tool raw output 中包含 todo JSON 时,可以复用 plan 区域或 tool card 状态显示」[remaining-item]
|
||||
- 执行记录 + Codex 复核通过 [exec-record]
|
||||
|
||||
**归档/保留原因**:ACP session info/plan 的完整桥接+UI 链路已实现。剩余 todo JSON 解析项因格式未确认而暂缓,不影响 session 自动标题和 plan 面板功能。
|
||||
|
||||
**建议补充说明**:无。
|
||||
|
||||
---
|
||||
|
||||
### 13. `design/10-review/process/12-sidex-vscode-workbench-gap-review-v1.md`
|
||||
|
||||
**建议状态**:`mark-process-reference`
|
||||
|
||||
**证据**:
|
||||
- 审查发现的 P0/P1/P2 缺口已拆分为执行 checklist(5-16、5-17、4-38、5-18、5-19、4-39、4-40、5-20、4-41、4-42、5-21、4-43、5-22、5-23、4-44、4-45)[execution-split]
|
||||
- 本文本身不再包含待执行项目 [no-remaining-items]
|
||||
- 「不建议照搬」部分已明确 MNote 的吸收边界 [section-7]
|
||||
|
||||
**归档/保留原因**:已完成审查输出——缺口分析已有对应执行文档跟进。本文保留作为 Sidex 对照原始证据和决策记录。
|
||||
|
||||
**建议补充说明**:无。
|
||||
|
||||
---
|
||||
|
||||
### 14. `design/10-review/process/13-hermes-vscode-plugin-gap-review-v1.md`
|
||||
|
||||
**建议状态**:`mark-process-reference`
|
||||
|
||||
**证据**:
|
||||
- 审查发现的 P0 缺口已拆分为 7-30、7-31、7-32、7-33(均已实施完成)[execution-split-7-30-33]
|
||||
- P1/P2 缺口未拆分,但列为后续执行参考 [p1-p2-open]
|
||||
- 本文本身无待执行勾选 [no-checkboxes]
|
||||
|
||||
**归档/保留原因**:审查产出的 4 份 P0 checklist 均已实施。本文保留作为 Hermes VSCode 插件对照的原始证据和 P1/P2 参考。
|
||||
|
||||
**建议补充说明**:P1/P2 如果后续拆分执行,建议更新本文关联或创建新 review。
|
||||
|
||||
---
|
||||
|
||||
### 15. `design/10-review/process/14-sidex-workbench-gap-followup-review-v1.md`
|
||||
|
||||
**建议状态**:`mark-process-reference`
|
||||
|
||||
**证据**:
|
||||
- 审查发现的缺口已拆分为执行 checklist(5-24、5-25、5-26、4-45)[execution-split]
|
||||
- 明确列出「不建议继续照搬」[section-4]
|
||||
- 本文本身无待执行项 [no-remaining-items]
|
||||
|
||||
**归档/保留原因**:同 12——审查已输出到执行 checklist。
|
||||
|
||||
**建议补充说明**:无。
|
||||
|
||||
---
|
||||
|
||||
### 16. `design/10-review/process/15-design-governance-mvp-post-review-v1.md`
|
||||
|
||||
**建议状态**:`mark-process-reference`
|
||||
|
||||
**证据**:
|
||||
- 本文是当前的 governance 框架文档,定义了本次审查的范式 [meta-document]
|
||||
- Workers A/B/C/D 由此散发 [section-3]
|
||||
- 不包含待执行代码项 [no-code-items]
|
||||
|
||||
**归档/保留原因**:是本次治理审查的元文档和框架定义。如果归档,将失去当前治理周期的 root 文档。
|
||||
|
||||
**建议补充说明**:建议在所有 Worker 报告完成后,将本文与各 Worker 报告一同作为 governance 周期快照归档到 `design/10-review/done/` 或 `design/10-review/process/` 之内保留。
|
||||
|
||||
---
|
||||
|
||||
## 最高风险项
|
||||
|
||||
按风险从高到低:
|
||||
|
||||
### 🔴 H1:7-27 尚未实施(keep-process)
|
||||
|
||||
`mnote.doc.markdown_edit` 的在线文档写回路径仍然以「二次推导」而非「最终 markdown」为真源。7-24/7-25 已修复拒绝写入的安全问题,但 full_content 和多 operation 场景的正确性仍未达到设计目标。如不尽快实施,已有 bugfix 的保护措施效果有限,且代码与设计文档的差距会随时间扩大。
|
||||
|
||||
**建议**:优先安排 7-27 的 6 步实施计划。
|
||||
|
||||
### 🟡 H2:7-10 Phase 8 冻结与后续解冻风险(keep-process)
|
||||
|
||||
Phase 1–7 全部完成,但 Phase 8(UI / Review Mode)因 Phase C 政策冻结。如果后续「冻结」解除,接手者需要从零启动——当前 design 文档不承诺 UI 形状、不包含 mockup、不定义用户交互路径。7-16 3.8 的 4 项未勾项同样属此问题。
|
||||
|
||||
**建议**:在 Phase C 解冻前标记「Phase 8 实施时需新建设计文档,当前只保留缺口清单」。
|
||||
|
||||
### 🟡 H3:7-15 执行计划分化(keep-process)
|
||||
|
||||
17 步计划中只有前 7 步被 7-30~7-33 覆盖实施。step-8 之后(Reasonix ACP wrapper、前端运行时选择器、存量迁移、旧代码退役)仍然没有对应的 checklist 或代码证据。若 ACP 架构的目标是「Hermes 与 Reasonix 可互换」,则后续步骤仍需要推动。
|
||||
|
||||
**建议**:创建 7-34 ~ 7-36 覆盖 Reasonix wrapper、前端选择器和存量迁移。
|
||||
|
||||
### 🟢 H4:7-30/31/32/33 剩余未完成项(archive-done)
|
||||
|
||||
这些 checklist 的核心功能已完成,但各有 1 项未完成:
|
||||
- 7-30:session id 全链路持久化
|
||||
- 7-31:end-to-end mock 测试缺口
|
||||
- 7-32:browser smoke 未补
|
||||
- 7-33:todo JSON 格式解析
|
||||
|
||||
**建议**:归档后将这些剩余项汇总到统一 tracker(如 bugs/07-ai/process/ 或 project board),避免分散丢失。
|
||||
|
||||
---
|
||||
|
||||
## 无过期口径声明
|
||||
|
||||
检查所有文档后确认:**没有文档仍在将 `mnote.doc.markdown_edit` 或 `page-ai/block-edit-workflow` 描述为 local-first 普通 Markdown 编辑的唯一/默认主路径。** 2026-05-16 之后的各轮口径修正已正确覆盖:
|
||||
|
||||
- 7-10 §1.0.1:「local-first 普通正文编辑默认给 Hermes / Reasonix 当前文件引用」
|
||||
- 7-12 §0:「local-first 普通 Markdown 编辑默认给 Hermes / Reasonix 授权文件引用」
|
||||
- 7-14 §0:「local-first 普通 Markdown 编辑优先给 agent 授权文件引用」
|
||||
- 7-15 §1.2:「local-first 普通 Markdown 编辑默认不要求 runtime 调 mnote.doc.markdown_edit」
|
||||
- 7-16 §1:「local-first 普通 Markdown 编辑主路径仍是授权文件引用 + agent 原生 patch/diff + watcher 同步」
|
||||
- 7-27 §0:「本地 .md 路径的默认 AI 编辑主路径是授权文件引用 + agent 原生 patch/diff + watcher 同步」
|
||||
- 7-17、7-28、7-30~33 不涉及编辑主路径定义
|
||||
|
||||
---
|
||||
|
||||
## 归档建议汇总(需人工执行)
|
||||
|
||||
以下文件建议由人工移动到 `done/` 目录:
|
||||
|
||||
```bash
|
||||
# 07-ai 已完成 checklist
|
||||
mv design/07-ai/process/7-16-page-block-ai-real-smoke-followup-matrix-v1.md design/07-ai/done/
|
||||
mv design/07-ai/process/7-30-acp-session-load-resume-checklist-v1.md design/07-ai/done/
|
||||
mv design/07-ai/process/7-31-acp-permission-decision-loop-checklist-v1.md design/07-ai/done/
|
||||
mv design/07-ai/process/7-32-acp-tool-location-and-open-action-checklist-v1.md design/07-ai/done/
|
||||
mv design/07-ai/process/7-33-acp-session-info-plan-ui-checklist-v1.md design/07-ai/done/
|
||||
```
|
||||
|
||||
10-review 的四份文档保留为参考(mark-process-reference),不归档。
|
||||
|
||||
---
|
||||
|
||||
## 验证命令执行摘要
|
||||
|
||||
```bash
|
||||
# 1. 文件列表验证
|
||||
find design/07-ai/process design/10-review/process -maxdepth 1 -type f -name '*.md' | sort
|
||||
# → 16 files confirmed
|
||||
|
||||
# 2. 高危模式搜索
|
||||
rg -n "mnote\\.doc\\.markdown_edit.*主路径|page-ai.*唯一|BlockNote.*默认" \
|
||||
design/07-ai/process design/10-review/process
|
||||
# → 无匹配:所有文档已更新口径
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 文件范围
|
||||
|
||||
本报告写入 `.codex/reasonix-tasks/results/design-governance-worker-d-07-10.md`。
|
||||
|
||||
未修改 design/ 下任何文件。未提交 git。未运行浏览器 smoke。
|
||||
Reference in New Issue
Block a user