@h-rig/contracts 0.0.6-alpha.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.
@@ -0,0 +1,1474 @@
1
+ // @bun
2
+ // packages/contracts/src/remote.ts
3
+ import { Schema as Schema7 } from "effect";
4
+
5
+ // packages/contracts/src/baseSchemas.ts
6
+ import { Schema } from "effect";
7
+ var TrimmedString = Schema.Trim;
8
+ var TrimmedNonEmptyString = TrimmedString.check(Schema.isNonEmpty());
9
+ var NonNegativeInt = Schema.Int.check(Schema.isGreaterThanOrEqualTo(0));
10
+ var PositiveInt = Schema.Int.check(Schema.isGreaterThanOrEqualTo(1));
11
+ var IsoDateTime = Schema.String;
12
+ var makeEntityId = (brand) => TrimmedNonEmptyString.pipe(Schema.brand(brand));
13
+ var ThreadId = makeEntityId("ThreadId");
14
+ var ProjectId = makeEntityId("ProjectId");
15
+ var WorkspaceId = makeEntityId("WorkspaceId");
16
+ var GraphId = makeEntityId("GraphId");
17
+ var TaskId = makeEntityId("TaskId");
18
+ var RunId = makeEntityId("RunId");
19
+ var EngineRuntimeId = makeEntityId("EngineRuntimeId");
20
+ var ConversationId = makeEntityId("ConversationId");
21
+ var ActionId = makeEntityId("ActionId");
22
+ var ArtifactId = makeEntityId("ArtifactId");
23
+ var WorktreeId = makeEntityId("WorktreeId");
24
+ var ValidationResultId = makeEntityId("ValidationResultId");
25
+ var ReviewResultId = makeEntityId("ReviewResultId");
26
+ var CommandId = makeEntityId("CommandId");
27
+ var EventId = makeEntityId("EventId");
28
+ var MessageId = makeEntityId("MessageId");
29
+ var TurnId = makeEntityId("TurnId");
30
+ var ProviderItemId = makeEntityId("ProviderItemId");
31
+ var RuntimeSessionId = makeEntityId("RuntimeSessionId");
32
+ var RuntimeItemId = makeEntityId("RuntimeItemId");
33
+ var RuntimeRequestId = makeEntityId("RuntimeRequestId");
34
+ var RuntimeTaskId = makeEntityId("RuntimeTaskId");
35
+ var ApprovalRequestId = makeEntityId("ApprovalRequestId");
36
+ var CheckpointRef = makeEntityId("CheckpointRef");
37
+ var RemoteEndpointId = makeEntityId("RemoteEndpointId");
38
+
39
+ // packages/contracts/src/conversation.ts
40
+ import { Schema as Schema2 } from "effect";
41
+ var EngineMessageRole = Schema2.Literals(["user", "assistant", "system"]);
42
+ var EngineMessageState = Schema2.Literals([
43
+ "streaming",
44
+ "completed",
45
+ "interrupted",
46
+ "errored"
47
+ ]);
48
+ var ConversationSummary = Schema2.Struct({
49
+ id: ConversationId,
50
+ runId: RunId,
51
+ title: TrimmedNonEmptyString,
52
+ createdAt: IsoDateTime,
53
+ updatedAt: IsoDateTime
54
+ });
55
+ var EngineMessage = Schema2.Struct({
56
+ id: MessageId,
57
+ conversationId: ConversationId,
58
+ role: EngineMessageRole,
59
+ text: Schema2.String,
60
+ attachments: Schema2.Array(Schema2.Unknown),
61
+ state: EngineMessageState,
62
+ createdAt: IsoDateTime,
63
+ completedAt: Schema2.NullOr(IsoDateTime)
64
+ });
65
+ var EngineAction = Schema2.Struct({
66
+ id: ActionId,
67
+ runId: RunId,
68
+ messageId: Schema2.NullOr(MessageId),
69
+ actionType: TrimmedNonEmptyString,
70
+ title: TrimmedNonEmptyString,
71
+ detail: Schema2.NullOr(Schema2.String),
72
+ state: TrimmedNonEmptyString,
73
+ payload: Schema2.Unknown,
74
+ startedAt: IsoDateTime,
75
+ completedAt: Schema2.NullOr(IsoDateTime)
76
+ });
77
+ var EngineLogTone = Schema2.Literals(["thinking", "tool", "info", "error"]);
78
+ var EngineRunLog = Schema2.Struct({
79
+ id: TrimmedNonEmptyString,
80
+ runId: RunId,
81
+ title: TrimmedNonEmptyString,
82
+ detail: Schema2.NullOr(Schema2.String),
83
+ tone: EngineLogTone,
84
+ status: Schema2.NullOr(TrimmedNonEmptyString),
85
+ payload: Schema2.Unknown,
86
+ createdAt: IsoDateTime
87
+ });
88
+
89
+ // packages/contracts/src/orchestration.ts
90
+ import { Option, Schema as Schema4, SchemaIssue, Struct } from "effect";
91
+
92
+ // packages/contracts/src/model.ts
93
+ import { Schema as Schema3 } from "effect";
94
+ var CODEX_REASONING_EFFORT_OPTIONS = ["xhigh", "high", "medium", "low"];
95
+ var CodexModelOptions = Schema3.Struct({
96
+ reasoningEffort: Schema3.optional(Schema3.Literals(CODEX_REASONING_EFFORT_OPTIONS)),
97
+ fastMode: Schema3.optional(Schema3.Boolean)
98
+ });
99
+ var ClaudeModelOptions = Schema3.Struct({});
100
+ var ProviderModelOptions = Schema3.Struct({
101
+ codex: Schema3.optional(CodexModelOptions),
102
+ claude: Schema3.optional(ClaudeModelOptions)
103
+ });
104
+
105
+ // packages/contracts/src/orchestration.ts
106
+ var ProviderKind = Schema4.Literals(["codex", "claude"]);
107
+ var ProviderApprovalPolicy = Schema4.Literals([
108
+ "untrusted",
109
+ "on-failure",
110
+ "on-request",
111
+ "never"
112
+ ]);
113
+ var ProviderSandboxMode = Schema4.Literals([
114
+ "read-only",
115
+ "workspace-write",
116
+ "danger-full-access"
117
+ ]);
118
+ var ProviderServiceTier = Schema4.Literals(["fast", "flex"]);
119
+ var RuntimeMode = Schema4.Literals(["approval-required", "full-access"]);
120
+ var DEFAULT_RUNTIME_MODE = "full-access";
121
+ var ProviderInteractionMode = Schema4.Literals(["default", "plan"]);
122
+ var DEFAULT_PROVIDER_INTERACTION_MODE = "default";
123
+ var ProviderRequestKind = Schema4.Literals(["command", "file-read", "file-change"]);
124
+ var AssistantDeliveryMode = Schema4.Literals(["buffered", "streaming"]);
125
+ var ProviderApprovalDecision = Schema4.Literals([
126
+ "accept",
127
+ "acceptForSession",
128
+ "decline",
129
+ "cancel"
130
+ ]);
131
+ var ProviderUserInputAnswers = Schema4.Record(Schema4.String, Schema4.Unknown);
132
+ var PROVIDER_SEND_TURN_MAX_IMAGE_BYTES = 10 * 1024 * 1024;
133
+ var PROVIDER_SEND_TURN_MAX_IMAGE_DATA_URL_CHARS = 14000000;
134
+ var CHAT_ATTACHMENT_ID_MAX_CHARS = 128;
135
+ var ChatAttachmentId = TrimmedNonEmptyString.check(Schema4.isMaxLength(CHAT_ATTACHMENT_ID_MAX_CHARS), Schema4.isPattern(/^[a-z0-9_-]+$/i));
136
+ var ChatImageAttachment = Schema4.Struct({
137
+ type: Schema4.Literal("image"),
138
+ id: ChatAttachmentId,
139
+ name: TrimmedNonEmptyString.check(Schema4.isMaxLength(255)),
140
+ mimeType: TrimmedNonEmptyString.check(Schema4.isMaxLength(100), Schema4.isPattern(/^image\//i)),
141
+ sizeBytes: NonNegativeInt.check(Schema4.isLessThanOrEqualTo(PROVIDER_SEND_TURN_MAX_IMAGE_BYTES))
142
+ });
143
+ var UploadChatImageAttachment = Schema4.Struct({
144
+ type: Schema4.Literal("image"),
145
+ name: TrimmedNonEmptyString.check(Schema4.isMaxLength(255)),
146
+ mimeType: TrimmedNonEmptyString.check(Schema4.isMaxLength(100), Schema4.isPattern(/^image\//i)),
147
+ sizeBytes: NonNegativeInt.check(Schema4.isLessThanOrEqualTo(PROVIDER_SEND_TURN_MAX_IMAGE_BYTES)),
148
+ dataUrl: TrimmedNonEmptyString.check(Schema4.isMaxLength(PROVIDER_SEND_TURN_MAX_IMAGE_DATA_URL_CHARS))
149
+ });
150
+ var ChatAttachment = Schema4.Union([ChatImageAttachment]);
151
+ var UploadChatAttachment = Schema4.Union([UploadChatImageAttachment]);
152
+ var ProjectScriptIcon = Schema4.Literals([
153
+ "play",
154
+ "test",
155
+ "lint",
156
+ "configure",
157
+ "build",
158
+ "debug"
159
+ ]);
160
+ var ProjectScript = Schema4.Struct({
161
+ id: TrimmedNonEmptyString,
162
+ name: TrimmedNonEmptyString,
163
+ command: TrimmedNonEmptyString,
164
+ icon: ProjectScriptIcon,
165
+ runOnWorktreeCreate: Schema4.Boolean
166
+ });
167
+ var OrchestrationProject = Schema4.Struct({
168
+ id: ProjectId,
169
+ title: TrimmedNonEmptyString,
170
+ workspaceRoot: TrimmedNonEmptyString,
171
+ defaultModel: Schema4.NullOr(TrimmedNonEmptyString),
172
+ scripts: Schema4.Array(ProjectScript),
173
+ createdAt: IsoDateTime,
174
+ updatedAt: IsoDateTime,
175
+ deletedAt: Schema4.NullOr(IsoDateTime)
176
+ });
177
+ var OrchestrationMessageRole = Schema4.Literals(["user", "assistant", "system"]);
178
+ var OrchestrationMessage = Schema4.Struct({
179
+ id: MessageId,
180
+ role: OrchestrationMessageRole,
181
+ text: Schema4.String,
182
+ attachments: Schema4.optional(Schema4.Array(ChatAttachment)),
183
+ turnId: Schema4.NullOr(TurnId),
184
+ streaming: Schema4.Boolean,
185
+ createdAt: IsoDateTime,
186
+ updatedAt: IsoDateTime
187
+ });
188
+ var OrchestrationProposedPlanId = TrimmedNonEmptyString;
189
+ var OrchestrationProposedPlan = Schema4.Struct({
190
+ id: OrchestrationProposedPlanId,
191
+ turnId: Schema4.NullOr(TurnId),
192
+ planMarkdown: TrimmedNonEmptyString,
193
+ createdAt: IsoDateTime,
194
+ updatedAt: IsoDateTime
195
+ });
196
+ var OrchestrationSessionStatus = Schema4.Literals([
197
+ "idle",
198
+ "starting",
199
+ "running",
200
+ "ready",
201
+ "interrupted",
202
+ "stopped",
203
+ "error"
204
+ ]);
205
+ var OrchestrationSession = Schema4.Struct({
206
+ threadId: ThreadId,
207
+ status: OrchestrationSessionStatus,
208
+ providerName: Schema4.NullOr(TrimmedNonEmptyString),
209
+ runtimeMode: RuntimeMode.pipe(Schema4.withDecodingDefault(() => DEFAULT_RUNTIME_MODE)),
210
+ activeTurnId: Schema4.NullOr(TurnId),
211
+ lastError: Schema4.NullOr(TrimmedNonEmptyString),
212
+ updatedAt: IsoDateTime
213
+ });
214
+ var OrchestrationCheckpointFile = Schema4.Struct({
215
+ path: TrimmedNonEmptyString,
216
+ kind: TrimmedNonEmptyString,
217
+ additions: NonNegativeInt,
218
+ deletions: NonNegativeInt
219
+ });
220
+ var OrchestrationCheckpointStatus = Schema4.Literals(["ready", "missing", "error"]);
221
+ var OrchestrationCheckpointSummary = Schema4.Struct({
222
+ turnId: TurnId,
223
+ checkpointTurnCount: NonNegativeInt,
224
+ checkpointRef: CheckpointRef,
225
+ status: OrchestrationCheckpointStatus,
226
+ files: Schema4.Array(OrchestrationCheckpointFile),
227
+ assistantMessageId: Schema4.NullOr(MessageId),
228
+ completedAt: IsoDateTime
229
+ });
230
+ var OrchestrationThreadActivityTone = Schema4.Literals([
231
+ "info",
232
+ "tool",
233
+ "approval",
234
+ "error"
235
+ ]);
236
+ var OrchestrationThreadActivity = Schema4.Struct({
237
+ id: EventId,
238
+ tone: OrchestrationThreadActivityTone,
239
+ kind: TrimmedNonEmptyString,
240
+ summary: TrimmedNonEmptyString,
241
+ payload: Schema4.Unknown,
242
+ turnId: Schema4.NullOr(TurnId),
243
+ sequence: Schema4.optional(NonNegativeInt),
244
+ createdAt: IsoDateTime
245
+ });
246
+ var OrchestrationLatestTurnState = Schema4.Literals([
247
+ "running",
248
+ "interrupted",
249
+ "completed",
250
+ "error"
251
+ ]);
252
+ var OrchestrationLatestTurn = Schema4.Struct({
253
+ turnId: TurnId,
254
+ state: OrchestrationLatestTurnState,
255
+ requestedAt: IsoDateTime,
256
+ startedAt: Schema4.NullOr(IsoDateTime),
257
+ completedAt: Schema4.NullOr(IsoDateTime),
258
+ assistantMessageId: Schema4.NullOr(MessageId)
259
+ });
260
+ var OrchestrationThread = Schema4.Struct({
261
+ id: ThreadId,
262
+ projectId: ProjectId,
263
+ title: TrimmedNonEmptyString,
264
+ model: TrimmedNonEmptyString,
265
+ runtimeMode: RuntimeMode,
266
+ interactionMode: ProviderInteractionMode.pipe(Schema4.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
267
+ branch: Schema4.NullOr(TrimmedNonEmptyString),
268
+ worktreePath: Schema4.NullOr(TrimmedNonEmptyString),
269
+ latestTurn: Schema4.NullOr(OrchestrationLatestTurn),
270
+ createdAt: IsoDateTime,
271
+ updatedAt: IsoDateTime,
272
+ deletedAt: Schema4.NullOr(IsoDateTime),
273
+ messages: Schema4.Array(OrchestrationMessage),
274
+ proposedPlans: Schema4.Array(OrchestrationProposedPlan).pipe(Schema4.withDecodingDefault(() => [])),
275
+ activities: Schema4.Array(OrchestrationThreadActivity),
276
+ checkpoints: Schema4.Array(OrchestrationCheckpointSummary),
277
+ session: Schema4.NullOr(OrchestrationSession)
278
+ });
279
+ var OrchestrationReadModel = Schema4.Struct({
280
+ snapshotSequence: NonNegativeInt,
281
+ projects: Schema4.Array(OrchestrationProject),
282
+ threads: Schema4.Array(OrchestrationThread),
283
+ updatedAt: IsoDateTime
284
+ });
285
+ var ProjectCreateCommand = Schema4.Struct({
286
+ type: Schema4.Literal("project.create"),
287
+ commandId: CommandId,
288
+ projectId: ProjectId,
289
+ title: TrimmedNonEmptyString,
290
+ workspaceRoot: TrimmedNonEmptyString,
291
+ defaultModel: Schema4.optional(TrimmedNonEmptyString),
292
+ createdAt: IsoDateTime
293
+ });
294
+ var ProjectMetaUpdateCommand = Schema4.Struct({
295
+ type: Schema4.Literal("project.meta.update"),
296
+ commandId: CommandId,
297
+ projectId: ProjectId,
298
+ title: Schema4.optional(TrimmedNonEmptyString),
299
+ workspaceRoot: Schema4.optional(TrimmedNonEmptyString),
300
+ defaultModel: Schema4.optional(TrimmedNonEmptyString),
301
+ scripts: Schema4.optional(Schema4.Array(ProjectScript))
302
+ });
303
+ var ProjectDeleteCommand = Schema4.Struct({
304
+ type: Schema4.Literal("project.delete"),
305
+ commandId: CommandId,
306
+ projectId: ProjectId
307
+ });
308
+ var ThreadCreateCommand = Schema4.Struct({
309
+ type: Schema4.Literal("thread.create"),
310
+ commandId: CommandId,
311
+ threadId: ThreadId,
312
+ projectId: ProjectId,
313
+ title: TrimmedNonEmptyString,
314
+ model: TrimmedNonEmptyString,
315
+ runtimeMode: RuntimeMode,
316
+ interactionMode: ProviderInteractionMode.pipe(Schema4.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
317
+ branch: Schema4.NullOr(TrimmedNonEmptyString),
318
+ worktreePath: Schema4.NullOr(TrimmedNonEmptyString),
319
+ createdAt: IsoDateTime
320
+ });
321
+ var ThreadDeleteCommand = Schema4.Struct({
322
+ type: Schema4.Literal("thread.delete"),
323
+ commandId: CommandId,
324
+ threadId: ThreadId
325
+ });
326
+ var ThreadMetaUpdateCommand = Schema4.Struct({
327
+ type: Schema4.Literal("thread.meta.update"),
328
+ commandId: CommandId,
329
+ threadId: ThreadId,
330
+ title: Schema4.optional(TrimmedNonEmptyString),
331
+ model: Schema4.optional(TrimmedNonEmptyString),
332
+ branch: Schema4.optional(Schema4.NullOr(TrimmedNonEmptyString)),
333
+ worktreePath: Schema4.optional(Schema4.NullOr(TrimmedNonEmptyString))
334
+ });
335
+ var ThreadRuntimeModeSetCommand = Schema4.Struct({
336
+ type: Schema4.Literal("thread.runtime-mode.set"),
337
+ commandId: CommandId,
338
+ threadId: ThreadId,
339
+ runtimeMode: RuntimeMode,
340
+ createdAt: IsoDateTime
341
+ });
342
+ var ThreadInteractionModeSetCommand = Schema4.Struct({
343
+ type: Schema4.Literal("thread.interaction-mode.set"),
344
+ commandId: CommandId,
345
+ threadId: ThreadId,
346
+ interactionMode: ProviderInteractionMode,
347
+ createdAt: IsoDateTime
348
+ });
349
+ var ThreadTurnStartCommand = Schema4.Struct({
350
+ type: Schema4.Literal("thread.turn.start"),
351
+ commandId: CommandId,
352
+ threadId: ThreadId,
353
+ message: Schema4.Struct({
354
+ messageId: MessageId,
355
+ role: Schema4.Literal("user"),
356
+ text: Schema4.String,
357
+ attachments: Schema4.Array(ChatAttachment)
358
+ }),
359
+ provider: Schema4.optional(ProviderKind),
360
+ model: Schema4.optional(TrimmedNonEmptyString),
361
+ serviceTier: Schema4.optional(Schema4.NullOr(ProviderServiceTier)),
362
+ modelOptions: Schema4.optional(ProviderModelOptions),
363
+ assistantDeliveryMode: Schema4.optional(AssistantDeliveryMode),
364
+ runtimeMode: RuntimeMode.pipe(Schema4.withDecodingDefault(() => DEFAULT_RUNTIME_MODE)),
365
+ interactionMode: ProviderInteractionMode.pipe(Schema4.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
366
+ createdAt: IsoDateTime
367
+ });
368
+ var ClientThreadTurnStartCommand = Schema4.Struct({
369
+ type: Schema4.Literal("thread.turn.start"),
370
+ commandId: CommandId,
371
+ threadId: ThreadId,
372
+ message: Schema4.Struct({
373
+ messageId: MessageId,
374
+ role: Schema4.Literal("user"),
375
+ text: Schema4.String,
376
+ attachments: Schema4.Array(UploadChatAttachment)
377
+ }),
378
+ provider: Schema4.optional(ProviderKind),
379
+ model: Schema4.optional(TrimmedNonEmptyString),
380
+ serviceTier: Schema4.optional(Schema4.NullOr(ProviderServiceTier)),
381
+ modelOptions: Schema4.optional(ProviderModelOptions),
382
+ assistantDeliveryMode: Schema4.optional(AssistantDeliveryMode),
383
+ runtimeMode: RuntimeMode,
384
+ interactionMode: ProviderInteractionMode,
385
+ createdAt: IsoDateTime
386
+ });
387
+ var ThreadTurnInterruptCommand = Schema4.Struct({
388
+ type: Schema4.Literal("thread.turn.interrupt"),
389
+ commandId: CommandId,
390
+ threadId: ThreadId,
391
+ turnId: Schema4.optional(TurnId),
392
+ createdAt: IsoDateTime
393
+ });
394
+ var ThreadApprovalRespondCommand = Schema4.Struct({
395
+ type: Schema4.Literal("thread.approval.respond"),
396
+ commandId: CommandId,
397
+ threadId: ThreadId,
398
+ requestId: ApprovalRequestId,
399
+ decision: ProviderApprovalDecision,
400
+ createdAt: IsoDateTime
401
+ });
402
+ var ThreadUserInputRespondCommand = Schema4.Struct({
403
+ type: Schema4.Literal("thread.user-input.respond"),
404
+ commandId: CommandId,
405
+ threadId: ThreadId,
406
+ requestId: ApprovalRequestId,
407
+ answers: ProviderUserInputAnswers,
408
+ createdAt: IsoDateTime
409
+ });
410
+ var ThreadCheckpointRevertCommand = Schema4.Struct({
411
+ type: Schema4.Literal("thread.checkpoint.revert"),
412
+ commandId: CommandId,
413
+ threadId: ThreadId,
414
+ turnCount: NonNegativeInt,
415
+ createdAt: IsoDateTime
416
+ });
417
+ var ThreadSessionStopCommand = Schema4.Struct({
418
+ type: Schema4.Literal("thread.session.stop"),
419
+ commandId: CommandId,
420
+ threadId: ThreadId,
421
+ createdAt: IsoDateTime
422
+ });
423
+ var DispatchableClientOrchestrationCommand = Schema4.Union([
424
+ ProjectCreateCommand,
425
+ ProjectMetaUpdateCommand,
426
+ ProjectDeleteCommand,
427
+ ThreadCreateCommand,
428
+ ThreadDeleteCommand,
429
+ ThreadMetaUpdateCommand,
430
+ ThreadRuntimeModeSetCommand,
431
+ ThreadInteractionModeSetCommand,
432
+ ThreadTurnStartCommand,
433
+ ThreadTurnInterruptCommand,
434
+ ThreadApprovalRespondCommand,
435
+ ThreadUserInputRespondCommand,
436
+ ThreadCheckpointRevertCommand,
437
+ ThreadSessionStopCommand
438
+ ]);
439
+ var ClientOrchestrationCommand = Schema4.Union([
440
+ ProjectCreateCommand,
441
+ ProjectMetaUpdateCommand,
442
+ ProjectDeleteCommand,
443
+ ThreadCreateCommand,
444
+ ThreadDeleteCommand,
445
+ ThreadMetaUpdateCommand,
446
+ ThreadRuntimeModeSetCommand,
447
+ ThreadInteractionModeSetCommand,
448
+ ClientThreadTurnStartCommand,
449
+ ThreadTurnInterruptCommand,
450
+ ThreadApprovalRespondCommand,
451
+ ThreadUserInputRespondCommand,
452
+ ThreadCheckpointRevertCommand,
453
+ ThreadSessionStopCommand
454
+ ]);
455
+ var ThreadSessionSetCommand = Schema4.Struct({
456
+ type: Schema4.Literal("thread.session.set"),
457
+ commandId: CommandId,
458
+ threadId: ThreadId,
459
+ session: OrchestrationSession,
460
+ createdAt: IsoDateTime
461
+ });
462
+ var ThreadMessageAssistantDeltaCommand = Schema4.Struct({
463
+ type: Schema4.Literal("thread.message.assistant.delta"),
464
+ commandId: CommandId,
465
+ threadId: ThreadId,
466
+ messageId: MessageId,
467
+ delta: Schema4.String,
468
+ turnId: Schema4.optional(TurnId),
469
+ createdAt: IsoDateTime
470
+ });
471
+ var ThreadMessageAssistantCompleteCommand = Schema4.Struct({
472
+ type: Schema4.Literal("thread.message.assistant.complete"),
473
+ commandId: CommandId,
474
+ threadId: ThreadId,
475
+ messageId: MessageId,
476
+ turnId: Schema4.optional(TurnId),
477
+ createdAt: IsoDateTime
478
+ });
479
+ var ThreadProposedPlanUpsertCommand = Schema4.Struct({
480
+ type: Schema4.Literal("thread.proposed-plan.upsert"),
481
+ commandId: CommandId,
482
+ threadId: ThreadId,
483
+ proposedPlan: OrchestrationProposedPlan,
484
+ createdAt: IsoDateTime
485
+ });
486
+ var ThreadTurnDiffCompleteCommand = Schema4.Struct({
487
+ type: Schema4.Literal("thread.turn.diff.complete"),
488
+ commandId: CommandId,
489
+ threadId: ThreadId,
490
+ turnId: TurnId,
491
+ completedAt: IsoDateTime,
492
+ checkpointRef: CheckpointRef,
493
+ status: OrchestrationCheckpointStatus,
494
+ files: Schema4.Array(OrchestrationCheckpointFile),
495
+ assistantMessageId: Schema4.optional(MessageId),
496
+ checkpointTurnCount: NonNegativeInt,
497
+ createdAt: IsoDateTime
498
+ });
499
+ var ThreadActivityAppendCommand = Schema4.Struct({
500
+ type: Schema4.Literal("thread.activity.append"),
501
+ commandId: CommandId,
502
+ threadId: ThreadId,
503
+ activity: OrchestrationThreadActivity,
504
+ createdAt: IsoDateTime
505
+ });
506
+ var ThreadRevertCompleteCommand = Schema4.Struct({
507
+ type: Schema4.Literal("thread.revert.complete"),
508
+ commandId: CommandId,
509
+ threadId: ThreadId,
510
+ turnCount: NonNegativeInt,
511
+ createdAt: IsoDateTime
512
+ });
513
+ var InternalOrchestrationCommand = Schema4.Union([
514
+ ThreadSessionSetCommand,
515
+ ThreadMessageAssistantDeltaCommand,
516
+ ThreadMessageAssistantCompleteCommand,
517
+ ThreadProposedPlanUpsertCommand,
518
+ ThreadTurnDiffCompleteCommand,
519
+ ThreadActivityAppendCommand,
520
+ ThreadRevertCompleteCommand
521
+ ]);
522
+ var OrchestrationCommand = Schema4.Union([
523
+ DispatchableClientOrchestrationCommand,
524
+ InternalOrchestrationCommand
525
+ ]);
526
+ var OrchestrationEventType = Schema4.Literals([
527
+ "project.created",
528
+ "project.meta-updated",
529
+ "project.deleted",
530
+ "thread.created",
531
+ "thread.deleted",
532
+ "thread.meta-updated",
533
+ "thread.runtime-mode-set",
534
+ "thread.interaction-mode-set",
535
+ "thread.message-sent",
536
+ "thread.turn-start-requested",
537
+ "thread.turn-interrupt-requested",
538
+ "thread.approval-response-requested",
539
+ "thread.user-input-response-requested",
540
+ "thread.checkpoint-revert-requested",
541
+ "thread.reverted",
542
+ "thread.session-stop-requested",
543
+ "thread.session-set",
544
+ "thread.proposed-plan-upserted",
545
+ "thread.turn-diff-completed",
546
+ "thread.activity-appended"
547
+ ]);
548
+ var OrchestrationAggregateKind = Schema4.Literals(["project", "thread"]);
549
+ var OrchestrationActorKind = Schema4.Literals(["client", "server", "provider"]);
550
+ var ProjectCreatedPayload = Schema4.Struct({
551
+ projectId: ProjectId,
552
+ title: TrimmedNonEmptyString,
553
+ workspaceRoot: TrimmedNonEmptyString,
554
+ defaultModel: Schema4.NullOr(TrimmedNonEmptyString),
555
+ scripts: Schema4.Array(ProjectScript),
556
+ createdAt: IsoDateTime,
557
+ updatedAt: IsoDateTime
558
+ });
559
+ var ProjectMetaUpdatedPayload = Schema4.Struct({
560
+ projectId: ProjectId,
561
+ title: Schema4.optional(TrimmedNonEmptyString),
562
+ workspaceRoot: Schema4.optional(TrimmedNonEmptyString),
563
+ defaultModel: Schema4.optional(Schema4.NullOr(TrimmedNonEmptyString)),
564
+ scripts: Schema4.optional(Schema4.Array(ProjectScript)),
565
+ updatedAt: IsoDateTime
566
+ });
567
+ var ProjectDeletedPayload = Schema4.Struct({
568
+ projectId: ProjectId,
569
+ deletedAt: IsoDateTime
570
+ });
571
+ var ThreadCreatedPayload = Schema4.Struct({
572
+ threadId: ThreadId,
573
+ projectId: ProjectId,
574
+ title: TrimmedNonEmptyString,
575
+ model: TrimmedNonEmptyString,
576
+ runtimeMode: RuntimeMode.pipe(Schema4.withDecodingDefault(() => DEFAULT_RUNTIME_MODE)),
577
+ interactionMode: ProviderInteractionMode.pipe(Schema4.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
578
+ branch: Schema4.NullOr(TrimmedNonEmptyString),
579
+ worktreePath: Schema4.NullOr(TrimmedNonEmptyString),
580
+ createdAt: IsoDateTime,
581
+ updatedAt: IsoDateTime
582
+ });
583
+ var ThreadDeletedPayload = Schema4.Struct({
584
+ threadId: ThreadId,
585
+ deletedAt: IsoDateTime
586
+ });
587
+ var ThreadMetaUpdatedPayload = Schema4.Struct({
588
+ threadId: ThreadId,
589
+ title: Schema4.optional(TrimmedNonEmptyString),
590
+ model: Schema4.optional(TrimmedNonEmptyString),
591
+ branch: Schema4.optional(Schema4.NullOr(TrimmedNonEmptyString)),
592
+ worktreePath: Schema4.optional(Schema4.NullOr(TrimmedNonEmptyString)),
593
+ updatedAt: IsoDateTime
594
+ });
595
+ var ThreadRuntimeModeSetPayload = Schema4.Struct({
596
+ threadId: ThreadId,
597
+ runtimeMode: RuntimeMode,
598
+ updatedAt: IsoDateTime
599
+ });
600
+ var ThreadInteractionModeSetPayload = Schema4.Struct({
601
+ threadId: ThreadId,
602
+ interactionMode: ProviderInteractionMode.pipe(Schema4.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
603
+ updatedAt: IsoDateTime
604
+ });
605
+ var ThreadMessageSentPayload = Schema4.Struct({
606
+ threadId: ThreadId,
607
+ messageId: MessageId,
608
+ role: OrchestrationMessageRole,
609
+ text: Schema4.String,
610
+ attachments: Schema4.optional(Schema4.Array(ChatAttachment)),
611
+ turnId: Schema4.NullOr(TurnId),
612
+ streaming: Schema4.Boolean,
613
+ createdAt: IsoDateTime,
614
+ updatedAt: IsoDateTime
615
+ });
616
+ var ThreadTurnStartRequestedPayload = Schema4.Struct({
617
+ threadId: ThreadId,
618
+ messageId: MessageId,
619
+ provider: Schema4.optional(ProviderKind),
620
+ model: Schema4.optional(TrimmedNonEmptyString),
621
+ serviceTier: Schema4.optional(Schema4.NullOr(ProviderServiceTier)),
622
+ modelOptions: Schema4.optional(ProviderModelOptions),
623
+ assistantDeliveryMode: Schema4.optional(AssistantDeliveryMode),
624
+ runtimeMode: RuntimeMode.pipe(Schema4.withDecodingDefault(() => DEFAULT_RUNTIME_MODE)),
625
+ interactionMode: ProviderInteractionMode.pipe(Schema4.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
626
+ createdAt: IsoDateTime
627
+ });
628
+ var ThreadTurnInterruptRequestedPayload = Schema4.Struct({
629
+ threadId: ThreadId,
630
+ turnId: Schema4.optional(TurnId),
631
+ createdAt: IsoDateTime
632
+ });
633
+ var ThreadApprovalResponseRequestedPayload = Schema4.Struct({
634
+ threadId: ThreadId,
635
+ requestId: ApprovalRequestId,
636
+ decision: ProviderApprovalDecision,
637
+ createdAt: IsoDateTime
638
+ });
639
+ var ThreadUserInputResponseRequestedPayload = Schema4.Struct({
640
+ threadId: ThreadId,
641
+ requestId: ApprovalRequestId,
642
+ answers: ProviderUserInputAnswers,
643
+ createdAt: IsoDateTime
644
+ });
645
+ var ThreadCheckpointRevertRequestedPayload = Schema4.Struct({
646
+ threadId: ThreadId,
647
+ turnCount: NonNegativeInt,
648
+ createdAt: IsoDateTime
649
+ });
650
+ var ThreadRevertedPayload = Schema4.Struct({
651
+ threadId: ThreadId,
652
+ turnCount: NonNegativeInt
653
+ });
654
+ var ThreadSessionStopRequestedPayload = Schema4.Struct({
655
+ threadId: ThreadId,
656
+ createdAt: IsoDateTime
657
+ });
658
+ var ThreadSessionSetPayload = Schema4.Struct({
659
+ threadId: ThreadId,
660
+ session: OrchestrationSession
661
+ });
662
+ var ThreadProposedPlanUpsertedPayload = Schema4.Struct({
663
+ threadId: ThreadId,
664
+ proposedPlan: OrchestrationProposedPlan
665
+ });
666
+ var ThreadTurnDiffCompletedPayload = Schema4.Struct({
667
+ threadId: ThreadId,
668
+ turnId: TurnId,
669
+ checkpointTurnCount: NonNegativeInt,
670
+ checkpointRef: CheckpointRef,
671
+ status: OrchestrationCheckpointStatus,
672
+ files: Schema4.Array(OrchestrationCheckpointFile),
673
+ assistantMessageId: Schema4.NullOr(MessageId),
674
+ completedAt: IsoDateTime
675
+ });
676
+ var ThreadActivityAppendedPayload = Schema4.Struct({
677
+ threadId: ThreadId,
678
+ activity: OrchestrationThreadActivity
679
+ });
680
+ var OrchestrationEventMetadata = Schema4.Struct({
681
+ providerTurnId: Schema4.optional(TrimmedNonEmptyString),
682
+ providerItemId: Schema4.optional(ProviderItemId),
683
+ adapterKey: Schema4.optional(TrimmedNonEmptyString),
684
+ requestId: Schema4.optional(ApprovalRequestId),
685
+ ingestedAt: Schema4.optional(IsoDateTime)
686
+ });
687
+ var EventBaseFields = {
688
+ sequence: NonNegativeInt,
689
+ eventId: EventId,
690
+ aggregateKind: OrchestrationAggregateKind,
691
+ aggregateId: Schema4.Union([ProjectId, ThreadId]),
692
+ occurredAt: IsoDateTime,
693
+ commandId: Schema4.NullOr(CommandId),
694
+ causationEventId: Schema4.NullOr(EventId),
695
+ correlationId: Schema4.NullOr(CommandId),
696
+ metadata: OrchestrationEventMetadata
697
+ };
698
+ var PersistedEventBaseFields = {
699
+ sequence: NonNegativeInt,
700
+ eventId: EventId,
701
+ aggregateKind: OrchestrationAggregateKind,
702
+ streamId: Schema4.Union([ProjectId, ThreadId]),
703
+ streamVersion: NonNegativeInt,
704
+ occurredAt: IsoDateTime,
705
+ commandId: Schema4.NullOr(CommandId),
706
+ causationEventId: Schema4.NullOr(EventId),
707
+ correlationId: Schema4.NullOr(CommandId),
708
+ actorKind: OrchestrationActorKind,
709
+ metadata: OrchestrationEventMetadata
710
+ };
711
+ var OrchestrationEvent = Schema4.Union([
712
+ Schema4.Struct({
713
+ ...EventBaseFields,
714
+ type: Schema4.Literal("project.created"),
715
+ payload: ProjectCreatedPayload
716
+ }),
717
+ Schema4.Struct({
718
+ ...EventBaseFields,
719
+ type: Schema4.Literal("project.meta-updated"),
720
+ payload: ProjectMetaUpdatedPayload
721
+ }),
722
+ Schema4.Struct({
723
+ ...EventBaseFields,
724
+ type: Schema4.Literal("project.deleted"),
725
+ payload: ProjectDeletedPayload
726
+ }),
727
+ Schema4.Struct({
728
+ ...EventBaseFields,
729
+ type: Schema4.Literal("thread.created"),
730
+ payload: ThreadCreatedPayload
731
+ }),
732
+ Schema4.Struct({
733
+ ...EventBaseFields,
734
+ type: Schema4.Literal("thread.deleted"),
735
+ payload: ThreadDeletedPayload
736
+ }),
737
+ Schema4.Struct({
738
+ ...EventBaseFields,
739
+ type: Schema4.Literal("thread.meta-updated"),
740
+ payload: ThreadMetaUpdatedPayload
741
+ }),
742
+ Schema4.Struct({
743
+ ...EventBaseFields,
744
+ type: Schema4.Literal("thread.runtime-mode-set"),
745
+ payload: ThreadRuntimeModeSetPayload
746
+ }),
747
+ Schema4.Struct({
748
+ ...EventBaseFields,
749
+ type: Schema4.Literal("thread.interaction-mode-set"),
750
+ payload: ThreadInteractionModeSetPayload
751
+ }),
752
+ Schema4.Struct({
753
+ ...EventBaseFields,
754
+ type: Schema4.Literal("thread.message-sent"),
755
+ payload: ThreadMessageSentPayload
756
+ }),
757
+ Schema4.Struct({
758
+ ...EventBaseFields,
759
+ type: Schema4.Literal("thread.turn-start-requested"),
760
+ payload: ThreadTurnStartRequestedPayload
761
+ }),
762
+ Schema4.Struct({
763
+ ...EventBaseFields,
764
+ type: Schema4.Literal("thread.turn-interrupt-requested"),
765
+ payload: ThreadTurnInterruptRequestedPayload
766
+ }),
767
+ Schema4.Struct({
768
+ ...EventBaseFields,
769
+ type: Schema4.Literal("thread.approval-response-requested"),
770
+ payload: ThreadApprovalResponseRequestedPayload
771
+ }),
772
+ Schema4.Struct({
773
+ ...EventBaseFields,
774
+ type: Schema4.Literal("thread.user-input-response-requested"),
775
+ payload: ThreadUserInputResponseRequestedPayload
776
+ }),
777
+ Schema4.Struct({
778
+ ...EventBaseFields,
779
+ type: Schema4.Literal("thread.checkpoint-revert-requested"),
780
+ payload: ThreadCheckpointRevertRequestedPayload
781
+ }),
782
+ Schema4.Struct({
783
+ ...EventBaseFields,
784
+ type: Schema4.Literal("thread.reverted"),
785
+ payload: ThreadRevertedPayload
786
+ }),
787
+ Schema4.Struct({
788
+ ...EventBaseFields,
789
+ type: Schema4.Literal("thread.session-stop-requested"),
790
+ payload: ThreadSessionStopRequestedPayload
791
+ }),
792
+ Schema4.Struct({
793
+ ...EventBaseFields,
794
+ type: Schema4.Literal("thread.session-set"),
795
+ payload: ThreadSessionSetPayload
796
+ }),
797
+ Schema4.Struct({
798
+ ...EventBaseFields,
799
+ type: Schema4.Literal("thread.proposed-plan-upserted"),
800
+ payload: ThreadProposedPlanUpsertedPayload
801
+ }),
802
+ Schema4.Struct({
803
+ ...EventBaseFields,
804
+ type: Schema4.Literal("thread.turn-diff-completed"),
805
+ payload: ThreadTurnDiffCompletedPayload
806
+ }),
807
+ Schema4.Struct({
808
+ ...EventBaseFields,
809
+ type: Schema4.Literal("thread.activity-appended"),
810
+ payload: ThreadActivityAppendedPayload
811
+ })
812
+ ]);
813
+ var OrchestrationPersistedEvent = Schema4.Union([
814
+ Schema4.Struct({
815
+ ...PersistedEventBaseFields,
816
+ eventType: Schema4.Literal("project.created"),
817
+ payload: ProjectCreatedPayload
818
+ }),
819
+ Schema4.Struct({
820
+ ...PersistedEventBaseFields,
821
+ eventType: Schema4.Literal("project.meta-updated"),
822
+ payload: ProjectMetaUpdatedPayload
823
+ }),
824
+ Schema4.Struct({
825
+ ...PersistedEventBaseFields,
826
+ eventType: Schema4.Literal("project.deleted"),
827
+ payload: ProjectDeletedPayload
828
+ }),
829
+ Schema4.Struct({
830
+ ...PersistedEventBaseFields,
831
+ eventType: Schema4.Literal("thread.created"),
832
+ payload: ThreadCreatedPayload
833
+ }),
834
+ Schema4.Struct({
835
+ ...PersistedEventBaseFields,
836
+ eventType: Schema4.Literal("thread.deleted"),
837
+ payload: ThreadDeletedPayload
838
+ }),
839
+ Schema4.Struct({
840
+ ...PersistedEventBaseFields,
841
+ eventType: Schema4.Literal("thread.meta-updated"),
842
+ payload: ThreadMetaUpdatedPayload
843
+ }),
844
+ Schema4.Struct({
845
+ ...PersistedEventBaseFields,
846
+ eventType: Schema4.Literal("thread.runtime-mode-set"),
847
+ payload: ThreadRuntimeModeSetPayload
848
+ }),
849
+ Schema4.Struct({
850
+ ...PersistedEventBaseFields,
851
+ eventType: Schema4.Literal("thread.interaction-mode-set"),
852
+ payload: ThreadInteractionModeSetPayload
853
+ }),
854
+ Schema4.Struct({
855
+ ...PersistedEventBaseFields,
856
+ eventType: Schema4.Literal("thread.message-sent"),
857
+ payload: ThreadMessageSentPayload
858
+ }),
859
+ Schema4.Struct({
860
+ ...PersistedEventBaseFields,
861
+ eventType: Schema4.Literal("thread.turn-start-requested"),
862
+ payload: ThreadTurnStartRequestedPayload
863
+ }),
864
+ Schema4.Struct({
865
+ ...PersistedEventBaseFields,
866
+ eventType: Schema4.Literal("thread.turn-interrupt-requested"),
867
+ payload: ThreadTurnInterruptRequestedPayload
868
+ }),
869
+ Schema4.Struct({
870
+ ...PersistedEventBaseFields,
871
+ eventType: Schema4.Literal("thread.approval-response-requested"),
872
+ payload: ThreadApprovalResponseRequestedPayload
873
+ }),
874
+ Schema4.Struct({
875
+ ...PersistedEventBaseFields,
876
+ eventType: Schema4.Literal("thread.user-input-response-requested"),
877
+ payload: ThreadUserInputResponseRequestedPayload
878
+ }),
879
+ Schema4.Struct({
880
+ ...PersistedEventBaseFields,
881
+ eventType: Schema4.Literal("thread.checkpoint-revert-requested"),
882
+ payload: ThreadCheckpointRevertRequestedPayload
883
+ }),
884
+ Schema4.Struct({
885
+ ...PersistedEventBaseFields,
886
+ eventType: Schema4.Literal("thread.reverted"),
887
+ payload: ThreadRevertedPayload
888
+ }),
889
+ Schema4.Struct({
890
+ ...PersistedEventBaseFields,
891
+ eventType: Schema4.Literal("thread.session-stop-requested"),
892
+ payload: ThreadSessionStopRequestedPayload
893
+ }),
894
+ Schema4.Struct({
895
+ ...PersistedEventBaseFields,
896
+ eventType: Schema4.Literal("thread.session-set"),
897
+ payload: ThreadSessionSetPayload
898
+ }),
899
+ Schema4.Struct({
900
+ ...PersistedEventBaseFields,
901
+ eventType: Schema4.Literal("thread.proposed-plan-upserted"),
902
+ payload: ThreadProposedPlanUpsertedPayload
903
+ }),
904
+ Schema4.Struct({
905
+ ...PersistedEventBaseFields,
906
+ eventType: Schema4.Literal("thread.turn-diff-completed"),
907
+ payload: ThreadTurnDiffCompletedPayload
908
+ }),
909
+ Schema4.Struct({
910
+ ...PersistedEventBaseFields,
911
+ eventType: Schema4.Literal("thread.activity-appended"),
912
+ payload: ThreadActivityAppendedPayload
913
+ })
914
+ ]);
915
+ var OrchestrationCommandReceiptStatus = Schema4.Literals(["accepted", "rejected"]);
916
+ var TurnCountRange = Schema4.Struct({
917
+ fromTurnCount: NonNegativeInt,
918
+ toTurnCount: NonNegativeInt
919
+ }).check(Schema4.makeFilter((input) => input.fromTurnCount <= input.toTurnCount || new SchemaIssue.InvalidValue(Option.some(input.fromTurnCount), {
920
+ message: "fromTurnCount must be less than or equal to toTurnCount"
921
+ }), { identifier: "OrchestrationTurnDiffRange" }));
922
+ var ThreadTurnDiff = TurnCountRange.mapFields(Struct.assign({
923
+ threadId: ThreadId,
924
+ diff: Schema4.String
925
+ }), { unsafePreserveChecks: true });
926
+ var ProviderSessionRuntimeStatus = Schema4.Literals([
927
+ "starting",
928
+ "running",
929
+ "stopped",
930
+ "error"
931
+ ]);
932
+ var ProjectionThreadTurnStatus = Schema4.Literals([
933
+ "running",
934
+ "completed",
935
+ "interrupted",
936
+ "error"
937
+ ]);
938
+ var ProjectionCheckpointRow = Schema4.Struct({
939
+ threadId: ThreadId,
940
+ turnId: TurnId,
941
+ checkpointTurnCount: NonNegativeInt,
942
+ checkpointRef: CheckpointRef,
943
+ status: OrchestrationCheckpointStatus,
944
+ files: Schema4.Array(OrchestrationCheckpointFile),
945
+ assistantMessageId: Schema4.NullOr(MessageId),
946
+ completedAt: IsoDateTime
947
+ });
948
+ var ProjectionPendingApprovalStatus = Schema4.Literals(["pending", "resolved"]);
949
+ var ProjectionPendingApprovalDecision = Schema4.NullOr(ProviderApprovalDecision);
950
+ var DispatchResult = Schema4.Struct({
951
+ sequence: NonNegativeInt
952
+ });
953
+ var OrchestrationGetSnapshotInput = Schema4.Struct({});
954
+ var OrchestrationGetTurnDiffInput = TurnCountRange.mapFields(Struct.assign({ threadId: ThreadId }), { unsafePreserveChecks: true });
955
+ var OrchestrationGetFullThreadDiffInput = Schema4.Struct({
956
+ threadId: ThreadId,
957
+ toTurnCount: NonNegativeInt
958
+ });
959
+ var OrchestrationReplayEventsInput = Schema4.Struct({
960
+ fromSequenceExclusive: NonNegativeInt
961
+ });
962
+ var OrchestrationReplayEventsResult = Schema4.Array(OrchestrationEvent);
963
+
964
+ // packages/contracts/src/runtime.ts
965
+ import { Schema as Schema5 } from "effect";
966
+ var RunKind = Schema5.Literals(["adhoc", "task", "batch", "validation", "review"]);
967
+ var RunMode = Schema5.Literals(["interactive", "autonomous", "supervised"]);
968
+ var RunStatus = Schema5.Literals([
969
+ "created",
970
+ "queued",
971
+ "preparing",
972
+ "running",
973
+ "waiting-approval",
974
+ "waiting-user-input",
975
+ "validating",
976
+ "reviewing",
977
+ "completed",
978
+ "failed",
979
+ "cancelled",
980
+ "paused"
981
+ ]);
982
+ var EngineSandboxMode = Schema5.Literals([
983
+ "read-only",
984
+ "workspace-write",
985
+ "danger-full-access"
986
+ ]);
987
+ var IsolationMode = Schema5.Literals(["none", "env", "worktree"]);
988
+ var RuntimeStatus = Schema5.Literals([
989
+ "prepared",
990
+ "starting",
991
+ "running",
992
+ "interrupted",
993
+ "exited",
994
+ "failed",
995
+ "destroyed"
996
+ ]);
997
+ var RunExecutionTarget = Schema5.Literals(["local", "remote"]);
998
+ var RunSummary = Schema5.Struct({
999
+ id: RunId,
1000
+ workspaceId: WorkspaceId,
1001
+ taskId: Schema5.NullOr(TaskId),
1002
+ title: TrimmedNonEmptyString,
1003
+ runKind: RunKind,
1004
+ mode: RunMode,
1005
+ runtimeMode: RuntimeMode,
1006
+ interactionMode: ProviderInteractionMode,
1007
+ status: RunStatus,
1008
+ runtimeAdapter: TrimmedNonEmptyString,
1009
+ model: Schema5.NullOr(TrimmedNonEmptyString),
1010
+ initialPrompt: Schema5.NullOr(Schema5.String),
1011
+ executionTarget: Schema5.optional(RunExecutionTarget),
1012
+ remoteHostId: Schema5.optional(Schema5.NullOr(TrimmedNonEmptyString)),
1013
+ remoteLeaseId: Schema5.optional(Schema5.NullOr(TrimmedNonEmptyString)),
1014
+ remoteLeaseClaimedAt: Schema5.optional(Schema5.NullOr(IsoDateTime)),
1015
+ activeRuntimeId: Schema5.NullOr(EngineRuntimeId),
1016
+ latestMessageId: Schema5.NullOr(TrimmedNonEmptyString),
1017
+ pendingApprovalCount: NonNegativeInt,
1018
+ pendingUserInputCount: NonNegativeInt,
1019
+ branch: Schema5.NullOr(TrimmedNonEmptyString),
1020
+ worktreePath: Schema5.NullOr(TrimmedNonEmptyString),
1021
+ errorText: Schema5.NullOr(Schema5.String),
1022
+ createdAt: IsoDateTime,
1023
+ updatedAt: IsoDateTime,
1024
+ startedAt: Schema5.NullOr(IsoDateTime),
1025
+ completedAt: Schema5.NullOr(IsoDateTime)
1026
+ });
1027
+ var RuntimeSummary = Schema5.Struct({
1028
+ id: EngineRuntimeId,
1029
+ workspaceId: WorkspaceId,
1030
+ runId: RunId,
1031
+ adapterKind: TrimmedNonEmptyString,
1032
+ executionTarget: Schema5.optional(RunExecutionTarget),
1033
+ remoteHostId: Schema5.optional(Schema5.NullOr(TrimmedNonEmptyString)),
1034
+ status: RuntimeStatus,
1035
+ sandboxMode: EngineSandboxMode,
1036
+ isolationMode: IsolationMode,
1037
+ workspaceDir: Schema5.NullOr(TrimmedNonEmptyString),
1038
+ homeDir: Schema5.NullOr(TrimmedNonEmptyString),
1039
+ tmpDir: Schema5.NullOr(TrimmedNonEmptyString),
1040
+ cacheDir: Schema5.NullOr(TrimmedNonEmptyString),
1041
+ logsDir: Schema5.NullOr(TrimmedNonEmptyString),
1042
+ stateDir: Schema5.NullOr(TrimmedNonEmptyString),
1043
+ sessionDir: Schema5.NullOr(TrimmedNonEmptyString),
1044
+ sessionLogPath: Schema5.NullOr(TrimmedNonEmptyString),
1045
+ pid: Schema5.NullOr(NonNegativeInt),
1046
+ startedAt: Schema5.NullOr(IsoDateTime),
1047
+ updatedAt: IsoDateTime,
1048
+ exitedAt: Schema5.NullOr(IsoDateTime)
1049
+ });
1050
+ var ApprovalStatus = Schema5.Literals(["pending", "resolved"]);
1051
+ var ApprovalSummary = Schema5.Struct({
1052
+ id: TrimmedNonEmptyString,
1053
+ runId: RunId,
1054
+ actionId: Schema5.NullOr(TrimmedNonEmptyString),
1055
+ requestKind: TrimmedNonEmptyString,
1056
+ status: ApprovalStatus,
1057
+ payload: Schema5.Unknown,
1058
+ createdAt: IsoDateTime,
1059
+ resolvedAt: Schema5.NullOr(IsoDateTime)
1060
+ });
1061
+ var UserInputRequestSummary = Schema5.Struct({
1062
+ id: TrimmedNonEmptyString,
1063
+ runId: RunId,
1064
+ status: ApprovalStatus,
1065
+ payload: Schema5.Unknown,
1066
+ createdAt: IsoDateTime,
1067
+ resolvedAt: Schema5.NullOr(IsoDateTime)
1068
+ });
1069
+ var WorktreeSummary = Schema5.Struct({
1070
+ id: WorktreeId,
1071
+ workspaceId: WorkspaceId,
1072
+ runId: RunId,
1073
+ taskId: Schema5.NullOr(TaskId),
1074
+ branchName: TrimmedNonEmptyString,
1075
+ path: TrimmedNonEmptyString,
1076
+ status: TrimmedNonEmptyString,
1077
+ createdAt: IsoDateTime,
1078
+ cleanedAt: Schema5.NullOr(IsoDateTime)
1079
+ });
1080
+
1081
+ // packages/contracts/src/workspace.ts
1082
+ import { Schema as Schema6 } from "effect";
1083
+ var WorkspaceSourceKind = Schema6.Literals(["native", "rig-import", "manual", "remote"]);
1084
+ var WorkspaceTopologyStatus = Schema6.Literals(["empty", "ready", "degraded"]);
1085
+ var WorkspaceRemoteFleetStatus = Schema6.Literals(["empty", "ready", "degraded"]);
1086
+ var WorkspaceServiceFabricStatus = Schema6.Literals([
1087
+ "empty",
1088
+ "booting",
1089
+ "ready",
1090
+ "degraded",
1091
+ "stopped"
1092
+ ]);
1093
+ var WorkspaceRemoteHostStatus = Schema6.Literals([
1094
+ "registering",
1095
+ "ready",
1096
+ "busy",
1097
+ "degraded",
1098
+ "draining",
1099
+ "offline",
1100
+ "quarantined"
1101
+ ]);
1102
+ var WorkspaceTopologyServiceSummary = Schema6.Struct({
1103
+ name: TrimmedNonEmptyString,
1104
+ relativeRootPath: TrimmedNonEmptyString,
1105
+ runtime: TrimmedNonEmptyString,
1106
+ port: Schema6.NullOr(Schema6.Number),
1107
+ healthcheck: Schema6.NullOr(TrimmedNonEmptyString),
1108
+ sourceOfTruth: Schema6.Struct({
1109
+ code: Schema6.NullOr(TrimmedNonEmptyString),
1110
+ tests: Schema6.NullOr(TrimmedNonEmptyString),
1111
+ infra: Schema6.NullOr(TrimmedNonEmptyString),
1112
+ deploy: Schema6.NullOr(TrimmedNonEmptyString),
1113
+ dependencies: Schema6.NullOr(TrimmedNonEmptyString)
1114
+ }),
1115
+ splitReadyChecklist: Schema6.Array(TrimmedNonEmptyString)
1116
+ });
1117
+ var WorkspaceTopologySummary = Schema6.Struct({
1118
+ compiledAt: IsoDateTime,
1119
+ status: WorkspaceTopologyStatus,
1120
+ manifestCount: Schema6.Number,
1121
+ serviceCount: Schema6.Number,
1122
+ services: Schema6.Array(WorkspaceTopologyServiceSummary),
1123
+ warnings: Schema6.Array(Schema6.String)
1124
+ });
1125
+ var WorkspaceRemoteHostSummary = Schema6.Struct({
1126
+ id: TrimmedNonEmptyString,
1127
+ name: TrimmedNonEmptyString,
1128
+ baseUrl: TrimmedNonEmptyString,
1129
+ workspacePath: Schema6.NullOr(TrimmedNonEmptyString),
1130
+ transport: TrimmedNonEmptyString,
1131
+ hostname: Schema6.NullOr(TrimmedNonEmptyString),
1132
+ region: Schema6.NullOr(TrimmedNonEmptyString),
1133
+ labels: Schema6.Array(TrimmedNonEmptyString),
1134
+ capabilities: Schema6.Array(TrimmedNonEmptyString),
1135
+ runtimeAdapters: Schema6.Array(TrimmedNonEmptyString),
1136
+ status: WorkspaceRemoteHostStatus,
1137
+ currentLeaseCount: Schema6.Number,
1138
+ lastHeartbeatAt: Schema6.NullOr(IsoDateTime),
1139
+ registeredAt: IsoDateTime,
1140
+ manifestPath: TrimmedNonEmptyString
1141
+ });
1142
+ var WorkspaceRemoteFleetSummary = Schema6.Struct({
1143
+ updatedAt: IsoDateTime,
1144
+ status: WorkspaceRemoteFleetStatus,
1145
+ manifestCount: Schema6.Number,
1146
+ hostCount: Schema6.Number,
1147
+ onlineHostCount: Schema6.Number,
1148
+ hosts: Schema6.Array(WorkspaceRemoteHostSummary),
1149
+ warnings: Schema6.Array(Schema6.String)
1150
+ });
1151
+ var WorkspaceServiceFabricServiceSummary = Schema6.Struct({
1152
+ name: TrimmedNonEmptyString,
1153
+ relativeRootPath: TrimmedNonEmptyString,
1154
+ mode: Schema6.Literals(["stub", "process"]),
1155
+ port: Schema6.Number,
1156
+ healthcheck: TrimmedNonEmptyString,
1157
+ routePrefix: Schema6.NullOr(TrimmedNonEmptyString),
1158
+ status: Schema6.Literals(["planned", "booting", "healthy", "degraded", "failed", "stopped"]),
1159
+ pid: Schema6.NullOr(Schema6.Number),
1160
+ logPath: Schema6.NullOr(TrimmedNonEmptyString)
1161
+ });
1162
+ var WorkspaceServiceFabricSummary = Schema6.Struct({
1163
+ updatedAt: IsoDateTime,
1164
+ status: WorkspaceServiceFabricStatus,
1165
+ serviceCount: Schema6.Number,
1166
+ healthyServiceCount: Schema6.Number,
1167
+ stateDir: TrimmedNonEmptyString,
1168
+ services: Schema6.Array(WorkspaceServiceFabricServiceSummary),
1169
+ warnings: Schema6.Array(Schema6.String)
1170
+ });
1171
+ var WorkspaceSummary = Schema6.Struct({
1172
+ id: WorkspaceId,
1173
+ title: TrimmedNonEmptyString,
1174
+ rootPath: TrimmedNonEmptyString,
1175
+ sourceKind: WorkspaceSourceKind,
1176
+ defaultRuntimeAdapter: Schema6.optional(TrimmedNonEmptyString),
1177
+ defaultProvider: Schema6.optional(ProviderKind),
1178
+ defaultModel: Schema6.NullOr(TrimmedNonEmptyString),
1179
+ topology: Schema6.optional(WorkspaceTopologySummary),
1180
+ remoteFleet: Schema6.optional(WorkspaceRemoteFleetSummary),
1181
+ serviceFabric: Schema6.optional(WorkspaceServiceFabricSummary),
1182
+ createdAt: IsoDateTime,
1183
+ updatedAt: IsoDateTime
1184
+ });
1185
+
1186
+ // packages/contracts/src/remote.ts
1187
+ var RemoteEndpoint = Schema7.Struct({
1188
+ id: RemoteEndpointId,
1189
+ alias: TrimmedNonEmptyString,
1190
+ host: TrimmedNonEmptyString,
1191
+ port: Schema7.Int.check(Schema7.isGreaterThanOrEqualTo(1)).check(Schema7.isLessThanOrEqualTo(65535)),
1192
+ token: Schema7.String,
1193
+ tokenConfigured: Schema7.optional(Schema7.Boolean),
1194
+ autoConnect: Schema7.optional(Schema7.Boolean),
1195
+ addedAt: IsoDateTime,
1196
+ lastConnectedAt: Schema7.NullOr(IsoDateTime)
1197
+ });
1198
+ var RemoteConnectionStatus = Schema7.Literals([
1199
+ "disconnected",
1200
+ "connecting",
1201
+ "authenticating",
1202
+ "connected",
1203
+ "reconnecting",
1204
+ "error"
1205
+ ]);
1206
+ var RemoteConnectionSummary = Schema7.Struct({
1207
+ endpointId: RemoteEndpointId,
1208
+ status: RemoteConnectionStatus,
1209
+ error: Schema7.NullOr(Schema7.String),
1210
+ connectedAt: Schema7.NullOr(IsoDateTime),
1211
+ tokenExpiresAt: Schema7.NullOr(IsoDateTime),
1212
+ latencyMs: Schema7.NullOr(Schema7.Number),
1213
+ subscribedEvents: Schema7.Array(Schema7.String)
1214
+ });
1215
+ var RemoteConnectionStatusChanged = Schema7.Struct({
1216
+ endpointId: Schema7.String,
1217
+ endpointAlias: Schema7.String,
1218
+ status: RemoteConnectionStatus,
1219
+ previousStatus: RemoteConnectionStatus,
1220
+ error: Schema7.NullOr(Schema7.String),
1221
+ connectedAt: Schema7.NullOr(Schema7.String),
1222
+ latencyMs: Schema7.NullOr(Schema7.Number),
1223
+ timestamp: Schema7.String
1224
+ });
1225
+ var EnrichedRemoteEvent = Schema7.Struct({
1226
+ endpointId: Schema7.String,
1227
+ endpointAlias: Schema7.String,
1228
+ receivedAt: Schema7.String,
1229
+ originalTimestamp: Schema7.optional(Schema7.NullOr(Schema7.String)),
1230
+ event: Schema7.Unknown
1231
+ });
1232
+ var RemoteOrchestratorState = Schema7.Struct({
1233
+ activeTaskId: Schema7.NullOr(Schema7.String),
1234
+ activeIteration: Schema7.NullOr(Schema7.Number),
1235
+ maxIterations: Schema7.Number,
1236
+ isPaused: Schema7.Boolean,
1237
+ isRunning: Schema7.Boolean,
1238
+ totalCompleted: NonNegativeInt,
1239
+ totalFailed: NonNegativeInt,
1240
+ lastActivity: Schema7.NullOr(IsoDateTime)
1241
+ });
1242
+ var RemoteOrchestrationSummary = Schema7.Struct({
1243
+ orchestrationId: TrimmedNonEmptyString,
1244
+ endpointId: RemoteEndpointId,
1245
+ status: Schema7.Literals(["running", "paused", "stopped", "completed"]),
1246
+ totalTasks: NonNegativeInt,
1247
+ totalGroups: NonNegativeInt,
1248
+ maxParallelism: NonNegativeInt,
1249
+ startedAt: IsoDateTime
1250
+ });
1251
+ var RemoteIterationOutput = Schema7.Struct({
1252
+ taskId: Schema7.optional(Schema7.String),
1253
+ iteration: Schema7.optional(Schema7.Number),
1254
+ output: Schema7.optional(Schema7.String),
1255
+ startedAt: Schema7.optional(IsoDateTime),
1256
+ endedAt: Schema7.optional(IsoDateTime),
1257
+ durationMs: Schema7.optional(Schema7.Number),
1258
+ isRunning: Schema7.optional(Schema7.Boolean)
1259
+ });
1260
+ var RemoteRunnerRegisterInput = Schema7.Struct({
1261
+ workspaceId: WorkspaceId,
1262
+ hostId: TrimmedNonEmptyString,
1263
+ name: TrimmedNonEmptyString,
1264
+ baseUrl: TrimmedNonEmptyString,
1265
+ workspacePath: Schema7.optional(TrimmedNonEmptyString),
1266
+ transport: Schema7.optional(TrimmedNonEmptyString),
1267
+ hostname: Schema7.optional(TrimmedNonEmptyString),
1268
+ region: Schema7.optional(TrimmedNonEmptyString),
1269
+ labels: Schema7.optional(Schema7.Array(TrimmedNonEmptyString)),
1270
+ capabilities: Schema7.optional(Schema7.Array(TrimmedNonEmptyString)),
1271
+ runtimeAdapters: Schema7.optional(Schema7.Array(TrimmedNonEmptyString)),
1272
+ status: Schema7.optional(WorkspaceRemoteHostStatus),
1273
+ currentLeaseCount: Schema7.optional(Schema7.Number)
1274
+ });
1275
+ var RemoteRunnerHeartbeatInput = Schema7.Struct({
1276
+ workspaceId: WorkspaceId,
1277
+ hostId: TrimmedNonEmptyString,
1278
+ status: WorkspaceRemoteHostStatus,
1279
+ currentLeaseCount: Schema7.optional(Schema7.Number),
1280
+ observedAt: Schema7.optional(IsoDateTime)
1281
+ });
1282
+ var RemoteRunnerLifecycleResult = Schema7.Struct({
1283
+ ok: Schema7.Boolean,
1284
+ workspaceId: WorkspaceId,
1285
+ hostId: TrimmedNonEmptyString,
1286
+ acceptedAt: IsoDateTime,
1287
+ heartbeatIntervalMs: Schema7.Number
1288
+ });
1289
+ var RemoteRunClaimInput = Schema7.Struct({
1290
+ workspaceId: WorkspaceId,
1291
+ hostId: TrimmedNonEmptyString,
1292
+ runtimeAdapters: Schema7.optional(Schema7.Array(TrimmedNonEmptyString))
1293
+ });
1294
+ var RemoteRunLeaseSummary = Schema7.Struct({
1295
+ leaseId: TrimmedNonEmptyString,
1296
+ runId: TrimmedNonEmptyString,
1297
+ workspaceId: WorkspaceId,
1298
+ title: TrimmedNonEmptyString,
1299
+ runtimeAdapter: TrimmedNonEmptyString,
1300
+ model: Schema7.NullOr(TrimmedNonEmptyString),
1301
+ runtimeMode: RuntimeMode,
1302
+ interactionMode: ProviderInteractionMode,
1303
+ executionTarget: RunExecutionTarget,
1304
+ remoteHostId: Schema7.NullOr(TrimmedNonEmptyString),
1305
+ claimedAt: IsoDateTime
1306
+ });
1307
+ var RemoteRunConversationEntry = Schema7.Struct({
1308
+ role: Schema7.Literals(["user", "assistant", "system"]),
1309
+ text: Schema7.String,
1310
+ createdAt: IsoDateTime
1311
+ });
1312
+ var RemoteRunExecutionBundle = Schema7.Struct({
1313
+ workspaceId: WorkspaceId,
1314
+ runId: TrimmedNonEmptyString,
1315
+ leaseId: TrimmedNonEmptyString,
1316
+ workspacePath: Schema7.NullOr(TrimmedNonEmptyString),
1317
+ runtimeAdapter: TrimmedNonEmptyString,
1318
+ model: Schema7.NullOr(TrimmedNonEmptyString),
1319
+ runtimeMode: RuntimeMode,
1320
+ interactionMode: ProviderInteractionMode,
1321
+ prompt: Schema7.String,
1322
+ conversation: Schema7.Array(RemoteRunConversationEntry),
1323
+ taskId: Schema7.NullOr(TrimmedNonEmptyString),
1324
+ taskTitle: Schema7.NullOr(TrimmedNonEmptyString)
1325
+ });
1326
+ var RemoteRunClaimResult = Schema7.Struct({
1327
+ ok: Schema7.Boolean,
1328
+ workspaceId: WorkspaceId,
1329
+ hostId: TrimmedNonEmptyString,
1330
+ acceptedAt: IsoDateTime,
1331
+ lease: Schema7.NullOr(RemoteRunLeaseSummary),
1332
+ bundle: Schema7.NullOr(RemoteRunExecutionBundle)
1333
+ });
1334
+ var RemoteRunReleaseInput = Schema7.Struct({
1335
+ workspaceId: WorkspaceId,
1336
+ hostId: TrimmedNonEmptyString,
1337
+ runId: TrimmedNonEmptyString,
1338
+ leaseId: TrimmedNonEmptyString,
1339
+ status: Schema7.optional(WorkspaceRemoteHostStatus)
1340
+ });
1341
+ var RemoteRunReleaseResult = Schema7.Struct({
1342
+ ok: Schema7.Boolean,
1343
+ workspaceId: WorkspaceId,
1344
+ hostId: TrimmedNonEmptyString,
1345
+ runId: TrimmedNonEmptyString,
1346
+ leaseId: TrimmedNonEmptyString,
1347
+ acceptedAt: IsoDateTime
1348
+ });
1349
+ var RemoteRunStartInput = Schema7.Struct({
1350
+ workspaceId: WorkspaceId,
1351
+ hostId: TrimmedNonEmptyString,
1352
+ runId: TrimmedNonEmptyString,
1353
+ leaseId: TrimmedNonEmptyString
1354
+ });
1355
+ var RemoteRunStartResult = Schema7.Struct({
1356
+ ok: Schema7.Boolean,
1357
+ workspaceId: WorkspaceId,
1358
+ hostId: TrimmedNonEmptyString,
1359
+ runId: TrimmedNonEmptyString,
1360
+ leaseId: TrimmedNonEmptyString,
1361
+ runtimeId: TrimmedNonEmptyString,
1362
+ acceptedAt: IsoDateTime
1363
+ });
1364
+ var RemoteRunLogInput = Schema7.Struct({
1365
+ workspaceId: WorkspaceId,
1366
+ hostId: TrimmedNonEmptyString,
1367
+ runId: TrimmedNonEmptyString,
1368
+ leaseId: TrimmedNonEmptyString,
1369
+ title: TrimmedNonEmptyString,
1370
+ detail: Schema7.optional(Schema7.String),
1371
+ tone: Schema7.optional(EngineLogTone),
1372
+ status: Schema7.optional(TrimmedNonEmptyString),
1373
+ payload: Schema7.optional(Schema7.Unknown)
1374
+ });
1375
+ var RemoteRunMessageInput = Schema7.Struct({
1376
+ workspaceId: WorkspaceId,
1377
+ hostId: TrimmedNonEmptyString,
1378
+ runId: TrimmedNonEmptyString,
1379
+ leaseId: TrimmedNonEmptyString,
1380
+ messageId: Schema7.optional(TrimmedNonEmptyString),
1381
+ text: Schema7.String,
1382
+ state: Schema7.optional(Schema7.Literals(["streaming", "completed"]))
1383
+ });
1384
+ var RemoteRunMutationResult = Schema7.Struct({
1385
+ ok: Schema7.Boolean,
1386
+ workspaceId: WorkspaceId,
1387
+ hostId: TrimmedNonEmptyString,
1388
+ runId: TrimmedNonEmptyString,
1389
+ leaseId: TrimmedNonEmptyString,
1390
+ acceptedAt: IsoDateTime
1391
+ });
1392
+ var RemoteRunCompleteInput = Schema7.Struct({
1393
+ workspaceId: WorkspaceId,
1394
+ hostId: TrimmedNonEmptyString,
1395
+ runId: TrimmedNonEmptyString,
1396
+ leaseId: TrimmedNonEmptyString
1397
+ });
1398
+ var RemoteRunFailInput = Schema7.Struct({
1399
+ workspaceId: WorkspaceId,
1400
+ hostId: TrimmedNonEmptyString,
1401
+ runId: TrimmedNonEmptyString,
1402
+ leaseId: TrimmedNonEmptyString,
1403
+ errorText: Schema7.optional(Schema7.String)
1404
+ });
1405
+ var RemoteRunArtifactInput = Schema7.Struct({
1406
+ workspaceId: WorkspaceId,
1407
+ hostId: TrimmedNonEmptyString,
1408
+ runId: TrimmedNonEmptyString,
1409
+ leaseId: TrimmedNonEmptyString,
1410
+ kind: TrimmedNonEmptyString,
1411
+ label: TrimmedNonEmptyString,
1412
+ filename: TrimmedNonEmptyString,
1413
+ contentType: TrimmedNonEmptyString,
1414
+ contentBase64: TrimmedNonEmptyString
1415
+ });
1416
+ var RemoteRunArtifactResult = Schema7.Struct({
1417
+ ok: Schema7.Boolean,
1418
+ workspaceId: WorkspaceId,
1419
+ hostId: TrimmedNonEmptyString,
1420
+ runId: TrimmedNonEmptyString,
1421
+ leaseId: TrimmedNonEmptyString,
1422
+ acceptedAt: IsoDateTime,
1423
+ artifactPath: TrimmedNonEmptyString
1424
+ });
1425
+ var RemoteRunArtifactSummary = Schema7.Struct({
1426
+ workspaceId: WorkspaceId,
1427
+ runId: TrimmedNonEmptyString,
1428
+ hostId: TrimmedNonEmptyString,
1429
+ leaseId: TrimmedNonEmptyString,
1430
+ kind: TrimmedNonEmptyString,
1431
+ label: TrimmedNonEmptyString,
1432
+ filename: TrimmedNonEmptyString,
1433
+ contentType: TrimmedNonEmptyString,
1434
+ uploadedAt: IsoDateTime,
1435
+ byteSize: Schema7.Number,
1436
+ artifactPath: TrimmedNonEmptyString,
1437
+ downloadPath: TrimmedNonEmptyString
1438
+ });
1439
+ var RemoteRunArtifactsResult = Schema7.Struct({
1440
+ workspaceId: WorkspaceId,
1441
+ runId: TrimmedNonEmptyString,
1442
+ artifacts: Schema7.Array(RemoteRunArtifactSummary)
1443
+ });
1444
+ export {
1445
+ RemoteRunnerRegisterInput,
1446
+ RemoteRunnerLifecycleResult,
1447
+ RemoteRunnerHeartbeatInput,
1448
+ RemoteRunStartResult,
1449
+ RemoteRunStartInput,
1450
+ RemoteRunReleaseResult,
1451
+ RemoteRunReleaseInput,
1452
+ RemoteRunMutationResult,
1453
+ RemoteRunMessageInput,
1454
+ RemoteRunLogInput,
1455
+ RemoteRunLeaseSummary,
1456
+ RemoteRunFailInput,
1457
+ RemoteRunExecutionBundle,
1458
+ RemoteRunConversationEntry,
1459
+ RemoteRunCompleteInput,
1460
+ RemoteRunClaimResult,
1461
+ RemoteRunClaimInput,
1462
+ RemoteRunArtifactsResult,
1463
+ RemoteRunArtifactSummary,
1464
+ RemoteRunArtifactResult,
1465
+ RemoteRunArtifactInput,
1466
+ RemoteOrchestratorState,
1467
+ RemoteOrchestrationSummary,
1468
+ RemoteIterationOutput,
1469
+ RemoteEndpoint,
1470
+ RemoteConnectionSummary,
1471
+ RemoteConnectionStatusChanged,
1472
+ RemoteConnectionStatus,
1473
+ EnrichedRemoteEvent
1474
+ };