5.2 KiB
5.2 KiB
[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 datasetpage get/create/title/save/move/delete/restoreblock insert/patch/move/embedsearch documentstool run docs_search/docs_readmindmap 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的真正导图写入已收口到 Rustmindmap_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、外部服务编排、客户端桥与明确冻结的兼容壳。