dsh-data-domain-knowledge 0.1.1-alpha.2 → 0.1.1-alpha.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +33 -16
- package/lib/client.js +1042 -2097
- package/lib/contract-refs.d.ts +0 -1
- package/lib/doc-page.js +1 -1
- package/lib/pages.js +2489 -1060
- package/lib/types/agent-behavior-rules.d.ts.map +1 -1
- package/lib/types/agent-behavior-rules.js +3 -2
- package/lib/types/agent-behavior-rules.js.map +1 -1
- package/lib/types/axis-contract.js +1 -1
- package/lib/types/axis-contract.js.map +1 -1
- package/lib/types/card-organize.d.ts +2 -1
- package/lib/types/card-organize.d.ts.map +1 -1
- package/lib/types/card-organize.js +5 -3
- package/lib/types/card-organize.js.map +1 -1
- package/lib/types/config-schema.d.ts +1 -1
- package/lib/types/config-schema.js +1 -1
- package/lib/types/convert/host.d.ts +2 -3
- package/lib/types/convert/host.d.ts.map +1 -1
- package/lib/types/convert/host.js +11 -2
- package/lib/types/convert/host.js.map +1 -1
- package/lib/types/convert/ingest.d.ts +14 -20
- package/lib/types/convert/ingest.d.ts.map +1 -1
- package/lib/types/convert/ingest.js +8 -5
- package/lib/types/convert/ingest.js.map +1 -1
- package/lib/types/diagnosis/store.d.ts +2 -2
- package/lib/types/diagnosis/store.d.ts.map +1 -1
- package/lib/types/diagnosis/store.js +10 -2
- package/lib/types/diagnosis/store.js.map +1 -1
- package/lib/types/diagnosis/types.d.ts +1 -1
- package/lib/types/diagnosis/types.js +1 -1
- package/lib/types/extract-model.d.ts +3 -0
- package/lib/types/extract-model.d.ts.map +1 -1
- package/lib/types/extract-model.js.map +1 -1
- package/lib/types/images.js +1 -1
- package/lib/types/index.d.ts +0 -4
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.js +99 -91
- package/lib/types/index.js.map +1 -1
- package/lib/types/knowledge-bases.d.ts +3 -0
- package/lib/types/knowledge-bases.d.ts.map +1 -1
- package/lib/types/knowledge-bases.js +22 -2
- package/lib/types/knowledge-bases.js.map +1 -1
- package/lib/types/knowledge-contract.d.ts +6 -0
- package/lib/types/knowledge-contract.d.ts.map +1 -1
- package/lib/types/knowledge-contract.js +6 -2
- package/lib/types/knowledge-contract.js.map +1 -1
- package/lib/types/layout.d.ts +9 -26
- package/lib/types/layout.d.ts.map +1 -1
- package/lib/types/layout.js +10 -28
- package/lib/types/layout.js.map +1 -1
- package/lib/types/materialize-snapshot.d.ts +5 -0
- package/lib/types/materialize-snapshot.d.ts.map +1 -1
- package/lib/types/migrate.d.ts +3 -1
- package/lib/types/migrate.d.ts.map +1 -1
- package/lib/types/migrate.js +3 -1
- package/lib/types/migrate.js.map +1 -1
- package/lib/types/model-text.d.ts +7 -0
- package/lib/types/model-text.d.ts.map +1 -1
- package/lib/types/model-text.js +31 -9
- package/lib/types/model-text.js.map +1 -1
- package/lib/types/organize-contract.d.ts.map +1 -1
- package/lib/types/organize-contract.js +2 -1
- package/lib/types/organize-contract.js.map +1 -1
- package/lib/types/pipeline/engine.d.ts +28 -4
- package/lib/types/pipeline/engine.d.ts.map +1 -1
- package/lib/types/pipeline/engine.js +68 -15
- package/lib/types/pipeline/engine.js.map +1 -1
- package/lib/types/pipeline/progress.d.ts +12 -0
- package/lib/types/pipeline/progress.d.ts.map +1 -0
- package/lib/types/pipeline/progress.js +37 -0
- package/lib/types/pipeline/progress.js.map +1 -0
- package/lib/types/pipeline/resumable-extract.d.ts +45 -0
- package/lib/types/pipeline/resumable-extract.d.ts.map +1 -0
- package/lib/types/pipeline/resumable-extract.js +262 -0
- package/lib/types/pipeline/resumable-extract.js.map +1 -0
- package/lib/types/pipeline/store.d.ts +8 -2
- package/lib/types/pipeline/store.d.ts.map +1 -1
- package/lib/types/pipeline/store.js +27 -5
- package/lib/types/pipeline/store.js.map +1 -1
- package/lib/types/pipeline/types.d.ts +56 -0
- package/lib/types/pipeline/types.d.ts.map +1 -1
- package/lib/types/pipeline/types.js +18 -1
- package/lib/types/pipeline/types.js.map +1 -1
- package/lib/types/present.d.ts +1 -1
- package/lib/types/present.js +1 -1
- package/lib/types/preset-ids.d.ts +0 -1
- package/lib/types/preset-ids.d.ts.map +1 -1
- package/lib/types/preset-ids.js +0 -3
- package/lib/types/preset-ids.js.map +1 -1
- package/lib/types/query-analysis.d.ts +0 -5
- package/lib/types/query-analysis.d.ts.map +1 -1
- package/lib/types/query-analysis.js +0 -16
- package/lib/types/query-analysis.js.map +1 -1
- package/lib/types/recall-delivery.d.ts +36 -0
- package/lib/types/recall-delivery.d.ts.map +1 -0
- package/lib/types/recall-delivery.js +16 -0
- package/lib/types/recall-delivery.js.map +1 -0
- package/lib/types/retrieval/scope.d.ts +17 -0
- package/lib/types/retrieval/scope.d.ts.map +1 -0
- package/lib/types/retrieval/scope.js +11 -0
- package/lib/types/retrieval/scope.js.map +1 -0
- package/lib/types/runtime.d.ts +75 -14
- package/lib/types/runtime.d.ts.map +1 -1
- package/lib/types/runtime.js +454 -198
- package/lib/types/runtime.js.map +1 -1
- package/lib/types/settings-volatile.d.ts +0 -7
- package/lib/types/settings-volatile.d.ts.map +1 -1
- package/lib/types/settings-volatile.js +0 -7
- package/lib/types/settings-volatile.js.map +1 -1
- package/lib/types/source-identity.d.ts +34 -0
- package/lib/types/source-identity.d.ts.map +1 -0
- package/lib/types/source-identity.js +85 -0
- package/lib/types/source-identity.js.map +1 -0
- package/lib/types/source-read.d.ts +18 -0
- package/lib/types/source-read.d.ts.map +1 -0
- package/lib/types/source-read.js +49 -0
- package/lib/types/source-read.js.map +1 -0
- package/lib/types/store/axis-references.d.ts.map +1 -1
- package/lib/types/store/axis-references.js +5 -3
- package/lib/types/store/axis-references.js.map +1 -1
- package/lib/types/store/knowledge-db.d.ts +5 -29
- package/lib/types/store/knowledge-db.d.ts.map +1 -1
- package/lib/types/store/knowledge-db.js +57 -2
- package/lib/types/store/knowledge-db.js.map +1 -1
- package/lib/types/store/source-identity.d.ts +8 -0
- package/lib/types/store/source-identity.d.ts.map +1 -0
- package/lib/types/store/source-identity.js +56 -0
- package/lib/types/store/source-identity.js.map +1 -0
- package/lib/types/types.d.ts +46 -5
- package/lib/types/types.d.ts.map +1 -1
- package/lib/types/types.js +6 -3
- package/lib/types/types.js.map +1 -1
- package/lib/types/wiki-availability.d.ts +11 -0
- package/lib/types/wiki-availability.d.ts.map +1 -0
- package/lib/types/wiki-availability.js +39 -0
- package/lib/types/wiki-availability.js.map +1 -0
- package/lib/types/wiki-finalize.d.ts +4 -2
- package/lib/types/wiki-finalize.d.ts.map +1 -1
- package/lib/types/wiki-finalize.js +9 -27
- package/lib/types/wiki-finalize.js.map +1 -1
- package/lib/types/wiki-links.d.ts +35 -0
- package/lib/types/wiki-links.d.ts.map +1 -0
- package/lib/types/wiki-links.js +129 -0
- package/lib/types/wiki-links.js.map +1 -0
- package/lib/types/wiki-trial-types.d.ts +3 -0
- package/lib/types/wiki-trial-types.d.ts.map +1 -1
- package/lib/types/wiki-trial.d.ts +3 -3
- package/lib/types/wiki-trial.d.ts.map +1 -1
- package/lib/types/wiki-trial.js +14 -3
- package/lib/types/wiki-trial.js.map +1 -1
- package/package.json +16 -16
- package/scripts/doctor.mjs +0 -7
- package/scripts/setup-embedding.sh +0 -0
- package/src/agent-behavior-rules.ts +3 -2
- package/src/axis-contract.ts +1 -1
- package/src/card-organize.ts +5 -3
- package/src/client/AttributionEventGuide.tsx +3 -3
- package/src/client/AxisMatrix.tsx +86 -19
- package/src/client/AxisRegistrySection.tsx +1 -1
- package/src/client/CompileSettingsView.tsx +473 -0
- package/src/client/DirectoryPicker.tsx +0 -2
- package/src/client/ExtractionTasksPage.tsx +557 -423
- package/src/client/GuideArchitectureCanvas.tsx +5 -12
- package/src/client/ImportFilesDialog.tsx +1 -0
- package/src/client/InfoHint.tsx +1 -1
- package/src/client/KnowledgeBaseTab.tsx +141 -148
- package/src/client/KnowledgePanel.tsx +16 -9
- package/src/client/OperationLogTab.tsx +1 -1
- package/src/client/PipelineRunView.tsx +173 -0
- package/src/client/RecallPanel.tsx +5 -16
- package/src/client/TabGuide.tsx +3 -7
- package/src/client/WikiFlowPanel.tsx +10 -11
- package/src/client/arch/NodeLogicPanel.tsx +3 -3
- package/src/client/arch/model.ts +5 -113
- package/src/client/architecture.css +1 -1
- package/src/client/architecture.tsx +13 -27
- package/src/client/attribution/AttributionTab.tsx +141 -10
- package/src/client/pages.css +305 -180
- package/src/client/pages.tsx +7 -12
- package/src/client/styles.css +15 -96
- package/src/config-schema.ts +1 -1
- package/src/convert/host.ts +13 -5
- package/src/convert/ingest.ts +20 -7
- package/src/diagnosis/store.ts +7 -2
- package/src/diagnosis/types.ts +1 -1
- package/src/extract-model.ts +3 -0
- package/src/images.ts +1 -1
- package/src/index.ts +92 -97
- package/src/knowledge-bases.ts +23 -3
- package/src/knowledge-contract.ts +7 -2
- package/src/layout.ts +10 -32
- package/src/materialize-snapshot.ts +1 -0
- package/src/migrate.ts +3 -1
- package/src/model-text.ts +33 -11
- package/src/organize-contract.ts +2 -1
- package/src/pipeline/engine.ts +85 -22
- package/src/pipeline/progress.ts +40 -0
- package/src/pipeline/resumable-extract.ts +233 -0
- package/src/pipeline/store.ts +28 -6
- package/src/pipeline/types.ts +47 -2
- package/src/present.ts +1 -1
- package/src/preset-ids.ts +0 -4
- package/src/query-analysis.ts +0 -20
- package/src/recall-delivery.ts +19 -0
- package/src/retrieval/scope.ts +10 -0
- package/src/runtime.ts +412 -206
- package/src/settings-volatile.ts +0 -7
- package/src/source-identity.ts +85 -0
- package/src/source-read.ts +47 -0
- package/src/store/axis-references.ts +5 -3
- package/src/store/knowledge-db.ts +54 -2
- package/src/store/source-identity.ts +42 -0
- package/src/types.ts +18 -5
- package/src/wiki-availability.ts +37 -0
- package/src/wiki-finalize.ts +9 -25
- package/src/wiki-links.ts +120 -0
- package/src/wiki-trial-types.ts +3 -2
- package/src/wiki-trial.ts +17 -6
- package/lib/types/intent/engine.d.ts +0 -122
- package/lib/types/intent/engine.d.ts.map +0 -1
- package/lib/types/intent/engine.js +0 -488
- package/lib/types/intent/engine.js.map +0 -1
- package/lib/types/intent/host.d.ts +0 -68
- package/lib/types/intent/host.d.ts.map +0 -1
- package/lib/types/intent/host.js +0 -249
- package/lib/types/intent/host.js.map +0 -1
- package/lib/types/intent/scope.d.ts +0 -25
- package/lib/types/intent/scope.d.ts.map +0 -1
- package/lib/types/intent/scope.js +0 -116
- package/lib/types/intent/scope.js.map +0 -1
- package/lib/types/intent/store.d.ts +0 -33
- package/lib/types/intent/store.d.ts.map +0 -1
- package/lib/types/intent/store.js +0 -239
- package/lib/types/intent/store.js.map +0 -1
- package/lib/types/intent/tools.d.ts +0 -62
- package/lib/types/intent/tools.d.ts.map +0 -1
- package/lib/types/intent/tools.js +0 -130
- package/lib/types/intent/tools.js.map +0 -1
- package/lib/types/intent/types.d.ts +0 -170
- package/lib/types/intent/types.d.ts.map +0 -1
- package/lib/types/intent/types.js +0 -56
- package/lib/types/intent/types.js.map +0 -1
- package/src/client/IntentLogic.tsx +0 -192
- package/src/client/IntentTab.tsx +0 -343
- package/src/client/TypeDefinitionDrawer.tsx +0 -195
- package/src/intent/README.md +0 -42
- package/src/intent/engine.ts +0 -515
- package/src/intent/host.ts +0 -315
- package/src/intent/scope.ts +0 -125
- package/src/intent/store.ts +0 -218
- package/src/intent/tools.ts +0 -154
- package/src/intent/types.ts +0 -229
|
@@ -7,6 +7,8 @@ export class PipelineStore {
|
|
|
7
7
|
this.truth = truth;
|
|
8
8
|
this.audit = audit;
|
|
9
9
|
truth.exec(`
|
|
10
|
+
CREATE TABLE IF NOT EXISTS pipeline_chunks (id TEXT PRIMARY KEY, scope TEXT NOT NULL, source_id TEXT NOT NULL, payload TEXT NOT NULL);
|
|
11
|
+
CREATE INDEX IF NOT EXISTS pipeline_chunks_scope ON pipeline_chunks(scope);
|
|
10
12
|
CREATE TABLE IF NOT EXISTS pipeline_extractions (
|
|
11
13
|
id TEXT PRIMARY KEY, source_id TEXT NOT NULL, source_version INTEGER NOT NULL,
|
|
12
14
|
source_hash TEXT NOT NULL, fingerprint TEXT NOT NULL, report TEXT NOT NULL,
|
|
@@ -17,6 +19,7 @@ export class PipelineStore {
|
|
|
17
19
|
CREATE TABLE IF NOT EXISTS pipeline_materializations (group_key TEXT PRIMARY KEY, fingerprint TEXT NOT NULL, card_id TEXT NOT NULL);
|
|
18
20
|
`);
|
|
19
21
|
audit.exec(`
|
|
22
|
+
CREATE TABLE IF NOT EXISTS pipeline_chunk_attempts (id INTEGER PRIMARY KEY AUTOINCREMENT, chunk_id TEXT NOT NULL, scope TEXT NOT NULL, source_id TEXT NOT NULL, payload TEXT NOT NULL);
|
|
20
23
|
CREATE TABLE IF NOT EXISTS pipeline_tasks (id TEXT PRIMARY KEY, queued_at TEXT NOT NULL, state TEXT NOT NULL, payload TEXT NOT NULL);
|
|
21
24
|
CREATE INDEX IF NOT EXISTS pipeline_tasks_time ON pipeline_tasks(queued_at DESC);
|
|
22
25
|
CREATE TABLE IF NOT EXISTS pipeline_events (
|
|
@@ -28,13 +31,28 @@ export class PipelineStore {
|
|
|
28
31
|
const eventColumns = audit.prepare('PRAGMA table_info(pipeline_events)').all();
|
|
29
32
|
if (!eventColumns.some(column => column.name === 'stage'))
|
|
30
33
|
audit.exec('ALTER TABLE pipeline_events ADD COLUMN stage TEXT');
|
|
34
|
+
if (!eventColumns.some(column => column.name === 'activity'))
|
|
35
|
+
audit.exec('ALTER TABLE pipeline_events ADD COLUMN activity TEXT');
|
|
31
36
|
// A new runtime never claims that an abandoned request is still running.
|
|
32
37
|
for (const task of audit.prepare("SELECT payload FROM pipeline_tasks WHERE state IN ('queued','running','pausing','paused','cancelling')").all().map(row => JSON.parse(row.payload))) {
|
|
33
38
|
if (['queued', 'running', 'pausing', 'paused', 'cancelling'].includes(task.state)) {
|
|
34
|
-
this.putTask({ ...task, state: 'interrupted', finishedAt: new Date().toISOString(), summary: '服务已重新启动;已完成的阶段保留,可重新运行此任务。' });
|
|
39
|
+
this.putTask({ ...task, state: 'interrupted', recoverableOnRestart: task.state === 'queued' || task.state === 'running', finishedAt: new Date().toISOString(), summary: '服务已重新启动;已完成的阶段保留,可重新运行此任务。' });
|
|
35
40
|
}
|
|
36
41
|
}
|
|
37
42
|
}
|
|
43
|
+
chunk(id) {
|
|
44
|
+
const row = this.truth.prepare('SELECT payload FROM pipeline_chunks WHERE id=?').get(id);
|
|
45
|
+
return row ? JSON.parse(row.payload) : undefined;
|
|
46
|
+
}
|
|
47
|
+
saveChunk(id, scope, sourceId, value) {
|
|
48
|
+
this.truth.prepare('INSERT INTO pipeline_chunks(id,scope,source_id,payload) VALUES (?,?,?,?) ON CONFLICT(id) DO NOTHING').run(id, scope, sourceId, JSON.stringify(value));
|
|
49
|
+
}
|
|
50
|
+
clearOtherChunks(scope, sourceId) { this.truth.prepare('DELETE FROM pipeline_chunks WHERE source_id=? AND scope<>?').run(sourceId, scope); }
|
|
51
|
+
clearChunks(scope) { this.truth.prepare('DELETE FROM pipeline_chunks WHERE scope=?').run(scope); }
|
|
52
|
+
chunkAttempt(id, scope, sourceId, value) {
|
|
53
|
+
this.audit.prepare('INSERT INTO pipeline_chunk_attempts(chunk_id,scope,source_id,payload) VALUES (?,?,?,?)').run(id, scope, sourceId, JSON.stringify(value));
|
|
54
|
+
applyRetention(this.audit, 'pipeline_chunk_attempts', { table: 'pipeline_chunk_attempts', key: 'id', keep: 200 });
|
|
55
|
+
}
|
|
38
56
|
putTask(task) {
|
|
39
57
|
this.audit.prepare('INSERT INTO pipeline_tasks(id, queued_at, state, payload) VALUES (?, ?, ?, ?) ON CONFLICT(id) DO UPDATE SET state=excluded.state, payload=excluded.payload')
|
|
40
58
|
.run(task.id, task.queuedAt, task.state, JSON.stringify(task));
|
|
@@ -63,9 +81,13 @@ export class PipelineStore {
|
|
|
63
81
|
const total = Number(this.audit.prepare('SELECT COUNT(*) AS n FROM pipeline_tasks').get().n);
|
|
64
82
|
return { tasks: rows.map(row => JSON.parse(row.payload)), total };
|
|
65
83
|
}
|
|
66
|
-
|
|
67
|
-
this.audit.prepare(
|
|
68
|
-
|
|
84
|
+
activeTasks() {
|
|
85
|
+
const rows = this.audit.prepare("SELECT payload FROM pipeline_tasks WHERE state IN ('queued','running','pausing','paused','cancelling') ORDER BY queued_at").all();
|
|
86
|
+
return rows.map(row => JSON.parse(row.payload));
|
|
87
|
+
}
|
|
88
|
+
event(taskId, kind, text, sourceId, stage, activity) {
|
|
89
|
+
this.audit.prepare('INSERT INTO pipeline_events(task_id,kind,text,source_id,at,stage,activity) VALUES (?,?,?,?,?,?,?)')
|
|
90
|
+
.run(taskId, kind, text, sourceId ?? null, new Date().toISOString(), stage ?? null, activity ? JSON.stringify(activity) : null);
|
|
69
91
|
}
|
|
70
92
|
events(taskId, after = 0, limit = 100) {
|
|
71
93
|
const take = Number.isFinite(limit) ? Math.max(1, Math.min(500, Math.trunc(limit))) : 100;
|
|
@@ -73,7 +95,7 @@ export class PipelineStore {
|
|
|
73
95
|
const rows = this.audit.prepare('SELECT * FROM pipeline_events WHERE task_id=? AND seq>? ORDER BY seq LIMIT ?')
|
|
74
96
|
.all(taskId, after, take + 1);
|
|
75
97
|
const hasMore = rows.length > take;
|
|
76
|
-
const events = rows.slice(0, take).map(row => ({ seq: Number(row.seq), taskId: String(row.task_id), kind: String(row.kind), text: String(row.text), ...(row.source_id ? { sourceId: String(row.source_id) } : {}), ...(row.stage ? { stage: String(row.stage) } : {}), at: String(row.at) }));
|
|
98
|
+
const events = rows.slice(0, take).map(row => ({ seq: Number(row.seq), taskId: String(row.task_id), kind: String(row.kind), text: String(row.text), ...(row.source_id ? { sourceId: String(row.source_id) } : {}), ...(row.stage ? { stage: String(row.stage) } : {}), ...(row.activity ? { activity: JSON.parse(String(row.activity)) } : {}), at: String(row.at) }));
|
|
77
99
|
return { events, next: events.at(-1)?.seq ?? after, hasMore };
|
|
78
100
|
}
|
|
79
101
|
checkpoint(id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/pipeline/store.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAehD,4FAA4F;AAC5F,MAAM,OAAO,aAAa;IACH;IAAwC;IAA7D,YAAqB,KAAqB,EAAmB,KAAqB;QAA7D,UAAK,GAAL,KAAK,CAAgB;QAAmB,UAAK,GAAL,KAAK,CAAgB;QAChF,KAAK,CAAC,IAAI,CAAC
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/pipeline/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,40 @@
|
|
|
2
2
|
export type PipelineStage = 'extract' | 'normalize' | 'derive' | 'materialize' | 'build' | 'all';
|
|
3
3
|
export type PipelineState = 'queued' | 'running' | 'pausing' | 'paused' | 'cancelling' | 'succeeded' | 'partial' | 'failed' | 'cancelled' | 'interrupted';
|
|
4
4
|
export type PipelineAction = 'pause' | 'resume' | 'cancel';
|
|
5
|
+
export type PipelineWorkStage = Exclude<PipelineStage, 'all'>;
|
|
6
|
+
export declare const PIPELINE_STAGE_ORDER: readonly PipelineWorkStage[];
|
|
7
|
+
export declare const EXTRACTION_TIMEOUT_OPTIONS: readonly [30, 60, 100];
|
|
8
|
+
export type ExtractionTimeoutMinutes = typeof EXTRACTION_TIMEOUT_OPTIONS[number];
|
|
9
|
+
export declare const DEFAULT_EXTRACTION_TIMEOUT_MINUTES: ExtractionTimeoutMinutes;
|
|
10
|
+
export declare function isExtractionTimeoutMinutes(value: unknown): value is ExtractionTimeoutMinutes;
|
|
11
|
+
export declare function normalizeExtractionTimeoutMinutes(value: unknown): ExtractionTimeoutMinutes;
|
|
12
|
+
export declare const EXTRACTION_RECOVERY_LIMITS: {
|
|
13
|
+
readonly durationMs: number;
|
|
14
|
+
readonly requestTimeoutMs: 180000;
|
|
15
|
+
readonly minimumRequests: 12;
|
|
16
|
+
readonly requestsPerInitialChunk: 8;
|
|
17
|
+
};
|
|
18
|
+
/** Durable execution observations, independent of library freshness and historical results. */
|
|
19
|
+
export interface PipelineActivity {
|
|
20
|
+
phase: 'preparing' | 'processing' | 'waiting-model' | 'receiving' | 'validating' | 'saving' | 'retrying' | 'splitting' | 'reused' | 'completed' | 'failed';
|
|
21
|
+
at: string;
|
|
22
|
+
objectId?: string;
|
|
23
|
+
objectTitle?: string;
|
|
24
|
+
chunks?: {
|
|
25
|
+
initial: number;
|
|
26
|
+
total: number;
|
|
27
|
+
saved: number;
|
|
28
|
+
reused: number;
|
|
29
|
+
failed: number;
|
|
30
|
+
};
|
|
31
|
+
attempt?: number;
|
|
32
|
+
}
|
|
33
|
+
export type PipelineActivityUpdate = Omit<PipelineActivity, 'at'>;
|
|
34
|
+
export interface PipelineItemState {
|
|
35
|
+
state: 'processing' | 'succeeded' | 'reused' | 'failed';
|
|
36
|
+
title: string;
|
|
37
|
+
summary?: string;
|
|
38
|
+
}
|
|
5
39
|
export interface PipelineSelection {
|
|
6
40
|
sourceIds?: string[];
|
|
7
41
|
groupKeys?: string[];
|
|
@@ -11,6 +45,7 @@ export interface PipelineModel {
|
|
|
11
45
|
provider?: string;
|
|
12
46
|
model?: string;
|
|
13
47
|
reasoningEffort?: string;
|
|
48
|
+
maxTokens?: number;
|
|
14
49
|
}
|
|
15
50
|
export interface PipelineTask {
|
|
16
51
|
id: string;
|
|
@@ -18,6 +53,8 @@ export interface PipelineTask {
|
|
|
18
53
|
state: PipelineState;
|
|
19
54
|
selection: PipelineSelection;
|
|
20
55
|
model: PipelineModel;
|
|
56
|
+
/** Captured at task creation; each source receives a separate time budget. */
|
|
57
|
+
extractionTimeoutMinutes?: ExtractionTimeoutMinutes;
|
|
21
58
|
queuedAt: string;
|
|
22
59
|
startedAt?: string;
|
|
23
60
|
finishedAt?: string;
|
|
@@ -35,9 +72,14 @@ export interface PipelineTask {
|
|
|
35
72
|
failed: number;
|
|
36
73
|
summary?: string;
|
|
37
74
|
skipped?: boolean;
|
|
75
|
+
blocked?: number;
|
|
38
76
|
}>>;
|
|
77
|
+
recoverableOnRestart?: boolean;
|
|
78
|
+
recoveryTaskId?: string;
|
|
39
79
|
legacy?: boolean;
|
|
40
80
|
reportId?: string;
|
|
81
|
+
activity?: PipelineActivity;
|
|
82
|
+
items?: Partial<Record<PipelineWorkStage, Record<string, PipelineItemState>>>;
|
|
41
83
|
}
|
|
42
84
|
export interface PipelineEvent {
|
|
43
85
|
seq: number;
|
|
@@ -47,6 +89,7 @@ export interface PipelineEvent {
|
|
|
47
89
|
sourceId?: string;
|
|
48
90
|
stage?: Exclude<PipelineStage, 'all'>;
|
|
49
91
|
at: string;
|
|
92
|
+
activity?: PipelineActivity;
|
|
50
93
|
}
|
|
51
94
|
export interface MaterializationGroup {
|
|
52
95
|
wikiKind?: 'fact' | 'way';
|
|
@@ -79,6 +122,12 @@ export interface MaterializationBatch {
|
|
|
79
122
|
blocked: number;
|
|
80
123
|
blockedAmbiguous: number;
|
|
81
124
|
blockedAwaitingNormalize: number;
|
|
125
|
+
/** Rows outside publishable groups still retain their source scope. */
|
|
126
|
+
blockedItems?: Array<{
|
|
127
|
+
knowledgeId: string;
|
|
128
|
+
sourceIds: string[];
|
|
129
|
+
groupKey?: string;
|
|
130
|
+
}>;
|
|
82
131
|
snapshot: unknown;
|
|
83
132
|
}
|
|
84
133
|
export interface PipelineStatus {
|
|
@@ -97,6 +146,13 @@ export interface PipelineStatus {
|
|
|
97
146
|
pendingWithdrawn: number;
|
|
98
147
|
indexPending: boolean;
|
|
99
148
|
}
|
|
149
|
+
/**
|
|
150
|
+
* 五段流水线的唯一显示名。
|
|
151
|
+
*
|
|
152
|
+
* 2026-10-28 统一成「动词 + 对象」的短名:原来「归一三轴与记录」「Case 提炼 Procedure」
|
|
153
|
+
* 是两句不同句式的说明,混在同一条步骤轨上读起来像三套词。名短了,段页头才放得下
|
|
154
|
+
* 一句「它做什么」的说明;完整解释属于 `STAGE_DETAIL`,不属于名字。
|
|
155
|
+
*/
|
|
100
156
|
export declare const PIPELINE_STAGE_LABEL: Record<PipelineStage, string>;
|
|
101
157
|
export declare const PIPELINE_ACTIVE_STATES: readonly PipelineState[];
|
|
102
158
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/pipeline/types.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,aAAa,GAAG,OAAO,GAAG,KAAK,CAAA;AAChG,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,aAAa,CAAA;AACzJ,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/pipeline/types.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,aAAa,GAAG,OAAO,GAAG,KAAK,CAAA;AAChG,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,aAAa,CAAA;AACzJ,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAA;AAC1D,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAA;AAC7D,eAAO,MAAM,oBAAoB,EAAE,SAAS,iBAAiB,EAA+D,CAAA;AAC5H,eAAO,MAAM,0BAA0B,wBAAyB,CAAA;AAChE,MAAM,MAAM,wBAAwB,GAAG,OAAO,0BAA0B,CAAC,MAAM,CAAC,CAAA;AAChF,eAAO,MAAM,kCAAkC,EAAE,wBAA6B,CAAA;AAC9E,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,wBAAwB,CAE5F;AACD,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,OAAO,GAAG,wBAAwB,CAE1F;AACD,eAAO,MAAM,0BAA0B;;;;;CAAmJ,CAAA;AAE1L,+FAA+F;AAC/F,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,WAAW,GAAG,YAAY,GAAG,eAAe,GAAG,WAAW,GAAG,YAAY,GAAG,QAAQ,GAAG,UAAU,GAAG,WAAW,GAAG,QAAQ,GAAG,WAAW,GAAG,QAAQ,CAAA;IAC1J,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IAC1F,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AACD,MAAM,MAAM,sBAAsB,GAAG,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAA;AACjE,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,YAAY,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAA;IACvD,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;IACpB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,aAAa,CAAA;IACpB,KAAK,EAAE,aAAa,CAAA;IACpB,SAAS,EAAE,iBAAiB,CAAA;IAC5B,KAAK,EAAE,aAAa,CAAA;IACpB,8EAA8E;IAC9E,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;IACnD,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,YAAY,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAA;IAC5C,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAA;IAChL,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,gBAAgB,CAAA;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAA;CAC9E;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAA;IAClD,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,CAAA;IACrC,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,CAAC,EAAE,gBAAgB,CAAA;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;IACzB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IACnE,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAA;IAC9D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;CACpB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,oBAAoB,EAAE,CAAA;IAC9B,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,MAAM,CAAA;IACxB,wBAAwB,EAAE,MAAM,CAAA;IAChC,uEAAuE;IACvE,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACrF,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,SAAS,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,CAAA;KAAE,CAAC,CAAA;IACxK,MAAM,EAAE,oBAAoB,EAAE,CAAA;IAC9B,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE,OAAO,CAAA;CACtB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAE9D,CAAA;AACD,eAAO,MAAM,sBAAsB,EAAE,SAAS,aAAa,EAA6D,CAAA"}
|
|
@@ -1,5 +1,22 @@
|
|
|
1
|
+
export const PIPELINE_STAGE_ORDER = ['extract', 'normalize', 'derive', 'materialize', 'build'];
|
|
2
|
+
export const EXTRACTION_TIMEOUT_OPTIONS = [30, 60, 100];
|
|
3
|
+
export const DEFAULT_EXTRACTION_TIMEOUT_MINUTES = 30;
|
|
4
|
+
export function isExtractionTimeoutMinutes(value) {
|
|
5
|
+
return typeof value === 'number' && EXTRACTION_TIMEOUT_OPTIONS.some(option => option === value);
|
|
6
|
+
}
|
|
7
|
+
export function normalizeExtractionTimeoutMinutes(value) {
|
|
8
|
+
return isExtractionTimeoutMinutes(value) ? value : DEFAULT_EXTRACTION_TIMEOUT_MINUTES;
|
|
9
|
+
}
|
|
10
|
+
export const EXTRACTION_RECOVERY_LIMITS = { durationMs: DEFAULT_EXTRACTION_TIMEOUT_MINUTES * 60_000, requestTimeoutMs: 180_000, minimumRequests: 12, requestsPerInitialChunk: 8 };
|
|
11
|
+
/**
|
|
12
|
+
* 五段流水线的唯一显示名。
|
|
13
|
+
*
|
|
14
|
+
* 2026-10-28 统一成「动词 + 对象」的短名:原来「归一三轴与记录」「Case 提炼 Procedure」
|
|
15
|
+
* 是两句不同句式的说明,混在同一条步骤轨上读起来像三套词。名短了,段页头才放得下
|
|
16
|
+
* 一句「它做什么」的说明;完整解释属于 `STAGE_DETAIL`,不属于名字。
|
|
17
|
+
*/
|
|
1
18
|
export const PIPELINE_STAGE_LABEL = {
|
|
2
|
-
extract: '抽取 Knowledge', normalize: '
|
|
19
|
+
extract: '抽取 Knowledge', normalize: '归一坐标', derive: '提炼 Procedure', materialize: '物化 WikiCard', build: '构建索引', all: '全链路运行',
|
|
3
20
|
};
|
|
4
21
|
export const PIPELINE_ACTIVE_STATES = ['queued', 'running', 'pausing', 'paused', 'cancelling'];
|
|
5
22
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/pipeline/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/pipeline/types.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,oBAAoB,GAAiC,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,CAAA;AAC5H,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,CAAU,CAAA;AAEhE,MAAM,CAAC,MAAM,kCAAkC,GAA6B,EAAE,CAAA;AAC9E,MAAM,UAAU,0BAA0B,CAAC,KAAc;IACvD,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,KAAK,KAAK,CAAC,CAAA;AACjG,CAAC;AACD,MAAM,UAAU,iCAAiC,CAAC,KAAc;IAC9D,OAAO,0BAA0B,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,kCAAkC,CAAA;AACvF,CAAC;AACD,MAAM,CAAC,MAAM,0BAA0B,GAAG,EAAE,UAAU,EAAE,kCAAkC,GAAG,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,uBAAuB,EAAE,CAAC,EAAW,CAAA;AAgH1L;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAkC;IACjE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO;CAC5H,CAAA;AACD,MAAM,CAAC,MAAM,sBAAsB,GAA6B,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA"}
|
package/lib/types/present.d.ts
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* 1. `presentationMeta` —— 结构化的小账本,随 `tool/result` 落进会话日志,
|
|
14
14
|
* Web 端的卡片读它渲染(`src/client/KnowledgeToolRow.tsx`)。它必须
|
|
15
15
|
* **可 JSON 序列化**(会话日志会整份校验),所以这里不塞函数、不塞 Date;
|
|
16
|
-
* 2. `present*View` ——
|
|
16
|
+
* 2. `present*View` —— 与工具名无关的渲染参数(标题 / 分类 / 一段 Markdown),
|
|
17
17
|
* 给终端界面和「没有专用卡片的界面」用。
|
|
18
18
|
*
|
|
19
19
|
* ## 一条规矩:数字必须来自真实的产物
|
package/lib/types/present.js
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* 1. `presentationMeta` —— 结构化的小账本,随 `tool/result` 落进会话日志,
|
|
14
14
|
* Web 端的卡片读它渲染(`src/client/KnowledgeToolRow.tsx`)。它必须
|
|
15
15
|
* **可 JSON 序列化**(会话日志会整份校验),所以这里不塞函数、不塞 Date;
|
|
16
|
-
* 2. `present*View` ——
|
|
16
|
+
* 2. `present*View` —— 与工具名无关的渲染参数(标题 / 分类 / 一段 Markdown),
|
|
17
17
|
* 给终端界面和「没有专用卡片的界面」用。
|
|
18
18
|
*
|
|
19
19
|
* ## 一条规矩:数字必须来自真实的产物
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preset-ids.d.ts","sourceRoot":"","sources":["../../src/preset-ids.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,eAAO,MAAM,kBAAkB,aAAa,CAAA
|
|
1
|
+
{"version":3,"file":"preset-ids.d.ts","sourceRoot":"","sources":["../../src/preset-ids.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,eAAO,MAAM,kBAAkB,aAAa,CAAA"}
|
package/lib/types/preset-ids.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preset-ids.js","sourceRoot":"","sources":["../../src/preset-ids.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAA
|
|
1
|
+
{"version":3,"file":"preset-ids.js","sourceRoot":"","sources":["../../src/preset-ids.ts"],"names":[],"mappings":"AAAA,mDAAmD;AACnD,MAAM,CAAC,MAAM,kBAAkB,GAAG,UAAU,CAAA"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import type { AxisEntity, AxisKind, AxisRelation } from './axis-registry.js';
|
|
2
2
|
import type { CardCoordinate } from './types.js';
|
|
3
|
-
export type QueryIntent = 'lookup' | 'explain' | 'procedure' | 'troubleshoot' | 'compare' | 'unknown';
|
|
4
3
|
export interface QueryAxisMatch {
|
|
5
4
|
id: string;
|
|
6
5
|
kind: AxisKind;
|
|
@@ -24,10 +23,6 @@ export interface QueryRelationCandidate extends QueryCoordinateCandidate {
|
|
|
24
23
|
}
|
|
25
24
|
export interface QueryAnalysis {
|
|
26
25
|
query: string;
|
|
27
|
-
intent: {
|
|
28
|
-
id: QueryIntent;
|
|
29
|
-
confidence: number;
|
|
30
|
-
};
|
|
31
26
|
axes: Record<AxisKind, QueryAxisMatch[]>;
|
|
32
27
|
coordinates: QueryCoordinateCandidate[];
|
|
33
28
|
unresolved: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-analysis.d.ts","sourceRoot":"","sources":["../../src/query-analysis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAE5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEhD,MAAM,
|
|
1
|
+
{"version":3,"file":"query-analysis.d.ts","sourceRoot":"","sources":["../../src/query-analysis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAE5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEhD,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,QAAQ,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,WAAW,GAAG,OAAO,CAAA;CACjC;AAED,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,cAAc,CAAA;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,QAAQ,EAAE,CAAA;CACxB;AAED,MAAM,WAAW,sBAAuB,SAAQ,wBAAwB;IACtE,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,YAAY,CAAA;IAC1B,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAA;IACxC,WAAW,EAAE,wBAAwB,EAAE,CAAA;IACvC,UAAU,EAAE,MAAM,EAAE,CAAA;CACrB;AAED,KAAK,cAAc,GAAG,UAAU,GAAG;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAA;AACxD,KAAK,cAAc,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,cAAc,CAAA;CAAE,CAAA;AAyEtE;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,aAAa,EACvB,SAAS,EAAE,YAAY,EAAE,EACzB,KAAK,EAAE,cAAc,EAAE,GACtB,sBAAsB,EAAE,CAyC1B;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,aAAa,CAc9G"}
|
|
@@ -1,19 +1,4 @@
|
|
|
1
1
|
import { normalizeAxisName } from './axis-registry.js';
|
|
2
|
-
const INTENT_RULES = [
|
|
3
|
-
{ id: 'troubleshoot', confidence: 0.9, terms: ['怎么排查', '如何排查', '异常', '报错', '失败', '原因', '为什么', '定位', '故障', '不工作'] },
|
|
4
|
-
{ id: 'procedure', confidence: 0.88, terms: ['怎么做', '如何做', '怎么', '如何', '步骤', '流程', '操作', '配置', '接入', '实现'] },
|
|
5
|
-
{ id: 'compare', confidence: 0.86, terms: ['区别', '差异', '对比', '比较', '哪个好', '不同点'] },
|
|
6
|
-
{ id: 'explain', confidence: 0.86, terms: ['什么是', '是什么', '定义', '含义', '解释', '指什么'] },
|
|
7
|
-
{ id: 'lookup', confidence: 0.78, terms: ['多少', '口径', '计算', '查询', '查看', '数据', '指标', '有哪些'] },
|
|
8
|
-
];
|
|
9
|
-
function classifyIntent(query) {
|
|
10
|
-
const normalized = normalizeAxisName(query);
|
|
11
|
-
for (const rule of INTENT_RULES) {
|
|
12
|
-
if (rule.terms.some(term => normalized.includes(normalizeAxisName(term))))
|
|
13
|
-
return { id: rule.id, confidence: rule.confidence };
|
|
14
|
-
}
|
|
15
|
-
return { id: 'unknown', confidence: 0.35 };
|
|
16
|
-
}
|
|
17
2
|
function validMention(mention) {
|
|
18
3
|
const normalized = normalizeAxisName(mention);
|
|
19
4
|
// 单字中文命中率很高,不能作为坐标证据;两个字符以上的中文或 ASCII 标识可以保留。
|
|
@@ -150,7 +135,6 @@ export function analyzeQuery(query, entities, cards) {
|
|
|
150
135
|
.filter(kind => axes[kind].length === 0);
|
|
151
136
|
return {
|
|
152
137
|
query,
|
|
153
|
-
intent: classifyIntent(query),
|
|
154
138
|
axes,
|
|
155
139
|
coordinates: coordinateCandidates(axes, cards),
|
|
156
140
|
unresolved,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-analysis.js","sourceRoot":"","sources":["../../src/query-analysis.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"query-analysis.js","sourceRoot":"","sources":["../../src/query-analysis.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { ContextItem, Envelope, RecallResult } from './types.js';
|
|
2
|
+
/** Section references explain retrieval; the complete body is already in item.wiki. */
|
|
3
|
+
export declare const agentContextItem: (item: ContextItem) => {
|
|
4
|
+
notes: {
|
|
5
|
+
rerankScore?: number | undefined;
|
|
6
|
+
score: number;
|
|
7
|
+
heading?: string | undefined;
|
|
8
|
+
unitId: string;
|
|
9
|
+
entityId: string;
|
|
10
|
+
entityType: import("./types.js").SchemaType;
|
|
11
|
+
title: string;
|
|
12
|
+
}[];
|
|
13
|
+
note?: {
|
|
14
|
+
rerankScore?: number | undefined;
|
|
15
|
+
score: number;
|
|
16
|
+
heading?: string | undefined;
|
|
17
|
+
unitId: string;
|
|
18
|
+
entityId: string;
|
|
19
|
+
entityType: import("./types.js").SchemaType;
|
|
20
|
+
title: string;
|
|
21
|
+
} | undefined;
|
|
22
|
+
wiki: import("./types.js").KnowledgeCard | null;
|
|
23
|
+
graph: import("./types.js").ContextGraph;
|
|
24
|
+
reason: "hit" | "expansion";
|
|
25
|
+
via?: {
|
|
26
|
+
entityType: string;
|
|
27
|
+
entityId: string;
|
|
28
|
+
title: string;
|
|
29
|
+
relation: string;
|
|
30
|
+
};
|
|
31
|
+
evidence?: import("./types.js").RecallEvidence[];
|
|
32
|
+
knowledge?: import("./types.js").RecallKnowledge[];
|
|
33
|
+
};
|
|
34
|
+
/** Agent delivery carries each complete Wiki once, only inside the budgeted context. */
|
|
35
|
+
export declare function agentRecallEnvelope(value: Envelope<RecallResult>): Envelope<unknown>;
|
|
36
|
+
//# sourceMappingURL=recall-delivery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recall-delivery.d.ts","sourceRoot":"","sources":["../../src/recall-delivery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAa,YAAY,EAAE,MAAM,YAAY,CAAA;AAMhF,uFAAuF;AACvF,eAAO,MAAM,gBAAgB,GAAI,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEhD,CAAA;AAEF,wFAAwF;AACxF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAMpF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const compactHit = (hit) => ({ unitId: hit.unitId, entityId: hit.entityId, entityType: hit.entityType, title: hit.title,
|
|
2
|
+
...(hit.heading ? { heading: hit.heading } : {}), score: hit.score,
|
|
3
|
+
...(hit.rerankScore === undefined ? {} : { rerankScore: hit.rerankScore }) });
|
|
4
|
+
/** Section references explain retrieval; the complete body is already in item.wiki. */
|
|
5
|
+
export const agentContextItem = (item) => ({ ...item,
|
|
6
|
+
...(item.note ? { note: compactHit(item.note) } : {}), notes: item.notes.map(compactHit),
|
|
7
|
+
});
|
|
8
|
+
/** Agent delivery carries each complete Wiki once, only inside the budgeted context. */
|
|
9
|
+
export function agentRecallEnvelope(value) {
|
|
10
|
+
return { ...value, data: { ...value.data,
|
|
11
|
+
hits: value.data.hits.map(compactHit),
|
|
12
|
+
wiki: value.data.wiki.map(card => ({ entityId: card.entityId, entityType: card.entityType, title: card.title })),
|
|
13
|
+
context: value.data.context.map(agentContextItem),
|
|
14
|
+
} };
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=recall-delivery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recall-delivery.js","sourceRoot":"","sources":["../../src/recall-delivery.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,GAAG,CAAC,GAAc,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK;IAChI,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK;IAClE,GAAG,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAA;AAE/E,uFAAuF;AACvF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAiB,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI;IAC/D,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC;CACzF,CAAC,CAAA;AAEF,wFAAwF;AACxF,MAAM,UAAU,mBAAmB,CAAC,KAA6B;IAC/D,OAAO,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI;YACtC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;YACrC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAChH,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;SAClD,EAAE,CAAA;AACL,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** Omitted axes are unrestricted; an empty ID matches only an empty coordinate. */
|
|
2
|
+
export interface KnowledgeScope {
|
|
3
|
+
objectId?: string;
|
|
4
|
+
actionId?: string;
|
|
5
|
+
sceneId?: string;
|
|
6
|
+
wikiKind?: 'fact' | 'way';
|
|
7
|
+
}
|
|
8
|
+
export declare function scopeError(scope: KnowledgeScope): string | undefined;
|
|
9
|
+
export declare function matchesScope(value: {
|
|
10
|
+
coordinate?: {
|
|
11
|
+
objectId?: string;
|
|
12
|
+
actionId?: string;
|
|
13
|
+
sceneId?: string;
|
|
14
|
+
};
|
|
15
|
+
metadata?: Record<string, unknown>;
|
|
16
|
+
}, scope: KnowledgeScope): boolean;
|
|
17
|
+
//# sourceMappingURL=scope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../../src/retrieval/scope.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,MAAM,WAAW,cAAc;IAAG,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAAA;CAAE;AACrH,wBAAgB,UAAU,CAAC,KAAK,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAGpE;AACD,wBAAgB,YAAY,CAAC,KAAK,EAAE;IAAE,UAAU,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EAAE,KAAK,EAAE,cAAc,GAAG,OAAO,CAGnL"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export function scopeError(scope) {
|
|
2
|
+
if ([scope.objectId, scope.actionId, scope.sceneId].some(value => value !== undefined && (typeof value !== 'string' || value !== value.trim())))
|
|
3
|
+
return '坐标 ID 必须是无首尾空格的字符串;空字符串仅匹配空坐标。';
|
|
4
|
+
if (scope.wikiKind !== undefined && !['fact', 'way'].includes(scope.wikiKind))
|
|
5
|
+
return 'wiki_kind 只能为 fact 或 way。';
|
|
6
|
+
}
|
|
7
|
+
export function matchesScope(value, scope) {
|
|
8
|
+
return ['objectId', 'actionId', 'sceneId'].every(axis => scope[axis] === undefined || (value.coordinate?.[axis] ?? '') === scope[axis])
|
|
9
|
+
&& (scope.wikiKind === undefined || value.metadata?.wiki_kind === scope.wikiKind);
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=scope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scope.js","sourceRoot":"","sources":["../../../src/retrieval/scope.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CAAC,KAAqB;IAC9C,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAAE,OAAO,gCAAgC,CAAA;IACxL,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;QAAE,OAAO,2BAA2B,CAAA;AACnH,CAAC;AACD,MAAM,UAAU,YAAY,CAAC,KAAsH,EAAE,KAAqB;IACxK,OAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAW,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,CAAC;WAC7I,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,EAAE,SAAS,KAAK,KAAK,CAAC,QAAQ,CAAC,CAAA;AACrF,CAAC"}
|