收口 MNote P0 P1 P2 审查尾项

- 归档 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 .
This commit is contained in:
lix-2026
2026-06-01 09:29:12 +08:00
parent 49a0545148
commit 1882db7681
143 changed files with 29810 additions and 3228 deletions
+14 -3
View File
@@ -264,10 +264,18 @@ impl DocumentBuffer {
self.base_content_hash = Some(content_hash);
self.current_content_hash = None;
self.dirty_state = DocBufferDirtyState::Clean;
if write_intent_id.as_deref().map(str::trim).is_some_and(|value| !value.is_empty()) {
if write_intent_id
.as_deref()
.map(str::trim)
.is_some_and(|value| !value.is_empty())
{
self.last_write_intent_id = write_intent_id;
}
if save_operation_id.as_deref().map(str::trim).is_some_and(|value| !value.is_empty()) {
if save_operation_id
.as_deref()
.map(str::trim)
.is_some_and(|value| !value.is_empty())
{
self.last_save_operation_id = save_operation_id;
}
self.last_saved_at = Some(
@@ -922,7 +930,10 @@ mod tests {
request.expected_file_version.as_deref(),
Some("local-md:local-md:README.md:1:2:hash")
);
assert_eq!(request.write_intent_id.as_deref(), Some("intent:editor:abc"));
assert_eq!(
request.write_intent_id.as_deref(),
Some("intent:editor:abc")
);
assert_eq!(request.save_operation_id.as_deref(), Some("save:op:abc"));
assert_eq!(request.content_format, "editorBlocks");
assert_eq!(request.editor_source.as_deref(), Some("tiptap"));