- 归档 OnlyOffice live bridge、Page AI、mindmap、design governance 与相关 bug 条目 - 补齐 MinerU OCR 后端 runtime 合同与 smoke/test 基线 - 收口 ChatOnly/Doubao、ObjectIdentity、Page Aggregate compat 与 runtime owner 文档口径 验证: - cargo test --manifest-path rust/Cargo.toml -p mnote-web local_ocr -- --test-threads=1 - cargo test --manifest-path rust/Cargo.toml -p mnote-web onlyoffice_bridge -- --test-threads=1 - git diff --check - git diff --cached --check - codegraph index . --force && codegraph status . - codegraph sync . && codegraph status .
2.0 KiB
2.0 KiB
4-53 WorkspacePath / ObjectIdentity 浏览器矩阵缺口
状态
- 状态:done
- Owner:04-tree-domain / 05-editor-mainline runtime identity
- 发现时间:2026-06-01
- 修复时间:2026-06-01
现象
P1 WorkspacePath / ObjectIdentity 已有底层协议与部分 smoke,但缺少一个单独覆盖 page .md、directory、raw file、mindmap、OnlyOffice 的浏览器矩阵。FileTree row、Resource Tab、OpenEditorsSnapshot、URL resourceTab 和 active tab identity 如果各自拼身份,后续 raw resource / mindmap / Office target 容易继续退化为“当前页”语义。
根因
已有 smoke 分散覆盖 copy-id、resource tab、mindmap 和 Office,但没有把统一 ObjectWorkspacePath 当作运行时消费合同统一断言。local folder 目录行还缺少 local-dir:* 的稳定 documentId fallback,resource tab 在部分本地资源打开路径下也缺少 sourceKind / rootUri fallback。
修复
rust/crates/mnote-web/browser/filetree-runtime.jsreadWorkspacePathFromRow()为 folder / index 行合成local-dir:{relativePath}。fileTreeRowDocumentId()允许读取data-owner-document-id,用于资源行 owner page 对齐。
rust/crates/mnote-web/browser/document-resource-tab-runtime.js- 在 URL 参数缺失时,从 body dataset 或 FileTree row workspacePath 兜底读取
sourceKind/rootUri。
- 在 URL 参数缺失时,从 body dataset 或 FileTree row workspacePath 兜底读取
scripts/task524-workspace-object-identity-matrix-smoke.js- 新增 browser smoke,覆盖 page
.md、directory、raw text、mindmap、OnlyOffice 的 FileTree row workspacePath、OpenEditorsSnapshot、URLresourceTab、active tab identity 对齐。
- 新增 browser smoke,覆盖 page
验收
node --check rust/crates/mnote-web/browser/document-resource-tab-runtime.jsnode --check rust/crates/mnote-web/browser/filetree-runtime.jsnode --check scripts/task524-workspace-object-identity-matrix-smoke.jsMNOTE_UI_BASE_URL=http://127.0.0.1:3301 node scripts/task524-workspace-object-identity-matrix-smoke.js