@dsh-enhanced/assistant-work-items 0.1.67 → 0.1.68
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 +17 -10
- package/lib/acceptance-binding.d.ts +3 -1
- package/lib/acceptance-binding.d.ts.map +1 -1
- package/lib/acceptance-binding.js +26 -1
- package/lib/acceptance-binding.js.map +1 -1
- package/lib/continuation-contract.d.ts +1 -1
- package/lib/continuation-contract.d.ts.map +1 -1
- package/lib/continuation-contract.js +5 -2
- package/lib/continuation-contract.js.map +1 -1
- package/lib/continuation.d.ts.map +1 -1
- package/lib/continuation.js +7 -2
- package/lib/continuation.js.map +1 -1
- package/lib/dispatch.d.ts +6 -16
- package/lib/dispatch.d.ts.map +1 -1
- package/lib/dispatch.js +14 -18
- package/lib/dispatch.js.map +1 -1
- package/lib/intake-admission.d.ts +28 -2
- package/lib/intake-admission.d.ts.map +1 -1
- package/lib/intake-admission.js +22 -4
- package/lib/intake-admission.js.map +1 -1
- package/lib/intake.d.ts +38 -0
- package/lib/intake.d.ts.map +1 -1
- package/lib/intake.js +55 -1
- package/lib/intake.js.map +1 -1
- package/lib/mandate.d.ts.map +1 -1
- package/lib/mandate.js +4 -0
- package/lib/mandate.js.map +1 -1
- package/lib/reply-contract.d.ts +1 -1
- package/lib/reply-contract.d.ts.map +1 -1
- package/lib/reply-contract.js +2 -2
- package/lib/reply-contract.js.map +1 -1
- package/lib/service.d.ts +22 -35
- package/lib/service.d.ts.map +1 -1
- package/lib/service.js +118 -105
- package/lib/service.js.map +1 -1
- package/lib/store.d.ts +3 -3
- package/lib/store.d.ts.map +1 -1
- package/lib/store.js +13 -6
- package/lib/store.js.map +1 -1
- package/lib/types.d.ts +3 -1
- package/lib/types.d.ts.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +7 -7
package/lib/reply-contract.js
CHANGED
|
@@ -13,14 +13,14 @@ export function immutableReply(source) {
|
|
|
13
13
|
owner: source.owner, binding: source.binding, target: source.target };
|
|
14
14
|
}
|
|
15
15
|
export const isReplyContinuationPlan = (plan) => plan.protocol === 'assistant-work-items/owner-continuation-plan/v2';
|
|
16
|
-
export function createReplyContinuationPlan(item, source, parent, supplier, config, activation, schemas) {
|
|
16
|
+
export function createReplyContinuationPlan(item, source, parent, supplier, config, activation, schemas, requireAcceptance) {
|
|
17
17
|
if (!config.ownerReplyContinuation || source.state === 'cancelled' || source.executionParentItemId !== parent.itemId
|
|
18
18
|
|| source.scope.workspace !== item.scope.workspace || source.scope.preset !== item.scope.preset || source.principalId !== item.scope.principalId
|
|
19
19
|
|| source.owner.principalRecordId !== item.owner.principalRecordId || source.owner.principalVersion !== item.owner.principalVersion
|
|
20
20
|
|| source.binding.id !== item.originBindingId || source.binding.version !== item.owner.bindingVersion || source.binding.generation !== item.owner.generation
|
|
21
21
|
|| supplier.evidence.itemId !== parent.itemId || acceptanceCanonicalJson(supplier.evidence.production) !== acceptanceCanonicalJson(parent.production))
|
|
22
22
|
continuationFail('reply source admission association differs');
|
|
23
|
-
const base = createContinuationPlan(item, { sourceDigest: source.sourceDigest, inputText: source.inputText, modelSelection: supplier.modelSelection }, parent, config, activation, schemas);
|
|
23
|
+
const base = createContinuationPlan(item, { sourceDigest: source.sourceDigest, inputText: source.inputText, modelSelection: supplier.modelSelection }, parent, config, activation, schemas, requireAcceptance);
|
|
24
24
|
const { digest: _digest, ...common } = base;
|
|
25
25
|
const unsigned = { ...common, protocol: 'assistant-work-items/owner-continuation-plan/v2',
|
|
26
26
|
source: { ...base.source, origin: { kind: 'owner-report-reply', reply: immutableReply(source), supplier: supplier.evidence } },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reply-contract.js","sourceRoot":"","sources":["../src/reply-contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAIlG,OAAO,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AACxH,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,qBAAqB,EAC0E,MAAM,4BAA4B,CAAA;AASpL,MAAM,UAAU,cAAc,CAAC,MAA0B;IACvD,IAAG,MAAM,CAAC,QAAQ,KAAG,uCAAuC,IAAI,OAAO,MAAM,CAAC,EAAE,KAAG,QAAQ,IAAI,CAAC,MAAM,CAAC,EAAE;WACpG,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,WAAW,KAAG,kBAAkB,CAAC,MAAM,CAAC,SAAS,CAAC;WACzG,MAAM,CAAC,UAAU,KAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,UAAU,GAAC,CAAC,IAAI,MAAM,CAAC,UAAU,GAAC,4BAA4B;WAChI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAG,MAAM,CAAC,SAAS;QAAE,gBAAgB,CAAC,4BAA4B,CAAC,CAAA;IAC7H,8EAA8E;IAC9E,OAAO,EAAC,QAAQ,EAAC,MAAM,CAAC,QAAQ,EAAC,EAAE,EAAC,MAAM,CAAC,EAAE,EAAC,YAAY,EAAC,MAAM,CAAC,YAAY,EAAC,eAAe,EAAC,MAAM,CAAC,eAAe;QACnH,WAAW,EAAC,MAAM,CAAC,WAAW,EAAC,UAAU,EAAC,MAAM,CAAC,UAAU,EAAC,KAAK,EAAC,MAAM,CAAC,KAAK,EAAC,WAAW,EAAC,MAAM,CAAC,WAAW;QAC7G,KAAK,EAAC,MAAM,CAAC,KAAK,EAAC,OAAO,EAAC,MAAM,CAAC,OAAO,EAAC,MAAM,EAAC,MAAM,CAAC,MAAM,EAAC,CAAA;AACnE,CAAC;AASD,MAAM,CAAC,MAAM,uBAAuB,GAAC,CAAC,IAA2B,EAAuC,EAAE,CAAA,IAAI,CAAC,QAAQ,KAAG,iDAAiD,CAAA;AAE3K,MAAM,UAAU,2BAA2B,CAAC,IAAmB,EAAC,MAA0B,EAAC,MAAyB,EAClH,QAAuG,EACvG,MAAuB,EAAC,UAAiC,EAAC,OAAgC;
|
|
1
|
+
{"version":3,"file":"reply-contract.js","sourceRoot":"","sources":["../src/reply-contract.ts"],"names":[],"mappings":"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"}
|
package/lib/service.d.ts
CHANGED
|
@@ -148,6 +148,9 @@ export declare class AssistantWorkItemsService extends Service {
|
|
|
148
148
|
private readonly workItemsMalformedBindingWarned;
|
|
149
149
|
private readonly workItemsOwnerReads;
|
|
150
150
|
private readonly workItemsOwnerContinuations;
|
|
151
|
+
/** Bounded, memory-only producer hints for inferred auto admission; never persisted. */
|
|
152
|
+
private readonly workItemsIntakeHints;
|
|
153
|
+
private static readonly MAX_INTAKE_HINTS;
|
|
151
154
|
constructor(ctx: Context, input: Config);
|
|
152
155
|
/** One native wake may admit at most ten already-due waiting occurrences. */
|
|
153
156
|
private workItemsOnSchedulerWake;
|
|
@@ -207,48 +210,24 @@ export declare class AssistantWorkItemsService extends Service {
|
|
|
207
210
|
/**
|
|
208
211
|
* WP21 slice 8 (`acceptance.holdReport`): the mandate binding, or else the
|
|
209
212
|
* latest late binding while it still belongs to the item's current
|
|
210
|
-
* occurrence. A malformed late row throws `storage
|
|
211
|
-
* to hold (fail closed) or treat the item as unbound.
|
|
213
|
+
* occurrence. A malformed late row throws `storage` and cannot release a report.
|
|
212
214
|
*/
|
|
213
215
|
private workItemsAcceptanceBinding;
|
|
214
|
-
/**
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
* is notifiable, and the item already has an independent acceptance binding.
|
|
218
|
-
* An item that has not been bound yet (for example a run that reports before
|
|
219
|
-
* the wake that binds it) is reported normally, exactly as today.
|
|
220
|
-
*
|
|
221
|
-
* A verdict recorded for an earlier generation can never settle this report
|
|
222
|
-
* (the store keeps at most one verdict per item and excludes settled items
|
|
223
|
-
* from auto-settle), so holding it would just wait out `holdTimeoutMs` before
|
|
224
|
-
* releasing it unverified. It is dispatched now, exactly like flag-off.
|
|
225
|
-
* An unreadable verdict row fails closed and holds, like a malformed binding.
|
|
226
|
-
*/
|
|
216
|
+
/** An admission-time contract does not carry over to a new worker occurrence. */
|
|
217
|
+
private workItemsRetryContractMatches;
|
|
218
|
+
/** Hold the worker's terminal self-report even when its contract is not visible yet. */
|
|
227
219
|
private workItemsHoldsReport;
|
|
228
|
-
/**
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
* must move the item before the held report can be replaced by the blocked
|
|
232
|
-
* one. A malformed binding row fails closed (treated as bound).
|
|
233
|
-
*/
|
|
220
|
+
/** Read the requirement frozen at admission, including after live configuration changes. */
|
|
221
|
+
private workItemsContinuationRequiresAcceptance;
|
|
222
|
+
/** The held report implies the verdict gate for this executed item. */
|
|
234
223
|
private workItemsReportIsHeld;
|
|
235
224
|
/**
|
|
236
|
-
*
|
|
237
|
-
*
|
|
238
|
-
*
|
|
239
|
-
* past rows that are still waiting, so they cannot starve a releasable row
|
|
240
|
-
* behind them; a short page resets it and the next wake restarts from the
|
|
241
|
-
* oldest row. Achievement sends the ordinary report; any other settled
|
|
242
|
-
* verdict (or a verdict-gate `blocked` item) sends a blocked report instead;
|
|
243
|
-
* a still-pending item stays held, and one whose `holdTimeoutMs` elapsed is
|
|
244
|
-
* sent marked unverified. A row with no acceptance binding any more was never
|
|
245
|
-
* really held and is recovered as an ordinary report instead of stranded.
|
|
246
|
-
* One unreadable row (a malformed binding or verdict event) is warned about
|
|
247
|
-
* and skipped without aborting the remaining releases; the fail-closed hold
|
|
248
|
-
* itself is unchanged.
|
|
225
|
+
* Revisit undelivered terminal reports after binding and settlement on the
|
|
226
|
+
* same scheduler wake. The bounded cursor lets waiting rows share the scan
|
|
227
|
+
* with reports ready to release, including after a restart.
|
|
249
228
|
*/
|
|
250
229
|
private workItemsReleaseHeldReports;
|
|
251
|
-
/**
|
|
230
|
+
/** Release only a verdict for this execution and its still-current contract. */
|
|
252
231
|
private workItemsHeldRelease;
|
|
253
232
|
get enabled(): boolean;
|
|
254
233
|
get mode(): 'observe' | 'active';
|
|
@@ -394,6 +373,14 @@ export declare class AssistantWorkItemsService extends Service {
|
|
|
394
373
|
* replay of the same `(source, sourceEventId)` returns the original row.
|
|
395
374
|
*/
|
|
396
375
|
recordIntake(input: WorkItemIntakeInput, sourceText?: string): WorkItemIntakeResult;
|
|
376
|
+
private intakeHintKey;
|
|
377
|
+
/**
|
|
378
|
+
* Remember producer-supplied objective/acceptance for at most
|
|
379
|
+
* `MAX_INTAKE_HINTS` candidates. The text is deliberately memory-only:
|
|
380
|
+
* restart loses it and auto admission fails closed to observe, rather than
|
|
381
|
+
* opening a new plaintext ledger for owner messages.
|
|
382
|
+
*/
|
|
383
|
+
private rememberIntakeHint;
|
|
397
384
|
/**
|
|
398
385
|
* Host-only: register the injectable WP20 inferred-evaluation supplier
|
|
399
386
|
* (Policy snapshot + model call). Requires `intakeLedger.evaluation`.
|
package/lib/service.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
|
package/lib/service.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { acceptanceDigest } from '@dsh-enhanced/task-acceptance-contract';
|
|
1
2
|
import { WorkItemEngineeringTargets } from './engineering-context.js';
|
|
2
3
|
import { Service } from '@deepseek-ai/cordis';
|
|
3
|
-
import { classifyIntake, intakeSourcePolicy } from './intake.js';
|
|
4
|
+
import { classifyIntake, intakeAcceptanceOf, intakeObjectiveOf, intakeSourcePolicy, MAX_INTAKE_OBJECTIVE_BYTES } from './intake.js';
|
|
4
5
|
import { authenticatesIntakeText, WorkItemIntakeEvaluationRuntime } from './intake-evaluation-runtime.js';
|
|
5
6
|
import { WorkItemIntakeAdmissionBridge } from './intake-admission.js';
|
|
6
7
|
import { WorkItemAdmission } from './admission.js';
|
|
@@ -14,7 +15,8 @@ import { settleOutcomes as runSettlement } from './settlement.js';
|
|
|
14
15
|
import { WorkItemOwnerRecall } from './owner-recall.js';
|
|
15
16
|
import { MALFORMED_ACCEPTANCE_BINDING, WorkItemStore } from './store.js';
|
|
16
17
|
import { normalizeFollowUp, normalizePolicyChange, noticePolicyChange } from './policy-notice.js';
|
|
17
|
-
import {
|
|
18
|
+
import { parseStoredContinuationPlan } from './reply-contract.js';
|
|
19
|
+
import { hasFreshAcceptanceReceipt, resolveAcceptanceBinding, settleAcceptance, workerRunTaskRef } from './acceptance-binding.js';
|
|
18
20
|
import { WorkItemSignalIntake, } from './signals.js';
|
|
19
21
|
import { registerWorkItemTools, workItemReportKey } from './tools.js';
|
|
20
22
|
import { TERMINAL_STATES, WorkItemError } from './types.js';
|
|
@@ -155,6 +157,9 @@ export class AssistantWorkItemsService extends Service {
|
|
|
155
157
|
workItemsMalformedBindingWarned = new Set();
|
|
156
158
|
workItemsOwnerReads;
|
|
157
159
|
workItemsOwnerContinuations;
|
|
160
|
+
/** Bounded, memory-only producer hints for inferred auto admission; never persisted. */
|
|
161
|
+
workItemsIntakeHints = new Map();
|
|
162
|
+
static MAX_INTAKE_HINTS = 256;
|
|
158
163
|
constructor(ctx, input) {
|
|
159
164
|
super(ctx, 'assistantWorkItems');
|
|
160
165
|
this.workItemsConfig = Object.freeze(normalizeConfig(input, Date.now()));
|
|
@@ -174,6 +179,13 @@ export class AssistantWorkItemsService extends Service {
|
|
|
174
179
|
store: () => this.workItemsClosed ? undefined : this.workItemsComponents?.store,
|
|
175
180
|
// The public Host path, so an admitted item wakes its worker like any decision.
|
|
176
181
|
admit: decision => this.admitDecision(decision),
|
|
182
|
+
hint: (source, sourceEventId) => {
|
|
183
|
+
const hint = this.workItemsIntakeHints.get(this.intakeHintKey(source, sourceEventId));
|
|
184
|
+
if (hint?.objective === undefined)
|
|
185
|
+
return undefined;
|
|
186
|
+
return Object.freeze({ objective: hint.objective,
|
|
187
|
+
...(hint.acceptance === undefined ? {} : { acceptance: hint.acceptance }) });
|
|
188
|
+
},
|
|
177
189
|
log: message => ctx.logger.debug(message),
|
|
178
190
|
});
|
|
179
191
|
this.workItemsOwnerReads = new WorkItemOwnerRecall({ ...ownerDependencies, access });
|
|
@@ -632,12 +644,13 @@ export class AssistantWorkItemsService extends Service {
|
|
|
632
644
|
if (bind === undefined || worker === null || this.workItemsClosed || this.workItemsVerifier() === undefined
|
|
633
645
|
|| typeof automations?.inspectOccurrenceAcceptance !== 'function')
|
|
634
646
|
return;
|
|
647
|
+
const continuation = this.workItemsConfig.ownerContinuation?.automationId;
|
|
635
648
|
const limit = bind.maxPerTick;
|
|
636
649
|
const skips = this.workItemsBindWorkerRunSkips;
|
|
637
650
|
const seen = new Set();
|
|
638
651
|
let processed = 0, scanned = 0, wrapped = this.workItemsBindWorkerRunCursor === null, done = false;
|
|
639
652
|
while (!done && processed < limit && scanned < WORKER_RUN_BIND_SCAN_LIMIT && !this.workItemsClosed) {
|
|
640
|
-
const page = components.store.listLateAcceptanceCandidates(worker, this.workItemsBindWorkerRunCursor, 10);
|
|
653
|
+
const page = components.store.listLateAcceptanceCandidates(worker, this.workItemsBindWorkerRunCursor, 10, continuation === worker ? undefined : continuation);
|
|
641
654
|
if (page.length === 0) {
|
|
642
655
|
if (wrapped)
|
|
643
656
|
break;
|
|
@@ -851,86 +864,63 @@ export class AssistantWorkItemsService extends Service {
|
|
|
851
864
|
/**
|
|
852
865
|
* WP21 slice 8 (`acceptance.holdReport`): the mandate binding, or else the
|
|
853
866
|
* latest late binding while it still belongs to the item's current
|
|
854
|
-
* occurrence. A malformed late row throws `storage
|
|
855
|
-
* to hold (fail closed) or treat the item as unbound.
|
|
867
|
+
* occurrence. A malformed late row throws `storage` and cannot release a report.
|
|
856
868
|
*/
|
|
857
869
|
workItemsAcceptanceBinding(components, item) {
|
|
858
870
|
const mandate = item.authority?.mandate?.acceptance;
|
|
859
|
-
if (mandate !== undefined)
|
|
871
|
+
if (mandate !== undefined) {
|
|
872
|
+
if (item.attempt > 1 && !this.workItemsRetryContractMatches(item, mandate))
|
|
873
|
+
return undefined;
|
|
860
874
|
return mandate;
|
|
875
|
+
}
|
|
861
876
|
const late = components.store.lateAcceptanceBinding(item.id);
|
|
862
877
|
return late !== undefined && late.occurrenceId === item.occurrenceId ? late.binding : undefined;
|
|
863
878
|
}
|
|
864
|
-
/**
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
*
|
|
871
|
-
* A verdict recorded for an earlier generation can never settle this report
|
|
872
|
-
* (the store keeps at most one verdict per item and excludes settled items
|
|
873
|
-
* from auto-settle), so holding it would just wait out `holdTimeoutMs` before
|
|
874
|
-
* releasing it unverified. It is dispatched now, exactly like flag-off.
|
|
875
|
-
* An unreadable verdict row fails closed and holds, like a malformed binding.
|
|
876
|
-
*/
|
|
879
|
+
/** An admission-time contract does not carry over to a new worker occurrence. */
|
|
880
|
+
workItemsRetryContractMatches(item, binding) {
|
|
881
|
+
return item.occurrenceId !== null && binding.taskKind === 'automation-run'
|
|
882
|
+
&& binding.taskDigest === acceptanceDigest({ kind: 'automation-run', ref: workerRunTaskRef(item.occurrenceId) });
|
|
883
|
+
}
|
|
884
|
+
/** Hold the worker's terminal self-report even when its contract is not visible yet. */
|
|
877
885
|
workItemsHoldsReport(components, item, report) {
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
881
|
-
|
|
882
|
-
|
|
883
|
-
|
|
886
|
+
return !this.workItemsClosed && item.attempt >= 1 && item.state === 'ready' && !item.observed
|
|
887
|
+
&& report.status === 'ready' && report.deliveryState === null
|
|
888
|
+
&& (this.workItemsConfig.acceptanceHoldReport !== undefined || this.workItemsContinuationRequiresAcceptance(components, item));
|
|
889
|
+
}
|
|
890
|
+
/** Read the requirement frozen at admission, including after live configuration changes. */
|
|
891
|
+
workItemsContinuationRequiresAcceptance(components, item) {
|
|
892
|
+
if (item.kind !== 'owner-continuation')
|
|
884
893
|
return false;
|
|
885
|
-
let verdict;
|
|
886
894
|
try {
|
|
887
|
-
|
|
895
|
+
const record = components.store.getContinuation(item.id);
|
|
896
|
+
if (record === undefined)
|
|
897
|
+
return true;
|
|
898
|
+
return parseStoredContinuationPlan(record.planJson).contract.acceptance !== undefined;
|
|
888
899
|
}
|
|
889
|
-
catch {
|
|
900
|
+
catch (error) {
|
|
901
|
+
this.ctx.logger.warn(`assistant-work-items: continuation acceptance plan for ${item.id} is unreadable: ${describe(error)}`);
|
|
890
902
|
return true;
|
|
891
903
|
}
|
|
892
|
-
return verdict === undefined || (verdict.attempt === item.attempt && verdict.occurrenceId === item.occurrenceId);
|
|
893
904
|
}
|
|
894
|
-
/**
|
|
895
|
-
* Whether this `ready` report is still held. Used to imply the verdict gate
|
|
896
|
-
* for held items even when `acceptance.verdictGate` itself is off: the gate
|
|
897
|
-
* must move the item before the held report can be replaced by the blocked
|
|
898
|
-
* one. A malformed binding row fails closed (treated as bound).
|
|
899
|
-
*/
|
|
905
|
+
/** The held report implies the verdict gate for this executed item. */
|
|
900
906
|
workItemsReportIsHeld(components, item) {
|
|
901
|
-
if (this.
|
|
907
|
+
if (this.workItemsClosed || item.observed
|
|
908
|
+
|| (this.workItemsConfig.acceptanceHoldReport === undefined && item.kind !== 'owner-continuation'))
|
|
902
909
|
return false;
|
|
903
910
|
const report = components.store.lastReport(item.id);
|
|
904
|
-
|
|
905
|
-
return false;
|
|
906
|
-
try {
|
|
907
|
-
return this.workItemsAcceptanceBinding(components, item) !== undefined;
|
|
908
|
-
}
|
|
909
|
-
catch {
|
|
910
|
-
return true;
|
|
911
|
-
}
|
|
911
|
+
return report !== undefined && this.workItemsHoldsReport(components, item, report);
|
|
912
912
|
}
|
|
913
913
|
/**
|
|
914
|
-
*
|
|
915
|
-
*
|
|
916
|
-
*
|
|
917
|
-
* past rows that are still waiting, so they cannot starve a releasable row
|
|
918
|
-
* behind them; a short page resets it and the next wake restarts from the
|
|
919
|
-
* oldest row. Achievement sends the ordinary report; any other settled
|
|
920
|
-
* verdict (or a verdict-gate `blocked` item) sends a blocked report instead;
|
|
921
|
-
* a still-pending item stays held, and one whose `holdTimeoutMs` elapsed is
|
|
922
|
-
* sent marked unverified. A row with no acceptance binding any more was never
|
|
923
|
-
* really held and is recovered as an ordinary report instead of stranded.
|
|
924
|
-
* One unreadable row (a malformed binding or verdict event) is warned about
|
|
925
|
-
* and skipped without aborting the remaining releases; the fail-closed hold
|
|
926
|
-
* itself is unchanged.
|
|
914
|
+
* Revisit undelivered terminal reports after binding and settlement on the
|
|
915
|
+
* same scheduler wake. The bounded cursor lets waiting rows share the scan
|
|
916
|
+
* with reports ready to release, including after a restart.
|
|
927
917
|
*/
|
|
928
918
|
workItemsReleaseHeldReports(components) {
|
|
929
919
|
const hold = this.workItemsConfig.acceptanceHoldReport;
|
|
930
|
-
if (
|
|
920
|
+
if (this.workItemsClosed)
|
|
931
921
|
return;
|
|
932
922
|
const now = Date.now();
|
|
933
|
-
const page = components.store.listHeldAcceptanceReports(HELD_REPORT_RELEASE_LIMIT, this.workItemsHeldReportCursor ?? undefined);
|
|
923
|
+
const page = components.store.listHeldAcceptanceReports(HELD_REPORT_RELEASE_LIMIT, this.workItemsHeldReportCursor ?? undefined, hold === undefined);
|
|
934
924
|
// Only a full page proves there may be rows this wake did not examine; a
|
|
935
925
|
// short page ends the rotation so the next wake starts from the oldest.
|
|
936
926
|
if (page.length < HELD_REPORT_RELEASE_LIMIT)
|
|
@@ -944,31 +934,21 @@ export class AssistantWorkItemsService extends Service {
|
|
|
944
934
|
break;
|
|
945
935
|
let release;
|
|
946
936
|
try {
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
937
|
+
if (hold !== undefined)
|
|
938
|
+
release = this.workItemsHeldRelease(components, item);
|
|
939
|
+
else if (this.workItemsContinuationRequiresAcceptance(components, item)) {
|
|
940
|
+
release = { kind: 'blocked', reason: 'acceptance-disabled' };
|
|
950
941
|
}
|
|
951
|
-
catch (error) {
|
|
952
|
-
if (!this.workItemsWarnMalformedLateBinding(item.id, error)) {
|
|
953
|
-
this.ctx.logger.debug(`assistant-work-items: held report of ${item.id} cannot read its acceptance binding: ${describe(error)}`);
|
|
954
|
-
}
|
|
955
|
-
bound = true;
|
|
956
|
-
}
|
|
957
|
-
// No binding any more means the row was never actually held (the report
|
|
958
|
-
// committed before its pending delivery write, Delivery was missing,
|
|
959
|
-
// `notifyOn` excluded `ready`, or a re-arm lost the binding). Recovery
|
|
960
|
-
// sends the ordinary report instead of leaving it undelivered forever.
|
|
961
|
-
release = bound
|
|
962
|
-
? this.workItemsHeldRelease(components, item, report, now, hold.holdTimeoutMs)
|
|
963
|
-
: Object.freeze({ kind: 'plain' });
|
|
964
942
|
}
|
|
965
943
|
catch (error) {
|
|
966
|
-
// One poison row (a malformed binding or verdict event) must not abort
|
|
967
|
-
// the scan: warn and keep releasing the remaining rows.
|
|
968
944
|
if (!this.workItemsWarnMalformedLateBinding(item.id, error)) {
|
|
969
945
|
this.ctx.logger.warn(`assistant-work-items: held report of ${item.id} cannot be decided: ${describe(error)}`);
|
|
970
946
|
}
|
|
971
|
-
|
|
947
|
+
}
|
|
948
|
+
// A missing, stale or unreadable binding/verdict proves no achievement.
|
|
949
|
+
// The same deadline applies whether or not independent checking began.
|
|
950
|
+
if (release === undefined && hold !== undefined && now >= report.recordedAt + hold.holdTimeoutMs) {
|
|
951
|
+
release = { kind: 'unverified', timeoutMs: hold.holdTimeoutMs };
|
|
972
952
|
}
|
|
973
953
|
if (release === undefined)
|
|
974
954
|
continue;
|
|
@@ -983,23 +963,26 @@ export class AssistantWorkItemsService extends Service {
|
|
|
983
963
|
});
|
|
984
964
|
}
|
|
985
965
|
}
|
|
986
|
-
/**
|
|
987
|
-
workItemsHeldRelease(components, item
|
|
988
|
-
|
|
989
|
-
|
|
966
|
+
/** Release only a verdict for this execution and its still-current contract. */
|
|
967
|
+
workItemsHeldRelease(components, item) {
|
|
968
|
+
const required = this.workItemsContinuationRequiresAcceptance(components, item);
|
|
969
|
+
if (item.state === 'blocked' && (!required || item.stateReason === 'acceptance-needs-attention')) {
|
|
970
|
+
// Needs-attention has no verdict. A persisted negative verdict for a
|
|
971
|
+
// required task must pass the same freshness checks as an achievement.
|
|
990
972
|
return { kind: 'blocked', reason: item.stateReason ?? 'acceptance-blocked' };
|
|
991
973
|
}
|
|
974
|
+
const binding = this.workItemsAcceptanceBinding(components, item);
|
|
975
|
+
if (binding === undefined || !storedBasisHolds(item))
|
|
976
|
+
return undefined;
|
|
992
977
|
const verdict = components.store.acceptanceVerdict(item.id);
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
if (
|
|
997
|
-
return
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
// A released report is never held again; the owning revision records the send.
|
|
1002
|
-
return now >= report.recordedAt + timeoutMs ? { kind: 'unverified', timeoutMs } : undefined;
|
|
978
|
+
if (verdict === undefined || verdict.attempt !== item.attempt || verdict.occurrenceId !== item.occurrenceId
|
|
979
|
+
|| verdict.contractId !== binding.contractId || verdict.contractDigest !== binding.contractDigest)
|
|
980
|
+
return undefined;
|
|
981
|
+
if (required && !hasFreshAcceptanceReceipt(this.workItemsVerifier(), verdict))
|
|
982
|
+
return undefined;
|
|
983
|
+
return verdict.objectiveStatus === 'achieved'
|
|
984
|
+
? { kind: 'achieved' }
|
|
985
|
+
: { kind: 'blocked', reason: `acceptance-${verdict.objectiveStatus}` };
|
|
1003
986
|
}
|
|
1004
987
|
get enabled() {
|
|
1005
988
|
return this.workItemsConfig.enabled;
|
|
@@ -1261,6 +1244,9 @@ export class AssistantWorkItemsService extends Service {
|
|
|
1261
1244
|
}
|
|
1262
1245
|
if (binding === undefined)
|
|
1263
1246
|
fail('invalid-state', 'work item has no independent acceptance binding');
|
|
1247
|
+
if (this.workItemsConfig.acceptanceHoldReport !== undefined && item.attempt > 1
|
|
1248
|
+
&& !this.workItemsRetryContractMatches(item, binding))
|
|
1249
|
+
fail('invalid-state', 'acceptance contract is not for the current retry occurrence');
|
|
1264
1250
|
// The stored mandate must still be intact for this exact item; checked
|
|
1265
1251
|
// locally so a pull-based settle never writes Policy audit.
|
|
1266
1252
|
if (!storedBasisHolds(item))
|
|
@@ -1274,7 +1260,7 @@ export class AssistantWorkItemsService extends Service {
|
|
|
1274
1260
|
// item before the held report is replaced by the blocked one.
|
|
1275
1261
|
const gate = this.workItemsConfig.acceptanceVerdictGate === true || this.workItemsReportIsHeld(components, item)
|
|
1276
1262
|
? Object.freeze({ attempt: item.attempt, occurrenceId: item.occurrenceId }) : undefined;
|
|
1277
|
-
const result = settleAcceptance(components.store, this.workItemsVerifier(), item, binding, gate);
|
|
1263
|
+
const result = settleAcceptance(components.store, this.workItemsVerifier(), item, binding, gate, this.workItemsContinuationRequiresAcceptance(components, item));
|
|
1278
1264
|
// WP21 slice 7: the verifier's needs-attention writes no verdict, but with
|
|
1279
1265
|
// the gate on it still moves this executed generation to `blocked`.
|
|
1280
1266
|
if (gate !== undefined && result.outcome === 'needs-attention'
|
|
@@ -1342,13 +1328,51 @@ export class AssistantWorkItemsService extends Service {
|
|
|
1342
1328
|
if (sourceText !== undefined && !authenticatesIntakeText(sourceText, candidate.contentDigest)) {
|
|
1343
1329
|
fail('invalid-input', 'intake source text must be at most 65,536 UTF-16 units and match the content digest');
|
|
1344
1330
|
}
|
|
1331
|
+
// Producer extensions are validated before any ledger write; an over-limit
|
|
1332
|
+
// objective or malformed handle rejects the whole call instead of being
|
|
1333
|
+
// truncated or stripped.
|
|
1334
|
+
const objective = intakeObjectiveOf(input, sourceText);
|
|
1335
|
+
// The objective becomes the work-item brief; admission truncates to
|
|
1336
|
+
// admission.maxBriefBytes, so a longer objective is rejected here rather
|
|
1337
|
+
// than silently truncated later.
|
|
1338
|
+
if (objective !== undefined && Buffer.byteLength(objective.text, 'utf8') > Math.min(MAX_INTAKE_OBJECTIVE_BYTES, this.workItemsConfig.admission.maxBriefBytes)) {
|
|
1339
|
+
fail('invalid-input', 'intake objective exceeds the configured admission brief limit');
|
|
1340
|
+
}
|
|
1341
|
+
const acceptance = intakeAcceptanceOf(input);
|
|
1345
1342
|
const result = this.workItemsAvailable().store.recordIntake(candidate);
|
|
1343
|
+
this.rememberIntakeHint(result.record.source, result.record.sourceEventId, objective, acceptance);
|
|
1346
1344
|
// `sourceText` is the authenticated text the content digest covers; with
|
|
1347
1345
|
// evaluation off it is ignored, with it on it is held in memory only.
|
|
1348
1346
|
if (sourceText !== undefined)
|
|
1349
1347
|
this.workItemsIntakeEvaluation?.observe(result.record, sourceText);
|
|
1350
1348
|
return result;
|
|
1351
1349
|
}
|
|
1350
|
+
intakeHintKey(source, sourceEventId) {
|
|
1351
|
+
return `${source}\u0000${sourceEventId}`;
|
|
1352
|
+
}
|
|
1353
|
+
/**
|
|
1354
|
+
* Remember producer-supplied objective/acceptance for at most
|
|
1355
|
+
* `MAX_INTAKE_HINTS` candidates. The text is deliberately memory-only:
|
|
1356
|
+
* restart loses it and auto admission fails closed to observe, rather than
|
|
1357
|
+
* opening a new plaintext ledger for owner messages.
|
|
1358
|
+
*/
|
|
1359
|
+
rememberIntakeHint(source, sourceEventId, objective, acceptance) {
|
|
1360
|
+
if (objective === undefined && acceptance === undefined)
|
|
1361
|
+
return;
|
|
1362
|
+
const key = this.intakeHintKey(source, sourceEventId);
|
|
1363
|
+
const previous = this.workItemsIntakeHints.get(key);
|
|
1364
|
+
this.workItemsIntakeHints.delete(key);
|
|
1365
|
+
this.workItemsIntakeHints.set(key, Object.freeze({
|
|
1366
|
+
...(objective === undefined ? (previous?.objective === undefined ? {} : { objective: previous.objective }) : { objective }),
|
|
1367
|
+
...(acceptance === undefined ? (previous?.acceptance === undefined ? {} : { acceptance: previous.acceptance }) : { acceptance }),
|
|
1368
|
+
}));
|
|
1369
|
+
while (this.workItemsIntakeHints.size > AssistantWorkItemsService.MAX_INTAKE_HINTS) {
|
|
1370
|
+
const oldest = this.workItemsIntakeHints.keys().next().value;
|
|
1371
|
+
if (oldest === undefined)
|
|
1372
|
+
break;
|
|
1373
|
+
this.workItemsIntakeHints.delete(oldest);
|
|
1374
|
+
}
|
|
1375
|
+
}
|
|
1352
1376
|
/**
|
|
1353
1377
|
* Host-only: register the injectable WP20 inferred-evaluation supplier
|
|
1354
1378
|
* (Policy snapshot + model call). Requires `intakeLedger.evaluation`.
|
|
@@ -1532,18 +1556,7 @@ export class AssistantWorkItemsService extends Service {
|
|
|
1532
1556
|
try {
|
|
1533
1557
|
// A held report is simply not dispatched this pass: the same scheduler
|
|
1534
1558
|
// wake that settles the binding releases it in `workItemsReleaseHeldReports`.
|
|
1535
|
-
|
|
1536
|
-
try {
|
|
1537
|
-
held = this.workItemsHoldsReport(components, result.item, result.report);
|
|
1538
|
-
}
|
|
1539
|
-
catch (error) {
|
|
1540
|
-
// A malformed late binding fails closed: keep holding; the timeout
|
|
1541
|
-
// still releases it unverified rather than dropping the report.
|
|
1542
|
-
if (!this.workItemsWarnMalformedLateBinding(item.id, error)) {
|
|
1543
|
-
this.ctx.logger.debug(`assistant-work-items: report hold for ${item.id} cannot read its acceptance binding: ${describe(error)}`);
|
|
1544
|
-
}
|
|
1545
|
-
held = this.workItemsConfig.acceptanceHoldReport !== undefined && result.report.status === 'ready';
|
|
1546
|
-
}
|
|
1559
|
+
const held = this.workItemsHoldsReport(components, result.item, result.report);
|
|
1547
1560
|
notified = held ? false : await components.dispatch.notify(result.item, result.report);
|
|
1548
1561
|
}
|
|
1549
1562
|
catch (error) {
|