@lemoncat7/dsh-knowledge 2.5.1 → 2.6.1
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 +15 -3
- package/docs/architecture.md +14 -4
- package/docs/releases/2.6.0.md +20 -0
- package/lib/api.d.ts.map +1 -1
- package/lib/api.js +19 -3
- package/lib/api.js.map +1 -1
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +118 -57
- package/lib/client.js.map +4 -4
- package/lib/config.d.ts +1 -0
- package/lib/config.d.ts.map +1 -1
- package/lib/config.js +5 -0
- package/lib/config.js.map +1 -1
- package/lib/extraction.d.ts +25 -1
- package/lib/extraction.d.ts.map +1 -1
- package/lib/extraction.js +70 -47
- package/lib/extraction.js.map +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +55 -64
- package/lib/index.js.map +1 -1
- package/lib/local-provider.d.ts +3 -0
- package/lib/local-provider.d.ts.map +1 -1
- package/lib/local-provider.js +27 -6
- package/lib/local-provider.js.map +1 -1
- package/lib/notes/share-import.d.ts +2 -0
- package/lib/notes/share-import.d.ts.map +1 -1
- package/lib/notes/share-import.js +40 -5
- package/lib/notes/share-import.js.map +1 -1
- package/lib/provider.d.ts +3 -0
- package/lib/provider.d.ts.map +1 -1
- package/lib/remote-provider.d.ts +3 -0
- package/lib/remote-provider.d.ts.map +1 -1
- package/lib/remote-provider.js +10 -0
- package/lib/remote-provider.js.map +1 -1
- package/lib/writeback/queue.d.ts +40 -0
- package/lib/writeback/queue.d.ts.map +1 -0
- package/lib/writeback/queue.js +193 -0
- package/lib/writeback/queue.js.map +1 -0
- package/lib/writeback/status-client.d.ts +22 -0
- package/lib/writeback/status-client.d.ts.map +1 -0
- package/lib/writeback/status-client.js +97 -0
- package/lib/writeback/status-client.js.map +1 -0
- package/package.json +1 -1
- package/web/api-client.js +2 -1
- package/web/app.js +30 -12
- package/web/styles.css +4 -8
- package/web/ui-primitives.js +1 -0
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
|
-
|
|
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,
|
|
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
|
-
|
|
308
|
-
|
|
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
|
-
|
|
383
|
+
runtime.on('agent/turn-stopping', ({ agent, turn }) => {
|
|
366
384
|
const key = `${agent.session.id}:${turn}`;
|
|
367
|
-
|
|
368
|
-
status: 'running', summary: phase === 'retry' ? '知识库回写 · 正在重试' : '知识库回写 · 正在处理', retryable: false,
|
|
369
|
-
});
|
|
370
|
-
let state;
|
|
385
|
+
let work;
|
|
371
386
|
try {
|
|
372
|
-
const
|
|
373
|
-
if (
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
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
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
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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"}
|
package/lib/local-provider.d.ts
CHANGED
|
@@ -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":"AAMA,OAAO,EASL,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAE/B,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EAGjC,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,eAAe,EACrB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAOtD,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAC5C,OAAO,EACL,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,EACjC,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAA;AAmB1B,qBAAa,sBAAuB,YAAW,iBAAiB;IAC9D,QAAQ,CAAC,IAAI,EAAG,OAAO,CAAS;IAChC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAA;IACzB,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAc;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwB;IACtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAe;IAC9C,OAAO,CAAC,eAAe,CAAmC;IAC1D,OAAO,CAAC,MAAM,CAAQ;gBAEV,IAAI,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"local-provider.d.ts","sourceRoot":"","sources":["../src/local-provider.ts"],"names":[],"mappings":"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"}
|
package/lib/local-provider.js
CHANGED
|
@@ -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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
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);
|