@victframework/runtime 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-governance.d.ts +285 -0
- package/dist/agent-governance.js +438 -0
- package/dist/agent-governance.js.map +1 -0
- package/dist/agent-registry.d.ts +103 -0
- package/dist/agent-registry.js +758 -0
- package/dist/agent-registry.js.map +1 -0
- package/dist/agent-types.d.ts +433 -0
- package/dist/agent-types.js +480 -0
- package/dist/agent-types.js.map +1 -0
- package/dist/authority.d.ts +83 -0
- package/dist/authority.js +170 -0
- package/dist/authority.js.map +1 -0
- package/dist/boundary-conformance.d.ts +51 -0
- package/dist/boundary-conformance.js +364 -0
- package/dist/boundary-conformance.js.map +1 -0
- package/dist/control-conformance.d.ts +68 -0
- package/dist/control-conformance.js +1131 -0
- package/dist/control-conformance.js.map +1 -0
- package/dist/control-in-memory.d.ts +257 -0
- package/dist/control-in-memory.js +886 -0
- package/dist/control-in-memory.js.map +1 -0
- package/dist/control-types.d.ts +1017 -0
- package/dist/control-types.js +779 -0
- package/dist/control-types.js.map +1 -0
- package/dist/durable-run.d.ts +73 -0
- package/dist/durable-run.js +262 -0
- package/dist/durable-run.js.map +1 -0
- package/dist/effect-policy.d.ts +22 -0
- package/dist/effect-policy.js +45 -0
- package/dist/effect-policy.js.map +1 -0
- package/dist/errors.d.ts +36 -0
- package/dist/errors.js +71 -0
- package/dist/errors.js.map +1 -0
- package/dist/in-memory-stores.d.ts +16 -0
- package/dist/in-memory-stores.js +522 -0
- package/dist/in-memory-stores.js.map +1 -0
- package/dist/index.d.ts +41 -0
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -0
- package/dist/operator-config.d.ts +141 -0
- package/dist/operator-config.js +289 -0
- package/dist/operator-config.js.map +1 -0
- package/dist/orchestration-activation.d.ts +116 -0
- package/dist/orchestration-activation.js +223 -0
- package/dist/orchestration-activation.js.map +1 -0
- package/dist/orchestration-canary-conformance.d.ts +10 -0
- package/dist/orchestration-canary-conformance.js +726 -0
- package/dist/orchestration-canary-conformance.js.map +1 -0
- package/dist/orchestration-commands.d.ts +47 -0
- package/dist/orchestration-commands.js +538 -0
- package/dist/orchestration-commands.js.map +1 -0
- package/dist/orchestration-conformance.d.ts +59 -0
- package/dist/orchestration-conformance.js +594 -0
- package/dist/orchestration-conformance.js.map +1 -0
- package/dist/orchestration-driver-types.d.ts +163 -0
- package/dist/orchestration-driver-types.js +21 -0
- package/dist/orchestration-driver-types.js.map +1 -0
- package/dist/orchestration-driver.d.ts +48 -0
- package/dist/orchestration-driver.js +1030 -0
- package/dist/orchestration-driver.js.map +1 -0
- package/dist/orchestration-in-memory.d.ts +18 -0
- package/dist/orchestration-in-memory.js +1313 -0
- package/dist/orchestration-in-memory.js.map +1 -0
- package/dist/orchestration-join-conformance.d.ts +20 -0
- package/dist/orchestration-join-conformance.js +542 -0
- package/dist/orchestration-join-conformance.js.map +1 -0
- package/dist/orchestration-plan.d.ts +52 -0
- package/dist/orchestration-plan.js +265 -0
- package/dist/orchestration-plan.js.map +1 -0
- package/dist/orchestration-race-conformance.d.ts +35 -0
- package/dist/orchestration-race-conformance.js +1265 -0
- package/dist/orchestration-race-conformance.js.map +1 -0
- package/dist/orchestration-remediation-conformance.d.ts +54 -0
- package/dist/orchestration-remediation-conformance.js +632 -0
- package/dist/orchestration-remediation-conformance.js.map +1 -0
- package/dist/orchestration-store-types.d.ts +568 -0
- package/dist/orchestration-store-types.js +2 -0
- package/dist/orchestration-store-types.js.map +1 -0
- package/dist/pack-conformance.d.ts +59 -0
- package/dist/pack-conformance.js +222 -0
- package/dist/pack-conformance.js.map +1 -0
- package/dist/pack-install.d.ts +44 -0
- package/dist/pack-install.js +126 -0
- package/dist/pack-install.js.map +1 -0
- package/dist/registry.d.ts +107 -0
- package/dist/registry.js +481 -0
- package/dist/registry.js.map +1 -0
- package/dist/runtime.d.ts +158 -0
- package/dist/runtime.js +1341 -0
- package/dist/runtime.js.map +1 -0
- package/dist/serialization.d.ts +26 -0
- package/dist/serialization.js +162 -0
- package/dist/serialization.js.map +1 -0
- package/dist/store-conformance.d.ts +45 -0
- package/dist/store-conformance.js +876 -0
- package/dist/store-conformance.js.map +1 -0
- package/dist/store-errors.d.ts +49 -0
- package/dist/store-errors.js +48 -0
- package/dist/store-errors.js.map +1 -0
- package/dist/store-types.d.ts +331 -0
- package/dist/store-types.js +14 -0
- package/dist/store-types.js.map +1 -0
- package/dist/store-validation.d.ts +63 -0
- package/dist/store-validation.js +164 -0
- package/dist/store-validation.js.map +1 -0
- package/dist/stream-hub.d.ts +151 -0
- package/dist/stream-hub.js +402 -0
- package/dist/stream-hub.js.map +1 -0
- package/dist/testing.d.ts +25 -0
- package/dist/testing.js +19 -0
- package/dist/testing.js.map +1 -0
- package/dist/types.d.ts +221 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/package.json +45 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestration-remediation-conformance.js","sourceRoot":"","sources":["../src/orchestration-remediation-conformance.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,568 @@
|
|
|
1
|
+
import type { BranchResultRecord, DurableAttemptState, DurableTokenState, DurableWaitState, EffectClass, ExecutionMode, KernelEvent, OutputSummary, SignalReceiptRecord } from '@victframework/kernel';
|
|
2
|
+
import type { VictError } from '@victframework/contracts';
|
|
3
|
+
import type { PayloadRetention } from './types.js';
|
|
4
|
+
/**
|
|
5
|
+
* A safe event input: a kernel event without its dense sequence number.
|
|
6
|
+
* The store assigns sequence numbers inside the transition transaction and
|
|
7
|
+
* validates each event's identity columns against the run.
|
|
8
|
+
*/
|
|
9
|
+
export type OrchestrationEventInput = KernelEvent extends infer E ? E extends KernelEvent ? Omit<E, 'seq'> : never : never;
|
|
10
|
+
/**
|
|
11
|
+
* Stage 03 durable orchestration store port.
|
|
12
|
+
*
|
|
13
|
+
* Every command is an atomic semantic transition: state changes and their
|
|
14
|
+
* event batches commit together or not at all (DATA-003), guarded by
|
|
15
|
+
* optimistic revisions (expected run record revision, token revisions,
|
|
16
|
+
* wait revisions, attempt fences). Commands express semantic transitions —
|
|
17
|
+
* they never expose arbitrary row mutation.
|
|
18
|
+
*
|
|
19
|
+
* Both the in-memory adapter and the SQLite adapter implement this port and
|
|
20
|
+
* must pass the same conformance suite. Implementations must reject stale
|
|
21
|
+
* owners/fences/revisions with structured conflicts and must never let a
|
|
22
|
+
* stale completion mutate canonical run state.
|
|
23
|
+
*
|
|
24
|
+
* Checkpoint payloads, join branch-output payloads, and signal-command
|
|
25
|
+
* hashes are PRIVATE OPERATIONAL STATE: they exist only to continue active,
|
|
26
|
+
* waiting, or blocked work. They are never part of ordinary run records,
|
|
27
|
+
* events, list output, or trace diagnostics, and terminal cleanup
|
|
28
|
+
* removes/tombstones them.
|
|
29
|
+
*/
|
|
30
|
+
/** A ready token was not claimed (quiescent, cancelled, or already owned). */
|
|
31
|
+
export type ClaimRejection = 'quiescent' | 'cancelled' | 'terminal' | 'conflict';
|
|
32
|
+
/** Node knowledge the store needs to record attempt intent. Supplied by the runtime driver from the pinned activation plan. */
|
|
33
|
+
export interface NodeExecutionPlanEntry {
|
|
34
|
+
readonly capabilityId: string;
|
|
35
|
+
readonly effectClass: EffectClass;
|
|
36
|
+
/** Persisted deadline, when the node declares a timeout. */
|
|
37
|
+
readonly deadlineAt: number | null;
|
|
38
|
+
/** Stable idempotency key for the logical invocation, when applicable. */
|
|
39
|
+
readonly idempotencyKey: string | null;
|
|
40
|
+
}
|
|
41
|
+
/** Planning callbacks the store uses inside the claim transaction. */
|
|
42
|
+
export interface ClaimPlanner {
|
|
43
|
+
/** Deterministic logical-invocation identity for one token+node visit. */
|
|
44
|
+
readonly invocationIdFor: (token: DurableTokenState) => string;
|
|
45
|
+
/** Deterministic attempt id for the next attempt of an invocation. */
|
|
46
|
+
readonly attemptIdFor: (token: DurableTokenState, attemptNumber: number) => string;
|
|
47
|
+
/** Execution plan entry for the token's current node (capability/effect/timeout/idempotency). */
|
|
48
|
+
readonly planFor: (token: DurableTokenState) => NodeExecutionPlanEntry;
|
|
49
|
+
}
|
|
50
|
+
export interface ClaimReadyTokenCommand {
|
|
51
|
+
readonly runId: string;
|
|
52
|
+
/** Injected process/worker owner id. */
|
|
53
|
+
readonly ownerId: string;
|
|
54
|
+
/** Absolute lease expiry (epoch ms). */
|
|
55
|
+
readonly leaseExpiresAt: number;
|
|
56
|
+
readonly now: number;
|
|
57
|
+
readonly planner: ClaimPlanner;
|
|
58
|
+
}
|
|
59
|
+
export interface ClaimedAttempt {
|
|
60
|
+
readonly token: DurableTokenState;
|
|
61
|
+
readonly attempt: DurableAttemptState;
|
|
62
|
+
readonly invocationId: string;
|
|
63
|
+
/** Private operational checkpoint payload for the claimed node's input. */
|
|
64
|
+
readonly checkpoint: unknown;
|
|
65
|
+
readonly deadlineAt: number | null;
|
|
66
|
+
readonly idempotencyKey: string | null;
|
|
67
|
+
/** The run record revision AFTER the claim transaction committed. */
|
|
68
|
+
readonly runRecordRevision: number;
|
|
69
|
+
/** The next event sequence AFTER the claim transaction committed. */
|
|
70
|
+
readonly runNextEventSeq: number;
|
|
71
|
+
}
|
|
72
|
+
export type ClaimReadyTokenResult = {
|
|
73
|
+
readonly claimed: true;
|
|
74
|
+
readonly claim: ClaimedAttempt;
|
|
75
|
+
} | {
|
|
76
|
+
readonly claimed: false;
|
|
77
|
+
readonly reason: ClaimRejection;
|
|
78
|
+
};
|
|
79
|
+
/** The decision the kernel plan produced for one completed attempt. */
|
|
80
|
+
export type AttemptContinuation = {
|
|
81
|
+
readonly kind: 'none';
|
|
82
|
+
}
|
|
83
|
+
/** Move the token to the next node with a new checkpoint payload. */
|
|
84
|
+
| {
|
|
85
|
+
readonly kind: 'advance';
|
|
86
|
+
readonly toNodeId: string;
|
|
87
|
+
readonly payload: unknown;
|
|
88
|
+
}
|
|
89
|
+
/** Park the token behind a durable wait. */
|
|
90
|
+
| {
|
|
91
|
+
readonly kind: 'wait';
|
|
92
|
+
readonly wait: NewWaitCommand;
|
|
93
|
+
}
|
|
94
|
+
/** Create the bounded set of branch child tokens. */
|
|
95
|
+
| {
|
|
96
|
+
readonly kind: 'fork';
|
|
97
|
+
readonly joinId: string;
|
|
98
|
+
readonly children: readonly {
|
|
99
|
+
readonly branchKey: string;
|
|
100
|
+
readonly toNodeId: string;
|
|
101
|
+
readonly forkId: string;
|
|
102
|
+
readonly lineage: string;
|
|
103
|
+
readonly tokenId: string;
|
|
104
|
+
}[];
|
|
105
|
+
}
|
|
106
|
+
/** Record one branch arrival; the store fires the join exactly once when the final key arrives. */
|
|
107
|
+
| {
|
|
108
|
+
readonly kind: 'branchArrival';
|
|
109
|
+
readonly forkId: string;
|
|
110
|
+
readonly joinId: string;
|
|
111
|
+
readonly branchKey: string;
|
|
112
|
+
/** Applied by the store only when this arrival is the final one. */
|
|
113
|
+
readonly joinContinuation?: {
|
|
114
|
+
readonly tokenId: string;
|
|
115
|
+
readonly toNodeId: string;
|
|
116
|
+
readonly lineage: string;
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
/** One unhandled branch failure: cancel unfinished siblings and fail the run once. */
|
|
120
|
+
| {
|
|
121
|
+
readonly kind: 'branchFailure';
|
|
122
|
+
}
|
|
123
|
+
/** Schedule a durable retry timer for the same logical invocation. */
|
|
124
|
+
| {
|
|
125
|
+
readonly kind: 'retry';
|
|
126
|
+
readonly dueAt: number;
|
|
127
|
+
readonly retryOnCode: string;
|
|
128
|
+
readonly maxAttempts: number;
|
|
129
|
+
}
|
|
130
|
+
/** The token needs explicit operator resolution. */
|
|
131
|
+
| {
|
|
132
|
+
readonly kind: 'block';
|
|
133
|
+
readonly code: string;
|
|
134
|
+
readonly reason: string;
|
|
135
|
+
};
|
|
136
|
+
export interface NewWaitCommand {
|
|
137
|
+
readonly waitId: string;
|
|
138
|
+
readonly nodeId: string;
|
|
139
|
+
readonly kind: 'signal' | 'timer';
|
|
140
|
+
readonly signalName: string | null;
|
|
141
|
+
readonly contractId: string | null;
|
|
142
|
+
readonly contractRevision: string | null;
|
|
143
|
+
/** Absolute due time (timer waits). */
|
|
144
|
+
readonly dueAt: number | null;
|
|
145
|
+
/** Absolute timeout (timed signal waits). */
|
|
146
|
+
readonly timeoutAt: number | null;
|
|
147
|
+
}
|
|
148
|
+
export type AttemptOutcome = {
|
|
149
|
+
readonly kind: 'completed';
|
|
150
|
+
readonly outputSummary: OutputSummary;
|
|
151
|
+
} | {
|
|
152
|
+
readonly kind: 'failed';
|
|
153
|
+
readonly error: VictError;
|
|
154
|
+
} | {
|
|
155
|
+
readonly kind: 'timed_out';
|
|
156
|
+
} | {
|
|
157
|
+
readonly kind: 'cancelled';
|
|
158
|
+
} | {
|
|
159
|
+
readonly kind: 'outcome_unknown';
|
|
160
|
+
readonly error: VictError;
|
|
161
|
+
};
|
|
162
|
+
export interface CompleteAttemptCommand {
|
|
163
|
+
readonly runId: string;
|
|
164
|
+
readonly attemptId: string;
|
|
165
|
+
readonly ownerId: string;
|
|
166
|
+
/** Fencing token: the attempt fence observed at claim time. */
|
|
167
|
+
readonly expectedAttemptFence: number;
|
|
168
|
+
readonly now: number;
|
|
169
|
+
readonly outcome: AttemptOutcome;
|
|
170
|
+
readonly continuation: AttemptContinuation;
|
|
171
|
+
/**
|
|
172
|
+
* Ordered safe events. The store assigns the dense sequence numbers
|
|
173
|
+
* starting at the stored next sequence inside the transaction and
|
|
174
|
+
* validates each event's identity columns.
|
|
175
|
+
*/
|
|
176
|
+
readonly events: readonly OrchestrationEventInput[];
|
|
177
|
+
/** Run-state fields the transition applies (status, steps, terminal fields). */
|
|
178
|
+
readonly run: {
|
|
179
|
+
readonly status?: 'running' | 'waiting' | 'blocked' | 'completed' | 'failed' | 'cancelled';
|
|
180
|
+
readonly steps?: number;
|
|
181
|
+
readonly currentNodeId?: string | null;
|
|
182
|
+
readonly completedAt?: number | null;
|
|
183
|
+
readonly outputSummary?: OutputSummary;
|
|
184
|
+
readonly output?: unknown;
|
|
185
|
+
readonly error?: VictError;
|
|
186
|
+
};
|
|
187
|
+
/** New checkpoint payload for the claimed token (advance), omitted otherwise. */
|
|
188
|
+
readonly checkpoint?: {
|
|
189
|
+
readonly tokenId: string;
|
|
190
|
+
readonly payload: unknown;
|
|
191
|
+
} | null;
|
|
192
|
+
/** Child checkpoints to create (fork children), keyed by token id. */
|
|
193
|
+
readonly childCheckpoints?: readonly {
|
|
194
|
+
readonly tokenId: string;
|
|
195
|
+
readonly payload: unknown;
|
|
196
|
+
}[];
|
|
197
|
+
/** Checkpoint removals (branch arrival consumes the branch token's payload). */
|
|
198
|
+
readonly removeCheckpoints?: readonly string[];
|
|
199
|
+
/** Private operational output payload of the arriving branch (branchArrival continuations). */
|
|
200
|
+
readonly branchOutput?: unknown;
|
|
201
|
+
/** All declared branch keys of the fork (branchArrival continuations) — join membership reference. */
|
|
202
|
+
readonly declaredBranchKeys?: readonly string[];
|
|
203
|
+
}
|
|
204
|
+
export interface CompleteAttemptResult {
|
|
205
|
+
/** The attempt state after the transition. */
|
|
206
|
+
readonly attempt: DurableAttemptState;
|
|
207
|
+
readonly token: DurableTokenState | null;
|
|
208
|
+
/** Branch results recorded by this transition, when the continuation was a branch arrival. */
|
|
209
|
+
readonly branchResult: BranchResultRecord | null;
|
|
210
|
+
/** True when this transition fired the join (exactly once per fork). */
|
|
211
|
+
readonly joinFired: boolean;
|
|
212
|
+
/** Run record revision after the transition. */
|
|
213
|
+
readonly runRecordRevision: number;
|
|
214
|
+
/** Next event sequence after the transition. */
|
|
215
|
+
readonly runNextEventSeq: number;
|
|
216
|
+
}
|
|
217
|
+
export interface SignalWaitCommand {
|
|
218
|
+
readonly runId: string;
|
|
219
|
+
readonly waitId: string;
|
|
220
|
+
/** Caller-supplied non-empty idempotency key. */
|
|
221
|
+
readonly signalId: string;
|
|
222
|
+
/** Expected signal name (defense in depth). */
|
|
223
|
+
readonly signalName?: string;
|
|
224
|
+
/** Pre-validated signal payload. */
|
|
225
|
+
readonly payload: unknown;
|
|
226
|
+
/** Optimistic guard on the open wait. */
|
|
227
|
+
readonly expectedWaitRevision?: number;
|
|
228
|
+
/** Canonical command hash used for duplicate/conflict detection. */
|
|
229
|
+
readonly commandHash: string;
|
|
230
|
+
readonly now: number;
|
|
231
|
+
/** Ordered safe events (signal.received, run.resumed). */
|
|
232
|
+
readonly events: readonly OrchestrationEventInput[];
|
|
233
|
+
}
|
|
234
|
+
export type SignalDeliveryResult = {
|
|
235
|
+
readonly status: 'accepted';
|
|
236
|
+
readonly waitId: string;
|
|
237
|
+
readonly token: DurableTokenState;
|
|
238
|
+
readonly runRecordRevision: number;
|
|
239
|
+
readonly runNextEventSeq: number;
|
|
240
|
+
readonly waitRevision: number;
|
|
241
|
+
} | {
|
|
242
|
+
readonly status: 'duplicate';
|
|
243
|
+
readonly signalId: string;
|
|
244
|
+
readonly waitId: string;
|
|
245
|
+
} | {
|
|
246
|
+
readonly status: 'already_resolved';
|
|
247
|
+
readonly waitId: string;
|
|
248
|
+
} | {
|
|
249
|
+
readonly status: 'conflict';
|
|
250
|
+
readonly signalId: string;
|
|
251
|
+
};
|
|
252
|
+
export interface ResolveDueTimerCommand {
|
|
253
|
+
readonly runId: string;
|
|
254
|
+
readonly timerId: string;
|
|
255
|
+
readonly ownerId: string;
|
|
256
|
+
readonly expectedTimerFence: number;
|
|
257
|
+
readonly now: number;
|
|
258
|
+
readonly resolution: {
|
|
259
|
+
readonly kind: 'wake';
|
|
260
|
+
} | {
|
|
261
|
+
readonly kind: 'waitTimeout';
|
|
262
|
+
readonly toNodeId: string | null;
|
|
263
|
+
readonly payload: unknown;
|
|
264
|
+
} | {
|
|
265
|
+
readonly kind: 'retry';
|
|
266
|
+
} | {
|
|
267
|
+
readonly kind: 'cancel';
|
|
268
|
+
};
|
|
269
|
+
/** Ordered safe events (timer.fired, run.resumed, signal.routed, ...). */
|
|
270
|
+
readonly events: readonly OrchestrationEventInput[];
|
|
271
|
+
readonly run?: {
|
|
272
|
+
readonly status?: 'running' | 'waiting' | 'blocked' | 'completed' | 'failed' | 'cancelled';
|
|
273
|
+
readonly currentNodeId?: string | null;
|
|
274
|
+
readonly steps?: number;
|
|
275
|
+
};
|
|
276
|
+
readonly checkpoint?: {
|
|
277
|
+
readonly tokenId: string;
|
|
278
|
+
readonly payload: unknown;
|
|
279
|
+
} | null;
|
|
280
|
+
readonly outputSummary?: OutputSummary;
|
|
281
|
+
readonly output?: unknown;
|
|
282
|
+
readonly error?: VictError;
|
|
283
|
+
}
|
|
284
|
+
export interface ResolveDueTimerResult {
|
|
285
|
+
readonly runRecordRevision: number;
|
|
286
|
+
readonly runNextEventSeq: number;
|
|
287
|
+
readonly applied: boolean;
|
|
288
|
+
}
|
|
289
|
+
export interface DueTimerRecord {
|
|
290
|
+
readonly timerId: string;
|
|
291
|
+
readonly runId: string;
|
|
292
|
+
readonly kind: 'wait' | 'wait-timeout' | 'retry';
|
|
293
|
+
readonly waitId: string | null;
|
|
294
|
+
readonly attemptId: string | null;
|
|
295
|
+
readonly tokenId: string | null;
|
|
296
|
+
readonly dueAt: number;
|
|
297
|
+
readonly revision: number;
|
|
298
|
+
}
|
|
299
|
+
export interface ClaimDueTimersCommand {
|
|
300
|
+
readonly now: number;
|
|
301
|
+
readonly limit: number;
|
|
302
|
+
/** Restrict the pump to one run when provided. */
|
|
303
|
+
readonly runId?: string;
|
|
304
|
+
readonly ownerId: string;
|
|
305
|
+
/** Lease expiry for claimed timers (epoch ms). */
|
|
306
|
+
readonly leaseExpiresAt: number;
|
|
307
|
+
}
|
|
308
|
+
export interface ClaimDueTimersResult {
|
|
309
|
+
readonly timers: readonly DueTimerRecord[];
|
|
310
|
+
}
|
|
311
|
+
export interface TimerRecord {
|
|
312
|
+
readonly timerId: string;
|
|
313
|
+
readonly runId: string;
|
|
314
|
+
readonly kind: 'wait' | 'wait-timeout' | 'retry';
|
|
315
|
+
readonly waitId: string | null;
|
|
316
|
+
readonly attemptId: string | null;
|
|
317
|
+
readonly tokenId: string | null;
|
|
318
|
+
readonly dueAt: number;
|
|
319
|
+
readonly status: 'scheduled' | 'firing' | 'fired' | 'cancelled';
|
|
320
|
+
readonly ownerId: string | null;
|
|
321
|
+
readonly leaseExpiresAt: number | null;
|
|
322
|
+
readonly revision: number;
|
|
323
|
+
readonly createdAt: number;
|
|
324
|
+
}
|
|
325
|
+
export interface RequestCancellationCommand {
|
|
326
|
+
readonly runId: string;
|
|
327
|
+
/** Caller-supplied non-empty idempotency key. */
|
|
328
|
+
readonly requestId: string;
|
|
329
|
+
/** Stable reason code from the safe vocabulary. */
|
|
330
|
+
readonly reasonCode: string;
|
|
331
|
+
readonly commandHash: string;
|
|
332
|
+
readonly now: number;
|
|
333
|
+
/** Ordered safe events (run.cancel_requested, node.cancelled...). */
|
|
334
|
+
readonly events: readonly OrchestrationEventInput[];
|
|
335
|
+
/**
|
|
336
|
+
* The terminal run.cancelled event, appended atomically ONLY when the
|
|
337
|
+
* cancellation finalizes inside this transaction (no in-flight work).
|
|
338
|
+
*/
|
|
339
|
+
readonly terminalCancelEvent?: OrchestrationEventInput;
|
|
340
|
+
}
|
|
341
|
+
export type CancellationResult = {
|
|
342
|
+
readonly status: 'accepted' | 'duplicate';
|
|
343
|
+
readonly runId: string;
|
|
344
|
+
readonly runCancelledNow: boolean;
|
|
345
|
+
readonly runRecordRevision: number;
|
|
346
|
+
readonly runNextEventSeq: number;
|
|
347
|
+
} | {
|
|
348
|
+
readonly status: 'conflict';
|
|
349
|
+
readonly requestId: string;
|
|
350
|
+
} | {
|
|
351
|
+
readonly status: 'unknown_run';
|
|
352
|
+
readonly runId: string;
|
|
353
|
+
} | {
|
|
354
|
+
readonly status: 'already_terminal';
|
|
355
|
+
readonly runId: string;
|
|
356
|
+
readonly runStatus: string;
|
|
357
|
+
};
|
|
358
|
+
export interface ApplyCancellationCommand {
|
|
359
|
+
readonly runId: string;
|
|
360
|
+
readonly now: number;
|
|
361
|
+
readonly requestId: string;
|
|
362
|
+
readonly reasonCode: string;
|
|
363
|
+
/** Ordered safe events terminating the run. */
|
|
364
|
+
readonly events: readonly OrchestrationEventInput[];
|
|
365
|
+
readonly steps: number;
|
|
366
|
+
/** Cancel remaining checkpoint payloads. */
|
|
367
|
+
readonly removeCheckpoints: readonly string[];
|
|
368
|
+
}
|
|
369
|
+
export interface RecoverableClaim {
|
|
370
|
+
readonly runId: string;
|
|
371
|
+
readonly token: DurableTokenState;
|
|
372
|
+
readonly attempt: DurableAttemptState;
|
|
373
|
+
readonly leaseExpiresAt: number;
|
|
374
|
+
}
|
|
375
|
+
export interface RecoverAttemptCommand {
|
|
376
|
+
readonly runId: string;
|
|
377
|
+
readonly attemptId: string;
|
|
378
|
+
readonly expectedAttemptFence: number;
|
|
379
|
+
readonly now: number;
|
|
380
|
+
readonly action: {
|
|
381
|
+
readonly kind: 'reclaim';
|
|
382
|
+
} | {
|
|
383
|
+
readonly kind: 'block';
|
|
384
|
+
readonly code: string;
|
|
385
|
+
readonly reason: string;
|
|
386
|
+
};
|
|
387
|
+
/** Ordered safe events. */
|
|
388
|
+
readonly events: readonly OrchestrationEventInput[];
|
|
389
|
+
readonly run?: {
|
|
390
|
+
readonly status?: 'running' | 'waiting' | 'blocked' | 'completed' | 'failed' | 'cancelled';
|
|
391
|
+
readonly currentNodeId?: string | null;
|
|
392
|
+
readonly steps?: number;
|
|
393
|
+
readonly error?: VictError;
|
|
394
|
+
};
|
|
395
|
+
}
|
|
396
|
+
export interface RecoverOrchestrationCommand {
|
|
397
|
+
readonly now: number;
|
|
398
|
+
}
|
|
399
|
+
export interface RecoverOrchestrationResult {
|
|
400
|
+
/** Claims whose lease expired while their attempt was in flight. */
|
|
401
|
+
readonly recoverable: readonly RecoverableClaim[];
|
|
402
|
+
/** Runs parked in a quiescent nonterminal state (waiting/blocked). */
|
|
403
|
+
readonly quiescent: readonly {
|
|
404
|
+
readonly runId: string;
|
|
405
|
+
readonly status: string;
|
|
406
|
+
}[];
|
|
407
|
+
}
|
|
408
|
+
export interface ResolveBlockedCommand {
|
|
409
|
+
readonly runId: string;
|
|
410
|
+
/** Caller-supplied non-empty idempotency key. */
|
|
411
|
+
readonly resolutionId: string;
|
|
412
|
+
readonly action: 'retry' | 'confirm_applied' | 'fail' | 'cancel';
|
|
413
|
+
/** Validated output for confirm_applied (validated against the pinned output contract by the runtime before this command). */
|
|
414
|
+
readonly output?: unknown;
|
|
415
|
+
/** Approved safe failure code for the fail action. */
|
|
416
|
+
readonly failCode?: string;
|
|
417
|
+
readonly reasonCode: string;
|
|
418
|
+
readonly commandHash: string;
|
|
419
|
+
readonly expectedRunRevision: number;
|
|
420
|
+
readonly now: number;
|
|
421
|
+
/** Ordered safe events (operator.intervened plus resulting work events). */
|
|
422
|
+
readonly events: readonly OrchestrationEventInput[];
|
|
423
|
+
/** For confirm_applied: token advance target and payload (computed by the driver from the pinned plan). */
|
|
424
|
+
readonly continuation?: {
|
|
425
|
+
readonly kind: 'advance';
|
|
426
|
+
readonly toNodeId: string;
|
|
427
|
+
readonly payload: unknown;
|
|
428
|
+
} | {
|
|
429
|
+
readonly kind: 'complete';
|
|
430
|
+
readonly outputSummary: OutputSummary;
|
|
431
|
+
readonly output?: unknown;
|
|
432
|
+
} | {
|
|
433
|
+
readonly kind: 'none';
|
|
434
|
+
};
|
|
435
|
+
readonly checkpoint?: {
|
|
436
|
+
readonly tokenId: string;
|
|
437
|
+
readonly payload: unknown;
|
|
438
|
+
} | null;
|
|
439
|
+
}
|
|
440
|
+
export type ResolveBlockedResult = {
|
|
441
|
+
readonly status: 'accepted' | 'duplicate';
|
|
442
|
+
readonly runRecordRevision: number;
|
|
443
|
+
readonly runNextEventSeq: number;
|
|
444
|
+
readonly runStatus: string;
|
|
445
|
+
} | {
|
|
446
|
+
readonly status: 'conflict';
|
|
447
|
+
readonly resolutionId: string;
|
|
448
|
+
} | {
|
|
449
|
+
readonly status: 'stale_revision';
|
|
450
|
+
readonly runId: string;
|
|
451
|
+
readonly actualRunRevision: number;
|
|
452
|
+
} | {
|
|
453
|
+
readonly status: 'unknown_run';
|
|
454
|
+
} | {
|
|
455
|
+
readonly status: 'not_blocked';
|
|
456
|
+
readonly runId: string;
|
|
457
|
+
readonly runStatus: string;
|
|
458
|
+
} | {
|
|
459
|
+
readonly status: 'already_resolved';
|
|
460
|
+
readonly resolutionId: string;
|
|
461
|
+
};
|
|
462
|
+
export interface CreateOrchestrationRunCommand {
|
|
463
|
+
readonly runId: string;
|
|
464
|
+
readonly graphId: string;
|
|
465
|
+
readonly graphVersion: string;
|
|
466
|
+
readonly capabilitySetVersion: string;
|
|
467
|
+
readonly activationVersion: string;
|
|
468
|
+
readonly mode: ExecutionMode;
|
|
469
|
+
readonly retention: PayloadRetention;
|
|
470
|
+
readonly rootTokenId: string;
|
|
471
|
+
readonly entryNodeId: string;
|
|
472
|
+
/** Private operational checkpoint payload (validated run input). */
|
|
473
|
+
readonly checkpoint: unknown;
|
|
474
|
+
/** Initial ordered safe events (typically `run.started`). */
|
|
475
|
+
readonly events: readonly OrchestrationEventInput[];
|
|
476
|
+
readonly now: number;
|
|
477
|
+
}
|
|
478
|
+
export interface StoredOrchestrationRun {
|
|
479
|
+
readonly runId: string;
|
|
480
|
+
readonly graphId: string;
|
|
481
|
+
readonly graphVersion: string;
|
|
482
|
+
readonly capabilitySetVersion: string;
|
|
483
|
+
readonly activationVersion: string;
|
|
484
|
+
readonly status: 'running' | 'waiting' | 'blocked' | 'completed' | 'failed' | 'cancelled';
|
|
485
|
+
readonly mode: ExecutionMode;
|
|
486
|
+
readonly retention: PayloadRetention;
|
|
487
|
+
readonly steps: number;
|
|
488
|
+
readonly currentNodeId: string | null;
|
|
489
|
+
readonly recordRevision: number;
|
|
490
|
+
readonly cancellation: {
|
|
491
|
+
readonly requestId: string;
|
|
492
|
+
readonly reasonCode: string;
|
|
493
|
+
} | null;
|
|
494
|
+
/** Safe output summary (never a payload); present under summary/full retention. */
|
|
495
|
+
readonly outputSummary?: OutputSummary;
|
|
496
|
+
/** Complete validated output; present only under explicit full retention. */
|
|
497
|
+
readonly output?: unknown;
|
|
498
|
+
/** Sanitized structured terminal error. */
|
|
499
|
+
readonly error?: VictError;
|
|
500
|
+
readonly createdAt: number;
|
|
501
|
+
readonly updatedAt: number;
|
|
502
|
+
readonly completedAt: number | null;
|
|
503
|
+
}
|
|
504
|
+
export interface OrchestrationRunQuery {
|
|
505
|
+
readonly graphId?: string;
|
|
506
|
+
readonly activationVersion?: string;
|
|
507
|
+
readonly status?: StoredOrchestrationRun['status'];
|
|
508
|
+
readonly limit?: number;
|
|
509
|
+
}
|
|
510
|
+
/**
|
|
511
|
+
* Durable orchestration store for token/attempt/wait/timer semantics.
|
|
512
|
+
* In-memory and SQLite adapters implement the identical semantic commands.
|
|
513
|
+
*/
|
|
514
|
+
export interface OrchestrationStore {
|
|
515
|
+
createOrchestrationRun(command: CreateOrchestrationRunCommand): Promise<StoredOrchestrationRun>;
|
|
516
|
+
getOrchestrationRun(runId: string): Promise<StoredOrchestrationRun | undefined>;
|
|
517
|
+
listOrchestrationRuns(query?: OrchestrationRunQuery): Promise<readonly StoredOrchestrationRun[]>;
|
|
518
|
+
/** Private operational read model for the driver. */
|
|
519
|
+
getOrchestrationSnapshot(runId: string): Promise<OrchestrationSnapshotView | undefined>;
|
|
520
|
+
claimReadyToken(command: ClaimReadyTokenCommand): Promise<ClaimReadyTokenResult>;
|
|
521
|
+
completeAttempt(command: CompleteAttemptCommand): Promise<CompleteAttemptResult>;
|
|
522
|
+
signalWait(command: SignalWaitCommand): Promise<SignalDeliveryResult>;
|
|
523
|
+
claimDueTimers(command: ClaimDueTimersCommand): Promise<ClaimDueTimersResult>;
|
|
524
|
+
resolveDueTimer(command: ResolveDueTimerCommand): Promise<ResolveDueTimerResult>;
|
|
525
|
+
requestCancellation(command: RequestCancellationCommand): Promise<CancellationResult>;
|
|
526
|
+
applyCancellation(command: ApplyCancellationCommand): Promise<{
|
|
527
|
+
runRecordRevision: number;
|
|
528
|
+
runNextEventSeq: number;
|
|
529
|
+
}>;
|
|
530
|
+
findRecoverableClaims(command: RecoverOrchestrationCommand): Promise<readonly RecoverableClaim[]>;
|
|
531
|
+
recoverAttempt(command: RecoverAttemptCommand): Promise<{
|
|
532
|
+
runRecordRevision: number;
|
|
533
|
+
runNextEventSeq: number;
|
|
534
|
+
}>;
|
|
535
|
+
resolveBlocked(command: ResolveBlockedCommand): Promise<ResolveBlockedResult>;
|
|
536
|
+
/** Read open waits for a run (safe descriptors; never checkpoint payloads). */
|
|
537
|
+
listWaits(runId: string): Promise<readonly DurableWaitState[]>;
|
|
538
|
+
/** Read signal receipts for a run (safe identity metadata only). */
|
|
539
|
+
listSignalReceipts(runId: string): Promise<readonly SignalReceiptRecord[]>;
|
|
540
|
+
/** Read the run's ordered safe event ledger (all orchestration facts). */
|
|
541
|
+
listOrchestrationEvents(runId: string): Promise<readonly KernelEvent[]>;
|
|
542
|
+
}
|
|
543
|
+
/**
|
|
544
|
+
* Driver-facing snapshot of one orchestration run's durable state.
|
|
545
|
+
*
|
|
546
|
+
* NOTE: `branchOutputs` belongs to the private operational checkpoint
|
|
547
|
+
* boundary. It exists so a suspended fork/join can be continued after a
|
|
548
|
+
* process restart; it is never part of ordinary run records, events, list
|
|
549
|
+
* output, or trace diagnostics.
|
|
550
|
+
*/
|
|
551
|
+
export interface OrchestrationSnapshotView {
|
|
552
|
+
readonly run: StoredOrchestrationRun;
|
|
553
|
+
readonly tokens: readonly DurableTokenState[];
|
|
554
|
+
readonly attempts: readonly DurableAttemptState[];
|
|
555
|
+
readonly waits: readonly DurableWaitState[];
|
|
556
|
+
readonly timers: readonly TimerRecord[];
|
|
557
|
+
readonly branchResults: readonly BranchResultRecord[];
|
|
558
|
+
/** Private operational branch-output payloads keyed by fork then branch key. */
|
|
559
|
+
readonly branchOutputs: Readonly<Record<string, Readonly<Record<string, unknown>>>>;
|
|
560
|
+
readonly nextEventSeq: number;
|
|
561
|
+
}
|
|
562
|
+
/** Test-only fault injection surface for orchestration transitions. */
|
|
563
|
+
export interface OrchestrationFaultHooks {
|
|
564
|
+
/** Called after state is staged but before events are appended. */
|
|
565
|
+
afterStateStage?(operation: string): void;
|
|
566
|
+
/** Called after events are appended but before the transaction commits. */
|
|
567
|
+
beforeCommit?(operation: string): void;
|
|
568
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"orchestration-store-types.js","sourceRoot":"","sources":["../src/orchestration-store-types.ts"],"names":[],"mappings":""}
|