@h-rig/contracts 0.0.6-alpha.18 → 0.0.6-alpha.181

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 (205) hide show
  1. package/dist/index.cjs +3442 -0
  2. package/dist/index.mjs +3401 -0
  3. package/dist/src/agent-roles.d.ts +8 -0
  4. package/dist/src/artifact.d.ts +13 -0
  5. package/dist/src/artifact.js +3 -0
  6. package/dist/src/baseSchemas.d.ts +63 -0
  7. package/dist/src/baseSchemas.js +6 -0
  8. package/dist/src/blocker-classifier.d.ts +21 -0
  9. package/dist/src/blocker-classifier.js +13 -0
  10. package/dist/src/browser.d.ts +80 -0
  11. package/dist/src/browser.js +13 -0
  12. package/dist/src/capability-id.d.ts +22 -0
  13. package/dist/src/capability-id.js +8 -0
  14. package/dist/src/cli-output.d.ts +348 -0
  15. package/dist/src/cli-output.js +190 -0
  16. package/dist/src/cli-runner.d.ts +43 -0
  17. package/dist/src/cli-runner.js +13 -0
  18. package/dist/src/cockpit.d.ts +58 -0
  19. package/dist/src/cockpit.js +13 -0
  20. package/dist/src/collab-session-viewer.d.ts +36 -0
  21. package/dist/src/collab-session-viewer.js +13 -0
  22. package/dist/src/config.d.ts +553 -0
  23. package/dist/src/config.js +767 -162
  24. package/dist/src/control-plane-types.d.ts +323 -0
  25. package/dist/src/control-plane-types.js +13 -0
  26. package/dist/src/conversation.d.ts +50 -0
  27. package/dist/src/conversation.js +3 -0
  28. package/dist/src/dependency-preflight.d.ts +43 -0
  29. package/dist/src/dependency-preflight.js +13 -0
  30. package/dist/src/docs-drift.d.ts +10 -0
  31. package/dist/src/docs-drift.js +12 -0
  32. package/dist/src/doctor.d.ts +90 -0
  33. package/dist/src/doctor.js +13 -0
  34. package/dist/src/drift.d.ts +28 -0
  35. package/dist/src/drift.js +69 -0
  36. package/dist/src/editor.d.ts +25 -0
  37. package/dist/src/editor.js +3 -0
  38. package/dist/src/errors.d.ts +13 -0
  39. package/dist/src/errors.js +17 -0
  40. package/dist/src/git.d.ts +152 -0
  41. package/dist/src/git.js +3 -0
  42. package/dist/src/github.d.ts +295 -0
  43. package/dist/src/github.js +17 -0
  44. package/dist/src/graph.d.ts +360 -0
  45. package/dist/src/graph.js +137 -1
  46. package/dist/src/guard.d.ts +118 -0
  47. package/dist/src/guard.js +15 -0
  48. package/dist/src/harness-events.d.ts +8 -0
  49. package/dist/src/harness-events.js +1 -0
  50. package/dist/src/harness-profile-state.d.ts +10 -0
  51. package/dist/src/harness-profile-state.js +13 -0
  52. package/dist/src/help-catalog.d.ts +41 -0
  53. package/dist/src/help-catalog.js +13 -0
  54. package/dist/src/host.d.ts +41 -0
  55. package/dist/src/host.js +13 -0
  56. package/dist/src/identity.d.ts +44 -0
  57. package/dist/src/identity.js +1 -0
  58. package/dist/src/index.d.ts +98 -0
  59. package/dist/src/index.js +2605 -3752
  60. package/dist/src/isolation.d.ts +213 -0
  61. package/dist/src/isolation.js +13 -0
  62. package/dist/src/kernel.d.ts +200 -0
  63. package/dist/src/kernel.js +261 -0
  64. package/dist/src/keybindings.d.ts +71 -0
  65. package/dist/src/keybindings.js +3 -0
  66. package/dist/src/layout.d.ts +44 -0
  67. package/dist/src/layout.js +8 -0
  68. package/dist/src/lifecycle-capabilities.d.ts +224 -0
  69. package/dist/src/lifecycle-capabilities.js +45 -0
  70. package/dist/src/managed-repos.d.ts +339 -0
  71. package/dist/src/managed-repos.js +37 -0
  72. package/dist/src/memory.d.ts +199 -0
  73. package/dist/src/memory.js +15 -0
  74. package/dist/src/model.d.ts +13 -0
  75. package/dist/src/model.js +3 -58
  76. package/dist/src/native-toolchain.d.ts +46 -0
  77. package/dist/src/native-toolchain.js +13 -0
  78. package/dist/src/notify.d.ts +46 -0
  79. package/dist/src/notify.js +13 -0
  80. package/dist/src/orchestration.d.ts +43 -0
  81. package/dist/src/orchestration.js +28 -961
  82. package/dist/src/panel-protocol.d.ts +17 -0
  83. package/dist/src/panel-protocol.js +10 -0
  84. package/dist/src/pi-session.d.ts +113 -0
  85. package/dist/src/pi-session.js +1 -0
  86. package/dist/src/placement.d.ts +47 -0
  87. package/dist/src/placement.js +13 -0
  88. package/dist/src/planning.d.ts +64 -0
  89. package/dist/src/planning.js +90 -0
  90. package/dist/src/plugin-hooks.d.ts +51 -0
  91. package/dist/src/plugin-hooks.js +386 -0
  92. package/dist/src/plugin.d.ts +476 -0
  93. package/dist/src/plugin.js +346 -64
  94. package/dist/src/policy.d.ts +16 -0
  95. package/dist/src/policy.js +3 -0
  96. package/dist/src/product-entrypoint.d.ts +22 -0
  97. package/dist/src/product-entrypoint.js +13 -0
  98. package/dist/src/project.d.ts +71 -0
  99. package/dist/src/project.js +3 -0
  100. package/dist/src/prompt.d.ts +29 -0
  101. package/dist/src/prompt.js +13 -0
  102. package/dist/src/protocol-version.d.ts +21 -0
  103. package/dist/src/protocol-version.js +6 -0
  104. package/dist/src/provider-instructions.d.ts +41 -0
  105. package/dist/src/provider-instructions.js +13 -0
  106. package/dist/src/provider.d.ts +105 -0
  107. package/dist/src/provider.js +16 -835
  108. package/dist/src/remote-control.d.ts +93 -0
  109. package/dist/src/remote-control.js +26 -0
  110. package/dist/src/remote.d.ts +318 -0
  111. package/dist/src/remote.js +238 -1078
  112. package/dist/src/review.d.ts +18 -0
  113. package/dist/src/review.js +3 -0
  114. package/dist/src/rollups.d.ts +41 -0
  115. package/dist/src/rollups.js +70 -0
  116. package/dist/src/run-control.d.ts +164 -0
  117. package/dist/src/run-control.js +13 -0
  118. package/dist/src/run-discovery.d.ts +83 -0
  119. package/dist/src/run-discovery.js +13 -0
  120. package/dist/src/run-dispatch.d.ts +34 -0
  121. package/dist/src/run-dispatch.js +13 -0
  122. package/dist/src/run-identity.d.ts +47 -0
  123. package/dist/src/run-identity.js +13 -0
  124. package/dist/src/run-journal.d.ts +694 -0
  125. package/dist/src/run-journal.js +569 -0
  126. package/dist/src/run-queue.d.ts +36 -0
  127. package/dist/src/run-queue.js +13 -0
  128. package/dist/src/run-read-model.d.ts +200 -0
  129. package/dist/src/run-read-model.js +13 -0
  130. package/dist/src/run-record.d.ts +45 -0
  131. package/dist/src/run-record.js +1 -0
  132. package/dist/src/run-registry-backbone.d.ts +56 -0
  133. package/dist/src/run-registry-backbone.js +13 -0
  134. package/dist/src/run-session-journal.d.ts +154 -0
  135. package/dist/src/run-session-journal.js +87 -0
  136. package/dist/src/run-status.d.ts +10 -0
  137. package/dist/src/run-status.js +27 -0
  138. package/dist/src/run-timeline.d.ts +7 -0
  139. package/dist/src/run-timeline.js +1 -0
  140. package/dist/src/runtime-secrets.d.ts +10 -0
  141. package/dist/src/runtime-secrets.js +13 -0
  142. package/dist/src/runtime-task-context.d.ts +82 -0
  143. package/dist/src/runtime-task-context.js +1 -0
  144. package/dist/src/runtime.d.ts +103 -0
  145. package/dist/src/runtime.js +73 -906
  146. package/dist/src/session-asset-materializer.d.ts +35 -0
  147. package/dist/src/session-asset-materializer.js +13 -0
  148. package/dist/src/session-hook-materializer.d.ts +41 -0
  149. package/dist/src/session-hook-materializer.js +13 -0
  150. package/dist/src/setup.d.ts +154 -0
  151. package/dist/src/setup.js +13 -0
  152. package/dist/src/stage.d.ts +245 -0
  153. package/dist/src/stage.js +169 -0
  154. package/dist/src/supervisor-journal.d.ts +204 -0
  155. package/dist/src/supervisor-journal.js +336 -0
  156. package/dist/src/supervisor-loop.d.ts +40 -0
  157. package/dist/src/supervisor-loop.js +13 -0
  158. package/dist/src/task-artifacts.d.ts +53 -0
  159. package/dist/src/task-artifacts.js +13 -0
  160. package/dist/src/task-config.d.ts +22 -0
  161. package/dist/src/task-config.js +1 -0
  162. package/dist/src/task-context-renderer.d.ts +29 -0
  163. package/dist/src/task-context-renderer.js +13 -0
  164. package/dist/src/task-data.d.ts +196 -0
  165. package/dist/src/task-data.js +13 -0
  166. package/dist/src/task-graph-primitives.d.ts +47 -0
  167. package/dist/src/task-graph-primitives.js +1 -0
  168. package/dist/src/task-source.d.ts +167 -0
  169. package/dist/src/task-source.js +24 -0
  170. package/dist/src/task-state-metadata.d.ts +21 -0
  171. package/dist/src/task-state-metadata.js +1 -0
  172. package/dist/src/task-state-paths.d.ts +14 -0
  173. package/dist/src/task-state-paths.js +13 -0
  174. package/dist/src/task-state-store.d.ts +36 -0
  175. package/dist/src/task-state-store.js +17 -0
  176. package/dist/src/task-tracker-state.d.ts +101 -0
  177. package/dist/src/task-tracker-state.js +39 -0
  178. package/dist/src/terminal.d.ts +130 -0
  179. package/dist/src/terminal.js +3 -0
  180. package/dist/src/tool-materializer.d.ts +36 -0
  181. package/dist/src/tool-materializer.js +13 -0
  182. package/dist/src/tool-registry.d.ts +3 -0
  183. package/dist/src/tool-registry.js +58 -0
  184. package/dist/src/toolchain-sources.d.ts +54 -0
  185. package/dist/src/toolchain-sources.js +17 -0
  186. package/dist/src/transport-config.d.ts +161 -0
  187. package/dist/src/transport-config.js +15 -0
  188. package/dist/src/validation.d.ts +14 -0
  189. package/dist/src/validation.js +3 -0
  190. package/dist/src/workflow-journal.d.ts +125 -0
  191. package/dist/src/workflow-journal.js +27 -0
  192. package/dist/src/workspace-config.d.ts +18 -0
  193. package/dist/src/workspace-config.js +13 -0
  194. package/dist/src/workspace-service.d.ts +16 -0
  195. package/dist/src/workspace-service.js +13 -0
  196. package/dist/src/workspace.d.ts +204 -0
  197. package/dist/src/workspace.js +76 -911
  198. package/package.json +55 -4
  199. package/dist/src/engine.js +0 -2278
  200. package/dist/src/providerRuntime.js +0 -1630
  201. package/dist/src/rig.js +0 -2374
  202. package/dist/src/server.js +0 -1053
  203. package/dist/src/serviceFabric.js +0 -1066
  204. package/dist/src/ws.js +0 -2968
  205. /package/dist/src/{ipc.js → agent-roles.js} +0 -0
@@ -1,6 +1,6 @@
1
1
  // @bun
2
2
  // packages/contracts/src/runtime.ts
3
- import { Schema as Schema4 } from "effect";
3
+ import { Schema as Schema3 } from "effect";
4
4
 
5
5
  // packages/contracts/src/baseSchemas.ts
6
6
  import { Schema } from "effect";
@@ -16,6 +16,9 @@ var WorkspaceId = makeEntityId("WorkspaceId");
16
16
  var GraphId = makeEntityId("GraphId");
17
17
  var TaskId = makeEntityId("TaskId");
18
18
  var RunId = makeEntityId("RunId");
19
+ var SafePathSegment = TrimmedNonEmptyString.check(Schema.isPattern(/^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/)).pipe(Schema.brand("SafePathSegment"));
20
+ var SafeRunId = TrimmedNonEmptyString.check(Schema.isPattern(/^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/)).pipe(Schema.brand("SafeRunId"));
21
+ var SafeGitRefComponent = TrimmedNonEmptyString.check(Schema.isPattern(/^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/)).pipe(Schema.brand("SafeGitRefComponent"));
19
22
  var EngineRuntimeId = makeEntityId("EngineRuntimeId");
20
23
  var ConversationId = makeEntityId("ConversationId");
21
24
  var ActionId = makeEntityId("ActionId");
@@ -37,904 +40,68 @@ var CheckpointRef = makeEntityId("CheckpointRef");
37
40
  var RemoteEndpointId = makeEntityId("RemoteEndpointId");
38
41
 
39
42
  // packages/contracts/src/orchestration.ts
40
- import { Option, Schema as Schema3, SchemaIssue, Struct } from "effect";
41
-
42
- // packages/contracts/src/model.ts
43
43
  import { Schema as Schema2 } from "effect";
44
- var CODEX_REASONING_EFFORT_OPTIONS = ["xhigh", "high", "medium", "low"];
45
- var CodexModelOptions = Schema2.Struct({
46
- reasoningEffort: Schema2.optional(Schema2.Literals(CODEX_REASONING_EFFORT_OPTIONS)),
47
- fastMode: Schema2.optional(Schema2.Boolean)
48
- });
49
- var ClaudeModelOptions = Schema2.Struct({});
50
- var ProviderModelOptions = Schema2.Struct({
51
- codex: Schema2.optional(CodexModelOptions),
52
- claude: Schema2.optional(ClaudeModelOptions)
53
- });
54
-
55
- // packages/contracts/src/orchestration.ts
56
- var ProviderKind = Schema3.Literals(["codex", "claude"]);
57
- var ProviderApprovalPolicy = Schema3.Literals([
44
+ var ProviderKind = Schema2.Literals(["codex", "claude"]);
45
+ var ProviderApprovalPolicy = Schema2.Literals([
58
46
  "untrusted",
59
47
  "on-failure",
60
48
  "on-request",
61
49
  "never"
62
50
  ]);
63
- var ProviderSandboxMode = Schema3.Literals([
51
+ var ProviderSandboxMode = Schema2.Literals([
64
52
  "read-only",
65
53
  "workspace-write",
66
54
  "danger-full-access"
67
55
  ]);
68
- var ProviderServiceTier = Schema3.Literals(["fast", "flex"]);
69
- var RuntimeMode = Schema3.Literals(["approval-required", "full-access"]);
70
- var DEFAULT_RUNTIME_MODE = "full-access";
71
- var ProviderInteractionMode = Schema3.Literals(["default", "plan"]);
72
- var DEFAULT_PROVIDER_INTERACTION_MODE = "default";
73
- var ProviderRequestKind = Schema3.Literals(["command", "file-read", "file-change"]);
74
- var AssistantDeliveryMode = Schema3.Literals(["buffered", "streaming"]);
75
- var ProviderApprovalDecision = Schema3.Literals([
56
+ var ProviderServiceTier = Schema2.Literals(["fast", "flex"]);
57
+ var RuntimeMode = Schema2.Literals(["approval-required", "full-access"]);
58
+ var ProviderInteractionMode = Schema2.Literals(["default", "plan"]);
59
+ var ProviderRequestKind = Schema2.Literals(["command", "file-read", "file-change"]);
60
+ var ProviderApprovalDecision = Schema2.Literals([
76
61
  "accept",
77
62
  "acceptForSession",
78
63
  "decline",
79
64
  "cancel"
80
65
  ]);
81
- var ProviderUserInputAnswers = Schema3.Record(Schema3.String, Schema3.Unknown);
66
+ var ProviderUserInputAnswers = Schema2.Record(Schema2.String, Schema2.Unknown);
82
67
  var PROVIDER_SEND_TURN_MAX_IMAGE_BYTES = 10 * 1024 * 1024;
83
- var PROVIDER_SEND_TURN_MAX_IMAGE_DATA_URL_CHARS = 14000000;
84
68
  var CHAT_ATTACHMENT_ID_MAX_CHARS = 128;
85
- var ChatAttachmentId = TrimmedNonEmptyString.check(Schema3.isMaxLength(CHAT_ATTACHMENT_ID_MAX_CHARS), Schema3.isPattern(/^[a-z0-9_-]+$/i));
86
- var ChatImageAttachment = Schema3.Struct({
87
- type: Schema3.Literal("image"),
69
+ var ChatAttachmentId = TrimmedNonEmptyString.check(Schema2.isMaxLength(CHAT_ATTACHMENT_ID_MAX_CHARS), Schema2.isPattern(/^[a-z0-9_-]+$/i));
70
+ var ChatImageAttachment = Schema2.Struct({
71
+ type: Schema2.Literal("image"),
88
72
  id: ChatAttachmentId,
89
- name: TrimmedNonEmptyString.check(Schema3.isMaxLength(255)),
90
- mimeType: TrimmedNonEmptyString.check(Schema3.isMaxLength(100), Schema3.isPattern(/^image\//i)),
91
- sizeBytes: NonNegativeInt.check(Schema3.isLessThanOrEqualTo(PROVIDER_SEND_TURN_MAX_IMAGE_BYTES))
92
- });
93
- var UploadChatImageAttachment = Schema3.Struct({
94
- type: Schema3.Literal("image"),
95
- name: TrimmedNonEmptyString.check(Schema3.isMaxLength(255)),
96
- mimeType: TrimmedNonEmptyString.check(Schema3.isMaxLength(100), Schema3.isPattern(/^image\//i)),
97
- sizeBytes: NonNegativeInt.check(Schema3.isLessThanOrEqualTo(PROVIDER_SEND_TURN_MAX_IMAGE_BYTES)),
98
- dataUrl: TrimmedNonEmptyString.check(Schema3.isMaxLength(PROVIDER_SEND_TURN_MAX_IMAGE_DATA_URL_CHARS))
99
- });
100
- var ChatAttachment = Schema3.Union([ChatImageAttachment]);
101
- var UploadChatAttachment = Schema3.Union([UploadChatImageAttachment]);
102
- var ProjectScriptIcon = Schema3.Literals([
103
- "play",
104
- "test",
105
- "lint",
106
- "configure",
107
- "build",
108
- "debug"
109
- ]);
110
- var ProjectScript = Schema3.Struct({
111
- id: TrimmedNonEmptyString,
112
- name: TrimmedNonEmptyString,
113
- command: TrimmedNonEmptyString,
114
- icon: ProjectScriptIcon,
115
- runOnWorktreeCreate: Schema3.Boolean
116
- });
117
- var OrchestrationProject = Schema3.Struct({
118
- id: ProjectId,
119
- title: TrimmedNonEmptyString,
120
- workspaceRoot: TrimmedNonEmptyString,
121
- defaultModel: Schema3.NullOr(TrimmedNonEmptyString),
122
- scripts: Schema3.Array(ProjectScript),
123
- createdAt: IsoDateTime,
124
- updatedAt: IsoDateTime,
125
- deletedAt: Schema3.NullOr(IsoDateTime)
126
- });
127
- var OrchestrationMessageRole = Schema3.Literals(["user", "assistant", "system"]);
128
- var OrchestrationMessage = Schema3.Struct({
129
- id: MessageId,
130
- role: OrchestrationMessageRole,
131
- text: Schema3.String,
132
- attachments: Schema3.optional(Schema3.Array(ChatAttachment)),
133
- turnId: Schema3.NullOr(TurnId),
134
- streaming: Schema3.Boolean,
135
- createdAt: IsoDateTime,
136
- updatedAt: IsoDateTime
137
- });
138
- var OrchestrationProposedPlanId = TrimmedNonEmptyString;
139
- var OrchestrationProposedPlan = Schema3.Struct({
140
- id: OrchestrationProposedPlanId,
141
- turnId: Schema3.NullOr(TurnId),
142
- planMarkdown: TrimmedNonEmptyString,
143
- createdAt: IsoDateTime,
144
- updatedAt: IsoDateTime
145
- });
146
- var OrchestrationSessionStatus = Schema3.Literals([
147
- "idle",
148
- "starting",
149
- "running",
150
- "ready",
151
- "interrupted",
152
- "stopped",
153
- "error"
154
- ]);
155
- var OrchestrationSession = Schema3.Struct({
156
- threadId: ThreadId,
157
- status: OrchestrationSessionStatus,
158
- providerName: Schema3.NullOr(TrimmedNonEmptyString),
159
- runtimeMode: RuntimeMode.pipe(Schema3.withDecodingDefault(() => DEFAULT_RUNTIME_MODE)),
160
- activeTurnId: Schema3.NullOr(TurnId),
161
- lastError: Schema3.NullOr(TrimmedNonEmptyString),
162
- updatedAt: IsoDateTime
163
- });
164
- var OrchestrationCheckpointFile = Schema3.Struct({
165
- path: TrimmedNonEmptyString,
166
- kind: TrimmedNonEmptyString,
167
- additions: NonNegativeInt,
168
- deletions: NonNegativeInt
169
- });
170
- var OrchestrationCheckpointStatus = Schema3.Literals(["ready", "missing", "error"]);
171
- var OrchestrationCheckpointSummary = Schema3.Struct({
172
- turnId: TurnId,
173
- checkpointTurnCount: NonNegativeInt,
174
- checkpointRef: CheckpointRef,
175
- status: OrchestrationCheckpointStatus,
176
- files: Schema3.Array(OrchestrationCheckpointFile),
177
- assistantMessageId: Schema3.NullOr(MessageId),
178
- completedAt: IsoDateTime
179
- });
180
- var OrchestrationThreadActivityTone = Schema3.Literals([
181
- "info",
182
- "tool",
183
- "approval",
184
- "error"
185
- ]);
186
- var OrchestrationThreadActivity = Schema3.Struct({
187
- id: EventId,
188
- tone: OrchestrationThreadActivityTone,
189
- kind: TrimmedNonEmptyString,
190
- summary: TrimmedNonEmptyString,
191
- payload: Schema3.Unknown,
192
- turnId: Schema3.NullOr(TurnId),
193
- sequence: Schema3.optional(NonNegativeInt),
194
- createdAt: IsoDateTime
195
- });
196
- var OrchestrationLatestTurnState = Schema3.Literals([
197
- "running",
198
- "interrupted",
199
- "completed",
200
- "error"
201
- ]);
202
- var OrchestrationLatestTurn = Schema3.Struct({
203
- turnId: TurnId,
204
- state: OrchestrationLatestTurnState,
205
- requestedAt: IsoDateTime,
206
- startedAt: Schema3.NullOr(IsoDateTime),
207
- completedAt: Schema3.NullOr(IsoDateTime),
208
- assistantMessageId: Schema3.NullOr(MessageId)
209
- });
210
- var OrchestrationThread = Schema3.Struct({
211
- id: ThreadId,
212
- projectId: ProjectId,
213
- title: TrimmedNonEmptyString,
214
- model: TrimmedNonEmptyString,
215
- runtimeMode: RuntimeMode,
216
- interactionMode: ProviderInteractionMode.pipe(Schema3.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
217
- branch: Schema3.NullOr(TrimmedNonEmptyString),
218
- worktreePath: Schema3.NullOr(TrimmedNonEmptyString),
219
- latestTurn: Schema3.NullOr(OrchestrationLatestTurn),
220
- createdAt: IsoDateTime,
221
- updatedAt: IsoDateTime,
222
- deletedAt: Schema3.NullOr(IsoDateTime),
223
- messages: Schema3.Array(OrchestrationMessage),
224
- proposedPlans: Schema3.Array(OrchestrationProposedPlan).pipe(Schema3.withDecodingDefault(() => [])),
225
- activities: Schema3.Array(OrchestrationThreadActivity),
226
- checkpoints: Schema3.Array(OrchestrationCheckpointSummary),
227
- session: Schema3.NullOr(OrchestrationSession)
228
- });
229
- var OrchestrationReadModel = Schema3.Struct({
230
- snapshotSequence: NonNegativeInt,
231
- projects: Schema3.Array(OrchestrationProject),
232
- threads: Schema3.Array(OrchestrationThread),
233
- updatedAt: IsoDateTime
234
- });
235
- var ProjectCreateCommand = Schema3.Struct({
236
- type: Schema3.Literal("project.create"),
237
- commandId: CommandId,
238
- projectId: ProjectId,
239
- title: TrimmedNonEmptyString,
240
- workspaceRoot: TrimmedNonEmptyString,
241
- defaultModel: Schema3.optional(TrimmedNonEmptyString),
242
- createdAt: IsoDateTime
243
- });
244
- var ProjectMetaUpdateCommand = Schema3.Struct({
245
- type: Schema3.Literal("project.meta.update"),
246
- commandId: CommandId,
247
- projectId: ProjectId,
248
- title: Schema3.optional(TrimmedNonEmptyString),
249
- workspaceRoot: Schema3.optional(TrimmedNonEmptyString),
250
- defaultModel: Schema3.optional(TrimmedNonEmptyString),
251
- scripts: Schema3.optional(Schema3.Array(ProjectScript))
252
- });
253
- var ProjectDeleteCommand = Schema3.Struct({
254
- type: Schema3.Literal("project.delete"),
255
- commandId: CommandId,
256
- projectId: ProjectId
257
- });
258
- var ThreadCreateCommand = Schema3.Struct({
259
- type: Schema3.Literal("thread.create"),
260
- commandId: CommandId,
261
- threadId: ThreadId,
262
- projectId: ProjectId,
263
- title: TrimmedNonEmptyString,
264
- model: TrimmedNonEmptyString,
265
- runtimeMode: RuntimeMode,
266
- interactionMode: ProviderInteractionMode.pipe(Schema3.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
267
- branch: Schema3.NullOr(TrimmedNonEmptyString),
268
- worktreePath: Schema3.NullOr(TrimmedNonEmptyString),
269
- createdAt: IsoDateTime
270
- });
271
- var ThreadDeleteCommand = Schema3.Struct({
272
- type: Schema3.Literal("thread.delete"),
273
- commandId: CommandId,
274
- threadId: ThreadId
275
- });
276
- var ThreadMetaUpdateCommand = Schema3.Struct({
277
- type: Schema3.Literal("thread.meta.update"),
278
- commandId: CommandId,
279
- threadId: ThreadId,
280
- title: Schema3.optional(TrimmedNonEmptyString),
281
- model: Schema3.optional(TrimmedNonEmptyString),
282
- branch: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString)),
283
- worktreePath: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString))
284
- });
285
- var ThreadRuntimeModeSetCommand = Schema3.Struct({
286
- type: Schema3.Literal("thread.runtime-mode.set"),
287
- commandId: CommandId,
288
- threadId: ThreadId,
289
- runtimeMode: RuntimeMode,
290
- createdAt: IsoDateTime
291
- });
292
- var ThreadInteractionModeSetCommand = Schema3.Struct({
293
- type: Schema3.Literal("thread.interaction-mode.set"),
294
- commandId: CommandId,
295
- threadId: ThreadId,
296
- interactionMode: ProviderInteractionMode,
297
- createdAt: IsoDateTime
298
- });
299
- var ThreadTurnStartCommand = Schema3.Struct({
300
- type: Schema3.Literal("thread.turn.start"),
301
- commandId: CommandId,
302
- threadId: ThreadId,
303
- message: Schema3.Struct({
304
- messageId: MessageId,
305
- role: Schema3.Literal("user"),
306
- text: Schema3.String,
307
- attachments: Schema3.Array(ChatAttachment)
308
- }),
309
- provider: Schema3.optional(ProviderKind),
310
- model: Schema3.optional(TrimmedNonEmptyString),
311
- serviceTier: Schema3.optional(Schema3.NullOr(ProviderServiceTier)),
312
- modelOptions: Schema3.optional(ProviderModelOptions),
313
- assistantDeliveryMode: Schema3.optional(AssistantDeliveryMode),
314
- runtimeMode: RuntimeMode.pipe(Schema3.withDecodingDefault(() => DEFAULT_RUNTIME_MODE)),
315
- interactionMode: ProviderInteractionMode.pipe(Schema3.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
316
- createdAt: IsoDateTime
317
- });
318
- var ClientThreadTurnStartCommand = Schema3.Struct({
319
- type: Schema3.Literal("thread.turn.start"),
320
- commandId: CommandId,
321
- threadId: ThreadId,
322
- message: Schema3.Struct({
323
- messageId: MessageId,
324
- role: Schema3.Literal("user"),
325
- text: Schema3.String,
326
- attachments: Schema3.Array(UploadChatAttachment)
327
- }),
328
- provider: Schema3.optional(ProviderKind),
329
- model: Schema3.optional(TrimmedNonEmptyString),
330
- serviceTier: Schema3.optional(Schema3.NullOr(ProviderServiceTier)),
331
- modelOptions: Schema3.optional(ProviderModelOptions),
332
- assistantDeliveryMode: Schema3.optional(AssistantDeliveryMode),
333
- runtimeMode: RuntimeMode,
334
- interactionMode: ProviderInteractionMode,
335
- createdAt: IsoDateTime
336
- });
337
- var ThreadTurnInterruptCommand = Schema3.Struct({
338
- type: Schema3.Literal("thread.turn.interrupt"),
339
- commandId: CommandId,
340
- threadId: ThreadId,
341
- turnId: Schema3.optional(TurnId),
342
- createdAt: IsoDateTime
343
- });
344
- var ThreadApprovalRespondCommand = Schema3.Struct({
345
- type: Schema3.Literal("thread.approval.respond"),
346
- commandId: CommandId,
347
- threadId: ThreadId,
348
- requestId: ApprovalRequestId,
349
- decision: ProviderApprovalDecision,
350
- createdAt: IsoDateTime
351
- });
352
- var ThreadUserInputRespondCommand = Schema3.Struct({
353
- type: Schema3.Literal("thread.user-input.respond"),
354
- commandId: CommandId,
355
- threadId: ThreadId,
356
- requestId: ApprovalRequestId,
357
- answers: ProviderUserInputAnswers,
358
- createdAt: IsoDateTime
73
+ name: TrimmedNonEmptyString.check(Schema2.isMaxLength(255)),
74
+ mimeType: TrimmedNonEmptyString.check(Schema2.isMaxLength(100), Schema2.isPattern(/^image\//i)),
75
+ sizeBytes: NonNegativeInt.check(Schema2.isLessThanOrEqualTo(PROVIDER_SEND_TURN_MAX_IMAGE_BYTES))
359
76
  });
360
- var ThreadCheckpointRevertCommand = Schema3.Struct({
361
- type: Schema3.Literal("thread.checkpoint.revert"),
362
- commandId: CommandId,
363
- threadId: ThreadId,
364
- turnCount: NonNegativeInt,
365
- createdAt: IsoDateTime
366
- });
367
- var ThreadSessionStopCommand = Schema3.Struct({
368
- type: Schema3.Literal("thread.session.stop"),
369
- commandId: CommandId,
370
- threadId: ThreadId,
371
- createdAt: IsoDateTime
372
- });
373
- var DispatchableClientOrchestrationCommand = Schema3.Union([
374
- ProjectCreateCommand,
375
- ProjectMetaUpdateCommand,
376
- ProjectDeleteCommand,
377
- ThreadCreateCommand,
378
- ThreadDeleteCommand,
379
- ThreadMetaUpdateCommand,
380
- ThreadRuntimeModeSetCommand,
381
- ThreadInteractionModeSetCommand,
382
- ThreadTurnStartCommand,
383
- ThreadTurnInterruptCommand,
384
- ThreadApprovalRespondCommand,
385
- ThreadUserInputRespondCommand,
386
- ThreadCheckpointRevertCommand,
387
- ThreadSessionStopCommand
388
- ]);
389
- var ClientOrchestrationCommand = Schema3.Union([
390
- ProjectCreateCommand,
391
- ProjectMetaUpdateCommand,
392
- ProjectDeleteCommand,
393
- ThreadCreateCommand,
394
- ThreadDeleteCommand,
395
- ThreadMetaUpdateCommand,
396
- ThreadRuntimeModeSetCommand,
397
- ThreadInteractionModeSetCommand,
398
- ClientThreadTurnStartCommand,
399
- ThreadTurnInterruptCommand,
400
- ThreadApprovalRespondCommand,
401
- ThreadUserInputRespondCommand,
402
- ThreadCheckpointRevertCommand,
403
- ThreadSessionStopCommand
404
- ]);
405
- var ThreadSessionSetCommand = Schema3.Struct({
406
- type: Schema3.Literal("thread.session.set"),
407
- commandId: CommandId,
408
- threadId: ThreadId,
409
- session: OrchestrationSession,
410
- createdAt: IsoDateTime
411
- });
412
- var ThreadMessageAssistantDeltaCommand = Schema3.Struct({
413
- type: Schema3.Literal("thread.message.assistant.delta"),
414
- commandId: CommandId,
415
- threadId: ThreadId,
416
- messageId: MessageId,
417
- delta: Schema3.String,
418
- turnId: Schema3.optional(TurnId),
419
- createdAt: IsoDateTime
420
- });
421
- var ThreadMessageAssistantCompleteCommand = Schema3.Struct({
422
- type: Schema3.Literal("thread.message.assistant.complete"),
423
- commandId: CommandId,
424
- threadId: ThreadId,
425
- messageId: MessageId,
426
- turnId: Schema3.optional(TurnId),
427
- createdAt: IsoDateTime
428
- });
429
- var ThreadProposedPlanUpsertCommand = Schema3.Struct({
430
- type: Schema3.Literal("thread.proposed-plan.upsert"),
431
- commandId: CommandId,
432
- threadId: ThreadId,
433
- proposedPlan: OrchestrationProposedPlan,
434
- createdAt: IsoDateTime
435
- });
436
- var ThreadTurnDiffCompleteCommand = Schema3.Struct({
437
- type: Schema3.Literal("thread.turn.diff.complete"),
438
- commandId: CommandId,
439
- threadId: ThreadId,
440
- turnId: TurnId,
441
- completedAt: IsoDateTime,
442
- checkpointRef: CheckpointRef,
443
- status: OrchestrationCheckpointStatus,
444
- files: Schema3.Array(OrchestrationCheckpointFile),
445
- assistantMessageId: Schema3.optional(MessageId),
446
- checkpointTurnCount: NonNegativeInt,
447
- createdAt: IsoDateTime
448
- });
449
- var ThreadActivityAppendCommand = Schema3.Struct({
450
- type: Schema3.Literal("thread.activity.append"),
451
- commandId: CommandId,
452
- threadId: ThreadId,
453
- activity: OrchestrationThreadActivity,
454
- createdAt: IsoDateTime
455
- });
456
- var ThreadRevertCompleteCommand = Schema3.Struct({
457
- type: Schema3.Literal("thread.revert.complete"),
458
- commandId: CommandId,
459
- threadId: ThreadId,
460
- turnCount: NonNegativeInt,
461
- createdAt: IsoDateTime
462
- });
463
- var InternalOrchestrationCommand = Schema3.Union([
464
- ThreadSessionSetCommand,
465
- ThreadMessageAssistantDeltaCommand,
466
- ThreadMessageAssistantCompleteCommand,
467
- ThreadProposedPlanUpsertCommand,
468
- ThreadTurnDiffCompleteCommand,
469
- ThreadActivityAppendCommand,
470
- ThreadRevertCompleteCommand
471
- ]);
472
- var OrchestrationCommand = Schema3.Union([
473
- DispatchableClientOrchestrationCommand,
474
- InternalOrchestrationCommand
475
- ]);
476
- var OrchestrationEventType = Schema3.Literals([
477
- "project.created",
478
- "project.meta-updated",
479
- "project.deleted",
480
- "thread.created",
481
- "thread.deleted",
482
- "thread.meta-updated",
483
- "thread.runtime-mode-set",
484
- "thread.interaction-mode-set",
485
- "thread.message-sent",
486
- "thread.turn-start-requested",
487
- "thread.turn-interrupt-requested",
488
- "thread.approval-response-requested",
489
- "thread.user-input-response-requested",
490
- "thread.checkpoint-revert-requested",
491
- "thread.reverted",
492
- "thread.session-stop-requested",
493
- "thread.session-set",
494
- "thread.proposed-plan-upserted",
495
- "thread.turn-diff-completed",
496
- "thread.activity-appended"
497
- ]);
498
- var OrchestrationAggregateKind = Schema3.Literals(["project", "thread"]);
499
- var OrchestrationActorKind = Schema3.Literals(["client", "server", "provider"]);
500
- var ProjectCreatedPayload = Schema3.Struct({
501
- projectId: ProjectId,
502
- title: TrimmedNonEmptyString,
503
- workspaceRoot: TrimmedNonEmptyString,
504
- defaultModel: Schema3.NullOr(TrimmedNonEmptyString),
505
- scripts: Schema3.Array(ProjectScript),
506
- createdAt: IsoDateTime,
507
- updatedAt: IsoDateTime
508
- });
509
- var ProjectMetaUpdatedPayload = Schema3.Struct({
510
- projectId: ProjectId,
511
- title: Schema3.optional(TrimmedNonEmptyString),
512
- workspaceRoot: Schema3.optional(TrimmedNonEmptyString),
513
- defaultModel: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString)),
514
- scripts: Schema3.optional(Schema3.Array(ProjectScript)),
515
- updatedAt: IsoDateTime
516
- });
517
- var ProjectDeletedPayload = Schema3.Struct({
518
- projectId: ProjectId,
519
- deletedAt: IsoDateTime
520
- });
521
- var ThreadCreatedPayload = Schema3.Struct({
522
- threadId: ThreadId,
523
- projectId: ProjectId,
524
- title: TrimmedNonEmptyString,
525
- model: TrimmedNonEmptyString,
526
- runtimeMode: RuntimeMode.pipe(Schema3.withDecodingDefault(() => DEFAULT_RUNTIME_MODE)),
527
- interactionMode: ProviderInteractionMode.pipe(Schema3.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
528
- branch: Schema3.NullOr(TrimmedNonEmptyString),
529
- worktreePath: Schema3.NullOr(TrimmedNonEmptyString),
530
- createdAt: IsoDateTime,
531
- updatedAt: IsoDateTime
532
- });
533
- var ThreadDeletedPayload = Schema3.Struct({
534
- threadId: ThreadId,
535
- deletedAt: IsoDateTime
536
- });
537
- var ThreadMetaUpdatedPayload = Schema3.Struct({
538
- threadId: ThreadId,
539
- title: Schema3.optional(TrimmedNonEmptyString),
540
- model: Schema3.optional(TrimmedNonEmptyString),
541
- branch: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString)),
542
- worktreePath: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString)),
543
- updatedAt: IsoDateTime
544
- });
545
- var ThreadRuntimeModeSetPayload = Schema3.Struct({
546
- threadId: ThreadId,
547
- runtimeMode: RuntimeMode,
548
- updatedAt: IsoDateTime
549
- });
550
- var ThreadInteractionModeSetPayload = Schema3.Struct({
551
- threadId: ThreadId,
552
- interactionMode: ProviderInteractionMode.pipe(Schema3.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
553
- updatedAt: IsoDateTime
554
- });
555
- var ThreadMessageSentPayload = Schema3.Struct({
556
- threadId: ThreadId,
557
- messageId: MessageId,
558
- role: OrchestrationMessageRole,
559
- text: Schema3.String,
560
- attachments: Schema3.optional(Schema3.Array(ChatAttachment)),
561
- turnId: Schema3.NullOr(TurnId),
562
- streaming: Schema3.Boolean,
563
- createdAt: IsoDateTime,
564
- updatedAt: IsoDateTime
565
- });
566
- var ThreadTurnStartRequestedPayload = Schema3.Struct({
567
- threadId: ThreadId,
568
- messageId: MessageId,
569
- provider: Schema3.optional(ProviderKind),
570
- model: Schema3.optional(TrimmedNonEmptyString),
571
- serviceTier: Schema3.optional(Schema3.NullOr(ProviderServiceTier)),
572
- modelOptions: Schema3.optional(ProviderModelOptions),
573
- assistantDeliveryMode: Schema3.optional(AssistantDeliveryMode),
574
- runtimeMode: RuntimeMode.pipe(Schema3.withDecodingDefault(() => DEFAULT_RUNTIME_MODE)),
575
- interactionMode: ProviderInteractionMode.pipe(Schema3.withDecodingDefault(() => DEFAULT_PROVIDER_INTERACTION_MODE)),
576
- createdAt: IsoDateTime
577
- });
578
- var ThreadTurnInterruptRequestedPayload = Schema3.Struct({
579
- threadId: ThreadId,
580
- turnId: Schema3.optional(TurnId),
581
- createdAt: IsoDateTime
582
- });
583
- var ThreadApprovalResponseRequestedPayload = Schema3.Struct({
584
- threadId: ThreadId,
585
- requestId: ApprovalRequestId,
586
- decision: ProviderApprovalDecision,
587
- createdAt: IsoDateTime
588
- });
589
- var ThreadUserInputResponseRequestedPayload = Schema3.Struct({
590
- threadId: ThreadId,
591
- requestId: ApprovalRequestId,
592
- answers: ProviderUserInputAnswers,
593
- createdAt: IsoDateTime
594
- });
595
- var ThreadCheckpointRevertRequestedPayload = Schema3.Struct({
596
- threadId: ThreadId,
597
- turnCount: NonNegativeInt,
598
- createdAt: IsoDateTime
599
- });
600
- var ThreadRevertedPayload = Schema3.Struct({
601
- threadId: ThreadId,
602
- turnCount: NonNegativeInt
603
- });
604
- var ThreadSessionStopRequestedPayload = Schema3.Struct({
605
- threadId: ThreadId,
606
- createdAt: IsoDateTime
607
- });
608
- var ThreadSessionSetPayload = Schema3.Struct({
609
- threadId: ThreadId,
610
- session: OrchestrationSession
611
- });
612
- var ThreadProposedPlanUpsertedPayload = Schema3.Struct({
613
- threadId: ThreadId,
614
- proposedPlan: OrchestrationProposedPlan
615
- });
616
- var ThreadTurnDiffCompletedPayload = Schema3.Struct({
617
- threadId: ThreadId,
618
- turnId: TurnId,
619
- checkpointTurnCount: NonNegativeInt,
620
- checkpointRef: CheckpointRef,
621
- status: OrchestrationCheckpointStatus,
622
- files: Schema3.Array(OrchestrationCheckpointFile),
623
- assistantMessageId: Schema3.NullOr(MessageId),
624
- completedAt: IsoDateTime
625
- });
626
- var ThreadActivityAppendedPayload = Schema3.Struct({
627
- threadId: ThreadId,
628
- activity: OrchestrationThreadActivity
629
- });
630
- var OrchestrationEventMetadata = Schema3.Struct({
631
- providerTurnId: Schema3.optional(TrimmedNonEmptyString),
632
- providerItemId: Schema3.optional(ProviderItemId),
633
- adapterKey: Schema3.optional(TrimmedNonEmptyString),
634
- requestId: Schema3.optional(ApprovalRequestId),
635
- ingestedAt: Schema3.optional(IsoDateTime)
636
- });
637
- var EventBaseFields = {
638
- sequence: NonNegativeInt,
639
- eventId: EventId,
640
- aggregateKind: OrchestrationAggregateKind,
641
- aggregateId: Schema3.Union([ProjectId, ThreadId]),
642
- occurredAt: IsoDateTime,
643
- commandId: Schema3.NullOr(CommandId),
644
- causationEventId: Schema3.NullOr(EventId),
645
- correlationId: Schema3.NullOr(CommandId),
646
- metadata: OrchestrationEventMetadata
647
- };
648
- var PersistedEventBaseFields = {
649
- sequence: NonNegativeInt,
650
- eventId: EventId,
651
- aggregateKind: OrchestrationAggregateKind,
652
- streamId: Schema3.Union([ProjectId, ThreadId]),
653
- streamVersion: NonNegativeInt,
654
- occurredAt: IsoDateTime,
655
- commandId: Schema3.NullOr(CommandId),
656
- causationEventId: Schema3.NullOr(EventId),
657
- correlationId: Schema3.NullOr(CommandId),
658
- actorKind: OrchestrationActorKind,
659
- metadata: OrchestrationEventMetadata
660
- };
661
- var OrchestrationEvent = Schema3.Union([
662
- Schema3.Struct({
663
- ...EventBaseFields,
664
- type: Schema3.Literal("project.created"),
665
- payload: ProjectCreatedPayload
666
- }),
667
- Schema3.Struct({
668
- ...EventBaseFields,
669
- type: Schema3.Literal("project.meta-updated"),
670
- payload: ProjectMetaUpdatedPayload
671
- }),
672
- Schema3.Struct({
673
- ...EventBaseFields,
674
- type: Schema3.Literal("project.deleted"),
675
- payload: ProjectDeletedPayload
676
- }),
677
- Schema3.Struct({
678
- ...EventBaseFields,
679
- type: Schema3.Literal("thread.created"),
680
- payload: ThreadCreatedPayload
681
- }),
682
- Schema3.Struct({
683
- ...EventBaseFields,
684
- type: Schema3.Literal("thread.deleted"),
685
- payload: ThreadDeletedPayload
686
- }),
687
- Schema3.Struct({
688
- ...EventBaseFields,
689
- type: Schema3.Literal("thread.meta-updated"),
690
- payload: ThreadMetaUpdatedPayload
691
- }),
692
- Schema3.Struct({
693
- ...EventBaseFields,
694
- type: Schema3.Literal("thread.runtime-mode-set"),
695
- payload: ThreadRuntimeModeSetPayload
696
- }),
697
- Schema3.Struct({
698
- ...EventBaseFields,
699
- type: Schema3.Literal("thread.interaction-mode-set"),
700
- payload: ThreadInteractionModeSetPayload
701
- }),
702
- Schema3.Struct({
703
- ...EventBaseFields,
704
- type: Schema3.Literal("thread.message-sent"),
705
- payload: ThreadMessageSentPayload
706
- }),
707
- Schema3.Struct({
708
- ...EventBaseFields,
709
- type: Schema3.Literal("thread.turn-start-requested"),
710
- payload: ThreadTurnStartRequestedPayload
711
- }),
712
- Schema3.Struct({
713
- ...EventBaseFields,
714
- type: Schema3.Literal("thread.turn-interrupt-requested"),
715
- payload: ThreadTurnInterruptRequestedPayload
716
- }),
717
- Schema3.Struct({
718
- ...EventBaseFields,
719
- type: Schema3.Literal("thread.approval-response-requested"),
720
- payload: ThreadApprovalResponseRequestedPayload
721
- }),
722
- Schema3.Struct({
723
- ...EventBaseFields,
724
- type: Schema3.Literal("thread.user-input-response-requested"),
725
- payload: ThreadUserInputResponseRequestedPayload
726
- }),
727
- Schema3.Struct({
728
- ...EventBaseFields,
729
- type: Schema3.Literal("thread.checkpoint-revert-requested"),
730
- payload: ThreadCheckpointRevertRequestedPayload
731
- }),
732
- Schema3.Struct({
733
- ...EventBaseFields,
734
- type: Schema3.Literal("thread.reverted"),
735
- payload: ThreadRevertedPayload
736
- }),
737
- Schema3.Struct({
738
- ...EventBaseFields,
739
- type: Schema3.Literal("thread.session-stop-requested"),
740
- payload: ThreadSessionStopRequestedPayload
741
- }),
742
- Schema3.Struct({
743
- ...EventBaseFields,
744
- type: Schema3.Literal("thread.session-set"),
745
- payload: ThreadSessionSetPayload
746
- }),
747
- Schema3.Struct({
748
- ...EventBaseFields,
749
- type: Schema3.Literal("thread.proposed-plan-upserted"),
750
- payload: ThreadProposedPlanUpsertedPayload
751
- }),
752
- Schema3.Struct({
753
- ...EventBaseFields,
754
- type: Schema3.Literal("thread.turn-diff-completed"),
755
- payload: ThreadTurnDiffCompletedPayload
756
- }),
757
- Schema3.Struct({
758
- ...EventBaseFields,
759
- type: Schema3.Literal("thread.activity-appended"),
760
- payload: ThreadActivityAppendedPayload
761
- })
762
- ]);
763
- var OrchestrationPersistedEvent = Schema3.Union([
764
- Schema3.Struct({
765
- ...PersistedEventBaseFields,
766
- eventType: Schema3.Literal("project.created"),
767
- payload: ProjectCreatedPayload
768
- }),
769
- Schema3.Struct({
770
- ...PersistedEventBaseFields,
771
- eventType: Schema3.Literal("project.meta-updated"),
772
- payload: ProjectMetaUpdatedPayload
773
- }),
774
- Schema3.Struct({
775
- ...PersistedEventBaseFields,
776
- eventType: Schema3.Literal("project.deleted"),
777
- payload: ProjectDeletedPayload
778
- }),
779
- Schema3.Struct({
780
- ...PersistedEventBaseFields,
781
- eventType: Schema3.Literal("thread.created"),
782
- payload: ThreadCreatedPayload
783
- }),
784
- Schema3.Struct({
785
- ...PersistedEventBaseFields,
786
- eventType: Schema3.Literal("thread.deleted"),
787
- payload: ThreadDeletedPayload
788
- }),
789
- Schema3.Struct({
790
- ...PersistedEventBaseFields,
791
- eventType: Schema3.Literal("thread.meta-updated"),
792
- payload: ThreadMetaUpdatedPayload
793
- }),
794
- Schema3.Struct({
795
- ...PersistedEventBaseFields,
796
- eventType: Schema3.Literal("thread.runtime-mode-set"),
797
- payload: ThreadRuntimeModeSetPayload
798
- }),
799
- Schema3.Struct({
800
- ...PersistedEventBaseFields,
801
- eventType: Schema3.Literal("thread.interaction-mode-set"),
802
- payload: ThreadInteractionModeSetPayload
803
- }),
804
- Schema3.Struct({
805
- ...PersistedEventBaseFields,
806
- eventType: Schema3.Literal("thread.message-sent"),
807
- payload: ThreadMessageSentPayload
808
- }),
809
- Schema3.Struct({
810
- ...PersistedEventBaseFields,
811
- eventType: Schema3.Literal("thread.turn-start-requested"),
812
- payload: ThreadTurnStartRequestedPayload
813
- }),
814
- Schema3.Struct({
815
- ...PersistedEventBaseFields,
816
- eventType: Schema3.Literal("thread.turn-interrupt-requested"),
817
- payload: ThreadTurnInterruptRequestedPayload
818
- }),
819
- Schema3.Struct({
820
- ...PersistedEventBaseFields,
821
- eventType: Schema3.Literal("thread.approval-response-requested"),
822
- payload: ThreadApprovalResponseRequestedPayload
823
- }),
824
- Schema3.Struct({
825
- ...PersistedEventBaseFields,
826
- eventType: Schema3.Literal("thread.user-input-response-requested"),
827
- payload: ThreadUserInputResponseRequestedPayload
828
- }),
829
- Schema3.Struct({
830
- ...PersistedEventBaseFields,
831
- eventType: Schema3.Literal("thread.checkpoint-revert-requested"),
832
- payload: ThreadCheckpointRevertRequestedPayload
833
- }),
834
- Schema3.Struct({
835
- ...PersistedEventBaseFields,
836
- eventType: Schema3.Literal("thread.reverted"),
837
- payload: ThreadRevertedPayload
838
- }),
839
- Schema3.Struct({
840
- ...PersistedEventBaseFields,
841
- eventType: Schema3.Literal("thread.session-stop-requested"),
842
- payload: ThreadSessionStopRequestedPayload
843
- }),
844
- Schema3.Struct({
845
- ...PersistedEventBaseFields,
846
- eventType: Schema3.Literal("thread.session-set"),
847
- payload: ThreadSessionSetPayload
848
- }),
849
- Schema3.Struct({
850
- ...PersistedEventBaseFields,
851
- eventType: Schema3.Literal("thread.proposed-plan-upserted"),
852
- payload: ThreadProposedPlanUpsertedPayload
853
- }),
854
- Schema3.Struct({
855
- ...PersistedEventBaseFields,
856
- eventType: Schema3.Literal("thread.turn-diff-completed"),
857
- payload: ThreadTurnDiffCompletedPayload
858
- }),
859
- Schema3.Struct({
860
- ...PersistedEventBaseFields,
861
- eventType: Schema3.Literal("thread.activity-appended"),
862
- payload: ThreadActivityAppendedPayload
863
- })
864
- ]);
865
- var OrchestrationCommandReceiptStatus = Schema3.Literals(["accepted", "rejected"]);
866
- var TurnCountRange = Schema3.Struct({
867
- fromTurnCount: NonNegativeInt,
868
- toTurnCount: NonNegativeInt
869
- }).check(Schema3.makeFilter((input) => input.fromTurnCount <= input.toTurnCount || new SchemaIssue.InvalidValue(Option.some(input.fromTurnCount), {
870
- message: "fromTurnCount must be less than or equal to toTurnCount"
871
- }), { identifier: "OrchestrationTurnDiffRange" }));
872
- var ThreadTurnDiff = TurnCountRange.mapFields(Struct.assign({
873
- threadId: ThreadId,
874
- diff: Schema3.String
875
- }), { unsafePreserveChecks: true });
876
- var ProviderSessionRuntimeStatus = Schema3.Literals([
877
- "starting",
878
- "running",
879
- "stopped",
880
- "error"
881
- ]);
882
- var ProjectionThreadTurnStatus = Schema3.Literals([
883
- "running",
884
- "completed",
885
- "interrupted",
886
- "error"
887
- ]);
888
- var ProjectionCheckpointRow = Schema3.Struct({
889
- threadId: ThreadId,
890
- turnId: TurnId,
891
- checkpointTurnCount: NonNegativeInt,
892
- checkpointRef: CheckpointRef,
893
- status: OrchestrationCheckpointStatus,
894
- files: Schema3.Array(OrchestrationCheckpointFile),
895
- assistantMessageId: Schema3.NullOr(MessageId),
896
- completedAt: IsoDateTime
897
- });
898
- var ProjectionPendingApprovalStatus = Schema3.Literals(["pending", "resolved"]);
899
- var ProjectionPendingApprovalDecision = Schema3.NullOr(ProviderApprovalDecision);
900
- var DispatchResult = Schema3.Struct({
901
- sequence: NonNegativeInt
902
- });
903
- var OrchestrationGetSnapshotInput = Schema3.Struct({});
904
- var OrchestrationGetTurnDiffInput = TurnCountRange.mapFields(Struct.assign({ threadId: ThreadId }), { unsafePreserveChecks: true });
905
- var OrchestrationGetFullThreadDiffInput = Schema3.Struct({
906
- threadId: ThreadId,
907
- toTurnCount: NonNegativeInt
908
- });
909
- var OrchestrationReplayEventsInput = Schema3.Struct({
910
- fromSequenceExclusive: NonNegativeInt
911
- });
912
- var OrchestrationReplayEventsResult = Schema3.Array(OrchestrationEvent);
77
+ var ChatAttachment = Schema2.Union([ChatImageAttachment]);
913
78
 
914
79
  // packages/contracts/src/runtime.ts
915
- var RunKind = Schema4.Literals(["adhoc", "task", "batch", "validation", "review"]);
916
- var RunMode = Schema4.Literals(["interactive", "autonomous", "supervised"]);
917
- var RunStatus = Schema4.Literals([
80
+ var RunKind = Schema3.Literals(["adhoc", "task", "batch", "validation", "review"]);
81
+ var RunMode = Schema3.Literals(["interactive", "autonomous", "supervised"]);
82
+ var RunStatus = Schema3.Literals([
918
83
  "created",
919
84
  "queued",
920
85
  "preparing",
921
86
  "running",
922
87
  "waiting-approval",
923
88
  "waiting-user-input",
89
+ "paused",
924
90
  "validating",
925
91
  "reviewing",
92
+ "closing-out",
93
+ "needs-attention",
926
94
  "completed",
927
95
  "failed",
928
- "cancelled",
929
- "paused"
96
+ "stopped"
930
97
  ]);
931
- var EngineSandboxMode = Schema4.Literals([
98
+ var EngineSandboxMode = Schema3.Literals([
932
99
  "read-only",
933
100
  "workspace-write",
934
101
  "danger-full-access"
935
102
  ]);
936
- var IsolationMode = Schema4.Literals(["none", "env", "worktree"]);
937
- var RuntimeStatus = Schema4.Literals([
103
+ var IsolationMode = Schema3.Literals(["none", "env", "worktree"]);
104
+ var RuntimeStatus = Schema3.Literals([
938
105
  "prepared",
939
106
  "starting",
940
107
  "running",
@@ -943,88 +110,88 @@ var RuntimeStatus = Schema4.Literals([
943
110
  "failed",
944
111
  "destroyed"
945
112
  ]);
946
- var RunExecutionTarget = Schema4.Literals(["local", "remote"]);
947
- var RunSummary = Schema4.Struct({
113
+ var RunExecutionTarget = Schema3.Literals(["local", "remote"]);
114
+ var RunSummary = Schema3.Struct({
948
115
  id: RunId,
949
116
  workspaceId: WorkspaceId,
950
- taskId: Schema4.NullOr(TaskId),
117
+ taskId: Schema3.NullOr(TaskId),
951
118
  title: TrimmedNonEmptyString,
952
119
  runKind: RunKind,
953
120
  mode: RunMode,
954
121
  runtimeMode: RuntimeMode,
955
122
  interactionMode: ProviderInteractionMode,
956
123
  status: RunStatus,
957
- runtimeAdapter: TrimmedNonEmptyString,
958
- model: Schema4.NullOr(TrimmedNonEmptyString),
959
- initialPrompt: Schema4.NullOr(Schema4.String),
960
- executionTarget: Schema4.optional(RunExecutionTarget),
961
- remoteHostId: Schema4.optional(Schema4.NullOr(TrimmedNonEmptyString)),
962
- remoteLeaseId: Schema4.optional(Schema4.NullOr(TrimmedNonEmptyString)),
963
- remoteLeaseClaimedAt: Schema4.optional(Schema4.NullOr(IsoDateTime)),
964
- activeRuntimeId: Schema4.NullOr(EngineRuntimeId),
965
- latestMessageId: Schema4.NullOr(TrimmedNonEmptyString),
124
+ runtimeAdapter: Schema3.Literal("pi"),
125
+ model: Schema3.NullOr(TrimmedNonEmptyString),
126
+ initialPrompt: Schema3.NullOr(Schema3.String),
127
+ executionTarget: Schema3.optional(RunExecutionTarget),
128
+ remoteHostId: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString)),
129
+ remoteLeaseId: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString)),
130
+ remoteLeaseClaimedAt: Schema3.optional(Schema3.NullOr(IsoDateTime)),
131
+ activeRuntimeId: Schema3.NullOr(EngineRuntimeId),
132
+ latestMessageId: Schema3.NullOr(TrimmedNonEmptyString),
966
133
  pendingApprovalCount: NonNegativeInt,
967
134
  pendingUserInputCount: NonNegativeInt,
968
- branch: Schema4.NullOr(TrimmedNonEmptyString),
969
- worktreePath: Schema4.NullOr(TrimmedNonEmptyString),
970
- errorText: Schema4.NullOr(Schema4.String),
135
+ branch: Schema3.NullOr(TrimmedNonEmptyString),
136
+ worktreePath: Schema3.NullOr(TrimmedNonEmptyString),
137
+ errorText: Schema3.NullOr(Schema3.String),
971
138
  createdAt: IsoDateTime,
972
139
  updatedAt: IsoDateTime,
973
- startedAt: Schema4.NullOr(IsoDateTime),
974
- completedAt: Schema4.NullOr(IsoDateTime)
140
+ startedAt: Schema3.NullOr(IsoDateTime),
141
+ completedAt: Schema3.NullOr(IsoDateTime)
975
142
  });
976
- var RuntimeSummary = Schema4.Struct({
143
+ var RuntimeSummary = Schema3.Struct({
977
144
  id: EngineRuntimeId,
978
145
  workspaceId: WorkspaceId,
979
146
  runId: RunId,
980
- adapterKind: TrimmedNonEmptyString,
981
- executionTarget: Schema4.optional(RunExecutionTarget),
982
- remoteHostId: Schema4.optional(Schema4.NullOr(TrimmedNonEmptyString)),
147
+ adapterKind: Schema3.Literal("pi"),
148
+ executionTarget: Schema3.optional(RunExecutionTarget),
149
+ remoteHostId: Schema3.optional(Schema3.NullOr(TrimmedNonEmptyString)),
983
150
  status: RuntimeStatus,
984
151
  sandboxMode: EngineSandboxMode,
985
152
  isolationMode: IsolationMode,
986
- workspaceDir: Schema4.NullOr(TrimmedNonEmptyString),
987
- homeDir: Schema4.NullOr(TrimmedNonEmptyString),
988
- tmpDir: Schema4.NullOr(TrimmedNonEmptyString),
989
- cacheDir: Schema4.NullOr(TrimmedNonEmptyString),
990
- logsDir: Schema4.NullOr(TrimmedNonEmptyString),
991
- stateDir: Schema4.NullOr(TrimmedNonEmptyString),
992
- sessionDir: Schema4.NullOr(TrimmedNonEmptyString),
993
- sessionLogPath: Schema4.NullOr(TrimmedNonEmptyString),
994
- pid: Schema4.NullOr(NonNegativeInt),
995
- startedAt: Schema4.NullOr(IsoDateTime),
153
+ workspaceDir: Schema3.NullOr(TrimmedNonEmptyString),
154
+ homeDir: Schema3.NullOr(TrimmedNonEmptyString),
155
+ tmpDir: Schema3.NullOr(TrimmedNonEmptyString),
156
+ cacheDir: Schema3.NullOr(TrimmedNonEmptyString),
157
+ logsDir: Schema3.NullOr(TrimmedNonEmptyString),
158
+ stateDir: Schema3.NullOr(TrimmedNonEmptyString),
159
+ sessionDir: Schema3.NullOr(TrimmedNonEmptyString),
160
+ sessionLogPath: Schema3.NullOr(TrimmedNonEmptyString),
161
+ pid: Schema3.NullOr(NonNegativeInt),
162
+ startedAt: Schema3.NullOr(IsoDateTime),
996
163
  updatedAt: IsoDateTime,
997
- exitedAt: Schema4.NullOr(IsoDateTime)
164
+ exitedAt: Schema3.NullOr(IsoDateTime)
998
165
  });
999
- var ApprovalStatus = Schema4.Literals(["pending", "resolved"]);
1000
- var ApprovalSummary = Schema4.Struct({
166
+ var ApprovalStatus = Schema3.Literals(["pending", "resolved"]);
167
+ var ApprovalSummary = Schema3.Struct({
1001
168
  id: TrimmedNonEmptyString,
1002
169
  runId: RunId,
1003
- actionId: Schema4.NullOr(TrimmedNonEmptyString),
170
+ actionId: Schema3.NullOr(TrimmedNonEmptyString),
1004
171
  requestKind: TrimmedNonEmptyString,
1005
172
  status: ApprovalStatus,
1006
- payload: Schema4.Unknown,
173
+ payload: Schema3.Unknown,
1007
174
  createdAt: IsoDateTime,
1008
- resolvedAt: Schema4.NullOr(IsoDateTime)
175
+ resolvedAt: Schema3.NullOr(IsoDateTime)
1009
176
  });
1010
- var UserInputRequestSummary = Schema4.Struct({
177
+ var UserInputRequestSummary = Schema3.Struct({
1011
178
  id: TrimmedNonEmptyString,
1012
179
  runId: RunId,
1013
180
  status: ApprovalStatus,
1014
- payload: Schema4.Unknown,
181
+ payload: Schema3.Unknown,
1015
182
  createdAt: IsoDateTime,
1016
- resolvedAt: Schema4.NullOr(IsoDateTime)
183
+ resolvedAt: Schema3.NullOr(IsoDateTime)
1017
184
  });
1018
- var WorktreeSummary = Schema4.Struct({
185
+ var WorktreeSummary = Schema3.Struct({
1019
186
  id: WorktreeId,
1020
187
  workspaceId: WorkspaceId,
1021
188
  runId: RunId,
1022
- taskId: Schema4.NullOr(TaskId),
189
+ taskId: Schema3.NullOr(TaskId),
1023
190
  branchName: TrimmedNonEmptyString,
1024
191
  path: TrimmedNonEmptyString,
1025
192
  status: TrimmedNonEmptyString,
1026
193
  createdAt: IsoDateTime,
1027
- cleanedAt: Schema4.NullOr(IsoDateTime)
194
+ cleanedAt: Schema3.NullOr(IsoDateTime)
1028
195
  });
1029
196
  export {
1030
197
  WorktreeSummary,