@lemoncat7/dsh-knowledge 2.5.1 → 2.6.0

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/lib/index.js CHANGED
@@ -19,6 +19,7 @@ import { registerKnowledgeTools } from './tools.js';
19
19
  import { createKnowledgeTrackingService, KNOWLEDGE_TRACKING_SERVICE } from './tracking.js';
20
20
  import { createKnowledgeMountManagement, KNOWLEDGE_MOUNT_MANAGEMENT_SERVICE } from './mount-management.js';
21
21
  import { registerKnowledgeWeb } from './web.js';
22
+ import { WritebackQueue, WritebackDeferred } from './writeback/queue.js';
22
23
  export const Config = ConfigSchema;
23
24
  export * from './domain.js';
24
25
  export * from './provider.js';
@@ -89,12 +90,33 @@ export function apply(ctx, config) {
89
90
  const providerRouter = new KnowledgeProviderRouter(initial.provider, { owned: initial.owned });
90
91
  const provider = providerRouter.provider;
91
92
  let activeConnection = initialConnection;
93
+ let connectionChanging = false;
92
94
  const coordinator = new ExtractionCoordinator(runtime, provider, resolved, () => (clientSettings.writebackProvider && clientSettings.writebackModel
93
95
  ? { provider: clientSettings.writebackProvider, model: clientSettings.writebackModel }
94
96
  : undefined));
95
97
  const writebackStatuses = new Map();
96
98
  const writebackSources = new Map();
97
- let runWriteback;
99
+ const destination = () => activeConnection.backend === 'local' ? `local:${resolved.databasePath}` : `remote:${activeConnection.remoteUrl}`;
100
+ const writebackQueue = resolved.extractionEnabled ? new WritebackQueue(resolved.writebackQueuePath, async (work, checkpoint, signal) => {
101
+ if (connectionChanging)
102
+ throw new WritebackDeferred('知识库连接正在切换,等待稳定后回写');
103
+ if (work.destination !== destination())
104
+ throw new Error('知识库连接已切换,旧回写仍绑定原目标;请恢复原连接后重试');
105
+ const existing = await provider.extractionJob(work.snapshot.sourceKey, signal);
106
+ if (existing?.status === 'completed')
107
+ return statusFromExtractionJob(existing, false);
108
+ if (existing?.status === 'failed' && existing.attempts >= 3)
109
+ await provider.resetExtraction(work.snapshot.sourceKey, signal);
110
+ const result = await coordinator.runSnapshot(work.snapshot, signal, checkpoint);
111
+ if (result.status !== 'duplicate')
112
+ return statusFromExtractionResult(result);
113
+ const job = await provider.extractionJob(work.snapshot.sourceKey, signal);
114
+ if (job?.status === 'completed')
115
+ return statusFromExtractionJob(job, false);
116
+ if (job?.status === 'running')
117
+ throw new WritebackDeferred('上一次远端回写租约尚未释放,等待恢复');
118
+ throw new Error(job?.lastError ?? '未能确认远端回写状态,请重试');
119
+ }, message => runtime.logger.warn(message)) : undefined;
98
120
  const handleCodec = new KnowledgeHandleCodec(randomBytes(32));
99
121
  const noteHandleCodec = new KnowledgeNoteHandleCodec(randomBytes(32));
100
122
  const managementEmbedToken = randomBytes(32).toString('base64url');
@@ -116,9 +138,12 @@ export function apply(ctx, config) {
116
138
  validateConnectionSettings(next, publicApiEnabled, resolved.databasePath !== undefined && resolved.databasePath.trim().length > 0);
117
139
  if (sameConnection(next, activeConnection))
118
140
  return activeConnection;
141
+ if (writebackQueue?.isRunning)
142
+ throw connectionError(409, '回写正在执行,请完成后再切换知识库连接');
119
143
  if (resolved.connectionPath === undefined)
120
144
  throw connectionError(409, '当前插件没有配置持久化路径,无法保存连接。');
121
145
  const candidate = connectionProvider(next);
146
+ connectionChanging = true;
122
147
  let persisted = false;
123
148
  let installed = false;
124
149
  let managementRouteChanged = false;
@@ -166,6 +191,9 @@ export function apply(ctx, config) {
166
191
  }
167
192
  throw error;
168
193
  }
194
+ finally {
195
+ connectionChanging = false;
196
+ }
169
197
  });
170
198
  const operation = pending.catch(error => {
171
199
  runtime.logger.warn(`dsh-knowledge: connection switch rejected: ${error instanceof Error ? error.message : String(error)}`);
@@ -295,28 +323,18 @@ export function apply(ctx, config) {
295
323
  if (!sessionId || !Number.isInteger(turn) || turn < 0)
296
324
  throw connectionError(400, 'sessionId and a non-negative integer turn are required');
297
325
  const key = `${sessionId}:${turn}`;
298
- let state = writebackStatuses.get(key);
326
+ let state = writebackQueue?.status(key) ?? writebackStatuses.get(key);
299
327
  if (state === undefined) {
300
328
  const job = await provider.extractionJob(key).catch(() => undefined);
301
- state = job === undefined ? undefined : statusFromExtractionJob(job, writebackSources.has(key));
302
- if (state !== undefined)
303
- rememberWritebackStatus(writebackStatuses, writebackSources, key, state);
329
+ state = job === undefined ? undefined : statusFromExtractionJob(job, false);
304
330
  }
305
331
  if (req.method === 'POST') {
332
+ if (!writebackQueue)
333
+ throw connectionError(409, '知识库回写已停用');
306
334
  const source = writebackSources.get(key);
307
- if (state?.status !== 'failed' || !state.retryable || source === undefined) {
308
- throw connectionError(409, 'writeback is not retryable');
309
- }
310
- writebackStatuses.set(key, { status: 'running', summary: '知识库回写 · 正在重试', retryable: false });
311
- try {
312
- await provider.resetExtraction(key);
313
- state = await runWriteback(source.agent, source.turn, new AbortController().signal, 'retry');
314
- }
315
- catch (error) {
316
- const message = error instanceof Error ? error.message : String(error);
317
- state = { status: 'failed', summary: '知识库回写 · 重试失败', error: message, retryable: true };
318
- writebackStatuses.set(key, state);
319
- }
335
+ state = source ? writebackQueue.enqueue(source) : writebackQueue.retry(key);
336
+ writebackSources.delete(key);
337
+ writebackStatuses.delete(key);
320
338
  }
321
339
  res.writeHead(state === undefined ? 404 : 200, {
322
340
  'content-type': 'application/json; charset=utf-8',
@@ -362,52 +380,35 @@ export function apply(ctx, config) {
362
380
  runtime.logger.warn('dsh-knowledge: webServer is unavailable; management and connection settings are disabled');
363
381
  }
364
382
  if (resolved.extractionEnabled) {
365
- runWriteback = async (agent, turn, signal, phase = 'initial') => {
383
+ runtime.on('agent/turn-stopping', ({ agent, turn }) => {
366
384
  const key = `${agent.session.id}:${turn}`;
367
- writebackStatuses.set(key, {
368
- status: 'running', summary: phase === 'retry' ? '知识库回写 · 正在重试' : '知识库回写 · 正在处理', retryable: false,
369
- });
370
- let state;
385
+ let work;
371
386
  try {
372
- const result = await coordinator.run(agent.session, turn, signal);
373
- if (result.status === 'duplicate') {
374
- const job = await provider.extractionJob(key, signal);
375
- if (job?.status === 'failed')
376
- throw new Error(job.lastError ?? '知识库回写失败');
377
- state = job === undefined
378
- ? { status: 'completed', summary: '知识库回写 · 已处理', retryable: false }
379
- : statusFromExtractionJob(job, false);
380
- }
381
- else {
382
- state = statusFromExtractionResult(result);
383
- }
387
+ const snapshot = coordinator.capture(agent.session, turn);
388
+ if (snapshot)
389
+ work = { snapshot, destination: destination() };
390
+ if (work)
391
+ writebackQueue.enqueue(work);
392
+ else
393
+ writebackQueue.completeEmpty(key, agent.session.id);
394
+ writebackStatuses.delete(key);
384
395
  writebackSources.delete(key);
385
396
  }
386
397
  catch (error) {
387
- if (signal.aborted)
388
- throw error;
389
398
  const message = error instanceof Error ? error.message : String(error);
390
- runtime.logger.warn(`dsh-knowledge: synchronous writeback failed: ${message}`);
391
- const job = await provider.extractionJob(key).catch(() => undefined);
392
- const retryable = job?.status === 'failed';
393
- const summary = message.includes('max-tokens')
394
- ? '知识库回写 · 失败:提取结果超过模型输出上限'
395
- : '知识库回写 · 失败';
396
- state = { status: 'failed', summary, error: message, retryable };
397
- if (retryable)
398
- writebackSources.set(key, { agent: snapshotAgent(agent), turn });
399
- else
400
- writebackSources.delete(key);
399
+ // Disk/queue failures are explicit; never pretend an unsaved job succeeded.
400
+ rememberWritebackStatus(writebackStatuses, writebackSources, key, {
401
+ status: 'failed', summary: '知识库回写 · 未能可靠入队', error: message, retryable: work !== undefined,
402
+ });
403
+ if (work)
404
+ writebackSources.set(key, work);
405
+ runtime.logger.warn(`dsh-knowledge: writeback enqueue failed: ${message}`);
401
406
  }
402
- rememberWritebackStatus(writebackStatuses, writebackSources, key, state);
403
- runtime.logger.info(`dsh-knowledge: ${state.summary}`);
404
- return state;
405
- };
406
- runtime.on('agent/turn-stopping', async ({ agent, turn, signal }) => {
407
- await runWriteback(agent, turn, signal).catch(() => { });
408
407
  });
408
+ writebackQueue?.start();
409
409
  }
410
410
  runtime.effect(() => async () => {
411
+ await writebackQueue?.close();
411
412
  await coordinator.close();
412
413
  await providerRouter.close();
413
414
  await managementProvider?.close();
@@ -484,16 +485,6 @@ function rememberWritebackStatus(statuses, sources, key, state) {
484
485
  sources.delete(oldest);
485
486
  }
486
487
  }
487
- function snapshotAgent(agent) {
488
- const events = agent.session.snapshotEvents();
489
- return {
490
- session: {
491
- id: agent.session.id,
492
- header: { ...agent.session.header },
493
- snapshotEvents: () => events,
494
- },
495
- };
496
- }
497
488
  function publicConnectionError(error) {
498
489
  if (error instanceof RemoteProviderError) {
499
490
  if (error.status === 401)
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,9 @@ export declare class LocalKnowledgeProvider implements KnowledgeProvider {
12
12
  private closed;
13
13
  constructor(path: string);
14
14
  private assertOpen;
15
+ writebackProtocol(): Promise<{
16
+ idempotentDirectWrites: boolean;
17
+ }>;
15
18
  getSettings(): Promise<KnowledgeSettings>;
16
19
  updateSettings(input: KnowledgeSettingsPatch): Promise<KnowledgeSettings>;
17
20
  listKnowledgeBases(): Promise<KnowledgeBase[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"local-provider.d.ts","sourceRoot":"","sources":["../src/local-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-provider.d.ts","sourceRoot":"","sources":["../src/local-provider.ts"],"names":[],"mappings":"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"}
@@ -44,12 +44,14 @@ export class LocalKnowledgeProvider {
44
44
  this.db = new DatabaseSync(path);
45
45
  this.db.exec('PRAGMA journal_mode = WAL; PRAGMA foreign_keys = ON; PRAGMA busy_timeout = 5000;');
46
46
  migrateKnowledgeDatabase(this.db, this.notes);
47
+ this.db.exec('CREATE TABLE IF NOT EXISTS writeback_receipts (source_key TEXT NOT NULL, proposal_hash TEXT NOT NULL, result_json TEXT NOT NULL, PRIMARY KEY(source_key, proposal_hash));');
47
48
  this.documentsReady = this.enqueueDocumentSync(() => this.syncAllDocuments());
48
49
  }
49
50
  assertOpen() {
50
51
  if (this.closed)
51
52
  throw new Error('knowledge provider is closed');
52
53
  }
54
+ async writebackProtocol() { return { idempotentDirectWrites: true }; }
53
55
  async getSettings() {
54
56
  this.assertOpen();
55
57
  const row = this.db.prepare('SELECT writeback_policy,writeback_provider,writeback_model,updated_at FROM knowledge_settings WHERE id=1').get();
@@ -974,8 +976,20 @@ export class LocalKnowledgeProvider {
974
976
  this.assertOpen();
975
977
  await this.documentsReady;
976
978
  let touchedEntryId;
979
+ const normalized = normalizeProposal(input);
980
+ const requestHash = createHash('sha256').update(JSON.stringify([
981
+ contentHash(normalized.draft), normalized.action, normalized.targetId ?? '', normalized.change ?? null,
982
+ ])).digest('hex');
977
983
  const result = this.transaction(() => {
978
- const resolution = this.resolveDirectProposal(normalizeProposal(input));
984
+ if (sourceKey !== undefined) {
985
+ const receipt = this.db.prepare('SELECT result_json FROM writeback_receipts WHERE source_key=? AND proposal_hash=?').get(sourceKey, requestHash);
986
+ if (receipt) {
987
+ const previous = JSON.parse(String(receipt.result_json));
988
+ touchedEntryId = previous.entry?.id;
989
+ return previous;
990
+ }
991
+ }
992
+ const resolution = this.resolveDirectProposal(normalized);
979
993
  if (resolution.outcome === 'duplicate')
980
994
  return { outcome: 'duplicate', ...resolution.entry === undefined ? {} : { entry: resolution.entry } };
981
995
  if (resolution.outcome === 'finalized')
@@ -983,8 +997,12 @@ export class LocalKnowledgeProvider {
983
997
  const candidate = this.insertCandidate(resolution.proposal, sourceKey);
984
998
  if (candidate.status !== 'pending')
985
999
  return { outcome: 'duplicate', candidate };
986
- if (resolution.outcome === 'conflict')
987
- return { outcome: 'conflict', candidate };
1000
+ if (resolution.outcome === 'conflict') {
1001
+ const pending = { outcome: 'conflict', candidate };
1002
+ if (sourceKey !== undefined)
1003
+ this.db.prepare('INSERT INTO writeback_receipts VALUES(?,?,?)').run(sourceKey, requestHash, JSON.stringify(pending));
1004
+ return pending;
1005
+ }
988
1006
  const entry = resolution.proposal.action === 'create'
989
1007
  ? this.insertEntry(resolution.proposal.draft)
990
1008
  : resolution.proposal.change?.kind === 'finalize'
@@ -996,7 +1014,7 @@ export class LocalKnowledgeProvider {
996
1014
  ? 'Automatically merged by direct-write reconciliation.'
997
1015
  : 'Automatically approved by direct-write policy.', candidate.id);
998
1016
  touchedEntryId = entry.id;
999
- return {
1017
+ const committed = {
1000
1018
  outcome: resolution.outcome,
1001
1019
  candidate: {
1002
1020
  ...candidate,
@@ -1008,6 +1026,9 @@ export class LocalKnowledgeProvider {
1008
1026
  },
1009
1027
  entry,
1010
1028
  };
1029
+ if (sourceKey !== undefined)
1030
+ this.db.prepare('INSERT INTO writeback_receipts VALUES(?,?,?)').run(sourceKey, requestHash, JSON.stringify(committed));
1031
+ return committed;
1011
1032
  });
1012
1033
  if (touchedEntryId !== undefined)
1013
1034
  await this.syncKnowledgeEntryQueued(touchedEntryId);
@@ -1281,8 +1302,8 @@ export class LocalKnowledgeProvider {
1281
1302
  ON CONFLICT(source_key) DO UPDATE SET
1282
1303
  status='running', attempts=extraction_jobs.attempts+1, candidate_count=0,
1283
1304
  last_error=NULL, completion_json=NULL, updated_at=excluded.updated_at
1284
- WHERE extraction_jobs.attempts < 3 AND (
1285
- extraction_jobs.status='failed'
1305
+ WHERE (
1306
+ (extraction_jobs.status='failed' AND extraction_jobs.attempts < 3)
1286
1307
  OR (extraction_jobs.status='running' AND extraction_jobs.updated_at < ?)
1287
1308
  )
1288
1309
  `).run(sourceKey, claimedAt, staleBefore);