@dsh-enhanced/assistant-memory-learning 0.1.65 → 0.1.66

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/runtime.js CHANGED
@@ -1,4 +1,5 @@
1
- import { growthObjectDigest, memoryLearningRequestDigest, validateMemoryLearningReviewRequest } from '@dsh-enhanced/assistant-growth-contract';
1
+ import { ScannerOwnerGuard, ScannerOwnerUnavailable } from './scanner-owner-runtime.js';
2
+ import { hasWorkItemLearningFeedbackText, growthObjectDigest, memoryLearningRequestDigest, validateMemoryLearningReviewRequest } from '@dsh-enhanced/assistant-growth-contract';
2
3
  import { validateLearningConfig, validateLearningModel } from './config.js';
3
4
  import { LearningStore } from './store.js';
4
5
  const OWNER = 'assistant-memory-learning';
@@ -8,10 +9,15 @@ class SourcePending extends Error {
8
9
  }
9
10
  class SourceObsolete extends Error {
10
11
  }
12
+ const presentationFlags = (task) => ({
13
+ brief: { truncated: task.presentation.brief.truncated, redacted: task.presentation.brief.redacted },
14
+ report: { truncated: task.presentation.report.truncated, redacted: task.presentation.report.redacted },
15
+ feedback: { truncated: task.presentation.feedback.truncated, redacted: task.presentation.feedback.redacted },
16
+ });
11
17
  const same = (a, b) => growthObjectDigest(a) === growthObjectDigest(b);
12
18
  const reasonText = (value) => Array.from(String(value).normalize('NFC').replaceAll('\0', '').trim())
13
19
  .slice(0, 120).join('') || 'learning-incomplete';
14
- /** Two durable source cursors. Native Automations owns every timer and dispatch. */
20
+ /** Three durable source cursors (work items require explicit opt-in). Native Automations owns every timer and dispatch. */
15
21
  export class MemoryLearningRuntime {
16
22
  ports;
17
23
  config;
@@ -22,6 +28,9 @@ export class MemoryLearningRuntime {
22
28
  abort = new AbortController();
23
29
  flights = new Set();
24
30
  unregister;
31
+ ownerGuard;
32
+ unsubscribeWake;
33
+ initialized = false;
25
34
  active = false;
26
35
  scanning = false;
27
36
  lastError = null;
@@ -33,10 +42,11 @@ export class MemoryLearningRuntime {
33
42
  this.configDigest = growthObjectDigest(this.config);
34
43
  this.lane = growthObjectDigest([this.config.authorityId, this.config.owner]);
35
44
  this.scanId = `memory-scan-${this.lane}`;
45
+ this.ownerGuard = new ScannerOwnerGuard(OWNER, this.scanId, this.scope(), ports.delivery, ports.automations, this.config.owner);
36
46
  for (const [port, methods] of [
37
- [ports.delivery, ['validateOwnerRoute', 'listOwnerForegroundTaskSources', 'inspectOwnerForegroundTaskSource', 'withOwnerForegroundTaskSourcesFence', 'inspectOwnerForegroundLearningTask']],
47
+ [ports.delivery, ['inspectOwnerRouteState', 'validateOwnerRoute', 'listOwnerForegroundTaskSources', 'inspectOwnerForegroundTaskSource', 'withOwnerForegroundTaskSourcesFence', 'inspectOwnerForegroundLearningTask']],
38
48
  [ports.evaluation, ['canonicalHostScope', 'listTrustedTaskLearningProjections', 'withTrustedCanonicalScopeWriterFence', 'getTrustedForegroundLearningProjection', 'inspectTrustedTaskOwnerRevision']],
39
- [ports.automations, ['registerHostExecutor', 'reconcileSystem', 'inspectSystemOwnedActivation', 'inspectSystemOwned']],
49
+ [ports.automations, ['inspectSystemOwnedRetirement', 'retireSystemOwned', 'onSchedulerWake', 'registerHostExecutor', 'reconcileSystem', 'inspectSystemOwnedActivation', 'inspectSystemOwned']],
40
50
  [ports.memory, ['listLearningTargets', 'inspectLearningAdoptionAvailability', 'lookupLearningAdoption', 'adoptReviewedLearning']],
41
51
  [ports.verifier, ['inspectMemoryLearningReviewAvailability', 'reviewMemoryLearning', 'lookupMemoryLearningReview']],
42
52
  [ports.policy, ['evaluate', 'authorize']],
@@ -47,13 +57,22 @@ export class MemoryLearningRuntime {
47
57
  this.store = new LearningStore(this.config.databasePath, { authorityId: this.config.authorityId,
48
58
  configDigest: this.configDigest, maxExtractions: this.config.maxExtractions });
49
59
  }
50
- health = () => ({ enabled: true, connected: this.active, lastScanAt: this.lastScanAt,
60
+ health = () => ({ enabled: true, connected: this.active && !this.ownerGuard.retired, lastScanAt: this.lastScanAt,
51
61
  lastError: this.lastError, counts: this.store.counts(this.lane), ...this.store.availability() });
52
62
  start() {
53
63
  if (this.active || this.closing)
54
64
  throw new Error('memory learning runtime cannot be started twice');
65
+ let recoverNativeScanner = false;
66
+ try {
67
+ this.ownerGuard.check();
68
+ }
69
+ catch (error) {
70
+ this.lastError = String(error).slice(0, 200);
71
+ if (this.ownerGuard.retired)
72
+ return;
73
+ recoverNativeScanner = this.ownerGuard.canReconcileScanner;
74
+ }
55
75
  try {
56
- this.store.interrupt(this.lane);
57
76
  this.unregister = this.ports.automations.registerHostExecutor({
58
77
  descriptor: { executorId: EXECUTOR, contractVersion: 1, catalogDigest: CATALOG },
59
78
  accepts: spec => spec.executorId === EXECUTOR && spec.executorContractVersion === 1 && spec.catalogDigest === CATALOG
@@ -66,26 +85,55 @@ export class MemoryLearningRuntime {
66
85
  },
67
86
  });
68
87
  this.active = true;
69
- this.owner();
70
- this.ports.automations.reconcileSystem({ owner: OWNER, automationId: this.scanId,
71
- idempotencyKey: `${this.scanId}:${this.configDigest}`, desiredStatus: 'active', definition: this.definition() });
88
+ this.unsubscribeWake = this.ports.automations.onSchedulerWake(() => {
89
+ if (!this.active || this.initialized || this.ownerGuard.retired)
90
+ return;
91
+ try {
92
+ this.initializeScanner();
93
+ }
94
+ catch (error) {
95
+ this.lastError = String(error).slice(0, 200);
96
+ }
97
+ });
72
98
  // One bounded activation reconciliation; subsequent scans are native jobs.
99
+ if (recoverNativeScanner) {
100
+ try {
101
+ this.ports.automations.reconcileSystem({ owner: OWNER, automationId: this.scanId,
102
+ idempotencyKey: `${this.scanId}:${this.configDigest}`, desiredStatus: 'active', definition: this.definition() });
103
+ }
104
+ catch (error) {
105
+ this.lastError = String(error).slice(0, 200);
106
+ }
107
+ }
73
108
  this.scan();
74
109
  }
75
110
  catch (error) {
76
111
  this.active = false;
112
+ this.unsubscribeWake?.();
77
113
  this.unregister?.();
78
114
  this.abort.abort(error);
79
115
  this.store.close();
80
116
  throw error;
81
117
  }
82
118
  }
119
+ initializeScanner() {
120
+ const owner = this.owner();
121
+ if (!this.initialized) {
122
+ this.store.interrupt(this.lane);
123
+ this.ports.automations.reconcileSystem({ owner: OWNER, automationId: this.scanId,
124
+ idempotencyKey: `${this.scanId}:${this.configDigest}`, desiredStatus: 'active', definition: this.definition() });
125
+ this.initialized = true;
126
+ }
127
+ return owner;
128
+ }
83
129
  close() {
84
130
  return this.closing ??= (async () => {
85
131
  this.active = false;
132
+ this.unsubscribeWake?.();
86
133
  this.unregister?.();
87
134
  this.abort.abort(new Error('memory learning provider disposed'));
88
- this.store.interrupt(this.lane);
135
+ if (!this.ownerGuard.retired && this.initialized)
136
+ this.store.interrupt(this.lane);
89
137
  const deadline = AbortSignal.timeout(5000);
90
138
  let release;
91
139
  const expired = new Promise(resolve => {
@@ -113,6 +161,7 @@ export class MemoryLearningRuntime {
113
161
  owner() {
114
162
  if (!this.active)
115
163
  throw new Error('memory learning unavailable');
164
+ this.ownerGuard.check();
116
165
  const current = this.ports.delivery.validateOwnerRoute(this.scope());
117
166
  for (const key of Object.keys(this.config.owner)) {
118
167
  if (current[key] !== this.config.owner[key])
@@ -127,13 +176,14 @@ export class MemoryLearningRuntime {
127
176
  if (decision.effect !== 'allow')
128
177
  throw new Error('memory learning extraction policy denied');
129
178
  }
130
- available() {
179
+ available(workItem = false, claimed = false) {
131
180
  this.owner();
132
181
  this.policy();
133
182
  const review = this.ports.verifier.inspectMemoryLearningReviewAvailability({ owner: this.config.owner });
134
183
  const memory = this.ports.memory.inspectLearningAdoptionAvailability({ owner: this.config.owner });
135
- return Date.now() < this.config.expiresAt && this.store.availability().available && review?.available === true
184
+ return Date.now() < this.config.expiresAt && (claimed || this.store.availability().available) && review?.available === true
136
185
  && review.authorityId === this.config.reviewAuthorityId && review.authorityDigest === this.config.reviewAuthorityDigest
186
+ && (!workItem || review.workItemExperiences === true && memory.workItemExperiences === true)
137
187
  && memory.available && memory.authorityId === this.config.adoptionAuthorityId && memory.grantDigest === this.config.adoptionGrantDigest;
138
188
  }
139
189
  evaluationFence(callback) {
@@ -145,7 +195,56 @@ export class MemoryLearningRuntime {
145
195
  throw new SourcePending('canonical scope changed during read');
146
196
  return result.value;
147
197
  }
198
+ withWorkItemSource(job, callback) {
199
+ this.abort.signal.throwIfAborted();
200
+ this.owner();
201
+ this.policy();
202
+ const intent = job.intent;
203
+ if (intent.sourceKind !== 'work-item' || !this.config.workItemExperiences
204
+ || intent.configDigest !== this.configDigest || !same(intent.owner, this.config.owner)
205
+ || Date.now() >= Math.min(intent.expiresAt, this.config.expiresAt))
206
+ throw new SourceObsolete('work-item learning authority expired');
207
+ const owner = this.config.owner;
208
+ const scope = this.ports.evaluation.canonicalHostScope({ workspace: owner.workspace, preset: owner.agentPreset });
209
+ const current = this.ports.evaluation.getTrustedWorkItemLearningProjection({ scope, itemId: intent.itemId });
210
+ const expected = intent.canonical;
211
+ if (!current || current.projection.disposition !== 'upsert' || current.objective?.outcomeId !== expected.outcomeId
212
+ || current.projection.version !== expected.version || current.projection.digest !== expected.digest
213
+ || current.objective.status !== expected.objectiveStatus)
214
+ throw new SourceObsolete('work-item canonical result changed');
215
+ const task = this.ports.delivery.inspectOwnerWorkItemLearningTask?.({ ...this.scope(), outcomeId: expected.outcomeId });
216
+ if (!task || !this.ports.delivery.withOwnerWorkItemLearningTaskFence)
217
+ throw new SourcePending('work-item reader temporarily unavailable');
218
+ const check = (value) => {
219
+ if (value.proofIdentity.itemId !== intent.itemId || value.canonical.objective?.outcomeId !== expected.outcomeId
220
+ || value.canonical.projection.version !== expected.version || value.canonical.projection.digest !== expected.digest
221
+ || value.canonical.objective.status !== expected.objectiveStatus
222
+ || value.owner.authorityHash !== owner.authorityHash || value.owner.principalRecordId !== owner.principalRecordId
223
+ || value.owner.principalVersion !== owner.principalVersion)
224
+ throw new SourceObsolete('work-item source changed');
225
+ if (Object.values(value.presentation).some(part => part.truncated))
226
+ throw new SourceObsolete('work-item presentation exceeds text boundary');
227
+ if (!hasWorkItemLearningFeedbackText(value.presentation.feedback.text))
228
+ throw new SourceObsolete('work-item owner feedback has no visible text');
229
+ if (job.snapshot && (job.snapshot.sourceKind !== 'work-item'
230
+ || value.sourceDigest !== job.snapshot.source.sourceDigest || value.presentationDigest !== job.snapshot.source.contentDigest
231
+ || value.presentation.brief.text !== job.snapshot.taskBrief || value.presentation.report.text !== job.snapshot.workerReport
232
+ || value.presentation.feedback.text !== job.snapshot.ownerFeedback
233
+ || !same(presentationFlags(value), job.snapshot.presentationFlags)
234
+ || !same(this.config.model ?? value.proofIdentity.supplier, job.snapshot.model)))
235
+ throw new SourceObsolete('frozen work-item source changed');
236
+ return callback(value);
237
+ };
238
+ return this.ports.delivery.withOwnerWorkItemLearningTaskFence({ ...this.scope(), itemId: intent.itemId,
239
+ outcomeId: expected.outcomeId, expectedSourceDigest: task.sourceDigest, expectedContentDigest: task.presentationDigest,
240
+ canonical: { version: expected.version, digest: expected.digest, objectiveStatus: expected.objectiveStatus } }, check);
241
+ }
242
+ withCurrentSource(job, callback) {
243
+ return job.intent.sourceKind === 'work-item' ? this.withWorkItemSource(job, callback) : this.withSource(job, callback);
244
+ }
148
245
  withSource(job, callback) {
246
+ if (job.intent.sourceKind === 'work-item')
247
+ throw new Error('foreground source required');
149
248
  this.abort.signal.throwIfAborted();
150
249
  this.owner();
151
250
  this.policy();
@@ -206,7 +305,7 @@ export class MemoryLearningRuntime {
206
305
  this.scanning = true;
207
306
  try {
208
307
  this.lastError = null;
209
- this.owner();
308
+ this.initializeScanner();
210
309
  // Lost acknowledgements reconcile before admitting more paid work.
211
310
  for (const job of this.store.pending(this.lane))
212
311
  if (job.state === 'unknown') {
@@ -274,6 +373,34 @@ export class MemoryLearningRuntime {
274
373
  if (!page.hasMore)
275
374
  break;
276
375
  }
376
+ if (this.config.workItemExperiences) {
377
+ stopped = false;
378
+ for (let pageNumber = 0; pageNumber < 10 && !stopped; pageNumber++) {
379
+ const after = this.store.cursor(this.lane, 'evaluation-work-items');
380
+ const page = this.ports.evaluation.listTrustedTaskLearningProjections({ scope, ...(after ? { after } : {}), limit: 100 });
381
+ for (const item of page.items) {
382
+ const canonical = item.receipt, now = Date.now(), at = canonical.objective?.occurredAt ?? 0;
383
+ const workItem = canonical.projection.subjectKind === 'work-item';
384
+ const status = canonical.objective?.status;
385
+ const eligible = workItem && canonical.projection.disposition === 'upsert' && (status === 'achieved' || status === 'not-achieved')
386
+ && at <= now && now - at <= this.config.lookbackMs;
387
+ const subject = workItem ? `work-item:${canonical.projection.subjectRef}` : 'cursor:work-items';
388
+ const intent = eligible ? { configDigest: this.configDigest, owner, kind: 'experience',
389
+ sourceKind: 'work-item', itemId: canonical.projection.subjectRef, subject,
390
+ canonical: { outcomeId: canonical.objective.outcomeId, version: canonical.projection.version,
391
+ digest: canonical.projection.digest, objectiveStatus: status }, createdAt: now,
392
+ expiresAt: Math.min(this.config.expiresAt, now + this.config.lookbackMs) } : undefined;
393
+ const result = this.ports.evaluation.withTrustedCanonicalScopeWriterFence({ scope, scopeWatermark: page.scopeWatermark }, () => this.store.stage({ lane: this.lane, feed: 'evaluation-work-items', cursor: { scopeKey: page.nextCursor.scopeKey, watermark: item.watermark },
394
+ sequence: item.watermark, subject, ...(intent ? { intent } : {}), maxPending: this.config.maxPending, supersede: workItem }));
395
+ if (!result.matched || !result.value) {
396
+ stopped = true;
397
+ break;
398
+ }
399
+ }
400
+ if (!page.hasMore)
401
+ break;
402
+ }
403
+ }
277
404
  for (const pending of this.store.pending(this.lane)) {
278
405
  if (pending.state !== 'pending' && pending.state !== 'queued')
279
406
  continue;
@@ -282,17 +409,36 @@ export class MemoryLearningRuntime {
282
409
  if (job.state === 'pending') {
283
410
  // Each API owns its own producer locks; do not nest target discovery.
284
411
  const targets = this.ports.memory.listLearningTargets({ owner, limit: 20 });
285
- job = this.withSource(job, (content, feedback) => this.store.freeze(job.id, {
286
- model: validateLearningModel(this.config.model ?? content.source.execution.modelSelection),
287
- source: { inboxId: content.source.inboxId, sourceDigest: content.sourceDigest, contentDigest: content.contentDigest,
288
- ...(job.intent.canonical ? { canonical: job.intent.canonical } : {}) },
289
- ownerStatement: content.input.text, assistantReply: content.reply.text,
290
- ...(feedback === undefined ? {} : { ownerFeedback: feedback }), targets,
291
- }));
412
+ if (job.intent.sourceKind === 'work-item') {
413
+ if (!this.available(true))
414
+ continue;
415
+ job = this.withWorkItemSource(job, task => this.store.freeze(job.id, {
416
+ sourceKind: 'work-item', presentationFlags: presentationFlags(task), model: validateLearningModel(this.config.model ?? task.proofIdentity.supplier),
417
+ source: { protocol: 'memory-learning-source/work-item/v1', itemId: task.proofIdentity.itemId,
418
+ sourceDigest: task.sourceDigest, contentDigest: task.presentationDigest, canonical: job.intent.canonical },
419
+ taskBrief: task.presentation.brief.text, workerReport: task.presentation.report.text,
420
+ ownerFeedback: task.presentation.feedback.text, targets: targets.filter(target => target.kind === 'experience'),
421
+ }));
422
+ }
423
+ else
424
+ job = this.withSource(job, (content, feedback) => this.store.freeze(job.id, {
425
+ model: validateLearningModel(this.config.model ?? content.source.execution.modelSelection),
426
+ source: { inboxId: content.source.inboxId, sourceDigest: content.sourceDigest, contentDigest: content.contentDigest,
427
+ ...(job.intent.canonical ? { canonical: job.intent.canonical } : {}) },
428
+ ownerStatement: content.input.text, assistantReply: content.reply.text,
429
+ ...(feedback === undefined ? {} : { ownerFeedback: feedback }), targets,
430
+ }));
431
+ }
432
+ if (job.intent.sourceKind === 'work-item') {
433
+ this.withCurrentSource(job, () => undefined);
434
+ this.schedule(job);
292
435
  }
293
- this.withSource(job, () => this.schedule(job));
436
+ else
437
+ this.withCurrentSource(job, () => this.schedule(job));
294
438
  }
295
439
  catch (error) {
440
+ if (error instanceof ScannerOwnerUnavailable)
441
+ throw error;
296
442
  if (error instanceof SourceObsolete)
297
443
  this.store.settle(pending.id, 'superseded', reasonText(error.message));
298
444
  // Missing source/provider/scheduling readiness keeps the same durable intent.
@@ -354,12 +500,12 @@ export class MemoryLearningRuntime {
354
500
  }
355
501
  reconcile(job) {
356
502
  try {
503
+ this.owner();
357
504
  const prior = this.ports.memory.lookupLearningAdoption({ request: job.request });
358
505
  if (prior) {
359
506
  this.store.settle(job.id, 'adopted', 'reconciled-original-adoption', prior.receiptDigest);
360
507
  return;
361
508
  }
362
- this.withSource(job, () => undefined);
363
509
  const review = this.ports.verifier.lookupMemoryLearningReview(job.request);
364
510
  if (!review || !this.reviewMatches(job, review) || review.status === 'unknown')
365
511
  return;
@@ -367,15 +513,15 @@ export class MemoryLearningRuntime {
367
513
  this.store.settle(job.id, 'rejected', reasonText(review.reason), review.receiptDigest);
368
514
  else {
369
515
  // Lookup completed outside producer locks. Memory owns its adoption locks.
370
- this.withSource(job, () => undefined);
516
+ this.withCurrentSource(job, () => undefined);
371
517
  const adopted = this.ports.memory.adoptReviewedLearning({ request: job.request });
372
518
  this.store.settle(job.id, 'adopted', 'reconciled-approved-adoption', adopted.receiptDigest);
373
519
  }
374
520
  }
375
- catch (error) {
376
- if (error instanceof SourceObsolete)
377
- this.store.settle(job.id, 'superseded', reasonText(error.message));
378
- // Temporary absence retains the same request; paid calls are not replayed.
521
+ catch {
522
+ // A canonical change cannot prove that the original operation did not
523
+ // commit. Keep every saved unknown request queryable until an original
524
+ // receipt or explicit terminal review settles it; never replay paid calls.
379
525
  }
380
526
  }
381
527
  async execute(input) {
@@ -405,9 +551,9 @@ export class MemoryLearningRuntime {
405
551
  }
406
552
  const queued = this.store.get(input.automationId);
407
553
  if (!queued || queued.state !== 'queued' || !queued.snapshot || queued.digest !== input.activationNonce
408
- || queued.definitionHash !== input.definitionHash || !this.available())
554
+ || queued.definitionHash !== input.definitionHash || !this.available(queued.intent.sourceKind === 'work-item'))
409
555
  throw new Error('learning job is not admissible');
410
- this.withSource(queued, () => { claimed = this.store.claim(queued.id, input.definitionHash, input.occurrenceId); });
556
+ this.withCurrentSource(queued, () => { claimed = this.store.claim(queued.id, input.definitionHash, input.occurrenceId); });
411
557
  const job = claimed;
412
558
  const signal = AbortSignal.any([input.signal, this.abort.signal, AbortSignal.timeout(Math.max(1, Math.min(this.config.timeoutMs + 310_000, job.intent.expiresAt - Date.now(), this.config.expiresAt - Date.now())))]);
413
559
  const assertCurrent = () => {
@@ -415,11 +561,13 @@ export class MemoryLearningRuntime {
415
561
  const current = this.store.get(job.id);
416
562
  if (!current || current.state !== 'running' || current.occurrenceId !== input.occurrenceId)
417
563
  throw new Error('learning claim superseded');
418
- this.withSource(job, () => undefined);
564
+ this.withCurrentSource(job, () => undefined);
419
565
  };
420
566
  assertCurrent();
421
567
  this.policy(true, `memory-extract:${this.config.authorityId}:${job.id}`);
422
568
  const extractionSignal = AbortSignal.any([signal, AbortSignal.timeout(this.config.timeoutMs)]);
569
+ if (job.intent.sourceKind === 'work-item' && !this.available(true, true))
570
+ throw new Error('work-item learning capabilities unavailable before extraction');
423
571
  const extraction = await this.ports.extract({ config: this.config, job, signal: extractionSignal, assertCurrent });
424
572
  assertCurrent();
425
573
  if (!extraction.proposal) {
@@ -427,15 +575,18 @@ export class MemoryLearningRuntime {
427
575
  return result('succeeded');
428
576
  }
429
577
  const proposal = extraction.proposal;
430
- const quoteSources = [job.snapshot.ownerStatement, job.snapshot.ownerFeedback ?? ''];
578
+ const quoteSources = job.snapshot.sourceKind === 'work-item' ? [job.snapshot.ownerFeedback]
579
+ : [job.snapshot.ownerStatement, job.snapshot.ownerFeedback ?? ''];
580
+ if (job.snapshot.sourceKind === 'work-item' && !hasWorkItemLearningFeedbackText(proposal.evidenceQuote))
581
+ throw new Error('work-item quotation has no visible text');
431
582
  if (!quoteSources.some(text => text.includes(proposal.evidenceQuote)))
432
583
  throw new Error('learning quotation is not an owner source');
433
584
  if (proposal.mutation.op !== 'remove' && proposal.mutation.entry.kind !== job.intent.kind)
434
585
  throw new Error('learning kind changed');
435
586
  const mutation = proposal.mutation;
436
- if (mutation.op !== 'add' && !job.snapshot.targets.some(target => target.id === mutation.id && target.version === mutation.expectedVersion))
587
+ if (mutation.op !== 'add' && !job.snapshot.targets.some(target => target.id === mutation.id && target.version === mutation.expectedVersion && target.kind === job.intent.kind))
437
588
  throw new Error('learning target not in frozen managed set');
438
- const request = validateMemoryLearningReviewRequest({ protocol: 'memory-learning-review/v1',
589
+ const request = validateMemoryLearningReviewRequest({ protocol: job.intent.sourceKind === 'work-item' ? 'memory-learning-review/v2' : 'memory-learning-review/v1',
439
590
  operationId: job.id, extractionSessionId: extraction.sessionId,
440
591
  owner, source: job.snapshot.source, ...proposal });
441
592
  const saved = this.store.saveRequest(job.id, input.occurrenceId, request);
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import type { AssistantAutomationsService } from '@dsh-enhanced/assistant-automations';
2
+ import type { AssistantDeliveryService, OwnerRouteValidationReceipt } from '@dsh-enhanced/assistant-delivery';
3
+ type Automations = Pick<AssistantAutomationsService, 'inspectSystemOwnedRetirement' | 'retireSystemOwned' | 'inspectSystemOwned'>;
4
+ type Delivery = Pick<AssistantDeliveryService, 'inspectOwnerRouteState'>;
5
+ type Scope = {
6
+ authorityId: string;
7
+ principalId: string;
8
+ workspace: string;
9
+ agentPreset: string;
10
+ };
11
+ /** Availability failures must never be interpreted as obsolete task evidence. */
12
+ export declare class ScannerOwnerUnavailable extends Error {
13
+ }
14
+ /** Retires only this scanner, preserving its jobs, requests, grants and budgets. */
15
+ export declare class ScannerOwnerGuard {
16
+ private readonly owner;
17
+ private readonly automationId;
18
+ private readonly scope;
19
+ private readonly delivery;
20
+ private readonly automations;
21
+ private readonly expected?;
22
+ retired: boolean;
23
+ canReconcileScanner: boolean;
24
+ constructor(owner: string, automationId: string, scope: Scope, delivery: Delivery, automations: Automations, expected?: {
25
+ authorityHash: string;
26
+ principalRecordId: string;
27
+ principalVersion: number;
28
+ } | undefined);
29
+ check(): OwnerRouteValidationReceipt;
30
+ }
31
+ export {};
32
+ //# sourceMappingURL=scanner-owner-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scanner-owner-runtime.d.ts","sourceRoot":"","sources":["../src/scanner-owner-runtime.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAA;AACtF,OAAO,KAAK,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAA;AAE7G,KAAK,WAAW,GAAG,IAAI,CAAC,2BAA2B,EAAE,8BAA8B,GAAG,mBAAmB,GAAG,oBAAoB,CAAC,CAAA;AACjI,KAAK,QAAQ,GAAG,IAAI,CAAC,wBAAwB,EAAE,wBAAwB,CAAC,CAAA;AACxE,KAAK,KAAK,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAA;AAGjG,iFAAiF;AACjF,qBAAa,uBAAwB,SAAQ,KAAK;CAAG;AAErD,oFAAoF;AACpF,qBAAa,iBAAiB;IAIhB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAU,OAAO,CAAC,QAAQ,CAAC,YAAY;IACvE,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAS,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAAY,OAAO,CAAC,QAAQ,CAAC,WAAW;IAChG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAL5B,OAAO,UAAQ;IAEf,mBAAmB,UAAQ;gBACE,KAAK,EAAE,MAAM,EAAmB,YAAY,EAAE,MAAM,EAC9D,KAAK,EAAE,KAAK,EAAmB,QAAQ,EAAE,QAAQ,EAAmB,WAAW,EAAE,WAAW,EAC5F,QAAQ,CAAC,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAA;KAAE,YAAA;IAE5G,KAAK,IAAI,2BAA2B;CAmDrC"}