intentdna 1.9.0 → 1.9.3

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.
Files changed (131) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.md +227 -87
  4. package/dist/cli/commands/run-lifecycle.d.ts +61 -11
  5. package/dist/cli/commands/run-lifecycle.js +184 -50
  6. package/dist/cli/commands/run-observer.d.ts +15 -0
  7. package/dist/cli/commands/run-observer.js +210 -0
  8. package/dist/cli/commands/run.d.ts +16 -20
  9. package/dist/cli/commands/run.js +461 -659
  10. package/dist/cli/commands/sync.js +16 -12
  11. package/dist/cli/index.js +14 -5
  12. package/dist/compiler/compile.d.ts +1 -0
  13. package/dist/compiler/compile.js +1 -1
  14. package/dist/compiler/controller.d.ts +16 -0
  15. package/dist/compiler/controller.js +693 -0
  16. package/dist/compiler/input-resolver.d.ts +2 -0
  17. package/dist/compiler/input-resolver.js +22 -6
  18. package/dist/hooks/cli.d.ts +45 -0
  19. package/dist/hooks/cli.js +263 -31
  20. package/dist/hooks/host-event.d.ts +57 -0
  21. package/dist/hooks/host-event.js +187 -0
  22. package/dist/hooks/index.d.ts +1 -0
  23. package/dist/hooks/index.js +1 -0
  24. package/dist/hooks/protocol.d.ts +7 -0
  25. package/dist/hooks/schema.d.ts +1 -0
  26. package/dist/hooks/schema.js +89 -1
  27. package/dist/hooks/state.d.ts +23 -1
  28. package/dist/hooks/state.js +9 -0
  29. package/dist/index.d.ts +1 -0
  30. package/dist/index.js +1 -0
  31. package/dist/mcp/index.js +2 -0
  32. package/dist/mcp/tools-run.d.ts +4 -0
  33. package/dist/mcp/tools-run.js +419 -0
  34. package/dist/mcp/tools-state.d.ts +1 -1
  35. package/dist/mcp/tools-state.js +13 -241
  36. package/dist/runtime/artifact-store.d.ts +146 -0
  37. package/dist/runtime/artifact-store.js +1436 -0
  38. package/dist/runtime/canonical-attempt-outcome.d.ts +12 -0
  39. package/dist/runtime/canonical-attempt-outcome.js +195 -0
  40. package/dist/runtime/canonical-json.d.ts +10 -0
  41. package/dist/runtime/canonical-json.js +105 -0
  42. package/dist/runtime/canonical-run-application.d.ts +93 -0
  43. package/dist/runtime/canonical-run-application.js +229 -0
  44. package/dist/runtime/canonical-run-service.d.ts +454 -0
  45. package/dist/runtime/canonical-run-service.js +4760 -0
  46. package/dist/runtime/canonical-runtime-composition.d.ts +22 -0
  47. package/dist/runtime/canonical-runtime-composition.js +34 -0
  48. package/dist/runtime/canonical-runtime-projection.d.ts +3 -0
  49. package/dist/runtime/canonical-runtime-projection.js +4 -0
  50. package/dist/runtime/canonical-target-compiler.d.ts +46 -0
  51. package/dist/runtime/canonical-target-compiler.js +514 -0
  52. package/dist/runtime/claude-agent-identity.d.ts +2 -0
  53. package/dist/runtime/claude-agent-identity.js +21 -0
  54. package/dist/runtime/executable-run-plan.d.ts +328 -0
  55. package/dist/runtime/executable-run-plan.js +1485 -0
  56. package/dist/runtime/execution-authority.d.ts +83 -0
  57. package/dist/runtime/execution-authority.js +98 -0
  58. package/dist/runtime/handoff-resolver.js +4 -1
  59. package/dist/runtime/harness-pull-adapter.d.ts +146 -0
  60. package/dist/runtime/harness-pull-adapter.js +315 -0
  61. package/dist/runtime/index.d.ts +39 -14
  62. package/dist/runtime/index.js +29 -7
  63. package/dist/runtime/local-execution-authority.d.ts +194 -0
  64. package/dist/runtime/local-execution-authority.js +2897 -0
  65. package/dist/runtime/local-execution-reconciliation.d.ts +20 -0
  66. package/dist/runtime/local-execution-reconciliation.js +107 -0
  67. package/dist/runtime/local-execution-supervisor-script.d.ts +7 -0
  68. package/dist/runtime/local-execution-supervisor-script.js +793 -0
  69. package/dist/runtime/local-provider-sandbox.d.ts +42 -0
  70. package/dist/runtime/local-provider-sandbox.js +154 -0
  71. package/dist/runtime/local-verifier-execution.d.ts +24 -0
  72. package/dist/runtime/local-verifier-execution.js +290 -0
  73. package/dist/runtime/local-windows-execution-supervisor-script.d.ts +6 -0
  74. package/dist/runtime/local-windows-execution-supervisor-script.js +788 -0
  75. package/dist/runtime/plan-store.d.ts +30 -0
  76. package/dist/runtime/plan-store.js +231 -0
  77. package/dist/runtime/process-tree.d.ts +9 -0
  78. package/dist/runtime/process-tree.js +97 -24
  79. package/dist/runtime/providers/codex.js +2 -2
  80. package/dist/runtime/push-driver.d.ts +184 -0
  81. package/dist/runtime/push-driver.js +1002 -0
  82. package/dist/runtime/result-store.d.ts +34 -3
  83. package/dist/runtime/result-store.js +1073 -2
  84. package/dist/runtime/run-binding.d.ts +68 -0
  85. package/dist/runtime/run-binding.js +278 -0
  86. package/dist/runtime/run-contracts.d.ts +575 -0
  87. package/dist/runtime/run-contracts.js +58 -7
  88. package/dist/runtime/run-controller.d.ts +1 -6
  89. package/dist/runtime/run-controller.js +0 -41
  90. package/dist/runtime/run-store.d.ts +85 -7
  91. package/dist/runtime/run-store.js +2528 -186
  92. package/dist/runtime/skill-adapter.d.ts +18 -7
  93. package/dist/runtime/skill-adapter.js +100 -742
  94. package/dist/runtime/structured-output-validator.d.ts +44 -0
  95. package/dist/runtime/structured-output-validator.js +171 -0
  96. package/dist/runtime/verifier-command-binding.d.ts +22 -0
  97. package/dist/runtime/verifier-command-binding.js +162 -0
  98. package/dist/runtime/verifier.d.ts +46 -6
  99. package/dist/runtime/verifier.js +355 -53
  100. package/dist/runtime/windows-job-keeper.d.ts +47 -0
  101. package/dist/runtime/windows-job-keeper.js +231 -0
  102. package/dist/runtime/worker-executor.d.ts +17 -1
  103. package/dist/runtime/worker-executor.js +26 -5
  104. package/dist/runtime/workflow-plan-adapter.d.ts +19 -0
  105. package/dist/runtime/workflow-plan-adapter.js +502 -6
  106. package/dist/runtime/workflow-runtime-manifest.d.ts +1 -0
  107. package/dist/runtime/workflow-runtime-manifest.js +5 -0
  108. package/dist/runtime/workspace-isolation.d.ts +29 -2
  109. package/dist/runtime/workspace-isolation.js +488 -11
  110. package/dist/runtime/workspace-observation.d.ts +44 -0
  111. package/dist/runtime/workspace-observation.js +216 -0
  112. package/dist/schema/controller-registry.d.ts +0 -7
  113. package/dist/schema/controller-registry.js +0 -8
  114. package/dist/schema/types.d.ts +84 -10
  115. package/dist/schema/types.js +2 -0
  116. package/dist/schema/validate.js +151 -1
  117. package/dist/schema/validators/controllers.d.ts +1 -1
  118. package/dist/schema/validators/controllers.js +126 -41
  119. package/dist/schema/workflow-authoring-contract.js +2 -0
  120. package/dist/schema/yaml-parser.js +1 -1
  121. package/dist/templates/flutter-rewrite-new.dna.yaml +1 -0
  122. package/dist/templates/flutter-rewrite.dna.yaml +87 -60
  123. package/dist/templates/safe-refactoring.dna.yaml +1 -0
  124. package/native/windows-job-keeper/README.md +80 -0
  125. package/native/windows-job-keeper/bin/aarch64/intentdna-windows-job-keeper.exe +0 -0
  126. package/native/windows-job-keeper/bin/x86_64/intentdna-windows-job-keeper.exe +0 -0
  127. package/native/windows-job-keeper/keeper.c +979 -0
  128. package/native/windows-job-keeper/manifest.json +33 -0
  129. package/package.json +6 -2
  130. package/scripts/build-windows-job-keeper.mjs +172 -0
  131. package/scripts/verify-windows-job-keeper.mjs +184 -0
@@ -0,0 +1,454 @@
1
+ import { type ActivationId, type AttemptExecutor, type AttemptId, type CanonicalActivationRecord, type CanonicalAttemptClaim, type CanonicalAttemptOutcome, type CanonicalAttemptRecord, type CanonicalCommittedResult, type CanonicalEvidenceRef, type CanonicalResultDigest, type CanonicalResultOutput, type CanonicalVerifierEvidenceRef, type CanonicalVerifierExecutionReceipt, type CanonicalWorkspaceAllocation, type CanonicalWorkspacePlan, type ClaimToken, type HandoffBinding, type JsonValue, type RunId, type StepPacket, type WorkerSessionId } from "./run-contracts.js";
2
+ import type { DriverCapabilities, ExecutableRunPlanPayload, Sha256Digest, StoredExecutableRunPlan } from "./executable-run-plan.js";
3
+ import { type StoredRunBinding } from "./run-binding.js";
4
+ import { DurablePlanStore } from "./plan-store.js";
5
+ import { DurableRunStore, type CanonicalRunRecord, type CanonicalRunStoreSnapshot } from "./run-store.js";
6
+ import { ImmutableCanonicalResultStore } from "./result-store.js";
7
+ import { ArtifactStore, type ArtifactCaptureRef, type ArtifactKind } from "./artifact-store.js";
8
+ import { type VerifierCommandExecutionResult } from "./verifier.js";
9
+ import { type AttemptExecutionAuthorityPort } from "./execution-authority.js";
10
+ import { type StructuredOutputSchemaRegistry } from "./structured-output-validator.js";
11
+ export type CanonicalRunServiceErrorCode = "invalid_request" | "run_not_found" | "run_terminal" | "no_attempt_available" | "lease_not_found" | "lease_expired" | "stale_lease" | "attempt_state_conflict" | "submission_conflict" | "unsupported" | "verification_failed" | "observation_limit_exceeded" | "source_drift" | "workspace_conflict" | "concurrent_update";
12
+ export declare class CanonicalRunServiceError extends Error {
13
+ readonly code: CanonicalRunServiceErrorCode;
14
+ constructor(code: CanonicalRunServiceErrorCode, message: string, options?: ErrorOptions);
15
+ }
16
+ export interface CanonicalRunClock {
17
+ now(): Date;
18
+ }
19
+ export type CanonicalIdentityKind = "run" | "activation" | "attempt" | "claim" | "worker_session" | "result" | "event";
20
+ export interface CanonicalIdentityFactory {
21
+ create(kind: CanonicalIdentityKind, seed: string): string;
22
+ }
23
+ export type SubmittedAttemptOutput = {
24
+ readonly name: string;
25
+ readonly kind: "reference";
26
+ readonly artifact_kind: ArtifactKind;
27
+ readonly source_path: string;
28
+ } | {
29
+ readonly name: string;
30
+ readonly kind: "text";
31
+ readonly text: string;
32
+ } | {
33
+ readonly name: string;
34
+ readonly kind: "structured";
35
+ readonly value: JsonValue;
36
+ readonly schema_ref: string | null;
37
+ };
38
+ export interface AttemptExecutionSubmission {
39
+ readonly executor: AttemptExecutor;
40
+ readonly started_at: string;
41
+ readonly completed_at: string;
42
+ readonly outcome: CanonicalAttemptOutcome;
43
+ readonly outputs: readonly SubmittedAttemptOutput[];
44
+ readonly workspace: {
45
+ readonly root: string;
46
+ readonly workspace_id: string;
47
+ };
48
+ readonly stdout_reference?: CanonicalEvidenceRef | null;
49
+ readonly stderr_reference?: CanonicalEvidenceRef | null;
50
+ }
51
+ export interface CaptureAttemptOutputsRequest {
52
+ readonly run_id: RunId;
53
+ readonly activation_id: ActivationId;
54
+ readonly attempt_id: AttemptId;
55
+ readonly execution: AttemptExecutionSubmission;
56
+ }
57
+ export interface CapturedAttemptOutputs {
58
+ readonly outputs: readonly CanonicalResultOutput[];
59
+ readonly captures: readonly ArtifactCaptureRef[];
60
+ /** Re-read mutable sources and reject drift before ledger authority is granted. */
61
+ revalidate(): Promise<void>;
62
+ }
63
+ export interface CanonicalOutputCapturePort {
64
+ capture(request: CaptureAttemptOutputsRequest): Promise<CapturedAttemptOutputs>;
65
+ }
66
+ export interface CanonicalVerifierResult {
67
+ readonly verifier_id: string;
68
+ readonly passed: boolean;
69
+ readonly reason_code: string;
70
+ readonly evidence_refs?: readonly CanonicalVerifierEvidenceRef[];
71
+ readonly domain_value?: JsonValue;
72
+ }
73
+ export interface VerifyAttemptRequest {
74
+ readonly plan: StoredExecutableRunPlan;
75
+ readonly run: CanonicalRunRecord;
76
+ readonly activation: CanonicalActivationRecord;
77
+ readonly attempt: CanonicalAttemptRecord;
78
+ readonly execution: AttemptExecutionSubmission;
79
+ readonly workspace_allocation: CanonicalWorkspaceAllocation;
80
+ readonly captured_outputs: readonly CanonicalResultOutput[];
81
+ readonly handoff_bindings: readonly HandoffBinding[];
82
+ }
83
+ export interface CanonicalVerifierPort {
84
+ verify(request: VerifyAttemptRequest): Promise<readonly CanonicalVerifierResult[]>;
85
+ }
86
+ export interface CanonicalVerifierExecutionRequest {
87
+ readonly request_digest: CanonicalResultDigest;
88
+ readonly descriptor: {
89
+ readonly schema_version: "intentdna.verifier_execution_request.v1";
90
+ readonly plan_id: CanonicalResultDigest;
91
+ readonly verifier_id: string;
92
+ readonly verifier_definition_digest: CanonicalResultDigest;
93
+ readonly raw_command_digest: CanonicalResultDigest;
94
+ readonly cwd: CanonicalVerifierExecutionReceipt["cwd_identity"];
95
+ readonly supplied_environment: {
96
+ readonly binding_digest: CanonicalResultDigest;
97
+ readonly variable_names: readonly string[];
98
+ readonly inherit_parent: false;
99
+ readonly startup_files: false;
100
+ };
101
+ readonly shell: CanonicalVerifierExecutionReceipt["shell_policy"];
102
+ readonly timeout_ms: number;
103
+ readonly requested_at: string;
104
+ readonly network_mode: "deny_all" | "allow";
105
+ readonly expected_authority_descriptor_digest: CanonicalResultDigest;
106
+ };
107
+ readonly plan_id: CanonicalResultDigest;
108
+ readonly verifier_id: string;
109
+ readonly verifier_definition_digest: CanonicalResultDigest;
110
+ readonly resolved_command: string;
111
+ readonly resolved_command_digest: CanonicalResultDigest;
112
+ readonly cwd: string;
113
+ readonly cwd_identity: CanonicalVerifierExecutionReceipt["cwd_identity"];
114
+ readonly environment: Readonly<Record<string, string>>;
115
+ readonly environment_binding_digest: CanonicalResultDigest;
116
+ readonly timeout_ms: number;
117
+ readonly requested_at: string;
118
+ readonly network_policy: "deny_all" | "allow";
119
+ readonly inherit_parent_environment: false;
120
+ readonly load_startup_files: false;
121
+ }
122
+ export interface CanonicalVerifierExecutionAuthorityReceipt {
123
+ readonly authority_instance_id: string;
124
+ readonly request_digest: CanonicalResultDigest;
125
+ readonly authority_descriptor_digest: CanonicalResultDigest;
126
+ readonly launch_descriptor_digest: CanonicalResultDigest;
127
+ readonly process_tree_drained: true;
128
+ readonly network_enforced: boolean;
129
+ readonly enforcement_kind: "configured_adapter" | "not_required";
130
+ readonly enforcement_digest: CanonicalResultDigest | null;
131
+ readonly enforcement_descriptor: CanonicalVerifierExecutionReceipt["network_policy"]["enforcement_descriptor"];
132
+ }
133
+ export interface CanonicalVerifierExecutionAuthorityDescriptor {
134
+ readonly schema_version: "intentdna.verifier_execution_authority.v1";
135
+ readonly authority_instance_id: string;
136
+ readonly adapter_kind: string;
137
+ readonly adapter_version: string;
138
+ readonly configuration_digest: CanonicalResultDigest;
139
+ readonly process_tree_containment: boolean;
140
+ readonly network_policies: readonly ("deny_all" | "allow")[];
141
+ }
142
+ export interface CanonicalVerifierExecutionPort {
143
+ readonly authority_descriptor: CanonicalVerifierExecutionAuthorityDescriptor;
144
+ execute(request: CanonicalVerifierExecutionRequest): Promise<{
145
+ readonly execution: VerifierCommandExecutionResult;
146
+ readonly authority: CanonicalVerifierExecutionAuthorityReceipt;
147
+ }>;
148
+ }
149
+ export declare function canonicalVerifierEnvironment(supplied: Readonly<Record<string, string>>, platform?: NodeJS.Platform, hostEnvironment?: NodeJS.ProcessEnv): Readonly<Record<string, string>>;
150
+ export interface AllocateAttemptWorkspaceRequest {
151
+ readonly plan: StoredExecutableRunPlan;
152
+ readonly run: CanonicalRunRecord;
153
+ readonly activation: CanonicalActivationRecord;
154
+ readonly attempt: CanonicalAttemptRecord;
155
+ }
156
+ export interface CommittedWorkspaceAuthorityRequest {
157
+ readonly allocation: CanonicalWorkspaceAllocation;
158
+ readonly purpose: "prepare_inputs" | "finalize_result" | "reconcile_published_result";
159
+ readonly require_clean_worktree: boolean;
160
+ }
161
+ export interface WorkspaceMutationAuthority {
162
+ readonly workspace_id: string;
163
+ readonly workspace_allocation_digest: CanonicalResultDigest;
164
+ readonly authority_instance_id: string;
165
+ readonly fencing_epoch: number;
166
+ }
167
+ export interface AttemptWorkspaceAuthorityPort {
168
+ plan(request: AllocateAttemptWorkspaceRequest): Promise<CanonicalWorkspacePlan>;
169
+ ensureWithExclusiveAuthority<T>(plan: CanonicalWorkspacePlan, operation: (allocation: CanonicalWorkspaceAllocation) => Promise<T>): Promise<T>;
170
+ withExclusiveMutationAuthority<T>(request: CommittedWorkspaceAuthorityRequest, operation: (authority: WorkspaceMutationAuthority) => Promise<T>): Promise<T>;
171
+ }
172
+ export interface CanonicalRunServiceHooks {
173
+ after_output_capture?(request: CaptureAttemptOutputsRequest): Promise<void> | void;
174
+ after_verification?(request: VerifyAttemptRequest): Promise<void> | void;
175
+ after_result_publish?(result: CanonicalCommittedResult): Promise<void> | void;
176
+ }
177
+ export interface CanonicalRunServiceOptions {
178
+ readonly plan_store: DurablePlanStore;
179
+ readonly run_store: DurableRunStore;
180
+ readonly artifact_store: ArtifactStore;
181
+ readonly result_store: ImmutableCanonicalResultStore;
182
+ readonly clock?: CanonicalRunClock;
183
+ readonly identities?: CanonicalIdentityFactory;
184
+ readonly output_capture?: CanonicalOutputCapturePort;
185
+ readonly verifier?: CanonicalVerifierPort;
186
+ readonly verifier_execution_port?: CanonicalVerifierExecutionPort;
187
+ readonly workspace_authority?: AttemptWorkspaceAuthorityPort;
188
+ readonly execution_authority?: AttemptExecutionAuthorityPort;
189
+ readonly structured_output_schema_registry?: StructuredOutputSchemaRegistry;
190
+ readonly handoff_root_directory?: string;
191
+ readonly hooks?: CanonicalRunServiceHooks;
192
+ readonly lease_duration_ms?: number;
193
+ readonly default_execution_timeout_ms?: number;
194
+ readonly service_instance_id?: string;
195
+ }
196
+ export interface StartRunRequest {
197
+ readonly plan_payload: ExecutableRunPlanPayload;
198
+ readonly run_binding: StoredRunBinding;
199
+ readonly metadata?: JsonValue;
200
+ readonly run_id?: RunId;
201
+ }
202
+ export interface RunView {
203
+ readonly run: CanonicalRunRecord;
204
+ readonly plan: StoredExecutableRunPlan;
205
+ readonly activations: readonly CanonicalActivationRecord[];
206
+ readonly attempts: readonly CanonicalAttemptRecord[];
207
+ readonly claims: readonly PublicAttemptClaim[];
208
+ readonly results: CanonicalRunStoreSnapshot["result_refs"];
209
+ readonly record_version: number;
210
+ }
211
+ export interface RunAuditView extends RunView {
212
+ readonly events: CanonicalRunStoreSnapshot["events"];
213
+ readonly ledger: {
214
+ readonly created_at: string;
215
+ readonly updated_at: string;
216
+ readonly record_version: number;
217
+ };
218
+ }
219
+ export interface StartRunResponse {
220
+ readonly run_id: RunId;
221
+ readonly plan_id: Sha256Digest;
222
+ readonly view: RunView;
223
+ }
224
+ export interface AcquireAttemptRequest {
225
+ readonly run_id: RunId;
226
+ readonly driver_id: string;
227
+ readonly recover_running?: boolean;
228
+ }
229
+ export interface AttemptLease {
230
+ readonly run_id: RunId;
231
+ readonly step_id: string;
232
+ readonly activation_id: ActivationId;
233
+ readonly attempt_id: AttemptId;
234
+ readonly attempt_number: number;
235
+ readonly claim_token: ClaimToken;
236
+ readonly claim_epoch: number;
237
+ readonly owner_id: string;
238
+ readonly claim_expires_at: string;
239
+ readonly execution_deadline_at: string;
240
+ }
241
+ export interface AttemptRecovery {
242
+ readonly worker_session_id: WorkerSessionId;
243
+ readonly execution_claim_epoch: number;
244
+ }
245
+ export type PublicAttemptClaim = Omit<CanonicalAttemptClaim, "claim_token">;
246
+ export type AttemptLeaseView = Omit<AttemptLease, "claim_token">;
247
+ export type AcquireAttemptResponse = {
248
+ readonly kind: "attempt";
249
+ readonly lease: AttemptLease;
250
+ readonly recovery: AttemptRecovery | null;
251
+ } | {
252
+ readonly kind: "wait";
253
+ readonly reason_code: string;
254
+ readonly run: RunView;
255
+ } | {
256
+ readonly kind: "terminal";
257
+ readonly run: RunView;
258
+ };
259
+ export interface AttachAttemptRequest {
260
+ readonly lease_token: ClaimToken;
261
+ readonly owner_id: string;
262
+ readonly worker_identity: AttemptExecutor | string;
263
+ readonly capabilities: Partial<DriverCapabilities>;
264
+ }
265
+ export interface AttemptView {
266
+ readonly lease: AttemptLeaseView;
267
+ readonly attempt: CanonicalAttemptRecord;
268
+ readonly activation: CanonicalActivationRecord;
269
+ readonly packet: StepPacket | null;
270
+ }
271
+ export interface HeartbeatRequest {
272
+ readonly lease_token: ClaimToken;
273
+ readonly owner_id: string;
274
+ }
275
+ export interface LeaseView extends AttemptLeaseView {
276
+ readonly heartbeat_at: string;
277
+ }
278
+ export interface SubmitAttemptRequest {
279
+ readonly lease_token: ClaimToken;
280
+ readonly owner_id: string;
281
+ readonly submission_key: string;
282
+ readonly execution: AttemptExecutionSubmission;
283
+ readonly evidence_refs?: readonly CanonicalEvidenceRef[];
284
+ }
285
+ export interface FailAttemptRequest {
286
+ readonly lease_token: ClaimToken;
287
+ readonly owner_id: string;
288
+ readonly submission_key: string;
289
+ readonly outcome: CanonicalAttemptOutcome;
290
+ readonly completed_at?: string;
291
+ readonly evidence_refs?: readonly CanonicalEvidenceRef[];
292
+ }
293
+ export interface SettleDriverFailureRequest {
294
+ readonly lease_token: ClaimToken;
295
+ readonly owner_id: string;
296
+ readonly failure_key: string;
297
+ readonly reason_code: string;
298
+ readonly message: string | null;
299
+ }
300
+ export interface SubmitResponse {
301
+ readonly result: CanonicalCommittedResult;
302
+ readonly replayed: boolean;
303
+ readonly run: RunView;
304
+ }
305
+ export interface CancelRunRequest {
306
+ readonly run_id: RunId;
307
+ readonly reason?: string | null;
308
+ }
309
+ export declare class LocalVerifierExecutionPort implements CanonicalVerifierExecutionPort {
310
+ private readonly clock;
311
+ readonly authority_descriptor: {
312
+ schema_version: "intentdna.verifier_execution_authority.v1";
313
+ authority_instance_id: string;
314
+ adapter_kind: string;
315
+ adapter_version: string;
316
+ configuration_digest: `sha256:${string}`;
317
+ process_tree_containment: boolean;
318
+ network_policies: readonly ["allow"];
319
+ };
320
+ constructor(clock: CanonicalRunClock, authorityInstanceId?: string);
321
+ execute(request: CanonicalVerifierExecutionRequest): Promise<{
322
+ execution: VerifierCommandExecutionResult;
323
+ authority: {
324
+ authority_instance_id: string;
325
+ request_digest: `sha256:${string}`;
326
+ authority_descriptor_digest: `sha256:${string}`;
327
+ launch_descriptor_digest: `sha256:${string}`;
328
+ process_tree_drained: true;
329
+ network_enforced: boolean;
330
+ enforcement_kind: "not_required";
331
+ enforcement_digest: null;
332
+ enforcement_descriptor: null;
333
+ };
334
+ }>;
335
+ }
336
+ export declare class CanonicalRunService {
337
+ private readonly planStore;
338
+ private readonly runStore;
339
+ private readonly resultStore;
340
+ private readonly artifactStore;
341
+ private readonly artifactMaterializer;
342
+ private readonly clock;
343
+ private readonly identities;
344
+ private readonly outputCapture;
345
+ private readonly verifier;
346
+ private readonly additionalVerifier;
347
+ private readonly verifierExecutionPort;
348
+ private readonly verifierAuthorityDescriptor;
349
+ private readonly verifierAuthorityDescriptorDigest;
350
+ private readonly workspaceAuthority;
351
+ private readonly executionAuthority;
352
+ private readonly handoffRootDirectory;
353
+ private readonly hooks;
354
+ private readonly leaseDurationMs;
355
+ private readonly defaultExecutionTimeoutMs;
356
+ private readonly serviceInstanceId;
357
+ private readonly structuredOutputSchemaRegistry;
358
+ constructor(options: CanonicalRunServiceOptions);
359
+ start(request: StartRunRequest): Promise<StartRunResponse>;
360
+ acquireAttempt(request: AcquireAttemptRequest): Promise<AcquireAttemptResponse>;
361
+ attachAttempt(request: AttachAttemptRequest): Promise<AttemptView>;
362
+ private attachWorkerAttempt;
363
+ heartbeat(request: HeartbeatRequest): Promise<LeaseView>;
364
+ submitAttempt(request: SubmitAttemptRequest): Promise<SubmitResponse>;
365
+ failAttempt(request: FailAttemptRequest): Promise<SubmitResponse>;
366
+ settleDriverFailure(request: SettleDriverFailureRequest): Promise<RunView>;
367
+ private assertDriverFailureReplay;
368
+ inspect(runId: RunId): Promise<RunView>;
369
+ inspectAudit(runId: RunId): Promise<RunAuditView>;
370
+ resume(runId: RunId): Promise<RunView>;
371
+ cancel(runIdOrRequest: RunId | CancelRunRequest, reason?: string | null): Promise<RunView>;
372
+ private systemInput;
373
+ private requireOriginResult;
374
+ private captureImportedOutput;
375
+ private validateSystemOutputs;
376
+ private currentRunResult;
377
+ private systemRequirementSatisfied;
378
+ private executeSystemOperation;
379
+ private beginSystemAttempt;
380
+ private attachSystemAttempt;
381
+ private reconcilePublishedSystemResult;
382
+ private completeSystemAttempt;
383
+ private drainReadySystemNodes;
384
+ private now;
385
+ private activationId;
386
+ private activationRoundId;
387
+ private requireSnapshot;
388
+ private requirePinnedPlan;
389
+ private toView;
390
+ private claimsFor;
391
+ private assertCurrentClaim;
392
+ private attemptRecovery;
393
+ private runningAttemptIsRecoverable;
394
+ private createClaim;
395
+ private toLease;
396
+ private toLeaseView;
397
+ private recoverExpiredAttempt;
398
+ private locateLease;
399
+ private assertRunAttachable;
400
+ private assertCapabilities;
401
+ private commandVerifiers;
402
+ private assertVerifierExecutionSupported;
403
+ private validateCommandVerifierReceipts;
404
+ private serviceVerifierIds;
405
+ private validateVerificationLanes;
406
+ private validateSubmittedOutputs;
407
+ private validateCallerAttestationIndependence;
408
+ private workspaceAllocation;
409
+ private workspacePlan;
410
+ private validateWorkspaceAllocation;
411
+ private requireCommittedWorkspace;
412
+ private planWorkspace;
413
+ private withWorkspaceAuthority;
414
+ private workspaceError;
415
+ private stopIntentFor;
416
+ private stopIdentity;
417
+ private persistStopIntents;
418
+ private prepareFailurePeerStops;
419
+ private prepareTerminalPeerStops;
420
+ private continueDurableStops;
421
+ private cancellationStopSpecifications;
422
+ private confirmDurableStop;
423
+ private confirmAlreadyDurableStop;
424
+ private confirmNeverLaunchedStop;
425
+ private aggregateDurableStops;
426
+ private requestWorkerStop;
427
+ private withStoppedExecution;
428
+ private materializePacket;
429
+ private verifierHandoffBindings;
430
+ private handoffResolutionEvents;
431
+ private findReplay;
432
+ private submissionEvidence;
433
+ private workerStopReceipt;
434
+ private outputsPreserveAuthority;
435
+ private revalidateWorkspaceObservations;
436
+ private reconcilePublishedResults;
437
+ private reconcilePublishedResult;
438
+ private loadDecisionOutputs;
439
+ private buildSubmissionUpdate;
440
+ private buildNonlaunchFailureUpdate;
441
+ private reduceAfterSuccess;
442
+ private latestActivationForStep;
443
+ private cancelConcurrentAttempts;
444
+ private reduceWithoutResult;
445
+ private terminalRun;
446
+ private retryDelay;
447
+ private retrySegmentDelay;
448
+ private jsonPointer;
449
+ private validateDecisionOutputs;
450
+ private activationEvent;
451
+ private runTerminalEvent;
452
+ private event;
453
+ private isVersionConflict;
454
+ }