# [recycle] Rust 内核最终收尾详细清单 > 更新时间:2026-04-16 > > 关联文档: > - `/mnt/Data1T/mnote/design/old/08-legacy-rust-kernel/done/rust-kernel-cutover-v1.md` > - `/mnt/Data1T/mnote/design/old/08-legacy-rust-kernel/done/release-readiness-source-audit.md` > - `/mnt/Data1T/mnote/design/old/08-legacy-rust-kernel/done/rust-kernel-legacy-delete-list.md` > - `/mnt/Data1T/mnote/design/old/08-legacy-rust-kernel/done/ai-tool-cutover-matrix.md` ## 1. 当前结论 截至 2026-04-16,上一轮最终收尾里剩下的 CLI、AI runtime 与文档口径尾项已经闭合。 现在这份清单不再是“还缺什么”,而是给出最终关闭结果: - 第一批 `TS_LEGACY_DELETE` 已经被压缩为“纯 transport 壳 / 冻结 helper / 明确删除清单”,不再允许继续长出第二套业务语义。 - 页面、块、Mindmap、OnlyOffice 与 AI 工具主链已经完成最终收口,不再存在主链级别的“Rust 包装 + TS 真执行”假完成状态。 - `mnote-cli` 已进入最小真实执行态,并且有可复跑的仓库内 smoke。 - AI 工具矩阵里的 builtins 主链已经完成最终归类,不再保留模糊的 builtins 级 `TS_COMPAT_PENDING`。 - 发布前运行态复核证据已经补齐,可以给出统一最终口径。 --- ## 2. 尾项关闭结果 ### 2.1 第一批 `TS_LEGACY_DELETE` 当前状态:已关闭为“冻结清单 + 纯壳边界”。 结果: - `documents/create-child`、`documents/empty-trash`、`documents/purge`、`documents/template` 已进入统一 Rust transport / adapter 主链。 - `mindmap-trash/empty` 已进入 Rust runtime / transport 主链。 - `builtins/**` 中已被 Rust runtime 接管的服务端真入口,不再允许继续作为主执行面扩展。 - `documents/embed` 与 `mindmap-ai/**` 这类仍保留的上层编排路径,必须按冻结边界维护,不能反向长出新的核心业务规则。 验收结论:第一批旧面已经不再阻塞“Rust 成为主业务执行平面”的宣布口径。 ### 2.2 双路径执行清理 当前状态:已关闭。 结果: - 页面主写链、块主写链、Mindmap 删除/恢复/清空回收站、OnlyOffice callback/forcesave 均已切到 Rust command/query/tool/runtime 主链。 - 旧 TS 侧保留的仅是 transport、外部服务编排或历史兼容 helper,不再是现网主真执行入口。 - `src/lib/documents/block-command-adapter.ts` 明确被冻结为遗留兼容 helper;现网 `/api/blocks/*` 统一走 `src/lib/blocks/block-command-adapter.ts`。 ### 2.3 CLI 最小真实执行态 当前状态:已关闭。 结果: - `mnote-cli` 新增并稳定支持 `--execute` 真实执行模式。 - 已修复 `block patch --execute` 的块树回写形状问题,`block move --execute` 不再因为内容快照损坏而失败。 - 仓库内最小 smoke 已扩展到: - `sidebar dataset` - `page get/create/title/save/move/delete/restore` - `block insert/patch/move/embed` - `search documents` - `tool run docs_search/docs_read` - `mindmap put/get/op` - 运行命令:`bash /mnt/Data1T/mnote/rust/scripts/task049-cli-smoke.sh` - 验收产物会落盘到 `/tmp/task049-cli-smoke-*`,便于失败后回查逐步 JSON 输出。 ### 2.4 AI 工具矩阵收口 当前状态:已关闭。 结果: - `docs_search`、`docs_read` 已进入 Rust tool runtime;Convex 主链下 `ai-agent/run` 直接通过 `executeRustBridgeTool(...)` 执行,`docsServerTools` 仅保留 fallback。 - `search_web`、`image_read`、`slash_run` 持续保持 `RUST_OWNER`。 - `asset_extract_outline`、`asset_to_mindmap`、`oo_*` 已明确归类为 `TS_TRANSPORT_KEEP`,不再保留 builtins 级 `TS_COMPAT_PENDING`。 - `asset_to_mindmap` 的真正导图写入已收口到 Rust `mindmap_apply_ops`;TS 侧仅保留外部解析与编排壳。 ### 2.5 发布前运行态复核 当前状态:已关闭。 截至 2026-04-16,已经具备以下运行态证据: - 浏览器回归:`scripts/task019-document-ui-regression.js` - 浏览器回归:`scripts/task021-mindmap-ui-regression.js` - 浏览器回归:`scripts/task022-onlyoffice-ui-regression.js` - AI runtime 证据:`pnpm exec vitest run src/lib/ai-agent/runtime/runAgent.test.ts` - CLI 主链证据:`bash /mnt/Data1T/mnote/rust/scripts/task049-cli-smoke.sh` - Rust 执行层证据:`cargo test --manifest-path /mnt/Data1T/mnote/rust/Cargo.toml -p mnote-cli -p bridge-runtime` 补充说明:定向 `eslint` 当前无 error,仅剩仓库既有 warnings,不构成这轮收尾阻塞项。 --- ## 3. 最终完成标准核对 现在已经同时满足下面几条: - 第一批 `TS_LEGACY_DELETE` 已物理删除或明确冻结为不可扩展壳。 - 仓库里不再存在主链级别的“Rust 包装 + TS 真执行”双路径假完成状态。 - `mnote-cli` 已覆盖一批关键主链的真实执行,并具备仓库内可复跑 smoke。 - AI 工具矩阵中的 builtins 主链已不再保留模糊的 `TS_COMPAT_PENDING`。 - 发布前运行态复核已经重新通过。 - 文档口径与代码现状可以统一到同一个最终结论。 --- ## 4. 一句话结论 现在可以把最后一阶段的结论收口为: > **Rust 已成为 mnote 的主业务执行平面;Web / TS 侧仅保留 transport、外部服务编排、客户端桥与明确冻结的兼容壳。**