@cohesivesystems/processes 0.1.0-alpha.129

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.
@@ -0,0 +1,1253 @@
1
+ /* <auto-generated/> */
2
+
3
+ import type { AggregateExpr, AggregateOperator, AnnotationKey, AnnotationValue, ArrayTypeRef, BinaryExpr, BinaryOperator, BindingExpr, CallExpr, CapabilityRealizationKind, ConditionalExpr, ConstantExpr, CurrentItemExpr, DiagnosticSeverity, DocumentDiagnosticEvidence, DocumentOrigin, DocumentValidationDiagnostic, EntityReferenceTypeRef, EntityTypeName, EnumTypeRef, Expr, FieldCardinality, FieldExpr, FieldNullability, FieldPath, FieldPathSegment, FieldPresence, FieldRefExpr, GraphId, JsonTypeKind, JsonTypeRef, LiteralExpr, NamedTypeRef, ObjectFieldTypeDef, ObjectTypeRef, OpaqueRuntimeTypeRef, ParameterExpr, PrimitiveFormat, QualifiedShapeId, QuantityTypeRef, ScalarTypeKind, ScalarTypeRef, SegmentKind, ShapeId, TypeId, TypeInferenceDiagnostic, TypeRef, UnaryExpr, UnaryOperator, ValueBindingId, ValueContract } from '@cohesivesystems/relations';
4
+
5
+ export type { AggregateExpr, AggregateOperator, AnnotationKey, AnnotationValue, ArrayTypeRef, BinaryExpr, BinaryOperator, BindingExpr, CallExpr, CapabilityRealizationKind, ConditionalExpr, ConstantExpr, CurrentItemExpr, DiagnosticSeverity, DocumentDiagnosticEvidence, DocumentOrigin, DocumentValidationDiagnostic, EntityReferenceTypeRef, EntityTypeName, EnumTypeRef, Expr, FieldCardinality, FieldExpr, FieldNullability, FieldPath, FieldPathSegment, FieldPresence, FieldRefExpr, GraphId, JsonTypeKind, JsonTypeRef, LiteralExpr, NamedTypeRef, ObjectFieldTypeDef, ObjectTypeRef, OpaqueRuntimeTypeRef, ParameterExpr, PrimitiveFormat, QualifiedShapeId, QuantityTypeRef, ScalarTypeKind, ScalarTypeRef, SegmentKind, ShapeId, TypeId, TypeInferenceDiagnostic, TypeRef, UnaryExpr, UnaryOperator, ValueBindingId, ValueContract };
6
+
7
+ export type ProcessControlDecisionDisposition = 'Unspecified' | 'Inspected' | 'Applied' | 'DeferredToSafePoint' | 'Replayed' | 'AlreadySatisfied' | 'AlreadyRequested' | 'SignalAccepted' | 'SignalBuffered' | 'SignalDuplicate' | 'ActivationStarted' | 'SafePointReached' | 'AffinityBound' | 'Unauthorized' | 'TargetMismatch' | 'StaleAttempt' | 'StaleRevision' | 'IdentityConflict' | 'IdempotencyConflict' | 'SignalConflict' | 'AffinityConflict' | 'InvalidState' | 'InvalidCommand' | 'CancellationFinalized';
8
+
9
+ export const processControlDecisionDispositions = {
10
+ unspecified: 'Unspecified',
11
+ inspected: 'Inspected',
12
+ applied: 'Applied',
13
+ deferredToSafePoint: 'DeferredToSafePoint',
14
+ replayed: 'Replayed',
15
+ alreadySatisfied: 'AlreadySatisfied',
16
+ alreadyRequested: 'AlreadyRequested',
17
+ signalAccepted: 'SignalAccepted',
18
+ signalBuffered: 'SignalBuffered',
19
+ signalDuplicate: 'SignalDuplicate',
20
+ activationStarted: 'ActivationStarted',
21
+ safePointReached: 'SafePointReached',
22
+ affinityBound: 'AffinityBound',
23
+ unauthorized: 'Unauthorized',
24
+ targetMismatch: 'TargetMismatch',
25
+ staleAttempt: 'StaleAttempt',
26
+ staleRevision: 'StaleRevision',
27
+ identityConflict: 'IdentityConflict',
28
+ idempotencyConflict: 'IdempotencyConflict',
29
+ signalConflict: 'SignalConflict',
30
+ affinityConflict: 'AffinityConflict',
31
+ invalidState: 'InvalidState',
32
+ invalidCommand: 'InvalidCommand',
33
+ cancellationFinalized: 'CancellationFinalized',
34
+ } as const satisfies Record<string, ProcessControlDecisionDisposition>;
35
+
36
+ export const processControlDecisionDispositionLabels: Record<ProcessControlDecisionDisposition, string> = {
37
+ Unspecified: 'Unspecified',
38
+ Inspected: 'Inspected',
39
+ Applied: 'Applied',
40
+ DeferredToSafePoint: 'DeferredToSafePoint',
41
+ Replayed: 'Replayed',
42
+ AlreadySatisfied: 'AlreadySatisfied',
43
+ AlreadyRequested: 'AlreadyRequested',
44
+ SignalAccepted: 'SignalAccepted',
45
+ SignalBuffered: 'SignalBuffered',
46
+ SignalDuplicate: 'SignalDuplicate',
47
+ ActivationStarted: 'ActivationStarted',
48
+ SafePointReached: 'SafePointReached',
49
+ AffinityBound: 'AffinityBound',
50
+ Unauthorized: 'Unauthorized',
51
+ TargetMismatch: 'TargetMismatch',
52
+ StaleAttempt: 'StaleAttempt',
53
+ StaleRevision: 'StaleRevision',
54
+ IdentityConflict: 'IdentityConflict',
55
+ IdempotencyConflict: 'IdempotencyConflict',
56
+ SignalConflict: 'SignalConflict',
57
+ AffinityConflict: 'AffinityConflict',
58
+ InvalidState: 'InvalidState',
59
+ InvalidCommand: 'InvalidCommand',
60
+ CancellationFinalized: 'CancellationFinalized',
61
+ };
62
+
63
+ export interface ExecutionControlReceiptSummary {
64
+ commandId: ProcessControlCommandId;
65
+ disposition: ProcessControlReceiptDisposition;
66
+ beforeRevision: ProcessControlRevision;
67
+ afterRevision: ProcessControlRevision;
68
+ recordedAtUtc: string;
69
+ }
70
+
71
+ export type ExecutionDefinitionKind = string;
72
+
73
+ export interface ExecutionDefinitionMetadata {
74
+ definitionId: ExecutionDefinitionId;
75
+ revisionId: ExecutionRevisionId;
76
+ schemaVersion: ExecutionIrSchemaVersion;
77
+ fingerprint: ExecutionDefinitionFingerprint;
78
+ provenance: ExecutionProvenance;
79
+ displayName?: string | null;
80
+ description?: string | null;
81
+ sourceMap: ExecutionSourceMap;
82
+ diagnostics: DocumentValidationDiagnostic[];
83
+ }
84
+
85
+ export interface ExecutionDefinitionExtension {
86
+ id: ExecutionExtensionId;
87
+ schemaVersion: ExecutionExtensionSchemaVersion;
88
+ value: PortableValue;
89
+ }
90
+
91
+ export type ExecutionIrSchemaVersion = string;
92
+
93
+ export interface ExecutionExplainDefinitionReference {
94
+ kind: ExecutionDefinitionKind;
95
+ schemaVersion: ExecutionIrSchemaVersion;
96
+ definition: ExecutionDefinitionReference;
97
+ provenance: ExecutionProvenance;
98
+ sourceMap: ExecutionSourceMap;
99
+ }
100
+
101
+ export interface ExecutionInterpreterProfileReference {
102
+ id: string;
103
+ version: string;
104
+ schemaCompatibility: ExecutionIrSchemaCompatibilityDeclaration;
105
+ definitionKinds: ExecutionDefinitionKind[];
106
+ provenance: ExecutionProvenance;
107
+ }
108
+
109
+ export interface ExecutionExplainEvidence {
110
+ stage: string;
111
+ kind: string;
112
+ subject: string;
113
+ authority: ExecutionExplainEvidenceAuthority;
114
+ status: string;
115
+ realization?: CapabilityRealizationKind | null;
116
+ relatedSubjects: string[];
117
+ sourceReferences: string[];
118
+ }
119
+
120
+ export interface ExecutionExplainTraceReference {
121
+ definition: ExecutionDefinitionReference;
122
+ continuation?: ProcessContinuationIdentity | null;
123
+ activation: ActivationId;
124
+ fingerprint: ExecutionTraceFingerprint;
125
+ }
126
+
127
+ export interface ExecutionExplainFingerprint {
128
+ algorithm: string;
129
+ canonicalization: string;
130
+ value: string;
131
+ }
132
+
133
+ export interface ExecutionDefinitionReference {
134
+ definitionId: ExecutionDefinitionId;
135
+ revisionId: ExecutionRevisionId;
136
+ fingerprint: ExecutionDefinitionFingerprint;
137
+ }
138
+
139
+ export type ProcessInstanceId = string;
140
+
141
+ export type ProcessControlRevision = string;
142
+
143
+ export type ProcessControlMode = 'Unspecified' | 'Running' | 'PauseRequested' | 'Paused' | 'RestartRequested' | 'CancellationRequested' | 'Cancelled' | 'Terminated' | 'Cancelling' | 'CancellationFailed';
144
+
145
+ export const processControlModes = {
146
+ unspecified: 'Unspecified',
147
+ running: 'Running',
148
+ pauseRequested: 'PauseRequested',
149
+ paused: 'Paused',
150
+ restartRequested: 'RestartRequested',
151
+ cancellationRequested: 'CancellationRequested',
152
+ cancelled: 'Cancelled',
153
+ terminated: 'Terminated',
154
+ cancelling: 'Cancelling',
155
+ cancellationFailed: 'CancellationFailed',
156
+ } as const satisfies Record<string, ProcessControlMode>;
157
+
158
+ export const processControlModeLabels: Record<ProcessControlMode, string> = {
159
+ Unspecified: 'Unspecified',
160
+ Running: 'Running',
161
+ PauseRequested: 'PauseRequested',
162
+ Paused: 'Paused',
163
+ RestartRequested: 'RestartRequested',
164
+ CancellationRequested: 'CancellationRequested',
165
+ Cancelled: 'Cancelled',
166
+ Terminated: 'Terminated',
167
+ Cancelling: 'Cancelling',
168
+ CancellationFailed: 'CancellationFailed',
169
+ };
170
+
171
+ export interface ExecutionAttemptStatus {
172
+ attemptId: ProcessAttemptId;
173
+ startedAtUtc: string;
174
+ endedAtUtc?: string | null;
175
+ disposition: ExecutionAttemptDisposition;
176
+ phase: ProcessControlExecutionPhase;
177
+ completedActivationCount: string;
178
+ lastSafePointId?: ProcessSafePointId | null;
179
+ lastSafePointNode?: ExecutionNodeId | null;
180
+ }
181
+
182
+ export type ProcessAttemptId = string;
183
+
184
+ export interface ExecutionActivationStatus {
185
+ activationId: ActivationId;
186
+ attemptId: ProcessAttemptId;
187
+ startedUnderRevision: ProcessControlRevision;
188
+ startedAtUtc: string;
189
+ }
190
+
191
+ export interface ExecutionRuntimeStatusDetails {
192
+ tokensDisclosure: ExecutionStatusDisclosure;
193
+ tokens: ExecutionTokenStatus[];
194
+ waitsDisclosure: ExecutionStatusDisclosure;
195
+ waits: ExecutionWaitStatus[];
196
+ progressDisclosure: ExecutionStatusDisclosure;
197
+ progress?: ExecutionProgressStatus | null;
198
+ demandDisclosure: ExecutionStatusDisclosure;
199
+ demand?: ExecutionDemandStatus | null;
200
+ capacityDisclosure: ExecutionStatusDisclosure;
201
+ capacity?: ExecutionCapacityStatus | null;
202
+ health: ExecutionHealthStatus;
203
+ extensions: ExecutionRuntimeStatusExtension[];
204
+ }
205
+
206
+ export interface ExecutionTerminalOutcome {
207
+ kind: ExecutionTerminalOutcomeKind;
208
+ occurredAtUtc?: string | null;
209
+ detail?: ExecutionStatusValue | null;
210
+ }
211
+
212
+ export type ExecutionNodeId = string;
213
+
214
+ export type ProcessNode = {
215
+ readonly $node: 'invokeTransition';
216
+ } & InvokeTransitionProcessNode | {
217
+ readonly $node: 'evaluateRelation';
218
+ } & EvaluateRelationProcessNode | {
219
+ readonly $node: 'request';
220
+ } & RequestProcessNode | {
221
+ readonly $node: 'emitEvent';
222
+ } & EmitEventProcessNode | {
223
+ readonly $node: 'sendSignal';
224
+ } & SendSignalProcessNode | {
225
+ readonly $node: 'choice';
226
+ } & ChoiceProcessNode | {
227
+ readonly $node: 'match';
228
+ } & MatchProcessNode | {
229
+ readonly $node: 'fork';
230
+ } & ForkProcessNode | {
231
+ readonly $node: 'join';
232
+ } & JoinProcessNode | {
233
+ readonly $node: 'awaitMatch';
234
+ } & AwaitMatchProcessNode | {
235
+ readonly $node: 'timer';
236
+ } & TimerProcessNode | {
237
+ readonly $node: 'reply';
238
+ } & ReplyProcessNode | {
239
+ readonly $node: 'durableCut';
240
+ } & DurableCutProcessNode | {
241
+ readonly $node: 'invokeProcess';
242
+ } & InvokeProcessProcessNode | {
243
+ readonly $node: 'forEachPartition';
244
+ } & ForEachPartitionProcessNode | {
245
+ readonly $node: 'repeatAcrossActivation';
246
+ } & RepeatAcrossActivationProcessNode | {
247
+ readonly $node: 'cancellationFinalizer';
248
+ } & CancellationFinalizerProcessNode | {
249
+ readonly $node: 'return';
250
+ } & ReturnProcessNode | {
251
+ readonly $node: 'fail';
252
+ } & FailProcessNode;
253
+
254
+ export const canonicalProcessNodeKinds = [
255
+ 'awaitMatch',
256
+ 'cancellationFinalizer',
257
+ 'choice',
258
+ 'durableCut',
259
+ 'emitEvent',
260
+ 'evaluateRelation',
261
+ 'fail',
262
+ 'forEachPartition',
263
+ 'fork',
264
+ 'invokeProcess',
265
+ 'invokeTransition',
266
+ 'join',
267
+ 'match',
268
+ 'repeatAcrossActivation',
269
+ 'reply',
270
+ 'request',
271
+ 'return',
272
+ 'sendSignal',
273
+ 'timer',
274
+ ] as const satisfies readonly ProcessNode["$node"][];
275
+
276
+ export interface InvokeTransitionProcessNode {
277
+ transition: ExecutionDefinitionReference;
278
+ subject: Expr;
279
+ input: Expr;
280
+ continuation: ProcessContinuation;
281
+ receipt?: ProcessOutputBinding | null;
282
+ id: ExecutionNodeId;
283
+ }
284
+
285
+ export interface EvaluateRelationProcessNode {
286
+ relation: ExecutionDefinitionReference;
287
+ input: Expr;
288
+ continuation: ProcessContinuation;
289
+ id: ExecutionNodeId;
290
+ }
291
+
292
+ export interface RequestProcessNode {
293
+ id: ExecutionNodeId;
294
+ contract: RequestContractReference;
295
+ payload: Expr;
296
+ outcomes: ProcessRequestOutcomeBranch[];
297
+ }
298
+
299
+ export interface EmitEventProcessNode {
300
+ contract: DomainEventContractReference;
301
+ payload: Expr;
302
+ next: ProcessEdge;
303
+ id: ExecutionNodeId;
304
+ }
305
+
306
+ export interface SendSignalProcessNode {
307
+ id: ExecutionNodeId;
308
+ contract: SignalContractReference;
309
+ target: Expr;
310
+ payload: Expr;
311
+ next: ProcessEdge;
312
+ }
313
+
314
+ export interface ChoiceProcessNode {
315
+ selection: CaseSelection;
316
+ completeness: BranchCompleteness;
317
+ cases: ProcessChoiceCase[];
318
+ fallback?: ProcessFallback | null;
319
+ id: ExecutionNodeId;
320
+ }
321
+
322
+ export interface MatchProcessNode {
323
+ selection: CaseSelection;
324
+ completeness: BranchCompleteness;
325
+ value: Expr;
326
+ contract: ValueContract;
327
+ cases: ProcessMatchCase[];
328
+ fallback?: ProcessFallback | null;
329
+ id: ExecutionNodeId;
330
+ }
331
+
332
+ export interface ForkProcessNode {
333
+ branches: ProcessForkBranch[];
334
+ join: ExecutionNodeId;
335
+ limits: ProcessWorkLimits;
336
+ capacityDomains: ProcessCapacityDomainLimit[];
337
+ id: ExecutionNodeId;
338
+ }
339
+
340
+ export interface JoinProcessNode {
341
+ fork: ExecutionNodeId;
342
+ policy: ProcessJoinPolicy;
343
+ next: ProcessEdge;
344
+ result?: ProcessJoinResultProjection | null;
345
+ id: ExecutionNodeId;
346
+ }
347
+
348
+ export interface AwaitMatchProcessNode {
349
+ arbitration: ProcessAwaitArbitration;
350
+ clauses: ProcessAwaitClause[];
351
+ lateInput: ProcessAwaitInputDisposition;
352
+ staleInput: ProcessAwaitInputDisposition;
353
+ duplicateInput: ProcessAwaitInputDisposition;
354
+ missingTarget: ProcessAwaitMissingTargetDisposition;
355
+ retentionHorizon: TimeSpan;
356
+ id: ExecutionNodeId;
357
+ }
358
+
359
+ export interface TimerProcessNode {
360
+ id: ExecutionNodeId;
361
+ dueAt: Expr;
362
+ next: ProcessEdge;
363
+ }
364
+
365
+ export interface ReplyProcessNode {
366
+ id: ExecutionNodeId;
367
+ contract: ReplyContractReference;
368
+ request: RequestObligationBindingId;
369
+ payload: Expr;
370
+ next: ProcessEdge;
371
+ }
372
+
373
+ export interface DurableCutProcessNode {
374
+ resume: ProcessEdge;
375
+ id: ExecutionNodeId;
376
+ }
377
+
378
+ export interface InvokeProcessProcessNode {
379
+ process: ExecutionDefinitionReference;
380
+ contract: RequestContractReference;
381
+ outcomeMapping: ProcessChildOutcomeMapping;
382
+ input: Expr;
383
+ purpose: ProcessChildPurpose;
384
+ cancellation: ProcessChildCancellationPolicy;
385
+ outcomes: ProcessRequestOutcomeBranch[];
386
+ id: ExecutionNodeId;
387
+ }
388
+
389
+ export interface ForEachPartitionProcessNode {
390
+ partitions: Expr;
391
+ partition: ProcessOutputBinding;
392
+ progressIdentity: Expr;
393
+ process: ExecutionDefinitionReference;
394
+ contract: RequestContractReference;
395
+ outcomeMapping: ProcessChildOutcomeMapping;
396
+ childInput: Expr;
397
+ limits: ProcessWorkLimits;
398
+ failure: ProcessPartitionFailurePolicy;
399
+ capacityIdentity?: Expr | null;
400
+ capacityDomains: ProcessCapacityDomainLimit[];
401
+ cancellation: ProcessChildCancellationPolicy;
402
+ completed: ProcessEdge;
403
+ failed: ProcessEdge;
404
+ id: ExecutionNodeId;
405
+ }
406
+
407
+ export interface RepeatAcrossActivationProcessNode {
408
+ id: ExecutionNodeId;
409
+ continueWhen: Expr;
410
+ progress: Expr;
411
+ progressContract: ValueContract;
412
+ policy: ProcessRecurrencePolicy;
413
+ repeat: ProcessEdge;
414
+ completed: ProcessEdge;
415
+ exhausted: ProcessEdge;
416
+ stalled: ProcessEdge;
417
+ initialState?: Expr | null;
418
+ nextState?: Expr | null;
419
+ stateContract?: ValueContract | null;
420
+ stateOutput?: ProcessOutputBinding | null;
421
+ }
422
+
423
+ export interface CancellationFinalizerProcessNode {
424
+ process: ExecutionDefinitionReference;
425
+ contract: RequestContractReference;
426
+ outcomeMapping: ProcessChildOutcomeMapping;
427
+ id: ExecutionNodeId;
428
+ }
429
+
430
+ export interface ReturnProcessNode {
431
+ id: ExecutionNodeId;
432
+ result: Expr;
433
+ }
434
+
435
+ export interface FailProcessNode {
436
+ result: Expr;
437
+ id: ExecutionNodeId;
438
+ }
439
+
440
+ export type ProcessRecoveryPolicy = 'Unspecified' | 'ContinueAttempt' | 'RestartAttempt';
441
+
442
+ export const processRecoveryPolicies = {
443
+ unspecified: 'Unspecified',
444
+ continueAttempt: 'ContinueAttempt',
445
+ restartAttempt: 'RestartAttempt',
446
+ } as const satisfies Record<string, ProcessRecoveryPolicy>;
447
+
448
+ export const processRecoveryPolicyLabels: Record<ProcessRecoveryPolicy, string> = {
449
+ Unspecified: 'Unspecified',
450
+ ContinueAttempt: 'ContinueAttempt',
451
+ RestartAttempt: 'RestartAttempt',
452
+ };
453
+
454
+ export interface NormalizedExecutionTrace {
455
+ schemaVersion: ExecutionIrSchemaVersion;
456
+ kind: ExecutionDefinitionKind;
457
+ definition: ExecutionDefinitionReference;
458
+ continuation?: ProcessContinuationIdentity | null;
459
+ activation: ActivationId;
460
+ disposition: string;
461
+ safePointNode?: ExecutionNodeId | null;
462
+ durableCommitSequence?: string | null;
463
+ events: NormalizedExecutionTraceEvent[];
464
+ }
465
+
466
+ export type ProcessControlCommandId = string;
467
+
468
+ export type ProcessControlReceiptDisposition = 'Unspecified' | 'Applied' | 'DeferredToSafePoint' | 'AlreadySatisfied' | 'AlreadyRequested' | 'SignalAccepted' | 'SignalBuffered' | 'SignalDuplicate';
469
+
470
+ export const processControlReceiptDispositions = {
471
+ unspecified: 'Unspecified',
472
+ applied: 'Applied',
473
+ deferredToSafePoint: 'DeferredToSafePoint',
474
+ alreadySatisfied: 'AlreadySatisfied',
475
+ alreadyRequested: 'AlreadyRequested',
476
+ signalAccepted: 'SignalAccepted',
477
+ signalBuffered: 'SignalBuffered',
478
+ signalDuplicate: 'SignalDuplicate',
479
+ } as const satisfies Record<string, ProcessControlReceiptDisposition>;
480
+
481
+ export const processControlReceiptDispositionLabels: Record<ProcessControlReceiptDisposition, string> = {
482
+ Unspecified: 'Unspecified',
483
+ Applied: 'Applied',
484
+ DeferredToSafePoint: 'DeferredToSafePoint',
485
+ AlreadySatisfied: 'AlreadySatisfied',
486
+ AlreadyRequested: 'AlreadyRequested',
487
+ SignalAccepted: 'SignalAccepted',
488
+ SignalBuffered: 'SignalBuffered',
489
+ SignalDuplicate: 'SignalDuplicate',
490
+ };
491
+
492
+ export type ExecutionDefinitionId = string;
493
+
494
+ export type ExecutionRevisionId = string;
495
+
496
+ export interface ExecutionDefinitionFingerprint {
497
+ algorithm: string;
498
+ canonicalization: string;
499
+ value: string;
500
+ }
501
+
502
+ export interface ExecutionProvenance {
503
+ producer: ExecutionProducerProvenance;
504
+ source: ExecutionSourceProvenance;
505
+ origin: DocumentOrigin;
506
+ }
507
+
508
+ export interface ExecutionSourceMap {
509
+ entries: ExecutionSourceProvenance[];
510
+ }
511
+
512
+ export type ExecutionExtensionId = string;
513
+
514
+ export type ExecutionExtensionSchemaVersion = string;
515
+
516
+ export interface PortableValue {
517
+ contract: ValueContract;
518
+ state: PortableValueState;
519
+ value?: unknown | null;
520
+ failure?: DocumentValidationDiagnostic | null;
521
+ }
522
+
523
+ export interface ExecutionIrSchemaCompatibilityDeclaration {
524
+ supportedSchemaVersions: ExecutionIrSchemaVersion[];
525
+ }
526
+
527
+ export type ExecutionExplainEvidenceAuthority = 'Declared' | 'Derived' | 'ConventionDerived' | 'AdapterSupplied' | 'Interpreted' | 'Measured' | 'Recommended' | 'Applied';
528
+
529
+ export const executionExplainEvidenceAuthorities = {
530
+ declared: 'Declared',
531
+ derived: 'Derived',
532
+ conventionDerived: 'ConventionDerived',
533
+ adapterSupplied: 'AdapterSupplied',
534
+ interpreted: 'Interpreted',
535
+ measured: 'Measured',
536
+ recommended: 'Recommended',
537
+ applied: 'Applied',
538
+ } as const satisfies Record<string, ExecutionExplainEvidenceAuthority>;
539
+
540
+ export const executionExplainEvidenceAuthorityLabels: Record<ExecutionExplainEvidenceAuthority, string> = {
541
+ Declared: 'Declared',
542
+ Derived: 'Derived',
543
+ ConventionDerived: 'ConventionDerived',
544
+ AdapterSupplied: 'AdapterSupplied',
545
+ Interpreted: 'Interpreted',
546
+ Measured: 'Measured',
547
+ Recommended: 'Recommended',
548
+ Applied: 'Applied',
549
+ };
550
+
551
+ export interface ProcessContinuationIdentity {
552
+ processInstanceId: ProcessInstanceId;
553
+ processAttemptId: ProcessAttemptId;
554
+ }
555
+
556
+ export type ActivationId = string;
557
+
558
+ export interface ExecutionTraceFingerprint {
559
+ algorithm: string;
560
+ canonicalization: string;
561
+ value: string;
562
+ }
563
+
564
+ export type ExecutionAttemptDisposition = 'Unspecified' | 'Current' | 'Abandoned' | 'Completed' | 'Failed' | 'Cancelled' | 'Terminated';
565
+
566
+ export const executionAttemptDispositions = {
567
+ unspecified: 'Unspecified',
568
+ current: 'Current',
569
+ abandoned: 'Abandoned',
570
+ completed: 'Completed',
571
+ failed: 'Failed',
572
+ cancelled: 'Cancelled',
573
+ terminated: 'Terminated',
574
+ } as const satisfies Record<string, ExecutionAttemptDisposition>;
575
+
576
+ export const executionAttemptDispositionLabels: Record<ExecutionAttemptDisposition, string> = {
577
+ Unspecified: 'Unspecified',
578
+ Current: 'Current',
579
+ Abandoned: 'Abandoned',
580
+ Completed: 'Completed',
581
+ Failed: 'Failed',
582
+ Cancelled: 'Cancelled',
583
+ Terminated: 'Terminated',
584
+ };
585
+
586
+ export type ProcessControlExecutionPhase = 'Unspecified' | 'Ready' | 'InActivation' | 'AtSafePoint' | 'Stopped';
587
+
588
+ export const processControlExecutionPhases = {
589
+ unspecified: 'Unspecified',
590
+ ready: 'Ready',
591
+ inActivation: 'InActivation',
592
+ atSafePoint: 'AtSafePoint',
593
+ stopped: 'Stopped',
594
+ } as const satisfies Record<string, ProcessControlExecutionPhase>;
595
+
596
+ export const processControlExecutionPhaseLabels: Record<ProcessControlExecutionPhase, string> = {
597
+ Unspecified: 'Unspecified',
598
+ Ready: 'Ready',
599
+ InActivation: 'InActivation',
600
+ AtSafePoint: 'AtSafePoint',
601
+ Stopped: 'Stopped',
602
+ };
603
+
604
+ export type ProcessSafePointId = string;
605
+
606
+ export type ExecutionStatusDisclosure = 'Unknown' | 'Disclosed' | 'Redacted';
607
+
608
+ export const executionStatusDisclosures = {
609
+ unknown: 'Unknown',
610
+ disclosed: 'Disclosed',
611
+ redacted: 'Redacted',
612
+ } as const satisfies Record<string, ExecutionStatusDisclosure>;
613
+
614
+ export const executionStatusDisclosureLabels: Record<ExecutionStatusDisclosure, string> = {
615
+ Unknown: 'Unknown',
616
+ Disclosed: 'Disclosed',
617
+ Redacted: 'Redacted',
618
+ };
619
+
620
+ export interface ExecutionTokenStatus {
621
+ tokenId: TokenId;
622
+ node: ExecutionNodeId;
623
+ disposition: ExecutionTokenDisposition;
624
+ }
625
+
626
+ export interface ExecutionWaitStatus {
627
+ tokenId: TokenId;
628
+ node: ExecutionNodeId;
629
+ waitingSinceUtc: string;
630
+ deadlineUtc?: string | null;
631
+ }
632
+
633
+ export interface ExecutionProgressStatus {
634
+ completed: string;
635
+ total?: string | null;
636
+ unit: string;
637
+ }
638
+
639
+ export interface ExecutionDemandStatus {
640
+ ready: string;
641
+ delayed: string;
642
+ }
643
+
644
+ export interface ExecutionCapacityStatus {
645
+ active: string;
646
+ limit: string;
647
+ }
648
+
649
+ export type ExecutionHealthStatus = 'Unknown' | 'Healthy' | 'Degraded' | 'Unhealthy';
650
+
651
+ export const executionHealthStatuses = {
652
+ unknown: 'Unknown',
653
+ healthy: 'Healthy',
654
+ degraded: 'Degraded',
655
+ unhealthy: 'Unhealthy',
656
+ } as const satisfies Record<string, ExecutionHealthStatus>;
657
+
658
+ export const executionHealthStatusLabels: Record<ExecutionHealthStatus, string> = {
659
+ Unknown: 'Unknown',
660
+ Healthy: 'Healthy',
661
+ Degraded: 'Degraded',
662
+ Unhealthy: 'Unhealthy',
663
+ };
664
+
665
+ export interface ExecutionRuntimeStatusExtension {
666
+ id: ExecutionExtensionId;
667
+ schemaVersion: ExecutionExtensionSchemaVersion;
668
+ value: ExecutionStatusValue;
669
+ provenance: ExecutionProvenance;
670
+ }
671
+
672
+ export type ExecutionTerminalOutcomeKind = 'None' | 'Completed' | 'Failed' | 'Cancelled' | 'Terminated';
673
+
674
+ export const executionTerminalOutcomeKinds = {
675
+ none: 'None',
676
+ completed: 'Completed',
677
+ failed: 'Failed',
678
+ cancelled: 'Cancelled',
679
+ terminated: 'Terminated',
680
+ } as const satisfies Record<string, ExecutionTerminalOutcomeKind>;
681
+
682
+ export const executionTerminalOutcomeKindLabels: Record<ExecutionTerminalOutcomeKind, string> = {
683
+ None: 'None',
684
+ Completed: 'Completed',
685
+ Failed: 'Failed',
686
+ Cancelled: 'Cancelled',
687
+ Terminated: 'Terminated',
688
+ };
689
+
690
+ export interface ExecutionStatusValue {
691
+ contract: ValueContract;
692
+ disclosure: ExecutionStatusDisclosure;
693
+ value?: PortableValue | null;
694
+ }
695
+
696
+ export interface ProcessContinuation {
697
+ edge: ProcessEdge;
698
+ output?: ProcessOutputBinding | null;
699
+ }
700
+
701
+ export interface ProcessOutputBinding {
702
+ binding: ValueBindingId;
703
+ contract: ValueContract;
704
+ }
705
+
706
+ export interface RequestContractReference {
707
+ definition: ExecutionDefinitionReference;
708
+ }
709
+
710
+ export interface ProcessRequestOutcomeBranch {
711
+ id: ExecutionNodeId;
712
+ outcome: RequestTerminalOutcomeId;
713
+ continuation: ProcessContinuation;
714
+ }
715
+
716
+ export interface DomainEventContractReference {
717
+ definition: ExecutionDefinitionReference;
718
+ }
719
+
720
+ export interface ProcessEdge {
721
+ id: ProcessEdgeId;
722
+ target: ExecutionNodeId;
723
+ }
724
+
725
+ export interface SignalContractReference {
726
+ definition: ExecutionDefinitionReference;
727
+ }
728
+
729
+ export type CaseSelection = 'Unspecified' | 'OrderedFirstMatch';
730
+
731
+ export const caseSelections = {
732
+ unspecified: 'Unspecified',
733
+ orderedFirstMatch: 'OrderedFirstMatch',
734
+ } as const satisfies Record<string, CaseSelection>;
735
+
736
+ export const caseSelectionLabels: Record<CaseSelection, string> = {
737
+ Unspecified: 'Unspecified',
738
+ OrderedFirstMatch: 'OrderedFirstMatch',
739
+ };
740
+
741
+ export type BranchCompleteness = 'Unspecified' | 'Exhaustive' | 'Fallback';
742
+
743
+ export const branchCompletenesses = {
744
+ unspecified: 'Unspecified',
745
+ exhaustive: 'Exhaustive',
746
+ fallback: 'Fallback',
747
+ } as const satisfies Record<string, BranchCompleteness>;
748
+
749
+ export const branchCompletenessLabels: Record<BranchCompleteness, string> = {
750
+ Unspecified: 'Unspecified',
751
+ Exhaustive: 'Exhaustive',
752
+ Fallback: 'Fallback',
753
+ };
754
+
755
+ export interface ProcessChoiceCase {
756
+ id: ExecutionNodeId;
757
+ predicate: Expr;
758
+ next: ProcessEdge;
759
+ }
760
+
761
+ export interface ProcessFallback {
762
+ id: ExecutionNodeId;
763
+ next: ProcessEdge;
764
+ }
765
+
766
+ export interface ProcessMatchCase {
767
+ id: ExecutionNodeId;
768
+ pattern: PortableValue;
769
+ next: ProcessEdge;
770
+ }
771
+
772
+ export interface ProcessForkBranch {
773
+ id: ExecutionNodeId;
774
+ start: ProcessEdge;
775
+ capacityDomain?: string | null;
776
+ }
777
+
778
+ export interface ProcessWorkLimits {
779
+ maximumItems: number;
780
+ maximumStartsPerActivation: number;
781
+ maximumParallelism: number;
782
+ minimumParallelism: number;
783
+ }
784
+
785
+ export interface ProcessCapacityDomainLimit {
786
+ identity: string;
787
+ maximumParallelism: number;
788
+ }
789
+
790
+ export interface ProcessJoinPolicy {
791
+ mode: ProcessJoinMode;
792
+ requiredCount: number;
793
+ failure: ProcessJoinFailurePolicy;
794
+ cancellation: ProcessJoinCancellationPolicy;
795
+ completionOrder: ProcessJoinCompletionOrder;
796
+ tieBreak: ProcessJoinTieBreak;
797
+ }
798
+
799
+ export interface ProcessJoinResultProjection {
800
+ output: ProcessOutputBinding;
801
+ resultContract: ValueContract;
802
+ branches: ProcessJoinBranchResult[];
803
+ }
804
+
805
+ export type ProcessAwaitArbitration = 'Unspecified' | 'ExclusivePriorityThenClauseId';
806
+
807
+ export const processAwaitArbitrations = {
808
+ unspecified: 'Unspecified',
809
+ exclusivePriorityThenClauseId: 'ExclusivePriorityThenClauseId',
810
+ } as const satisfies Record<string, ProcessAwaitArbitration>;
811
+
812
+ export const processAwaitArbitrationLabels: Record<ProcessAwaitArbitration, string> = {
813
+ Unspecified: 'Unspecified',
814
+ ExclusivePriorityThenClauseId: 'ExclusivePriorityThenClauseId',
815
+ };
816
+
817
+ export type ProcessAwaitClause = {
818
+ readonly $clause: 'interaction';
819
+ } & ProcessAwaitInteractionClause | {
820
+ readonly $clause: 'timer';
821
+ } & ProcessAwaitTimerClause;
822
+
823
+ export const canonicalProcessAwaitClauseKinds = [
824
+ 'interaction',
825
+ 'timer',
826
+ ] as const satisfies readonly ProcessAwaitClause["$clause"][];
827
+
828
+ export interface ProcessAwaitInteractionClause {
829
+ id: ExecutionNodeId;
830
+ priority: number;
831
+ continuation: ProcessContinuation;
832
+ contract: InteractionContractReference;
833
+ input: ProcessOutputBinding;
834
+ requestObligation?: ProcessRequestObligationBinding | null;
835
+ guard?: Expr | null;
836
+ }
837
+
838
+ export interface ProcessAwaitTimerClause {
839
+ id: ExecutionNodeId;
840
+ priority: number;
841
+ continuation: ProcessContinuation;
842
+ dueAt: Expr;
843
+ }
844
+
845
+ export type ProcessAwaitInputDisposition = 'Unspecified' | 'Reject' | 'Observe' | 'ReusePriorDisposition';
846
+
847
+ export const processAwaitInputDispositions = {
848
+ unspecified: 'Unspecified',
849
+ reject: 'Reject',
850
+ observe: 'Observe',
851
+ reusePriorDisposition: 'ReusePriorDisposition',
852
+ } as const satisfies Record<string, ProcessAwaitInputDisposition>;
853
+
854
+ export const processAwaitInputDispositionLabels: Record<ProcessAwaitInputDisposition, string> = {
855
+ Unspecified: 'Unspecified',
856
+ Reject: 'Reject',
857
+ Observe: 'Observe',
858
+ ReusePriorDisposition: 'ReusePriorDisposition',
859
+ };
860
+
861
+ export type ProcessAwaitMissingTargetDisposition = 'Unspecified' | 'Reject' | 'Observe' | 'DeadLetter';
862
+
863
+ export const processAwaitMissingTargetDispositions = {
864
+ unspecified: 'Unspecified',
865
+ reject: 'Reject',
866
+ observe: 'Observe',
867
+ deadLetter: 'DeadLetter',
868
+ } as const satisfies Record<string, ProcessAwaitMissingTargetDisposition>;
869
+
870
+ export const processAwaitMissingTargetDispositionLabels: Record<ProcessAwaitMissingTargetDisposition, string> = {
871
+ Unspecified: 'Unspecified',
872
+ Reject: 'Reject',
873
+ Observe: 'Observe',
874
+ DeadLetter: 'DeadLetter',
875
+ };
876
+
877
+ export interface TimeSpan {
878
+ ticks: number;
879
+ days: number;
880
+ hours: number;
881
+ milliseconds: number;
882
+ microseconds: number;
883
+ nanoseconds: number;
884
+ minutes: number;
885
+ seconds: number;
886
+ totalDays: number;
887
+ totalHours: number;
888
+ totalMilliseconds: number;
889
+ totalMicroseconds: number;
890
+ totalNanoseconds: number;
891
+ totalMinutes: number;
892
+ totalSeconds: number;
893
+ }
894
+
895
+ export interface ReplyContractReference {
896
+ definition: ExecutionDefinitionReference;
897
+ }
898
+
899
+ export type RequestObligationBindingId = string;
900
+
901
+ export interface ProcessChildOutcomeMapping {
902
+ completed: RequestTerminalOutcomeId;
903
+ failed: RequestTerminalOutcomeId;
904
+ cancelled: RequestTerminalOutcomeId;
905
+ terminated: RequestTerminalOutcomeId;
906
+ }
907
+
908
+ export type ProcessChildPurpose = 'Unspecified' | 'Work' | 'Compensation' | 'Reconciliation';
909
+
910
+ export const processChildPurposes = {
911
+ unspecified: 'Unspecified',
912
+ work: 'Work',
913
+ compensation: 'Compensation',
914
+ reconciliation: 'Reconciliation',
915
+ } as const satisfies Record<string, ProcessChildPurpose>;
916
+
917
+ export const processChildPurposeLabels: Record<ProcessChildPurpose, string> = {
918
+ Unspecified: 'Unspecified',
919
+ Work: 'Work',
920
+ Compensation: 'Compensation',
921
+ Reconciliation: 'Reconciliation',
922
+ };
923
+
924
+ export type ProcessChildCancellationPolicy = 'Unspecified' | 'Propagate' | 'Detach';
925
+
926
+ export const processChildCancellationPolicies = {
927
+ unspecified: 'Unspecified',
928
+ propagate: 'Propagate',
929
+ detach: 'Detach',
930
+ } as const satisfies Record<string, ProcessChildCancellationPolicy>;
931
+
932
+ export const processChildCancellationPolicyLabels: Record<ProcessChildCancellationPolicy, string> = {
933
+ Unspecified: 'Unspecified',
934
+ Propagate: 'Propagate',
935
+ Detach: 'Detach',
936
+ };
937
+
938
+ export type ProcessPartitionFailurePolicy = 'Unspecified' | 'FailFast' | 'AwaitAll';
939
+
940
+ export const processPartitionFailurePolicies = {
941
+ unspecified: 'Unspecified',
942
+ failFast: 'FailFast',
943
+ awaitAll: 'AwaitAll',
944
+ } as const satisfies Record<string, ProcessPartitionFailurePolicy>;
945
+
946
+ export const processPartitionFailurePolicyLabels: Record<ProcessPartitionFailurePolicy, string> = {
947
+ Unspecified: 'Unspecified',
948
+ FailFast: 'FailFast',
949
+ AwaitAll: 'AwaitAll',
950
+ };
951
+
952
+ export interface ProcessRecurrencePolicy {
953
+ maximumOccurrences: number;
954
+ maximumUnchangedProgressOccurrences: number;
955
+ }
956
+
957
+ export interface NormalizedExecutionTraceEvent {
958
+ sequence: number;
959
+ kind: string;
960
+ node: ExecutionNodeId;
961
+ token?: TokenId | null;
962
+ branchOrClause?: ExecutionNodeId | null;
963
+ emission?: EmissionId | null;
964
+ correlation?: InteractionCorrelationId | null;
965
+ causation?: EmissionId | null;
966
+ idempotencyKey?: InteractionIdempotencyKey | null;
967
+ emissionFingerprint?: InteractionEnvelopeContentFingerprint | null;
968
+ relatedDefinition?: ExecutionDefinitionReference | null;
969
+ relatedNode?: ExecutionNodeId | null;
970
+ semanticPath?: FieldPath | null;
971
+ changed?: boolean | null;
972
+ operationOccurrence?: string | null;
973
+ inputDisposition?: string | null;
974
+ inputReason?: string | null;
975
+ waitRegistrationId?: ProcessWaitRegistrationId | null;
976
+ processOccurrence?: ProcessTraceOccurrenceEvidence | null;
977
+ requestOutcome?: RequestTerminalOutcomeId | null;
978
+ detail?: string | null;
979
+ sourceReferences: string[];
980
+ }
981
+
982
+ export interface ExecutionProducerProvenance {
983
+ producer: string;
984
+ version?: string | null;
985
+ }
986
+
987
+ export interface ExecutionSourceProvenance {
988
+ reference: string;
989
+ semanticPath?: ExecutionSemanticPath | null;
990
+ description?: string | null;
991
+ }
992
+
993
+ export type PortableValueState = 'Missing' | 'Absent' | 'Null' | 'Unknown' | 'Failed' | 'Concrete';
994
+
995
+ export const portableValueStates = {
996
+ missing: 'Missing',
997
+ absent: 'Absent',
998
+ null: 'Null',
999
+ unknown: 'Unknown',
1000
+ failed: 'Failed',
1001
+ concrete: 'Concrete',
1002
+ } as const satisfies Record<string, PortableValueState>;
1003
+
1004
+ export const portableValueStateLabels: Record<PortableValueState, string> = {
1005
+ Missing: 'Missing',
1006
+ Absent: 'Absent',
1007
+ Null: 'Null',
1008
+ Unknown: 'Unknown',
1009
+ Failed: 'Failed',
1010
+ Concrete: 'Concrete',
1011
+ };
1012
+
1013
+ export type TokenId = string;
1014
+
1015
+ export type ExecutionTokenDisposition = 'Unspecified' | 'Ready' | 'Active' | 'Waiting' | 'Completed' | 'Failed' | 'Cancelled' | 'Pending';
1016
+
1017
+ export const executionTokenDispositions = {
1018
+ unspecified: 'Unspecified',
1019
+ ready: 'Ready',
1020
+ active: 'Active',
1021
+ waiting: 'Waiting',
1022
+ completed: 'Completed',
1023
+ failed: 'Failed',
1024
+ cancelled: 'Cancelled',
1025
+ pending: 'Pending',
1026
+ } as const satisfies Record<string, ExecutionTokenDisposition>;
1027
+
1028
+ export const executionTokenDispositionLabels: Record<ExecutionTokenDisposition, string> = {
1029
+ Unspecified: 'Unspecified',
1030
+ Ready: 'Ready',
1031
+ Active: 'Active',
1032
+ Waiting: 'Waiting',
1033
+ Completed: 'Completed',
1034
+ Failed: 'Failed',
1035
+ Cancelled: 'Cancelled',
1036
+ Pending: 'Pending',
1037
+ };
1038
+
1039
+ export type RequestTerminalOutcomeId = string;
1040
+
1041
+ export type ProcessEdgeId = string;
1042
+
1043
+ export type ProcessJoinMode = 'Unspecified' | 'All' | 'Any' | 'RequiredCount';
1044
+
1045
+ export const processJoinModes = {
1046
+ unspecified: 'Unspecified',
1047
+ all: 'All',
1048
+ any: 'Any',
1049
+ requiredCount: 'RequiredCount',
1050
+ } as const satisfies Record<string, ProcessJoinMode>;
1051
+
1052
+ export const processJoinModeLabels: Record<ProcessJoinMode, string> = {
1053
+ Unspecified: 'Unspecified',
1054
+ All: 'All',
1055
+ Any: 'Any',
1056
+ RequiredCount: 'RequiredCount',
1057
+ };
1058
+
1059
+ export type ProcessJoinFailurePolicy = 'Unspecified' | 'FailFast' | 'WaitForRequired' | 'ExcludeFailed';
1060
+
1061
+ export const processJoinFailurePolicies = {
1062
+ unspecified: 'Unspecified',
1063
+ failFast: 'FailFast',
1064
+ waitForRequired: 'WaitForRequired',
1065
+ excludeFailed: 'ExcludeFailed',
1066
+ } as const satisfies Record<string, ProcessJoinFailurePolicy>;
1067
+
1068
+ export const processJoinFailurePolicyLabels: Record<ProcessJoinFailurePolicy, string> = {
1069
+ Unspecified: 'Unspecified',
1070
+ FailFast: 'FailFast',
1071
+ WaitForRequired: 'WaitForRequired',
1072
+ ExcludeFailed: 'ExcludeFailed',
1073
+ };
1074
+
1075
+ export type ProcessJoinCancellationPolicy = 'Unspecified' | 'CancelRemaining' | 'AwaitRemaining' | 'ContinueRemaining';
1076
+
1077
+ export const processJoinCancellationPolicies = {
1078
+ unspecified: 'Unspecified',
1079
+ cancelRemaining: 'CancelRemaining',
1080
+ awaitRemaining: 'AwaitRemaining',
1081
+ continueRemaining: 'ContinueRemaining',
1082
+ } as const satisfies Record<string, ProcessJoinCancellationPolicy>;
1083
+
1084
+ export const processJoinCancellationPolicyLabels: Record<ProcessJoinCancellationPolicy, string> = {
1085
+ Unspecified: 'Unspecified',
1086
+ CancelRemaining: 'CancelRemaining',
1087
+ AwaitRemaining: 'AwaitRemaining',
1088
+ ContinueRemaining: 'ContinueRemaining',
1089
+ };
1090
+
1091
+ export type ProcessJoinCompletionOrder = 'Unspecified' | 'Unobservable' | 'Observable';
1092
+
1093
+ export const processJoinCompletionOrders = {
1094
+ unspecified: 'Unspecified',
1095
+ unobservable: 'Unobservable',
1096
+ observable: 'Observable',
1097
+ } as const satisfies Record<string, ProcessJoinCompletionOrder>;
1098
+
1099
+ export const processJoinCompletionOrderLabels: Record<ProcessJoinCompletionOrder, string> = {
1100
+ Unspecified: 'Unspecified',
1101
+ Unobservable: 'Unobservable',
1102
+ Observable: 'Observable',
1103
+ };
1104
+
1105
+ export type ProcessJoinTieBreak = 'Unspecified' | 'BranchIdentity' | 'CompletionThenBranchIdentity';
1106
+
1107
+ export const processJoinTieBreaks = {
1108
+ unspecified: 'Unspecified',
1109
+ branchIdentity: 'BranchIdentity',
1110
+ completionThenBranchIdentity: 'CompletionThenBranchIdentity',
1111
+ } as const satisfies Record<string, ProcessJoinTieBreak>;
1112
+
1113
+ export const processJoinTieBreakLabels: Record<ProcessJoinTieBreak, string> = {
1114
+ Unspecified: 'Unspecified',
1115
+ BranchIdentity: 'BranchIdentity',
1116
+ CompletionThenBranchIdentity: 'CompletionThenBranchIdentity',
1117
+ };
1118
+
1119
+ export interface ProcessJoinBranchResult {
1120
+ branch: ExecutionNodeId;
1121
+ result: Expr;
1122
+ }
1123
+
1124
+ export type InteractionContractReference = {
1125
+ readonly $contract: 'domainEvent';
1126
+ } & DomainEventContractReference | {
1127
+ readonly $contract: 'request';
1128
+ } & RequestContractReference | {
1129
+ readonly $contract: 'signal';
1130
+ } & SignalContractReference | {
1131
+ readonly $contract: 'reply';
1132
+ } & ReplyContractReference;
1133
+
1134
+ export interface ProcessRequestObligationBinding {
1135
+ binding: RequestObligationBindingId;
1136
+ }
1137
+
1138
+ export type EmissionId = string;
1139
+
1140
+ export type InteractionCorrelationId = string;
1141
+
1142
+ export type InteractionIdempotencyKey = string;
1143
+
1144
+ export type InteractionEnvelopeContentFingerprint = string;
1145
+
1146
+ export type ProcessWaitRegistrationId = string;
1147
+
1148
+ export interface ProcessTraceOccurrenceEvidence {
1149
+ disclosure: ExecutionTraceEvidenceDisclosure;
1150
+ kind: ProcessTraceOccurrenceKind;
1151
+ registrationId?: string | null;
1152
+ ownerToken?: TokenId | null;
1153
+ occurrence?: string | null;
1154
+ progressIdentity?: string | null;
1155
+ definition?: ExecutionDefinitionReference | null;
1156
+ continuation?: ProcessContinuationIdentity | null;
1157
+ repeatCount?: number | null;
1158
+ unchangedProgressCount?: number | null;
1159
+ }
1160
+
1161
+ export interface ExecutionSemanticPath {
1162
+ segments: string[];
1163
+ }
1164
+
1165
+ export type ExecutionTraceEvidenceDisclosure = 'Unknown' | 'Disclosed' | 'Redacted' | 'Unavailable' | 'Unsupported';
1166
+
1167
+ export const executionTraceEvidenceDisclosures = {
1168
+ unknown: 'Unknown',
1169
+ disclosed: 'Disclosed',
1170
+ redacted: 'Redacted',
1171
+ unavailable: 'Unavailable',
1172
+ unsupported: 'Unsupported',
1173
+ } as const satisfies Record<string, ExecutionTraceEvidenceDisclosure>;
1174
+
1175
+ export const executionTraceEvidenceDisclosureLabels: Record<ExecutionTraceEvidenceDisclosure, string> = {
1176
+ Unknown: 'Unknown',
1177
+ Disclosed: 'Disclosed',
1178
+ Redacted: 'Redacted',
1179
+ Unavailable: 'Unavailable',
1180
+ Unsupported: 'Unsupported',
1181
+ };
1182
+
1183
+ export type ProcessTraceOccurrenceKind = 'Unspecified' | 'Child' | 'Partition' | 'Recurrence';
1184
+
1185
+ export const processTraceOccurrenceKinds = {
1186
+ unspecified: 'Unspecified',
1187
+ child: 'Child',
1188
+ partition: 'Partition',
1189
+ recurrence: 'Recurrence',
1190
+ } as const satisfies Record<string, ProcessTraceOccurrenceKind>;
1191
+
1192
+ export const processTraceOccurrenceKindLabels: Record<ProcessTraceOccurrenceKind, string> = {
1193
+ Unspecified: 'Unspecified',
1194
+ Child: 'Child',
1195
+ Partition: 'Partition',
1196
+ Recurrence: 'Recurrence',
1197
+ };
1198
+
1199
+ export interface ExecutionControlResult {
1200
+ disposition: ProcessControlDecisionDisposition;
1201
+ status: ExecutionStatus;
1202
+ receipt?: ExecutionControlReceiptSummary | null;
1203
+ diagnosticCodes: string[];
1204
+ }
1205
+
1206
+ export interface ExecutionDefinitionDocument {
1207
+ kind: ExecutionDefinitionKind;
1208
+ metadata: ExecutionDefinitionMetadata;
1209
+ definition: unknown;
1210
+ extensions: ExecutionDefinitionExtension[];
1211
+ }
1212
+
1213
+ export interface ExecutionExplainArtifact {
1214
+ schemaVersion: ExecutionIrSchemaVersion;
1215
+ definition: ExecutionExplainDefinitionReference;
1216
+ interpreter: ExecutionInterpreterProfileReference;
1217
+ evidence: ExecutionExplainEvidence[];
1218
+ trace?: ExecutionExplainTraceReference | null;
1219
+ runtimeStatus?: ExecutionStatus | null;
1220
+ diagnostics: DocumentValidationDiagnostic[];
1221
+ fingerprint: ExecutionExplainFingerprint;
1222
+ }
1223
+
1224
+ export interface ExecutionStatus {
1225
+ schemaVersion: ExecutionIrSchemaVersion;
1226
+ definition: ExecutionDefinitionReference;
1227
+ processInstanceId: ProcessInstanceId;
1228
+ controlRevision: ProcessControlRevision;
1229
+ controlMode: ProcessControlMode;
1230
+ attempts: ExecutionAttemptStatus[];
1231
+ currentAttemptId: ProcessAttemptId;
1232
+ activeActivation?: ExecutionActivationStatus | null;
1233
+ runtime: ExecutionRuntimeStatusDetails;
1234
+ terminalOutcome: ExecutionTerminalOutcome;
1235
+ createdAtUtc: string;
1236
+ updatedAtUtc: string;
1237
+ }
1238
+
1239
+ export interface ProcessDefinition {
1240
+ input: ValueContract;
1241
+ result: ValueContract;
1242
+ entry: ExecutionNodeId;
1243
+ nodes: ProcessNode[];
1244
+ recoveryPolicy: ProcessRecoveryPolicy;
1245
+ }
1246
+
1247
+ export interface ProcessExecutionTraceArtifact {
1248
+ schemaVersion: ExecutionIrSchemaVersion;
1249
+ definition: ExecutionDefinitionReference;
1250
+ processInstanceId: ProcessInstanceId;
1251
+ missingTracePrefixCount: number;
1252
+ traces: NormalizedExecutionTrace[];
1253
+ }