Files
mnote/design/10-review/done/18-current-design-and-bug-hunt-review-v1.md
T
lix-2026 1882db7681 收口 MNote P0 P1 P2 审查尾项
- 归档 OnlyOffice live bridge、Page AI、mindmap、design governance 与相关 bug 条目
- 补齐 MinerU OCR 后端 runtime 合同与 smoke/test 基线
- 收口 ChatOnly/Doubao、ObjectIdentity、Page Aggregate compat 与 runtime owner 文档口径

验证:
- cargo test --manifest-path rust/Cargo.toml -p mnote-web local_ocr -- --test-threads=1
- cargo test --manifest-path rust/Cargo.toml -p mnote-web onlyoffice_bridge -- --test-threads=1
- git diff --check
- git diff --cached --check
- codegraph index . --force && codegraph status .
- codegraph sync . && codegraph status .
2026-06-01 09:29:12 +08:00

100 lines
6.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 18 当前 design 口径与 bug 寻找 Review v1
> 创建时间:2026-05-31
>
> 状态:`done`
>
> 范围:当前仓库、历史 design 口径、active `process/`、现有 `bugs/process`、近期未提交 OnlyOffice / Page AI / control-plane 改动。
## 1. 结论
当前上位口径仍一致:
- `tree-first graph kernel` 是长期对象真相层。
- local-first workspace 是默认产品形态,本地 `.md` 是页面正文真相。
- Rust `mnote-web` 是 3000 主执行面。
- `leptos-tiptap` 是默认 Markdown 前端编辑器。
- Page Aggregate 是 Rust-first 投影收口方向,但仍需要 compat 瘦身。
- Page AI 的 local-first 主路径是“授权文件引用 + allowed roots + Hermes/Reasonix 原生 patch/diff + watcher/BufferStore 同步”,不是继续扩 `mnote.doc.markdown_edit``/api/page-ai/block-edit-workflow`
本轮发现的主要问题不是架构方向动摇,而是 `design/process` 状态与真实完成态、索引入口和 bug 记录之间出现漂移。
## 2. 已更新口径
- `design/README.md` 的当前入口已从不存在的 `design/01-05-current-priority-overview.md` 改为 `CURRENT_ARCHITECTURE.md``1-8`
- `1-8` 已补充 2026-05-31 口径复核:历史 `01-05` 已迁入 `old/`;已归档的 `3-3` / `3-18` 不再作为 active process 入口。
- 本 review 作为本轮设计治理和 bug 寻找事实源,后续 worker 不应凭旧路径恢复过时优先级。
## 3. design 漂移
已确认的漂移:
- `design/README.md``1-8` 曾引用已不存在的 `design/01-05-current-priority-overview.md`
- `design/03-rust-web/process/3-24-global-content-type-page-width-settings-v1.md` checklist 全部完成并有实施记录;2026-05-31 已迁入 `design/03-rust-web/done/3-24-global-content-type-page-width-settings-v1.md`
- `design/05-editor-mainline/done/5-31-page-settings-sqlite-preference-convergence-v1.md` 已迁入 `done/`;剩余风险另按后续 bug / follow-up 跟踪。
- `design/05-editor-mainline/done/5-32-filetree-lazy-loading-sidex-alignment-v1.md` 已迁入 `done/`tree live cache 后续入口改看 `3-23` 与相关 bug。
- `design/05-editor-mainline/process/5-33-navigation-page-route-guard-checklist-v1.md` 顶部落地状态和正文 checklist 状态不一致,需要拆成已完成核心与剩余 follow-up。
- `design/07-ai/done/7-41-page-ai-hermes-reasonix-user-profile-isolation-v2.md` 文件头状态为 `done`2026-06-01 已迁入 `done/`
- `design/10-review/process/17-sidex-mnote-workbench-gap-execution-checklist-v1.md` 文件头状态为 `done`2026-05-31 已迁入 `design/10-review/done/17-sidex-mnote-workbench-gap-execution-checklist-v1.md`
- `design/10-review/done/11-current-full-architecture-review-v1.md` 中“`mnote.doc.markdown_edit` 已是简单正文编辑主路径”的历史判断已被 `7-18` 和当前 AGENTS/ARCHITECTURE 覆盖;只能作为当时 review 快照,不应指导 local-first 新实现。
## 4. 新增 bug 条目
本轮已写入:
- `bugs/10-review/done/10-18-design-process-status-and-stale-entry-v1.md`
- `bugs/07-ai/process/7-45-onlyoffice-live-bridge-session-isolation-v1.md`
- `bugs/07-ai/process/7-46-onlyoffice-live-tool-resource-scope-bypass-v1.md`
- `bugs/05-editor-mainline/process/5-40-onlyoffice-bridge-plugin-noise-regression-v1.md`
- `bugs/07-ai/process/7-47-local-first-ai-markdown-edit-mouth-drift-v1.md`
- `bugs/10-review/done/10-19-agents-md-broken-design-references-v1.md`
- `bugs/03-rust-web/done/3-26-sidebar-dev-hot-reload-setinterval-v1.md`
- `bugs/10-review/done/10-20-testing-reference-missing-new-smokes-v1.md`
其中 `10-18``10-19``10-20` 已完成治理收口并迁入 `done/`OnlyOffice / Page AI / Sidebar 等运行时缺陷仍按各自 bug 条目继续跟踪验收。
## 5. 下一步建议
P0
- [x] 修复 OnlyOffice live bridge session identity 与 resource scope 两个风险,优先补 Rust 单测,随后做 clean browser 多 tab smoke。
- [x] 继续补 OnlyOffice 真实浏览器集成证据:真实 Office iframe 双 tab 不串台,以及 Page AI target=A 时不能读写 Office resource=B。
- [x] `AGENTS.md` 断裂引用、Sidebar dev hot reload guard、`5-31` / `5-32` / `7-41` 归档已经收口。
- [~] `5-33` breadcrumb / fetch guard follow-up 仍保留在 `process/`
- [x] 更新 `10-review/done/11` 或追加覆盖说明,防止 worker 继续把 `mnote.doc.markdown_edit` 当 local-first 主写入口。
P1
- [~] 继续推进 `7-18` Agent Target Resolvertarget chip/picker、dirty guard、allowed roots/files 与写后 diff 回收。
- [x] 推进 `WorkspacePath/ObjectIdentity + BufferStore + Page Aggregate compat 瘦身`,让 FileTree、Open Editors、resource tab 与 AI target resolver 消费同一身份与 buffer 状态。
- [x] 保留 `3-23``7-38` 作为 runtime owner follow-up,不重新打开 raw string 大拆分议题。
P2
- [x] `7-42` mindmap 第二批:结构化 `apply_ops`、resource tab contextRefs、revision conflict。
- [~] `3-25` MinerU OCR:后端真实 MinerU runtime 已补;任务状态事件、全局任务栏和 UI 入口仍待做。
- [x] `7-43` OnlyOffice Plugin BridgeP0/P1 安全主路径与 P2 recipe 矩阵已收口,后续新增 recipe 按矩阵逐项验证。
- [x] `7-44` ChatOnly Doubao bindingMNote 侧 binding 与 Doubao provider 单测已完成。
- [ ] `7-49` ChatOnly OpenClaw providerDeepSeek / Gemini provider 级 delete helper 与单测仍在外部仓库阻塞,不能在 MNote 内归档。
本轮已将 `task503``task504``task512``task513``task514``task515``task516` 补入 `scripts/TESTING_REFERENCE.md`;对应 smoke 已实跑,运行结果由 `bugs/10-review/done/10-20-*` 记录。
## 6. 验证记录
原始 review 是设计/bug 审查和文档更新,未修业务代码,未跑浏览器 smoke。2026-06-01 后续收口已补跑 `task514``task517`,并登记 `task517` 到 smoke referenceOnlyOffice 真实 iframe / DocumentServer 验收仍未完成。
已执行只读检查:
- `git status --short`
- `find design -maxdepth 3 -type f`
- `find bugs -maxdepth 3 -type f`
- `codegraph status .`
- 多组 `rg` / `sed` / `nl` 证据核对
已使用:
- 2 个只读 subagent:架构口径审查、bug 候选审查。
- 2 个 Reasonix 只读 workerdesign governance audit、bug hunt candidate audit。
注意:当前工作区有大量未提交改动,且 CodeGraph 显示新增文件 pending。本轮只对本轮新增/修改的文档负责,不回滚、不移动用户已有改动。