feat: complete tree shell cutover and regression coverage

This commit is contained in:
lix-2026
2026-04-18 09:38:16 +08:00
parent d3876e56eb
commit 111a87d4fd
53 changed files with 5440 additions and 516 deletions
+50 -9
View File
@@ -64,6 +64,23 @@
> **Kernel 基础层与 Rust Web 承载层已经进入真实主线,树域 consumer 已统一到稳定 projection family;但旧前端壳仍然是主要执行面,下一步才是独立 Rust Web tree shell 重构。**
### 面向“全部用 Rust 重写”的附加口径
如果把长期总目标进一步固定为:
> **主执行面最终也迁到 Rust 家族,而不只是“Rust 拥有 kernel 语义”。**
那么当前状态应再补一层判断:
- `Kernel Phase 0-4` 解决的是“树域真相和协议先收口”
- 但距离“主要 UI 执行面改由 Rust 承接”还差一个关键中段:
- `Sidebar / 页面树 / 文件树` 独立 Rust Web 子系统重构
- 这一步不是可选优化,而是旧前端壳退场前必须先完成的第一块主执行面切换
也就是说:
> **如果目标是“全部用 Rust 重写”,那么当前最优先的下一步,不是继续在旧 React 壳里打补丁,而是启动树域独立 Rust Web 重构。**
---
## 4. 新架构的真实验收定义
@@ -272,6 +289,23 @@
- 继续缩小 Sidebar 超大客户端壳,只保留局部交互岛
- 让文件树中的更宽对象投影逐步由 Rust projection 直接输出
### 面向“全部用 Rust 重写”的优先级解释
如果长期目标只是“Rust 持有语义”,这里可以被理解为下一批独立大任务。
但如果长期目标已经固定为“全部用 Rust 重写”,那么这里应升级为:
- **最近主线 P0**
- **旧前端壳的第一块正式替换带**
- **后续阅读页 / 搜索 / AI / Mindmap Rust 化之前的必经步骤**
原因是:
- 树域是工作区主导航与对象结构入口,替换价值最高
- `page_tree / file_tree` 协议已经冻结,返工风险最低
- 当前 Sidebar 仍是旧前端壳里最重、最容易继续扩散语义的一块
- 如果不先把树域执行面剥离出来,后续文档页、搜索页、导图页 Rust 化会继续被旧壳牵制
### 完成判定
- [x] 主 Sidebar 以及相关树域已直接消费 kernel projection
@@ -491,19 +525,22 @@
如果按当前真实代码继续推进,建议顺序是:
1. 完成 `Kernel Phase 4`
2. 基于稳定 tree protocol,启动树域独立重构
1. 维持 `Kernel Phase 4` 已完成口径,不再回头重做 consumer 统一
2. 立即启动 `Phase 4` 后继任务
- [sidebar-pagetree-filetree-rust-web-rebuild-v1.md](/mnt/Data1T/mnote/design/sidebar-pagetree-filetree-rust-web-rebuild-v1.md)
3. 同步启动 `Kernel Phase 5`
4. 再推进 `Kernel Phase 6`
5. 再推进 `Kernel Phase 7`
6. 最后才进入 `Kernel Phase 8``Kernel Phase 9`
3. 在树域 Rust Web 子系统形成稳定主链后,再继续把文档阅读页的 `page subtree / read_view` 下沉到 Rust 输出边界
4. 再推进 `Kernel Phase 5`
5. 再推进 `Kernel Phase 6`
6. 再推进 `Kernel Phase 7`
7. 最后进入 `Kernel Phase 8``Kernel Phase 9`
原因很简单:
- 如果 Sidebar / 页面树 / 文件树还没切到统一 kernel projection,树域 Rust Web 重写会在协议未冻结前重复返工
- 如果 Sidebar / 页面树还没切到 kernel,工作区主导航就还没换真相层
- 如果知识刷新与 kernel-aware 检索不成立,AI 和 BookMindmap 路线也无法形成长期闭环
- `Phase 4` 的目标已经完成,真正未完成的是“树域执行面 Rust 化”
- 树域是所有主页面里最先具备 Rust 化条件的一块,因为 projection / command protocol 已经先被冻结
- 文档阅读页、搜索、AI、Mindmap 后续都会依赖这条更稳定的树域与 projection 分发主链
- 如果继续把精力分散到旧 React 壳上的局部修补,会拖慢真正的执行面切换
- 知识刷新与 kernel-aware 检索仍然重要,但它们更适合在树域主承载面开始切换后并行推进,而不是抢在前面替代主导航改造
---
@@ -516,3 +553,7 @@
所以后续主线必须固定为:
> **先完成树域的 kernel projection 统一,再基于稳定协议做 Sidebar / 页面树 / 文件树的独立 Rust Web 重构;之后再并行推进结构知识刷新、Mindmap、阅读页、AI、`BlockNote` 与旧壳退场。**
如果把总目标进一步固定为“全部用 Rust 重写”,则这里还应再明确一句:
> **下一步应该继续的,不是旧定义里的 `Kernel Phase 4` 本身,而是它的后继任务,也就是 `Sidebar / 页面树 / 文件树 Rust Web 重构`;这是旧前端壳退场前最值得优先拿下的第一块执行面。**