docs(design): 固化 3000 主文档壳刷新验收口径
明确 File Tree / Page Tree 的 no-refresh 验收必须在 3000 /documents/<id> 主文档壳执行,不能再用 3001/Next 或 /tree debug route 替代。 补充页面 tree.node.create、页面 delete/purge、页面内 mindmap create 三条链路的独立验收;mindmap create 按 /api/mindmap/<doc>/<mindmap> 资产写入链路单独验证。 记录 task426 主入口 smoke 作为后续回归入口。
This commit is contained in:
@@ -210,6 +210,8 @@
|
||||
|
||||
补充:已新增 `PreferredSidebarSnapshotProvider`,并把文档页头标题的本地 draft / committed / persisted 语义直接并入 `page-aggregate-client-state`;`DocumentContent` 现在只从同一份 preferred sidebar snapshot 读取 live committed title,再与聚合 reducer 内的短暂 draft / persisted title 做合成,不再额外维护独立标题 hook。与此同时,`useSidebarData.refetch()` 在 Convex live 模式下收到 `documents-changed` 也会主动拉取一份新的 `/api/sidebar` snapshot,再与 tree stream 做 freshness 选择,避免“页头草稿是新的,但 breadcrumb / sidebar / page tree / file tree 还卡在旧快照”。对应单测为 `page-aggregate-client-state.test.ts`、`use-sidebar-data.test.tsx`。浏览器烟测 `scripts/task110-page-title-single-truth-smoke.js` 已验证:页头重命名后,breadcrumb、默认 sidebar、page tree、file tree、切页往返、刷新均保持一致,因此本阶段与“标题来自同一份更新后的 projection”相关的勾选正式保留。
|
||||
|
||||
补充:2026-05-14 已把“文件树 / 页面树无需刷新可见”的验收口径固定到 Rust 3000 主文档壳:`MNOTE_UI_BASE_URL=http://127.0.0.1:3000 node scripts/task426-mnote-web-main-no-reload-smoke.js` 覆盖 `/documents/<id>` 中页面 create、页面 delete,以及页面内新建 mindmap 后 File Tree asset row 即时出现。后续不能再用 3001/Next 路径或 `/tree` debug route 代表用户实际使用的 3000 主入口;页面内 mindmap create 是 `/api/mindmap/<doc>/<mindmap>` 资产写入链路,必须和页面 `tree.node.create/delete` 分开验收。
|
||||
|
||||
### 7.3 退出标准
|
||||
|
||||
- [x] 标题不同步问题不再以“前端本地状态漂移”的形式重复出现。
|
||||
|
||||
Reference in New Issue
Block a user