@lemoncat7/dsh-knowledge 2.2.1 → 2.2.8

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.
Files changed (59) hide show
  1. package/docs/architecture.md +5 -5
  2. package/lib/api.d.ts.map +1 -1
  3. package/lib/api.js +55 -24
  4. package/lib/api.js.map +1 -1
  5. package/lib/async-pool.d.ts +7 -0
  6. package/lib/async-pool.d.ts.map +1 -0
  7. package/lib/async-pool.js +21 -0
  8. package/lib/async-pool.js.map +1 -0
  9. package/lib/client.d.ts.map +1 -1
  10. package/lib/client.js +53 -17
  11. package/lib/client.js.map +2 -2
  12. package/lib/domain.d.ts +16 -0
  13. package/lib/domain.d.ts.map +1 -1
  14. package/lib/domain.js.map +1 -1
  15. package/lib/extraction.d.ts +3 -0
  16. package/lib/extraction.d.ts.map +1 -1
  17. package/lib/extraction.js +65 -11
  18. package/lib/extraction.js.map +1 -1
  19. package/lib/index.d.ts.map +1 -1
  20. package/lib/index.js +101 -29
  21. package/lib/index.js.map +1 -1
  22. package/lib/local-provider.d.ts +13 -2
  23. package/lib/local-provider.d.ts.map +1 -1
  24. package/lib/local-provider.js +307 -73
  25. package/lib/local-provider.js.map +1 -1
  26. package/lib/note-tools.js +4 -4
  27. package/lib/note-tools.js.map +1 -1
  28. package/lib/provider-router.d.ts +6 -2
  29. package/lib/provider-router.d.ts.map +1 -1
  30. package/lib/provider-router.js +10 -6
  31. package/lib/provider-router.js.map +1 -1
  32. package/lib/provider.d.ts +4 -2
  33. package/lib/provider.d.ts.map +1 -1
  34. package/lib/remote-provider.d.ts +4 -2
  35. package/lib/remote-provider.d.ts.map +1 -1
  36. package/lib/remote-provider.js +22 -2
  37. package/lib/remote-provider.js.map +1 -1
  38. package/lib/retrieval.d.ts.map +1 -1
  39. package/lib/retrieval.js +9 -7
  40. package/lib/retrieval.js.map +1 -1
  41. package/lib/tool-authorization.d.ts +3 -1
  42. package/lib/tool-authorization.d.ts.map +1 -1
  43. package/lib/tool-authorization.js +27 -14
  44. package/lib/tool-authorization.js.map +1 -1
  45. package/lib/tools.js +1 -1
  46. package/lib/tools.js.map +1 -1
  47. package/lib/tracking.d.ts.map +1 -1
  48. package/lib/tracking.js +8 -3
  49. package/lib/tracking.js.map +1 -1
  50. package/lib/web-workspace-effects.d.ts.map +1 -1
  51. package/lib/web-workspace-effects.js +10 -1
  52. package/lib/web-workspace-effects.js.map +1 -1
  53. package/lib/web.d.ts.map +1 -1
  54. package/lib/web.js +7 -4
  55. package/lib/web.js.map +1 -1
  56. package/package.json +2 -2
  57. package/web/app.js +215 -21
  58. package/web/styles.css +31 -17
  59. package/web/workspace-effects.js +2 -2
package/lib/domain.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"domain.js","sourceRoot":"","sources":["../src/domain.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"domain.js","sourceRoot":"","sources":["../src/domain.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { ResolvedConfig } from './config.js';
2
+ import { type ExtractionWriteDestination } from './domain.js';
2
3
  import type { KnowledgeProvider } from './provider.js';
3
4
  import { type RuntimeContextLike, type SessionLike } from './runtime.js';
4
5
  export declare class ExtractionCoordinator {
@@ -14,6 +15,7 @@ export declare class ExtractionCoordinator {
14
15
  } | undefined);
15
16
  run(session: SessionLike, turn: number, parentSignal: AbortSignal): Promise<ExtractionResult>;
16
17
  close(): Promise<void>;
18
+ private completeEmpty;
17
19
  private process;
18
20
  }
19
21
  export interface ExtractionResult {
@@ -27,5 +29,6 @@ export interface ExtractionResult {
27
29
  directCount: number;
28
30
  auditCount: number;
29
31
  }>;
32
+ destinations: ExtractionWriteDestination[];
30
33
  }
31
34
  //# sourceMappingURL=extraction.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"extraction.d.ts","sourceRoot":"","sources":["../src/extraction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAIjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAiC,KAAK,kBAAkB,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AAavG,qBAAa,qBAAqB;IAK9B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAP9B,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwB;gBAG9B,GAAG,EAAE,kBAAkB,EACvB,QAAQ,EAAE,iBAAiB,EAC3B,MAAM,EAAE,cAAc,EACtB,WAAW,GAAE,MAAM;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,SAA2B;IAGjG,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAU7F,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAKd,OAAO;CAuFtB;AAmDD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,CAAA;IAC3D,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,KAAK,CAAC;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CACjG"}
1
+ {"version":3,"file":"extraction.d.ts","sourceRoot":"","sources":["../src/extraction.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAEjD,OAAO,EAAiJ,KAAK,0BAA0B,EAA0N,MAAM,aAAa,CAAA;AAGpa,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEtD,OAAO,EAAiC,KAAK,kBAAkB,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAA;AAavG,qBAAa,qBAAqB;IAK9B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAP9B,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAwB;gBAG9B,GAAG,EAAE,kBAAkB,EACvB,QAAQ,EAAE,iBAAiB,EAC3B,MAAM,EAAE,cAAc,EACtB,WAAW,GAAE,MAAM;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,SAA2B;IAGjG,GAAG,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAW7F,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YAKd,aAAa;YAkBb,OAAO;CAqGtB;AAmDD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,GAAG,WAAW,CAAA;IAC3D,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,KAAK,CAAC;QAAE,eAAe,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAChG,YAAY,EAAE,0BAA0B,EAAE,CAAA;CAC3C"}
package/lib/extraction.js CHANGED
@@ -2,6 +2,8 @@ import { randomUUID } from 'node:crypto';
2
2
  import { inspectSensitiveContent } from './content-safety.js';
3
3
  import { contentHash, isKnowledgeType, normalizeTags } from './domain.js';
4
4
  import { applyKnowledgeTextEdits } from './knowledge-merge.js';
5
+ import { knowledgeDocumentPath } from './documents/path.js';
6
+ import { mapConcurrent } from './async-pool.js';
5
7
  import { messageText } from './runtime.js';
6
8
  export class ExtractionCoordinator {
7
9
  ctx;
@@ -19,19 +21,35 @@ export class ExtractionCoordinator {
19
21
  async run(session, turn, parentSignal) {
20
22
  if (this.closing)
21
23
  return emptyResult('skipped');
24
+ const sourceKey = `${session.id}:${turn}`;
22
25
  const snapshot = snapshotTurn(session, turn, this.config.extractionMaxInputChars);
23
26
  if (snapshot === undefined)
24
- return emptyResult('skipped');
27
+ return this.completeEmpty(sourceKey, 'skipped', parentSignal);
25
28
  const mounts = (await this.provider.resolveMounts(session.id, snapshot.projectId, parentSignal))
26
29
  .filter(mount => mount.writeMode !== 'none');
27
30
  if (mounts.length === 0)
28
- return emptyResult('unmounted');
31
+ return this.completeEmpty(sourceKey, 'unmounted', parentSignal);
29
32
  return this.process(snapshot, mounts, AbortSignal.any([parentSignal, this.shutdown.signal]));
30
33
  }
31
34
  async close() {
32
35
  this.closing = true;
33
36
  this.shutdown.abort(new Error('dsh-knowledge is shutting down'));
34
37
  }
38
+ async completeEmpty(sourceKey, status, signal) {
39
+ const result = emptyResult(status);
40
+ try {
41
+ if (!await this.provider.claimExtraction(sourceKey, signal))
42
+ return emptyResult('duplicate');
43
+ await this.provider.completeExtraction(sourceKey, completionFromResult(result), signal);
44
+ }
45
+ catch (error) {
46
+ // A read-only remote token can still provide recall while being unable to
47
+ // persist a no-op extraction record. Keep the user-facing result correct;
48
+ // actual write attempts continue to fail loudly in process().
49
+ this.ctx.logger.debug(`dsh-knowledge: could not persist ${status} extraction ${sourceKey}: ${errorMessage(error)}`);
50
+ }
51
+ return result;
52
+ }
35
53
  async process(snapshot, mounts, signal) {
36
54
  if (!await this.provider.claimExtraction(snapshot.sourceKey, signal))
37
55
  return emptyResult('duplicate');
@@ -47,6 +65,7 @@ export class ExtractionCoordinator {
47
65
  let candidateCount = 0;
48
66
  let directCount = 0;
49
67
  let auditCount = 0;
68
+ const destinations = [];
50
69
  const byBase = new Map(mounts.map(mount => [mount.knowledgeBaseId, {
51
70
  knowledgeBaseId: mount.knowledgeBaseId,
52
71
  name: mount.base.name,
@@ -72,6 +91,7 @@ export class ExtractionCoordinator {
72
91
  auditCount += 1;
73
92
  if (counts !== undefined)
74
93
  counts.auditCount += 1;
94
+ destinations.push(pendingDestination(mount, proposed));
75
95
  }
76
96
  else {
77
97
  const result = await this.provider.writeDirect(proposal, snapshot.sourceKey, signal);
@@ -82,11 +102,22 @@ export class ExtractionCoordinator {
82
102
  auditCount += 1;
83
103
  if (counts !== undefined)
84
104
  counts.auditCount += 1;
105
+ if (result.candidate !== undefined)
106
+ destinations.push(pendingDestination(mount, result.candidate));
85
107
  }
86
108
  else {
87
109
  directCount += 1;
88
110
  if (counts !== undefined)
89
111
  counts.directCount += 1;
112
+ if (result.entry !== undefined)
113
+ destinations.push({
114
+ knowledgeBaseId: mount.knowledgeBaseId,
115
+ knowledgeBaseName: mount.base.name,
116
+ documentId: result.entry.id,
117
+ documentTitle: result.entry.title,
118
+ documentPath: knowledgeDocumentPath(result.entry),
119
+ disposition: 'written',
120
+ });
90
121
  }
91
122
  }
92
123
  }
@@ -98,14 +129,17 @@ export class ExtractionCoordinator {
98
129
  auditCount += 1;
99
130
  if (counts !== undefined)
100
131
  counts.auditCount += 1;
132
+ destinations.push(pendingDestination(mount, proposed));
101
133
  }
102
134
  }
103
- await this.provider.completeExtraction(snapshot.sourceKey, candidateCount, signal);
104
- this.ctx.logger.debug(`dsh-knowledge: extracted ${candidateCount} candidate(s) from ${snapshot.sourceKey}`);
105
- return {
135
+ const result = {
106
136
  status: 'completed', candidateCount, directCount, auditCount,
107
137
  bases: [...byBase.values()].filter(base => base.directCount + base.auditCount > 0),
138
+ destinations,
108
139
  };
140
+ await this.provider.completeExtraction(snapshot.sourceKey, completionFromResult(result), signal);
141
+ this.ctx.logger.debug(`dsh-knowledge: extracted ${candidateCount} candidate(s) from ${snapshot.sourceKey}`);
142
+ return result;
109
143
  }
110
144
  catch (error) {
111
145
  const message = errorMessage(error);
@@ -118,14 +152,14 @@ export class ExtractionCoordinator {
118
152
  }
119
153
  }
120
154
  async function findExistingEntries(provider, mounts, query, projectId, signal) {
121
- const hits = (await Promise.all(mounts.map(mount => provider.search({
155
+ const hits = (await mapConcurrent(mounts, 4, mount => provider.search({
122
156
  text: query,
123
157
  ...projectId === undefined ? {} : { projectId },
124
158
  knowledgeBaseIds: [mount.knowledgeBaseId],
125
159
  ...mount.includeTags.length === 0 ? {} : { includeTags: mount.includeTags },
126
160
  ...mount.excludeTags.length === 0 ? {} : { excludeTags: mount.excludeTags },
127
161
  limit: 6,
128
- }, signal)))).flat()
162
+ }, signal))).flat()
129
163
  .sort((left, right) => right.score - left.score || right.entry.updatedAt.localeCompare(left.entry.updatedAt))
130
164
  .slice(0, 16);
131
165
  return deduplicateExistingEntries(hits.map(hit => hit.entry));
@@ -151,7 +185,28 @@ function groupMountsByRoute(mounts, config, snapshot, clientRoute) {
151
185
  return [...groups.values()];
152
186
  }
153
187
  function emptyResult(status) {
154
- return { status, candidateCount: 0, directCount: 0, auditCount: 0, bases: [] };
188
+ return { status, candidateCount: 0, directCount: 0, auditCount: 0, bases: [], destinations: [] };
189
+ }
190
+ function completionFromResult(result) {
191
+ return {
192
+ outcome: result.status === 'unmounted' ? 'unmounted' : result.status === 'skipped' ? 'skipped' : 'completed',
193
+ candidateCount: result.candidateCount,
194
+ directCount: result.directCount,
195
+ auditCount: result.auditCount,
196
+ destinations: result.destinations,
197
+ };
198
+ }
199
+ function pendingDestination(mount, candidate) {
200
+ return {
201
+ knowledgeBaseId: mount.knowledgeBaseId,
202
+ knowledgeBaseName: mount.base.name,
203
+ ...candidate.targetId === undefined ? {} : {
204
+ documentId: candidate.targetId,
205
+ documentPath: knowledgeDocumentPath({ id: candidate.targetId, title: candidate.draft.title }),
206
+ },
207
+ documentTitle: candidate.draft.title,
208
+ disposition: 'pending-review',
209
+ };
155
210
  }
156
211
  function snapshotTurn(session, turn, maxChars) {
157
212
  let start = -1;
@@ -707,12 +762,11 @@ function errorMessage(error) {
707
762
  }
708
763
  async function proposeUnlessFinalized(provider, proposal, sourceKey, signal) {
709
764
  try {
710
- await provider.propose(proposal, sourceKey, signal);
711
- return true;
765
+ return await provider.propose(proposal, sourceKey, signal);
712
766
  }
713
767
  catch (error) {
714
768
  if (/\bis finalized as\b/i.test(errorMessage(error)))
715
- return false;
769
+ return undefined;
716
770
  throw error;
717
771
  }
718
772
  }
@@ -1 +1 @@
1
- {"version":3,"file":"extraction.js","sourceRoot":"","sources":["../src/extraction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extraction.js","sourceRoot":"","sources":["../src/extraction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAY7C,OAAO,EAAE,MAAM,IAAI,YAAY,EAAiB,KAAK,MAAM,IAAI,eAAe,EAAE,MAAM,aAAa,CAAA;AAkBnG,eAAO,MAAM,MAAM,sBAAe,CAAA;AAClC,MAAM,MAAM,MAAM,GAAG,eAAe,CAAA;AACpC,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAEnF,yCAAyC;AACzC,eAAO,MAAM,IAAI,kBAAkB,CAAA;AAEnC,yFAAyF;AACzF,eAAO,MAAM,MAAM,UAAmB,CAAA;AAEtC,4FAA4F;AAC5F,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI,CAkVjE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAY7C,OAAO,EAAE,MAAM,IAAI,YAAY,EAAiB,KAAK,MAAM,IAAI,eAAe,EAAE,MAAM,aAAa,CAAA;AAmBnG,eAAO,MAAM,MAAM,sBAAe,CAAA;AAClC,MAAM,MAAM,MAAM,GAAG,eAAe,CAAA;AACpC,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAC5D,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAUnF,yCAAyC;AACzC,eAAO,MAAM,IAAI,kBAAkB,CAAA;AAEnC,yFAAyF;AACzF,eAAO,MAAM,MAAM,UAAmB,CAAA;AAEtC,4FAA4F;AAC5F,wBAAgB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI,CAqVjE"}
package/lib/index.js CHANGED
@@ -63,11 +63,17 @@ export function apply(ctx, config) {
63
63
  catch (error) {
64
64
  runtime.logger.warn(`dsh-knowledge: ignored invalid stored connection: ${error instanceof Error ? error.message : String(error)}`);
65
65
  }
66
- const initialProvider = createConnectionProvider(resolved, initialConnection, publicApiEnabled);
67
66
  const managementProvider = resolved.databasePath === undefined || resolved.databasePath.trim().length === 0
68
67
  ? undefined
69
68
  : new LocalKnowledgeProvider(resolved.databasePath);
70
- const providerRouter = new KnowledgeProviderRouter(initialProvider);
69
+ const connectionProvider = (settings) => {
70
+ if (settings.backend === 'local' && managementProvider !== undefined) {
71
+ return { provider: managementProvider, owned: false };
72
+ }
73
+ return { provider: createConnectionProvider(resolved, settings, publicApiEnabled), owned: true };
74
+ };
75
+ const initial = connectionProvider(initialConnection);
76
+ const providerRouter = new KnowledgeProviderRouter(initial.provider, { owned: initial.owned });
71
77
  const provider = providerRouter.provider;
72
78
  let activeConnection = initialConnection;
73
79
  const coordinator = new ExtractionCoordinator(runtime, provider, resolved, () => (clientSettings.writebackProvider && clientSettings.writebackModel
@@ -98,7 +104,7 @@ export function apply(ctx, config) {
98
104
  return activeConnection;
99
105
  if (resolved.connectionPath === undefined)
100
106
  throw connectionError(409, '当前插件没有配置持久化路径,无法保存连接。');
101
- const candidate = createConnectionProvider(resolved, next, publicApiEnabled);
107
+ const candidate = connectionProvider(next);
102
108
  let persisted = false;
103
109
  let installed = false;
104
110
  let managementRouteChanged = false;
@@ -114,7 +120,7 @@ export function apply(ctx, config) {
114
120
  };
115
121
  try {
116
122
  if (next.backend === 'remote')
117
- await candidate.stats();
123
+ await candidate.provider.stats();
118
124
  await storeConnection(resolved.connectionPath, next);
119
125
  persisted = true;
120
126
  activeConnection = next;
@@ -126,7 +132,7 @@ export function apply(ctx, config) {
126
132
  restoreManagementApi();
127
133
  throw error;
128
134
  }
129
- await providerRouter.replace(candidate);
135
+ await providerRouter.replace(candidate.provider, { owned: candidate.owned });
130
136
  installed = true;
131
137
  runtime.logger.info(`dsh-knowledge: verified and switched to ${next.backend} provider`);
132
138
  return activeConnection;
@@ -134,7 +140,8 @@ export function apply(ctx, config) {
134
140
  catch (error) {
135
141
  if (installed)
136
142
  return next;
137
- await candidate.close().catch(() => { });
143
+ if (candidate.owned)
144
+ await candidate.provider.close().catch(() => { });
138
145
  activeConnection = previous;
139
146
  if (managementRouteChanged)
140
147
  restoreManagementApi();
@@ -270,6 +277,12 @@ export function apply(ctx, config) {
270
277
  throw connectionError(400, 'sessionId and a non-negative integer turn are required');
271
278
  const key = `${sessionId}:${turn}`;
272
279
  let state = writebackStatuses.get(key);
280
+ if (state === undefined) {
281
+ const job = await provider.extractionJob(key).catch(() => undefined);
282
+ state = job === undefined ? undefined : statusFromExtractionJob(job, writebackSources.has(key));
283
+ if (state !== undefined)
284
+ rememberWritebackStatus(writebackStatuses, writebackSources, key, state);
285
+ }
273
286
  if (req.method === 'POST') {
274
287
  const source = writebackSources.get(key);
275
288
  if (state?.status !== 'failed' || !state.retryable || source === undefined) {
@@ -278,7 +291,7 @@ export function apply(ctx, config) {
278
291
  writebackStatuses.set(key, { status: 'running', summary: '知识库回写 · 正在重试', retryable: false });
279
292
  try {
280
293
  await provider.resetExtraction(key);
281
- state = await runWriteback(source.agent, source.turn, new AbortController().signal);
294
+ state = await runWriteback(source.agent, source.turn, new AbortController().signal, 'retry');
282
295
  }
283
296
  catch (error) {
284
297
  const message = error instanceof Error ? error.message : String(error);
@@ -330,31 +343,25 @@ export function apply(ctx, config) {
330
343
  runtime.logger.warn('dsh-knowledge: webServer is unavailable; management and connection settings are disabled');
331
344
  }
332
345
  if (resolved.extractionEnabled) {
333
- runWriteback = async (agent, turn, signal) => {
346
+ runWriteback = async (agent, turn, signal, phase = 'initial') => {
334
347
  const key = `${agent.session.id}:${turn}`;
335
- writebackStatuses.set(key, { status: 'running', summary: '知识库回写 · 正在重试', retryable: false });
348
+ writebackStatuses.set(key, {
349
+ status: 'running', summary: phase === 'retry' ? '知识库回写 · 正在重试' : '知识库回写 · 正在处理', retryable: false,
350
+ });
336
351
  let state;
337
352
  try {
338
353
  const result = await coordinator.run(agent.session, turn, signal);
339
- let summary;
340
354
  if (result.status === 'duplicate') {
341
355
  const job = await provider.extractionJob(key, signal);
342
356
  if (job?.status === 'failed')
343
357
  throw new Error(job.lastError ?? '知识库回写失败');
344
- summary = '知识库回写 · 已处理';
358
+ state = job === undefined
359
+ ? { status: 'completed', summary: '知识库回写 · 已处理', retryable: false }
360
+ : statusFromExtractionJob(job, false);
361
+ }
362
+ else {
363
+ state = statusFromExtractionResult(result);
345
364
  }
346
- else if (result.status === 'unmounted')
347
- summary = '知识库回写 · 未挂载可写知识库';
348
- else if (result.status === 'skipped')
349
- summary = '知识库回写 · 当前回答无可提取内容';
350
- else if (result.candidateCount === 0)
351
- summary = '知识库回写 · 无需收录';
352
- else
353
- summary = `知识库回写 · ${result.bases.map(base => {
354
- const parts = [base.directCount > 0 ? `直写 ${base.directCount}` : '', base.auditCount > 0 ? `待审 ${base.auditCount}` : ''].filter(Boolean);
355
- return `${base.name}:${parts.join('、')}`;
356
- }).join(';')}`;
357
- state = { status: 'completed', summary, retryable: false };
358
365
  writebackSources.delete(key);
359
366
  }
360
367
  catch (error) {
@@ -373,12 +380,7 @@ export function apply(ctx, config) {
373
380
  else
374
381
  writebackSources.delete(key);
375
382
  }
376
- writebackStatuses.set(key, state);
377
- if (writebackStatuses.size > 1000) {
378
- const oldest = writebackStatuses.keys().next().value;
379
- writebackStatuses.delete(oldest);
380
- writebackSources.delete(oldest);
381
- }
383
+ rememberWritebackStatus(writebackStatuses, writebackSources, key, state);
382
384
  runtime.logger.info(`dsh-knowledge: ${state.summary}`);
383
385
  return state;
384
386
  };
@@ -393,6 +395,76 @@ export function apply(ctx, config) {
393
395
  }, 'dsh-knowledge.close');
394
396
  runtime.logger.info(`dsh-knowledge: ${provider.mode} provider ready`);
395
397
  }
398
+ function statusFromExtractionResult(result) {
399
+ if (result.status === 'unmounted')
400
+ return { status: 'completed', summary: '知识库回写 · 未挂载可写知识库', retryable: false };
401
+ if (result.status === 'skipped')
402
+ return { status: 'completed', summary: '知识库回写 · 当前回答无可提取内容', retryable: false };
403
+ if (result.status === 'duplicate')
404
+ return { status: 'completed', summary: '知识库回写 · 已处理', retryable: false };
405
+ if (result.candidateCount === 0)
406
+ return { status: 'completed', summary: '知识库回写 · 无需收录', retryable: false };
407
+ return {
408
+ status: 'completed',
409
+ summary: summarizeWritebackCounts(result.bases),
410
+ retryable: false,
411
+ destinations: result.destinations,
412
+ };
413
+ }
414
+ function statusFromExtractionJob(job, retryable) {
415
+ if (job.status === 'running')
416
+ return { status: 'running', summary: '知识库回写 · 正在处理', retryable: false };
417
+ if (job.status === 'failed')
418
+ return {
419
+ status: 'failed', summary: '知识库回写 · 失败', error: job.lastError ?? '知识库回写失败', retryable,
420
+ };
421
+ const completion = job.completion;
422
+ if (completion === undefined)
423
+ return {
424
+ status: 'completed', summary: job.candidateCount > 0 ? `知识库回写 · 已处理 ${job.candidateCount} 项` : '知识库回写 · 无需收录', retryable: false,
425
+ };
426
+ if (completion.outcome === 'unmounted')
427
+ return { status: 'completed', summary: '知识库回写 · 未挂载可写知识库', retryable: false };
428
+ if (completion.outcome === 'skipped')
429
+ return { status: 'completed', summary: '知识库回写 · 当前回答无可提取内容', retryable: false };
430
+ if (completion.candidateCount === 0)
431
+ return { status: 'completed', summary: '知识库回写 · 无需收录', retryable: false };
432
+ const grouped = new Map();
433
+ for (const destination of completion.destinations) {
434
+ const current = grouped.get(destination.knowledgeBaseId) ?? {
435
+ name: destination.knowledgeBaseName, directCount: 0, auditCount: 0,
436
+ };
437
+ if (destination.disposition === 'written')
438
+ current.directCount += 1;
439
+ else
440
+ current.auditCount += 1;
441
+ grouped.set(destination.knowledgeBaseId, current);
442
+ }
443
+ return {
444
+ status: 'completed',
445
+ summary: grouped.size === 0
446
+ ? `知识库回写 · 已处理 ${completion.candidateCount} 项`
447
+ : summarizeWritebackCounts([...grouped.values()]),
448
+ retryable: false,
449
+ destinations: completion.destinations,
450
+ };
451
+ }
452
+ function summarizeWritebackCounts(bases) {
453
+ return `知识库回写 · ${bases.map(base => {
454
+ const parts = [base.directCount > 0 ? `直写 ${base.directCount}` : '', base.auditCount > 0 ? `待审 ${base.auditCount}` : ''].filter(Boolean);
455
+ return `${base.name}:${parts.join('、')}`;
456
+ }).join(';')}`;
457
+ }
458
+ function rememberWritebackStatus(statuses, sources, key, state) {
459
+ statuses.set(key, state);
460
+ while (statuses.size > 1000) {
461
+ const oldest = statuses.keys().next().value;
462
+ if (oldest === undefined)
463
+ break;
464
+ statuses.delete(oldest);
465
+ sources.delete(oldest);
466
+ }
467
+ }
396
468
  function snapshotAgent(agent) {
397
469
  return {
398
470
  session: {