feat: add evidence search and stabilize pdf previews
- add document evidence parsing/search/open routes, Hermes tool wiring, local index settings/status, and the document-evidence skill plus design notes - fix PDF resource tabs by rendering PDFs inline with pdf.js canvases instead of iframe preview pages, release PDF documents on close, and document the fourth-PDF stall bug - keep PDF preview at 2x rendering while removing the previous lazy-load/placeholder direction, and make dev:hot bind loopback defaults externally reachable Verification: - node --check rust/crates/mnote-web/browser/document-resource-tab-runtime.js - node scripts/task-dev-hot-plan-test.js - cargo test -p mnote-web --manifest-path rust/Cargo.toml pdf_preview_page_does_not_render_visible_toolbar - cargo test -p mnote-web --manifest-path rust/Cargo.toml document_shell_returns_page_aggregate_snapshot - cargo build -p mnote-web --manifest-path rust/Cargo.toml - browser smoke: sequentially opened the four tea_seed_oil_cosmetic PDFs; fourth PDF rendered 15/15 canvases, iframeCount=0, browser errors=0
This commit is contained in:
@@ -32,6 +32,10 @@ function firstTableCellText(doc) {
|
||||
return doc?.content?.[0]?.content?.[0]?.content?.[0]?.content?.[0]?.content?.[0]?.text || "";
|
||||
}
|
||||
|
||||
function taskItemChecked(doc) {
|
||||
return doc?.content?.[0]?.content?.[0]?.attrs?.checked;
|
||||
}
|
||||
|
||||
const {
|
||||
pageBodyTiptapDocumentSource,
|
||||
pageBodyTiptapDocument,
|
||||
@@ -99,6 +103,24 @@ assert.equal(
|
||||
"Provider 类别",
|
||||
);
|
||||
|
||||
const localWithProjectedTodo = {
|
||||
projectionSource: "local_markdown.content",
|
||||
blockDocument: {
|
||||
documentId: "local-md:design~2F07-ai~2Fprocess~2F7-46-document-evidence-retrieval-kernel-v1.md",
|
||||
rootBlockIds: ["todo-1"],
|
||||
blocks: [{
|
||||
blockId: "todo-1",
|
||||
type: "todo",
|
||||
attrs: { checked: true },
|
||||
contentNodes: [{ text: "graph traversal 结果必须带证据引用。", styles: {} }],
|
||||
}],
|
||||
},
|
||||
};
|
||||
assert.equal(
|
||||
taskItemChecked(pageBodyTiptapDocument(localWithProjectedTodo)),
|
||||
true,
|
||||
);
|
||||
|
||||
const localLegacyOnly = {
|
||||
projectionSource: "local_markdown.content",
|
||||
content: legacyContent,
|
||||
|
||||
Reference in New Issue
Block a user