完成当前主线 checklist 阶段收口
This commit is contained in:
@@ -37,62 +37,74 @@
|
||||
|
||||
## 2. 当前第一优先级
|
||||
|
||||
当前最优先的不是继续扩 UI,也不是继续大规模重写执行面,而是把页面域和树域的真相边界收口到本地优先工作区。
|
||||
当前最优先的不是继续补 P0-P6 产品闭环,而是在已完成的 local-first 最小闭环之上继续收紧底座:
|
||||
|
||||
- `WorkspacePath / ObjectIdentity`
|
||||
- `DocumentBuffer / BufferStore`
|
||||
- `Page Aggregate` 写读边界
|
||||
- `tree.* / tree.resource.*`
|
||||
- tree live cache
|
||||
- agent allowed roots 与文件版本仲裁
|
||||
|
||||
P0-P6 已经有最小闭环证据;P7 已完成阶段性瘦身,但还不是完全 kernel-native / 无 compat 的终态。
|
||||
|
||||
### 2.0 Local-First Workspace
|
||||
|
||||
当前第一优先级固定为:
|
||||
当前状态:
|
||||
|
||||
- `/mnt/Data1T/mnote/design/02-convex-rust-long-term-architecture/done/2-2-local-first-workspace-convex-control-plane-v1.md`
|
||||
|
||||
原因:
|
||||
已完成的最小闭环:
|
||||
|
||||
- 前期产品是 10 人以内、个人笔记默认独立、可分享、AI 隔离的知识库,不是默认云协作平台
|
||||
- 本地 markdown 文件更适合作为 AI 编辑、上传下载、备份、git 管理和调试的默认数据形态
|
||||
- Convex 配置、schema、functions、实时订阅和 storage 不应继续阻塞本地个人工作区主路径
|
||||
- 迁移重点是让 LocalFS 成为默认 `WorkspaceSource`,Convex 保留为账号、分享、同步和协作控制面
|
||||
- 本地 Markdown 页面内上传已完成后端、HTTP 和真实浏览器 smoke 基线;下一步重点转为管理员目录授权、冲突合并 UI、agent diff 审计、本地索引和分享 / 同步闭环
|
||||
- LocalFS 已成为默认 `WorkspaceSource` 方向,Convex 保留为账号、分享、同步和协作控制面
|
||||
- 本地 Markdown 上传、管理员目录授权、冲突合并 UI、agent changed files、本地索引、分享 / 同步、资源模型与导出迁移均已进入最小闭环
|
||||
|
||||
### 2.1 Page Aggregate
|
||||
|
||||
当前第二优先级固定为:
|
||||
当前状态:
|
||||
|
||||
- `/mnt/Data1T/mnote/design/05-editor-mainline/process/5-5-page-aggregate-single-truth-alignment-v1.md`
|
||||
- `/mnt/Data1T/mnote/design/05-editor-mainline/process/5-6-page-aggregate-alignment-checklist-v1.md`
|
||||
- `/mnt/Data1T/mnote/design/05-editor-mainline/done/5-5-1-page-aggregate-contract-v1.md`
|
||||
|
||||
原因:
|
||||
阶段性结论:
|
||||
|
||||
- 默认主编辑器已经切到页面内 `leptos-tiptap` island
|
||||
- 文档页读取主链已优先消费 Rust `mnote.page_aggregate.v1` 快照
|
||||
- 标题单一真源与页面写链都已经开始收口到 `page.*` family
|
||||
- 但页面设置运行时语义、页头标题回流与 AI 设置面仍未完全闭环
|
||||
- 页面本地 aggregate state 与页头/子树补偿链仍说明页面域尚未完全统一;TS builder 已退出 runtime 主链
|
||||
- 标题、正文、页面设置刷新已通过 Page Aggregate smoke 验证一致
|
||||
- 本地 `.md` 是正文真相,`EditorBlockDocument` 是 runtime projection / cache,这一边界已写入 `5-5 / 5-6`
|
||||
- 前端手工拼 `meta + content` 已降级为 legacy `body.content` fallback;非 local 的后端 `CompatMetaContentJoin` 仍作为 cloud / legacy substrate 过渡边界保留
|
||||
- 下一步不是再补页面设置 UI,而是推进 BufferStore、kernel-native projection 与写侧 compat 瘦身
|
||||
|
||||
### 2.2 Tree Command Cutover
|
||||
|
||||
当前第三优先级固定为:
|
||||
当前状态:
|
||||
|
||||
- `/mnt/Data1T/mnote/design/04-tree-domain/done/4-6-tree-command-protocol-cutover-stage2-v1.md`
|
||||
|
||||
原因:
|
||||
阶段性结论:
|
||||
|
||||
- 前端已经开始以 `tree.*` 作为 preferred command name
|
||||
- 但 route / adapter / bridge / CLI 仍保留大量 `documents.*`
|
||||
- 如果不先完成命令面统一,后续 page aggregate 与 tree realtime 都会持续停留在兼容双轨
|
||||
- 新增命令命名已统一到 `tree.*` 或 `tree.resource.*`
|
||||
- `documents.*` 保留为 compat alias,不再作为新增主语义入口
|
||||
- 资源 rename、move、archive、restore、purge 已补齐 `tree.resource.*`
|
||||
- 下一步重点是继续缩薄旧 adapter,而不是扩展新的 `documents.*`
|
||||
|
||||
### 2.3 Tree Realtime 主链
|
||||
|
||||
当前第四优先级固定为:
|
||||
当前状态:
|
||||
|
||||
- `/mnt/Data1T/mnote/design/03-rust-web/process/3-3-rust-web-tree-realtime-event-stream-v1.md`
|
||||
|
||||
原因:
|
||||
阶段性结论:
|
||||
|
||||
- 当前 sidebar 已有 query snapshot、tree stream、preferred snapshot 选择链
|
||||
- `3000` 当前主壳已接入 `/api/tree/events` 的 snapshot + delta + resync consumer,并已有 browser smoke
|
||||
- 但 Sidebar、page subtree、filetree 与 preferred snapshot 还没有完全统一到同一条 live cache
|
||||
- 这仍会持续带来 refetch 补偿、freshness 选择和旧快照回闪问题
|
||||
- `3000` 主壳已接入 WS snapshot / delta / resync consumer,SSE 仅作为 fallback
|
||||
- 双浏览器 page/file/resource/trash 操作已有 no-refresh smoke 证据
|
||||
- 本地 folder sidebar watch 已从整页 HTML refetch 改为 projection API 刷新
|
||||
- 下一步重点是把 local-folder watcher 与 tree live cache 进一步统一,减少 polling 型补偿
|
||||
|
||||
## 3. 当前仍应保留但不在第一线的 process
|
||||
|
||||
@@ -129,28 +141,28 @@
|
||||
|
||||
## 5. VSCode-like 产品缺口
|
||||
|
||||
`2-2` 已完成 local-first 骨架与迁移 checklist,后续新增能力应优先补齐这些产品闭环:
|
||||
`2-2` 已完成 local-first 骨架与迁移 checklist,下面这些产品闭环已有最小实现与验证证据,不再作为当前第一优先级:
|
||||
|
||||
1. 管理员目录授权 UI / API:管理用户可读写目录、共享目录、只读/可写权限和 AI 目录权限。
|
||||
2. VSCode-like 冲突处理 UI:接受磁盘版本、保留当前编辑器版本、打开 diff / 合并。
|
||||
3. agent 写入审计:回收 changed files、diff summary、actor、workspace root、permission level、run id。
|
||||
4. 本地索引:全文搜索、反链、页面引用、资源引用、标签,不依赖 Convex search 才能搜索本地 workspace。
|
||||
5. 分享与同步闭环:独立 share grants 控制面、shared workspace cache、shared AI session、离线权限收敛和同步冲突报告;share grant 不等于本机 local access grant,不能自动扩大本机目录读写权限。
|
||||
6. 插件资源模型:simplemindmap / office 作为 Resource Tree 对象打开和保存,Markdown 只保留链接或嵌入引用。
|
||||
7. 旧 Convex 数据迁移产品化:真实导出入口、迁移进度、备份、冲突报告和回滚策略。
|
||||
1. 管理员目录授权 UI / API。
|
||||
2. VSCode-like 冲突处理 UI。
|
||||
3. agent changed files / diff 审计。
|
||||
4. 本地搜索、反链和资源引用索引。
|
||||
5. 分享与同步闭环。
|
||||
6. 插件资源模型产品化。
|
||||
7. 旧 Convex 数据迁移产品化。
|
||||
|
||||
后续产品工作应建立在统一 workspace identity、BufferStore、tree command context 和 live cache 之上,不应回到新增零散 route / compat 面。
|
||||
|
||||
## 6. 当前执行顺序
|
||||
|
||||
当前推荐顺序固定为:
|
||||
当前推荐顺序更新为:
|
||||
|
||||
1. 管理员目录授权 UI / API
|
||||
2. VSCode-like 冲突处理 UI
|
||||
3. agent changed files / diff 审计
|
||||
4. 本地搜索、反链和资源引用索引
|
||||
5. 分享与同步闭环
|
||||
6. 插件资源模型产品化
|
||||
7. 旧 Convex 数据迁移产品化
|
||||
8. Page Aggregate / tree command / realtime 兼容链继续瘦身
|
||||
1. 统一 `WorkspacePath / ObjectIdentity` 在 runtime 中的消费边界。
|
||||
2. 将 `DocumentBuffer` 接入运行时 `BufferStore`,让 tiptap、AI、watcher 共用打开态和文件版本仲裁。
|
||||
3. 继续瘦身 Page Aggregate 的 legacy `body.content` / compat join 边界,推进 kernel-native projection。
|
||||
4. 落地 command context / context key,统一菜单、快捷键、按钮和 AI 写入能力的 enablement 判断。
|
||||
5. 继续把 local-folder watcher / projection refresh 收进同一 live cache。
|
||||
6. 在上述底座稳定后,再扩展分享同步、资源工具和迁移的产品体验。
|
||||
|
||||
持续推进 checklist:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user