集成 OpenHub 与 WeKnora Page AI
This commit is contained in:
@@ -0,0 +1,88 @@
|
||||
#!/usr/bin/env node
|
||||
"use strict";
|
||||
|
||||
const assert = require("node:assert");
|
||||
const fs = require("node:fs");
|
||||
const path = require("node:path");
|
||||
|
||||
const ROOT = process.cwd();
|
||||
const OUTPUT_DIR = path.join(ROOT, "tmp", "task790-weknora-kb-page-experience-static-smoke");
|
||||
const RESULT_PATH = path.join(OUTPUT_DIR, "result.json");
|
||||
const SETTINGS_RUNTIME = "rust/crates/mnote-web/browser/sidebar-page-settings-runtime.js";
|
||||
const MAIN_CSS = "rust/crates/mnote-web/src/ssr/styles/components/main.css";
|
||||
|
||||
function read(relativePath) {
|
||||
return fs.readFileSync(path.join(ROOT, relativePath), "utf8");
|
||||
}
|
||||
|
||||
function assertContains(content, needle, label) {
|
||||
assert(content.includes(needle), `${label} 缺少: ${needle}`);
|
||||
}
|
||||
|
||||
function main() {
|
||||
fs.mkdirSync(OUTPUT_DIR, { recursive: true });
|
||||
const runtime = read(SETTINGS_RUNTIME);
|
||||
const css = read(MAIN_CSS);
|
||||
|
||||
for (const required of [
|
||||
"data-mnote-weknora-page-replacement=\"true\"",
|
||||
"data-testid=\"mnote-weknora-kb-list-pane\"",
|
||||
"data-testid=\"mnote-weknora-kb-card-list\"",
|
||||
"data-testid=\"mnote-weknora-kb-breadcrumb\"",
|
||||
"data-testid=\"mnote-weknora-kb-detail-pane\"",
|
||||
"data-testid=\"mnote-weknora-tab-documents\"",
|
||||
"data-testid=\"mnote-weknora-tab-wiki\"",
|
||||
"data-testid=\"mnote-weknora-tab-graph\"",
|
||||
"data-testid=\"mnote-weknora-doc-source-sidebar\"",
|
||||
"data-testid=\"mnote-weknora-doc-source-tags\"",
|
||||
"data-testid=\"mnote-weknora-doc-tags\"",
|
||||
"data-testid=\"mnote-weknora-doc-filter-input\"",
|
||||
"data-testid=\"mnote-weknora-view-switch\"",
|
||||
"data-knowledge-rag-view=\"grid\"",
|
||||
"添加文件夹",
|
||||
"添加文档",
|
||||
"data-weknora-document-list-view=\"true\"",
|
||||
"data-knowledge-rag-processing-status",
|
||||
"data-knowledge-rag-action=\"open-source-reference\"",
|
||||
"data-knowledge-rag-open-reference-mode=\"source-registry-reference\"",
|
||||
"data-testid=\"mnote-weknora-wiki-panel\"",
|
||||
"data-testid=\"mnote-weknora-graph-panel\"",
|
||||
"MNote source registry / WeKnora KB chunk index",
|
||||
]) {
|
||||
assertContains(runtime, required, SETTINGS_RUNTIME);
|
||||
}
|
||||
|
||||
for (const required of [
|
||||
".mnote-weknora-kb-breadcrumb",
|
||||
".mnote-weknora-doc-layout",
|
||||
".mnote-weknora-doc-sidebar",
|
||||
".mnote-weknora-doc-source-tags",
|
||||
".mnote-weknora-view-switch",
|
||||
".mnote-weknora-doc-table[data-weknora-document-view=\"grid\"]",
|
||||
".mnote-weknora-placeholder-panel",
|
||||
".mnote-weknora-source-aux",
|
||||
]) {
|
||||
assertContains(css, required, MAIN_CSS);
|
||||
}
|
||||
|
||||
const result = {
|
||||
ok: true,
|
||||
checkedFiles: [SETTINGS_RUNTIME, MAIN_CSS],
|
||||
assertions: {
|
||||
kbListPageVisible: true,
|
||||
kbDetailBreadcrumbVisible: true,
|
||||
documentsWikiGraphTabsVisible: true,
|
||||
sourceAndTagSidebarVisible: true,
|
||||
searchAndFilterVisible: true,
|
||||
addDocumentAndFolderEntrypointsVisible: true,
|
||||
gridListSwitchVisible: true,
|
||||
processingStatusVisible: true,
|
||||
sourceRowsKeepCitationOpenReference: true,
|
||||
mnoteWeKnoraBoundaryPreserved: true,
|
||||
},
|
||||
};
|
||||
fs.writeFileSync(RESULT_PATH, `${JSON.stringify(result, null, 2)}\n`, "utf8");
|
||||
console.log(JSON.stringify(result, null, 2));
|
||||
}
|
||||
|
||||
main();
|
||||
Reference in New Issue
Block a user