feat(tree): complete rust family runtime checklist

- add tree shell runtime artifact contracts and page/filetree/picker runtime reducers
- sink tree.subtree.move write operation through Rust and formalize command event plans
- harden file tree search projection contract and route thin-proxy boundaries
- record completed harness tasks and move design docs into process/done
This commit is contained in:
lix-2026
2026-04-27 10:27:15 +08:00
parent e564dfde02
commit 4ab36a9386
30 changed files with 2502 additions and 432 deletions
+46 -18
View File
@@ -1,18 +1,46 @@
[2026-04-19T15:01:07Z] [SESSION-0] RESET Cleared historical harness backlog and progress; previous tree-shell, runtime-shell, and old editor migration batches no longer represent the current plan.
[2026-04-19T15:01:07Z] [SESSION-0] INIT Initialized new harness batch from /mnt/Data1T/mnote/design/05-editor-mainline/process/5-3-tiptap-leptos-rust-migration-checklist-v1.md with focus on P0.5 main-editor cutover.
[2026-04-19T15:01:07Z] [SESSION-0] INIT Current base commit a0edc9d1; harness scope is limited to main editor integration, Rust truth boundary, minimal schema/command mapping, and acceptance for the new Tiptap/Leptos editor path.
[2026-04-19T15:01:07Z] [SESSION-0] STATS tasks_total=10 completed=0 failed=0 pending=10 blocked=0 attempts_total=0 checkpoints=0
[2026-04-19T15:25:40Z] [SESSION-1] LOCK acquired (pid=3267717)
[2026-04-19T15:25:40Z] [SESSION-1] INIT Session start: base=a0edc9d1, task-001 set to in_progress
[2026-04-19T15:29:25Z] [SESSION-1] CHECKPOINT [task-001] step=1/1 "已冻结真实文档页主链、DocumentContent 接入点、切流 flag 归属,以及 runtime shell 仅保留 debug/prototype 的边界。"
[2026-04-19T15:29:25Z] [SESSION-1] Completed [task-001] (commit skipped by repo rule; base=a0edc9d1)
[2026-04-19T15:29:25Z] [SESSION-1] Starting [task-002] 执行 P0.5-2:把 leptos-tiptap host 接入真实文档页壳与真实路由,退出 localhost:8123 作为唯一验证入口的状态 (base=a0edc9d1)
[2026-04-19T16:12:53Z] [SESSION-1] CHECKPOINT [task-002] step=1/1 "已在真实 /documents/[id] 页面引入 editor host 切换层,新增 mnote-web embedded surface 与 main editor smoke,成功产出真实页面截图。"
[2026-04-19T16:12:53Z] [SESSION-1] Completed [task-002] (commit skipped by repo rule; base=a0edc9d1)
[2026-04-19T16:12:53Z] [SESSION-1] Starting [task-003] 执行 P0.5-3:引入稳定 block_id 策略,明确 Rust EditorBlock.block_id 为真相,Tiptap UniqueID 仅作 runtime 辅助 (base=a0edc9d1)
[2026-04-19T17:27:37Z] [MANUAL] RESET 用户已在 git 中撤销上一版 task-002 结果;该结果被判定为偏向 debug/runtime shell,不符合“8123 真实体验进入主编辑器”的目标。现将 task-002 重新置为 in_progresstask-003 及后续任务回退为 pending。
[2026-04-19T18:24:24Z] [SESSION-2] LOCK acquired (pid=1205413)
[2026-04-19T18:24:24Z] [SESSION-2] INIT Session restart: task-002 rerun after git rollback; bridge strategy switched from public dist embedding to real 8123 runtime + embed contract.
[2026-04-19T18:24:24Z] [SESSION-2] CHECKPOINT [task-002] step=1/1 "已在真实 /documents/[id] 页面接入真实 8123 runtime,去掉 bridge 假壳,改为 spike 主动上报 ready/height,并让 smoke 自动拉起 8123。"
[2026-04-19T18:24:24Z] [SESSION-2] Completed [task-002] (commit skipped by repo rule; screenshot=/mnt/Data1T/mnote/test/results/main-editor/block-editor-main-editor-smoke/2026-04-19T18-24-21-028Z/success-final.png)
[2026-04-19T18:24:24Z] [SESSION-2] STATS tasks_total=10 completed=2 failed=0 pending=8 blocked=0 attempts_total=2 checkpoints=2
[2026-04-26T23:16:13Z] [SESSION-0] RESET Cleared previous completed tree rust family harness batch; new batch is rebuilt from /mnt/Data1T/mnote/design/04-tree-domain/process/4-16-tree-rust-family-remaining-final-runtime-checklist-v1.md.
[2026-04-26T23:16:13Z] [SESSION-0] INIT Initialized 9 tasks for Phase K runtime artifact/state machines, Phase L tree.subtree.move write-path sinking, Phase M formal block/save events, Phase N route thinning, and Phase O search hardening.
[2026-04-26T23:16:13Z] [SESSION-0] INIT Base commit 6d89f5ca; unrelated dirty files must be preserved.
[2026-04-26T23:16:13Z] [SESSION-1] LOCK acquired (pid=manual-codex)
[2026-04-26T23:16:13Z] [SESSION-1] Starting [task-001] Phase K-1:定义 tree shell Rust runtime artifact 边界 (base=6d89f5ca)
[2026-04-26T23:16:13Z] [SESSION-1] STATS tasks_total=9 completed=0 failed=0 pending=8 in_progress=1 blocked=0 attempts_total=1 checkpoints=0
[2026-04-26T23:22:39Z] [SESSION-1] CHECKPOINT [task-001] step=1/1 "已定义 rust_tree_shell_runtime_artifact_v1,并让 mnote-web rendererInput 与 3000 inline host 同步输出输入/输出/事件边界。"
[2026-04-26T23:22:39Z] [SESSION-1] Completed [task-001] (commit skipped by repo rule; validated by mnote-web renderer_input/runtime_artifact tests and tree-shell-iframe-host vitest)
[2026-04-26T23:22:39Z] [SESSION-1] Starting [task-002] Phase K-2:建立 page tree Rust-side runtime 状态 (base=6d89f5ca)
[2026-04-26T23:22:39Z] [SESSION-1] STATS tasks_total=9 completed=1 failed=0 pending=7 in_progress=1 blocked=0 attempts_total=2 checkpoints=1
[2026-04-26T23:27:43Z] [SESSION-1] CHECKPOINT [task-002] step=1/1 "已新增 page_runtime reducer,覆盖 focus normalize/next/previous/home/end、expand/collapse/open/context-menu intent、drop feedback 与 tree.subtree.move dispatch。"
[2026-04-26T23:27:43Z] [SESSION-1] Completed [task-002] (commit skipped by repo rule; validated by mnote-web page_renderer/page_focus/page_runtime, tree-shell iframe/surface vitest, and task112 smoke)
[2026-04-26T23:27:43Z] [SESSION-1] Starting [task-003] Phase K-3:建立 file tree Rust-side runtime 状态机 (base=6d89f5ca)
[2026-04-26T23:27:43Z] [SESSION-1] STATS tasks_total=9 completed=2 failed=0 pending=6 in_progress=1 blocked=0 attempts_total=3 checkpoints=2
[2026-04-26T23:32:11Z] [SESSION-1] CHECKPOINT [task-003] step=1/1 "已新增 filetree_runtime reducer,覆盖 selection/range/context/normalize、drag row ids、copy/move effect、drop target feedback 与 doc/index/asset-folder/asset intent。"
[2026-04-26T23:32:11Z] [SESSION-1] Completed [task-003] (commit skipped by repo rule; validated by mnote-web filetree_renderer/filetree_selection/filetree_runtime, iframe/file-tree/tree-delta vitest, and task112 smoke)
[2026-04-26T23:32:11Z] [SESSION-1] Starting [task-004] Phase K-4:建立 picker Rust-side runtime 状态机 (base=6d89f5ca)
[2026-04-26T23:32:11Z] [SESSION-1] STATS tasks_total=9 completed=3 failed=0 pending=5 in_progress=1 blocked=0 attempts_total=4 checkpoints=3
[2026-04-26T23:34:59Z] [SESSION-1] CHECKPOINT [task-004] step=1/1 "已新增 picker_runtime reducer,覆盖 normalize/next/previous/home/end/focus/pick、excluded ids、root pick 与 focus_dom 搜索输入边界。"
[2026-04-26T23:34:59Z] [SESSION-1] Completed [task-004] (commit skipped by repo rule; validated by mnote-web picker_renderer/picker_state/picker_runtime, picker dialog + iframe vitest, and task113 smoke)
[2026-04-26T23:34:59Z] [SESSION-1] Starting [task-005] Phase K-53000 host 调用正式 runtime artifact,并将 mnote-web /tree 固定为 debug/internal (base=6d89f5ca)
[2026-04-26T23:34:59Z] [SESSION-1] STATS tasks_total=9 completed=4 failed=0 pending=4 in_progress=1 blocked=0 attempts_total=5 checkpoints=4
[2026-04-26T23:38:55Z] [SESSION-1] CHECKPOINT [task-005] step=1/1 "已固定 3000 inline host 与 mnote-web debug shell 均输出 rust_tree_shell_runtime_artifact_v1task112/task113 smoke 证明 3000 主路径保持 inline iframe host 且 direct tree shell debug 默认禁用。"
[2026-04-26T23:38:55Z] [SESSION-1] Completed [task-005] (commit skipped by repo rule; validated by mnote-web tree_shell_embeds_renderer_input_contract, tree-shell iframe/surface vitest, task112 and task113 smoke)
[2026-04-26T23:38:55Z] [SESSION-1] Starting [task-006] Phase L:将 tree.subtree.move 最终写路径继续下沉 Rust kernel (base=6d89f5ca)
[2026-04-26T23:38:55Z] [SESSION-1] STATS tasks_total=9 completed=5 failed=0 pending=3 in_progress=1 blocked=0 attempts_total=6 checkpoints=5
[2026-04-26T23:52:20Z] [SESSION-2] LOCK acquired (pid=3897587)
[2026-04-26T23:52:20Z] [SESSION-2] RECOVERY [task-006] action="validate existing uncommitted changes" reason="previous session left task-006 in_progress after implementation and validation"
[2026-04-26T23:52:52Z] [SESSION-2] CHECKPOINT [task-006] step=1/1 "已引入 Rust treeWriteOperationConvex 优先执行 Rust write operation;目标验证通过。"
[2026-04-26T23:52:52Z] [SESSION-2] Completed [task-006] (commit skipped by repo rule; validated by bridge-runtime tree_subtree_move_command and 39 frontend target tests)
[2026-04-26T23:52:52Z] [SESSION-2] Starting [task-007] Phase M:补齐 block/save-snapshot formal artifact 与 domain-event contract (base=6d89f5ca)
[2026-04-26T23:52:52Z] [SESSION-2] STATS tasks_total=9 completed=6 failed=0 pending=2 in_progress=1 blocked=0 attempts_total=7 checkpoints=6
[2026-04-27T00:09:12Z] [SESSION-2] CHECKPOINT [task-007] step=1/1 "formal domainEventPlan payload schema 与 resync_required delta 已落地;目标验证通过。"
[2026-04-27T00:09:12Z] [SESSION-2] Completed [task-007] (commit skipped by repo rule; validated by bridge-runtime formal contract tests and frontend adapter/runtime tests)
[2026-04-27T00:09:12Z] [SESSION-2] Starting [task-008] Phase N:继续收薄 3000 Next route 过渡职责 (base=6d89f5ca)
[2026-04-27T00:09:12Z] [SESSION-2] STATS tasks_total=9 completed=7 failed=0 pending=1 in_progress=1 blocked=0 attempts_total=8 checkpoints=7
[2026-04-27T00:18:38Z] [SESSION-3] LOCK acquired (pid=codex-session-3)
[2026-04-27T00:18:38Z] [SESSION-3] RECOVERY [task-008] action="resume diagnostics with uncommitted changes" reason="previous session implemented Phase N but task112 picker move wait timed out"
[2026-04-27T00:28:56Z] [SESSION-3] CHECKPOINT [task-008] step=1/2 "已定位 task112 超时根因:move 请求实际发出但 Convex 运行态 documents.move validator 未加载 treeWriteOperation,执行 npx convex dev --once 刷新本地 functions。"
[2026-04-27T00:34:43Z] [SESSION-3] CHECKPOINT [task-008] step=2/2 "目标 Vitest 与 task112 smoke 通过;补充 iframe ready 等待,运行态 Convex functions 已刷新。"
[2026-04-27T00:34:43Z] [SESSION-3] Completed [task-008] (commit skipped by repo rule; validated by tree route/delta/boundary vitest and task112 smoke)
[2026-04-27T00:34:43Z] [SESSION-3] Starting [task-009] Phase O:搜索语义 hardening 与资源类型 fixture 补齐 (base=6d89f5ca)
[2026-04-27T00:41:58Z] [SESSION-3] CHECKPOINT [task-009] step=1/1 "file_tree 搜索 hardening 前端契约与资源 fixture 已完成;目标验证通过。"
[2026-04-27T00:41:58Z] [SESSION-3] Completed [task-009] (commit skipped by repo rule; validated by tree-delta, projection-client, kernel-file-tree tests and task112 smoke)
[2026-04-27T00:41:58Z] [SESSION-3] STATS tasks_total=9 completed=9 failed=0 pending=0 in_progress=0 blocked=0 attempts_total=9 checkpoints=9
[2026-04-27T00:41:58Z] [SESSION-3] LOCK released