t3code-cli 0.12.0 → 0.13.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.
Files changed (64) hide show
  1. package/dist/application.js +1 -1
  2. package/dist/auth.js +1 -1
  3. package/dist/bin.js +48 -31
  4. package/dist/cli.js +1 -1
  5. package/dist/config.js +1 -1
  6. package/dist/connection.js +1 -1
  7. package/dist/index.js +1 -1
  8. package/dist/node.js +1 -1
  9. package/dist/rolldown-runtime.js +1 -1
  10. package/dist/rpc.js +1 -1
  11. package/dist/shared.js +11971 -1517
  12. package/dist/src/application/actions.d.ts +1 -1
  13. package/dist/src/application/layer.d.ts +42 -42
  14. package/dist/src/application/project-commands.d.ts +3 -3
  15. package/dist/src/application/projects.d.ts +1 -1
  16. package/dist/src/application/shell-sequence.d.ts +23 -28
  17. package/dist/src/application/terminals.d.ts +6 -6
  18. package/dist/src/application/thread-commands.d.ts +18 -18
  19. package/dist/src/application/thread-update.d.ts +1 -1
  20. package/dist/src/application/thread-wait.d.ts +19 -24
  21. package/dist/src/application/threads.d.ts +124 -149
  22. package/dist/src/auth/error.d.ts +1 -2
  23. package/dist/src/auth/layer.d.ts +2 -2
  24. package/dist/src/auth/local-origin.d.ts +2 -2
  25. package/dist/src/auth/local-token.d.ts +2 -2
  26. package/dist/src/auth/remote-error.d.ts +3 -0
  27. package/dist/src/config/config.d.ts +2 -2
  28. package/dist/src/config/credential/service.d.ts +2 -2
  29. package/dist/src/config/keystore/file.d.ts +1 -1
  30. package/dist/src/config/persist/migration.d.ts +3 -3
  31. package/dist/src/config/persist/persist.d.ts +4 -4
  32. package/dist/src/connection/error.d.ts +3 -1
  33. package/dist/src/connection/prepared.d.ts +14 -0
  34. package/dist/src/domain/helpers.d.ts +46 -51
  35. package/dist/src/domain/model-config.d.ts +91 -86
  36. package/dist/src/domain/thread-lifecycle.d.ts +23 -28
  37. package/dist/src/orchestration/layer.d.ts +308 -523
  38. package/dist/src/rpc/error.d.ts +4 -6
  39. package/dist/src/rpc/index.d.ts +3 -2
  40. package/dist/src/rpc/layer.d.ts +1890 -2299
  41. package/dist/src/rpc/operation.d.ts +4 -6260
  42. package/dist/src/rpc/service.d.ts +1 -1
  43. package/dist/src/rpc/session.d.ts +22 -0
  44. package/dist/src/rpc/ws-group.d.ts +439 -1180
  45. package/dist/src/runtime/layer.d.ts +10 -10
  46. package/dist/src/sql/node-sqlite-client.d.ts +1 -1
  47. package/dist/t3tools.js +2 -2
  48. package/package.json +8 -7
  49. package/src/application/thread-wait.ts +4 -0
  50. package/src/auth/error.ts +2 -8
  51. package/src/auth/remote-error.ts +17 -0
  52. package/src/auth/transport.ts +45 -114
  53. package/src/connection/error.ts +4 -1
  54. package/src/connection/layer.ts +5 -2
  55. package/src/connection/prepared.ts +83 -0
  56. package/src/orchestration/layer.ts +2 -1
  57. package/src/rpc/error.ts +9 -16
  58. package/src/rpc/index.ts +3 -2
  59. package/src/rpc/layer.ts +17 -51
  60. package/src/rpc/operation.ts +16 -2
  61. package/src/rpc/service.ts +2 -1
  62. package/src/rpc/session.ts +168 -0
  63. package/src/rpc/ws-group.ts +12 -26
  64. package/src/runtime/layer.ts +6 -3
@@ -12,7 +12,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
12
12
  readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
13
13
  readonly title: string;
14
14
  readonly workspaceRoot: string;
15
- readonly createdAt: string;
16
15
  readonly createWorkspaceRootIfMissing?: boolean | undefined;
17
16
  readonly defaultModelSelection?: {
18
17
  readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
@@ -22,6 +21,7 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
22
21
  readonly value: string | boolean;
23
22
  }[];
24
23
  } | null | undefined;
24
+ readonly createdAt: string;
25
25
  } | {
26
26
  readonly type: "project.meta.update";
27
27
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
@@ -40,7 +40,7 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
40
40
  readonly id: string;
41
41
  readonly name: string;
42
42
  readonly command: string;
43
- readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
43
+ readonly icon: "build" | "configure" | "debug" | "lint" | "play" | "test";
44
44
  readonly runOnWorktreeCreate: boolean;
45
45
  readonly previewUrl?: string | undefined;
46
46
  readonly autoOpenPreview?: boolean | undefined;
@@ -64,7 +64,7 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
64
64
  readonly value: string | boolean;
65
65
  }[];
66
66
  };
67
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
67
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
68
68
  readonly interactionMode: "default" | "plan";
69
69
  readonly branch: string | null;
70
70
  readonly worktreePath: string | null;
@@ -81,6 +81,25 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
81
81
  readonly type: "thread.unarchive";
82
82
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
83
83
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
84
+ } | {
85
+ readonly type: "thread.settle";
86
+ readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
87
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
88
+ } | {
89
+ readonly type: "thread.unsettle";
90
+ readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
91
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
92
+ readonly reason: "user";
93
+ } | {
94
+ readonly type: "thread.snooze";
95
+ readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
96
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
97
+ readonly snoozedUntil: string;
98
+ } | {
99
+ readonly type: "thread.unsnooze";
100
+ readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
101
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
102
+ readonly reason: "user";
84
103
  } | {
85
104
  readonly type: "thread.meta.update";
86
105
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
@@ -95,12 +114,13 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
95
114
  }[];
96
115
  } | undefined;
97
116
  readonly branch?: string | null | undefined;
117
+ readonly expectedBranch?: string | null | undefined;
98
118
  readonly worktreePath?: string | null | undefined;
99
119
  } | {
100
120
  readonly type: "thread.runtime-mode.set";
101
121
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
102
122
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
103
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
123
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
104
124
  readonly createdAt: string;
105
125
  } | {
106
126
  readonly type: "thread.interaction-mode.set";
@@ -112,14 +132,14 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
112
132
  readonly type: "thread.turn.interrupt";
113
133
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
114
134
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
115
- readonly createdAt: string;
116
135
  readonly turnId?: (string & import("effect/Brand").Brand<"TurnId">) | undefined;
136
+ readonly createdAt: string;
117
137
  } | {
118
138
  readonly type: "thread.approval.respond";
119
139
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
120
140
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
121
141
  readonly requestId: string & import("effect/Brand").Brand<"ApprovalRequestId">;
122
- readonly decision: "accept" | "acceptForSession" | "decline" | "cancel";
142
+ readonly decision: "accept" | "acceptForSession" | "cancel" | "decline";
123
143
  readonly createdAt: string;
124
144
  } | {
125
145
  readonly type: "thread.user-input.respond";
@@ -141,20 +161,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
141
161
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
142
162
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
143
163
  readonly createdAt: string;
144
- } | {
145
- readonly type: "thread.goal.request";
146
- readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
147
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
148
- readonly request: {
149
- readonly kind: "status";
150
- } | {
151
- readonly kind: "control";
152
- readonly action: "pause" | "resume" | "clear";
153
- } | {
154
- readonly kind: "set";
155
- readonly objective: string;
156
- };
157
- readonly createdAt: string;
158
164
  } | {
159
165
  readonly type: "thread.turn.start";
160
166
  readonly commandId: string & import("effect/Brand").Brand<"CommandId">;
@@ -171,9 +177,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
171
177
  readonly dataUrl: string;
172
178
  }[];
173
179
  };
174
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
175
- readonly interactionMode: "default" | "plan";
176
- readonly createdAt: string;
177
180
  readonly modelSelection?: {
178
181
  readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
179
182
  readonly model: string;
@@ -183,6 +186,8 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
183
186
  }[];
184
187
  } | undefined;
185
188
  readonly titleSeed?: string | undefined;
189
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
190
+ readonly interactionMode: "default" | "plan";
186
191
  readonly bootstrap?: {
187
192
  readonly createThread?: {
188
193
  readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
@@ -195,7 +200,7 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
195
200
  readonly value: string | boolean;
196
201
  }[];
197
202
  };
198
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
203
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
199
204
  readonly interactionMode: "default" | "plan";
200
205
  readonly branch: string | null;
201
206
  readonly worktreePath: string | null;
@@ -205,6 +210,7 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
205
210
  readonly projectCwd: string;
206
211
  readonly baseBranch: string;
207
212
  readonly branch?: string | undefined;
213
+ readonly startFromOrigin?: boolean | undefined;
208
214
  } | undefined;
209
215
  readonly runSetupScript?: boolean | undefined;
210
216
  } | undefined;
@@ -212,123 +218,19 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
212
218
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
213
219
  readonly planId: string;
214
220
  } | undefined;
221
+ readonly createdAt: string;
215
222
  }) => Effect.Effect<{
216
223
  readonly sequence: number;
217
224
  }, RpcError, never>;
218
225
  getServerConfig: () => Effect.Effect<{
219
226
  readonly environment: {
220
- readonly environmentId: string & import("effect/Brand").Brand<"EnvironmentId">;
221
- readonly label: string;
222
- readonly platform: {
223
- readonly os: "unknown" | "darwin" | "linux" | "windows";
224
- readonly arch: "arm64" | "x64" | "other";
225
- };
226
- readonly serverVersion: string;
227
227
  readonly capabilities: {
228
- readonly repositoryIdentity: boolean;
228
+ readonly connectionProbe: boolean;
229
229
  };
230
230
  };
231
- readonly auth: {
232
- readonly policy: "desktop-managed-local" | "loopback-browser" | "remote-reachable" | "unsafe-no-auth";
233
- readonly bootstrapMethods: readonly ("desktop-bootstrap" | "one-time-token")[];
234
- readonly sessionMethods: readonly ("browser-session-cookie" | "bearer-access-token" | "dpop-access-token")[];
235
- readonly sessionCookieName: string;
236
- };
237
- readonly cwd: string;
238
- readonly keybindingsConfigPath: string;
239
- readonly keybindings: readonly {
240
- readonly command: "thread.jump.1" | "thread.jump.2" | "thread.jump.3" | "thread.jump.4" | "thread.jump.5" | "thread.jump.6" | "thread.jump.7" | "thread.jump.8" | "thread.jump.9" | "modelPicker.jump.1" | "modelPicker.jump.2" | "modelPicker.jump.3" | "modelPicker.jump.4" | "modelPicker.jump.5" | "modelPicker.jump.6" | "modelPicker.jump.7" | "modelPicker.jump.8" | "modelPicker.jump.9" | "thread.previous" | "thread.next" | "modelPicker.toggle" | "terminal.toggle" | "terminal.split" | "terminal.splitVertical" | "terminal.new" | "terminal.close" | "rightPanel.toggle" | "diff.toggle" | "preview.toggle" | "preview.refresh" | "preview.focusUrl" | "preview.zoomIn" | "preview.zoomOut" | "preview.resetZoom" | "commandPalette.toggle" | "chat.new" | "chat.newLocal" | "editor.openFavorite" | `script.${string}.run`;
241
- readonly shortcut: {
242
- readonly key: string;
243
- readonly metaKey: boolean;
244
- readonly ctrlKey: boolean;
245
- readonly shiftKey: boolean;
246
- readonly altKey: boolean;
247
- readonly modKey: boolean;
248
- };
249
- readonly whenAst?: {
250
- readonly type: "identifier";
251
- readonly name: string;
252
- } | {
253
- readonly type: "not";
254
- readonly node: import("@t3tools/contracts").KeybindingWhenNode;
255
- } | {
256
- readonly type: "and";
257
- readonly left: import("@t3tools/contracts").KeybindingWhenNode;
258
- readonly right: import("@t3tools/contracts").KeybindingWhenNode;
259
- } | {
260
- readonly type: "or";
261
- readonly left: import("@t3tools/contracts").KeybindingWhenNode;
262
- readonly right: import("@t3tools/contracts").KeybindingWhenNode;
263
- } | undefined;
264
- }[];
265
- readonly issues: readonly ({
266
- readonly kind: "keybindings.malformed-config";
267
- readonly message: string;
268
- } | {
269
- readonly kind: "keybindings.invalid-entry";
270
- readonly message: string;
271
- readonly index: number;
272
- })[];
273
231
  readonly providers: readonly {
274
232
  readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
275
233
  readonly driver: string & import("effect/Brand").Brand<"ProviderDriverKind">;
276
- readonly enabled: boolean;
277
- readonly installed: boolean;
278
- readonly version: string | null;
279
- readonly status: "error" | "ready" | "warning" | "disabled";
280
- readonly auth: {
281
- readonly status: "authenticated" | "unknown" | "unauthenticated";
282
- readonly type?: string | undefined;
283
- readonly label?: string | undefined;
284
- readonly email?: string | undefined;
285
- };
286
- readonly checkedAt: string;
287
- readonly models: readonly {
288
- readonly slug: string;
289
- readonly name: string;
290
- readonly isCustom: boolean;
291
- readonly capabilities: {
292
- readonly optionDescriptors?: readonly ({
293
- readonly type: "select";
294
- readonly options: readonly {
295
- readonly id: string;
296
- readonly label: string;
297
- readonly description?: string | undefined;
298
- readonly isDefault?: boolean | undefined;
299
- }[];
300
- readonly id: string;
301
- readonly label: string;
302
- readonly currentValue?: string | undefined;
303
- readonly promptInjectedValues?: readonly string[] | undefined;
304
- readonly description?: string | undefined;
305
- } | {
306
- readonly type: "boolean";
307
- readonly id: string;
308
- readonly label: string;
309
- readonly currentValue?: boolean | undefined;
310
- readonly description?: string | undefined;
311
- })[] | undefined;
312
- } | null;
313
- readonly shortName?: string | undefined;
314
- readonly subProvider?: string | undefined;
315
- }[];
316
- readonly slashCommands: readonly {
317
- readonly name: string;
318
- readonly description?: string | undefined;
319
- readonly input?: {
320
- readonly hint: string;
321
- } | undefined;
322
- }[];
323
- readonly skills: readonly {
324
- readonly name: string;
325
- readonly path: string;
326
- readonly enabled: boolean;
327
- readonly description?: string | undefined;
328
- readonly scope?: string | undefined;
329
- readonly displayName?: string | undefined;
330
- readonly shortDescription?: string | undefined;
331
- }[];
332
234
  readonly displayName?: string | undefined;
333
235
  readonly accentColor?: string | undefined;
334
236
  readonly badgeLabel?: string | undefined;
@@ -337,123 +239,32 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
337
239
  } | undefined;
338
240
  readonly showInteractionModeToggle?: boolean | undefined;
339
241
  readonly requiresNewThreadForModelChange?: boolean | undefined;
340
- readonly message?: string | undefined;
341
- readonly availability?: "available" | "unavailable" | undefined;
342
- readonly unavailableReason?: string | undefined;
343
- readonly versionAdvisory?: {
344
- readonly status: "unknown" | "current" | "behind_latest";
345
- readonly currentVersion: string | null;
346
- readonly latestVersion: string | null;
347
- readonly updateCommand: string | null;
348
- readonly canUpdate: boolean;
349
- readonly checkedAt: string | null;
350
- readonly message: string | null;
351
- };
352
- readonly updateState?: {
353
- readonly status: "idle" | "running" | "failed" | "queued" | "succeeded" | "unchanged";
354
- readonly startedAt: string | null;
355
- readonly finishedAt: string | null;
356
- readonly message: string | null;
357
- readonly output: string | null;
358
- };
359
- }[];
360
- readonly availableEditors: readonly ("cursor" | "trae" | "kiro" | "vscode" | "vscode-insiders" | "vscodium" | "zed" | "antigravity" | "idea" | "aqua" | "clion" | "datagrip" | "dataspell" | "goland" | "phpstorm" | "pycharm" | "rider" | "rubymine" | "rustrover" | "webstorm" | "file-manager")[];
361
- readonly observability: {
362
- readonly logsDirectoryPath: string;
363
- readonly localTracingEnabled: boolean;
364
- readonly otlpTracesEnabled: boolean;
365
- readonly otlpMetricsEnabled: boolean;
366
- readonly otlpTracesUrl?: string | undefined;
367
- readonly otlpMetricsUrl?: string | undefined;
368
- };
369
- readonly settings: {
370
- readonly enableAssistantStreaming: boolean;
371
- readonly automaticGitFetchInterval: import("effect/Duration").Duration;
372
- readonly defaultThreadEnvMode: "local" | "worktree";
373
- readonly addProjectBaseDirectory: string;
374
- readonly textGenerationModelSelection: {
375
- readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
376
- readonly model: string;
377
- readonly options?: readonly {
378
- readonly id: string;
379
- readonly value: string | boolean;
380
- }[];
381
- };
382
- readonly providers: {
383
- readonly codex: {
384
- readonly enabled: boolean;
385
- readonly binaryPath: string;
386
- readonly homePath: string;
387
- readonly shadowHomePath: string;
388
- readonly customModels: readonly string[];
389
- };
390
- readonly claudeAgent: {
391
- readonly enabled: boolean;
392
- readonly binaryPath: string;
393
- readonly homePath: string;
394
- readonly customModels: readonly string[];
395
- readonly launchArgs: string;
396
- };
397
- readonly cursor: {
398
- readonly enabled: boolean;
399
- readonly binaryPath: string;
400
- readonly apiEndpoint: string;
401
- readonly customModels: readonly string[];
402
- };
403
- readonly grok: {
404
- readonly enabled: boolean;
405
- readonly binaryPath: string;
406
- readonly customModels: readonly string[];
407
- };
408
- readonly opencode: {
409
- readonly enabled: boolean;
410
- readonly binaryPath: string;
411
- readonly serverUrl: string;
412
- readonly serverPassword: string;
413
- readonly customModels: readonly string[];
414
- };
415
- };
416
- readonly providerInstances: {
417
- readonly [x: string & import("effect/Brand").Brand<"ProviderInstanceId">]: {
418
- readonly driver: string & import("effect/Brand").Brand<"ProviderDriverKind">;
419
- readonly displayName?: string | undefined;
420
- readonly accentColor?: string | undefined;
421
- readonly environment?: readonly {
422
- readonly name: string;
423
- readonly value: string;
424
- readonly sensitive: boolean;
425
- readonly valueRedacted?: boolean;
426
- }[];
427
- readonly enabled?: boolean;
428
- readonly config?: unknown;
429
- };
430
- };
431
- readonly observability: {
432
- readonly otlpTracesUrl: string;
433
- readonly otlpMetricsUrl: string;
434
- };
435
- };
436
- } | {
437
- readonly providers: readonly {
438
- readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
439
- readonly driver: string & import("effect/Brand").Brand<"ProviderDriverKind">;
440
242
  readonly enabled: boolean;
441
243
  readonly installed: boolean;
442
244
  readonly version: string | null;
443
- readonly status: "error" | "ready" | "warning" | "disabled";
245
+ readonly status: "disabled" | "error" | "ready" | "warning";
444
246
  readonly auth: {
445
- readonly status: "authenticated" | "unknown" | "unauthenticated";
247
+ readonly status: "authenticated" | "unauthenticated" | "unknown";
446
248
  readonly type?: string | undefined;
447
249
  readonly label?: string | undefined;
448
250
  readonly email?: string | undefined;
449
251
  };
450
252
  readonly checkedAt: string;
253
+ readonly message?: string | undefined;
254
+ readonly availability?: "available" | "unavailable" | undefined;
255
+ readonly unavailableReason?: string | undefined;
451
256
  readonly models: readonly {
452
257
  readonly slug: string;
453
258
  readonly name: string;
259
+ readonly shortName?: string | undefined;
260
+ readonly subProvider?: string | undefined;
454
261
  readonly isCustom: boolean;
262
+ readonly isDefault?: boolean | undefined;
455
263
  readonly capabilities: {
456
264
  readonly optionDescriptors?: readonly ({
265
+ readonly id: string;
266
+ readonly label: string;
267
+ readonly description?: string | undefined;
457
268
  readonly type: "select";
458
269
  readonly options: readonly {
459
270
  readonly id: string;
@@ -461,21 +272,16 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
461
272
  readonly description?: string | undefined;
462
273
  readonly isDefault?: boolean | undefined;
463
274
  }[];
464
- readonly id: string;
465
- readonly label: string;
466
275
  readonly currentValue?: string | undefined;
467
276
  readonly promptInjectedValues?: readonly string[] | undefined;
468
- readonly description?: string | undefined;
469
277
  } | {
470
- readonly type: "boolean";
471
278
  readonly id: string;
472
279
  readonly label: string;
473
- readonly currentValue?: boolean | undefined;
474
280
  readonly description?: string | undefined;
281
+ readonly type: "boolean";
282
+ readonly currentValue?: boolean | undefined;
475
283
  })[] | undefined;
476
284
  } | null;
477
- readonly shortName?: string | undefined;
478
- readonly subProvider?: string | undefined;
479
285
  }[];
480
286
  readonly slashCommands: readonly {
481
287
  readonly name: string;
@@ -486,26 +292,15 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
486
292
  }[];
487
293
  readonly skills: readonly {
488
294
  readonly name: string;
489
- readonly path: string;
490
- readonly enabled: boolean;
491
295
  readonly description?: string | undefined;
296
+ readonly path: string;
492
297
  readonly scope?: string | undefined;
298
+ readonly enabled: boolean;
493
299
  readonly displayName?: string | undefined;
494
300
  readonly shortDescription?: string | undefined;
495
301
  }[];
496
- readonly displayName?: string | undefined;
497
- readonly accentColor?: string | undefined;
498
- readonly badgeLabel?: string | undefined;
499
- readonly continuation?: {
500
- readonly groupKey: string;
501
- } | undefined;
502
- readonly showInteractionModeToggle?: boolean | undefined;
503
- readonly requiresNewThreadForModelChange?: boolean | undefined;
504
- readonly message?: string | undefined;
505
- readonly availability?: "available" | "unavailable" | undefined;
506
- readonly unavailableReason?: string | undefined;
507
302
  readonly versionAdvisory?: {
508
- readonly status: "unknown" | "current" | "behind_latest";
303
+ readonly status: "behind_latest" | "current" | "unknown";
509
304
  readonly currentVersion: string | null;
510
305
  readonly latestVersion: string | null;
511
306
  readonly updateCommand: string | null;
@@ -514,7 +309,7 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
514
309
  readonly message: string | null;
515
310
  };
516
311
  readonly updateState?: {
517
- readonly status: "idle" | "running" | "failed" | "queued" | "succeeded" | "unchanged";
312
+ readonly status: "failed" | "idle" | "queued" | "running" | "succeeded" | "unchanged";
518
313
  readonly startedAt: string | null;
519
314
  readonly finishedAt: string | null;
520
315
  readonly message: string | null;
@@ -528,6 +323,19 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
528
323
  readonly id: string & import("effect/Brand").Brand<"ProjectId">;
529
324
  readonly title: string;
530
325
  readonly workspaceRoot: string;
326
+ readonly repositoryIdentity?: {
327
+ readonly canonicalKey: string;
328
+ readonly locator: {
329
+ readonly source: "git-remote";
330
+ readonly remoteName: string;
331
+ readonly remoteUrl: string;
332
+ };
333
+ readonly rootPath?: string;
334
+ readonly displayName?: string;
335
+ readonly provider?: string;
336
+ readonly owner?: string;
337
+ readonly name?: string;
338
+ } | null | undefined;
531
339
  readonly defaultModelSelection: {
532
340
  readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
533
341
  readonly model: string;
@@ -540,26 +348,13 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
540
348
  readonly id: string;
541
349
  readonly name: string;
542
350
  readonly command: string;
543
- readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
351
+ readonly icon: "build" | "configure" | "debug" | "lint" | "play" | "test";
544
352
  readonly runOnWorktreeCreate: boolean;
545
353
  readonly previewUrl?: string | undefined;
546
354
  readonly autoOpenPreview?: boolean | undefined;
547
355
  }[];
548
356
  readonly createdAt: string;
549
357
  readonly updatedAt: string;
550
- readonly repositoryIdentity?: {
551
- readonly canonicalKey: string;
552
- readonly locator: {
553
- readonly source: "git-remote";
554
- readonly remoteName: string;
555
- readonly remoteUrl: string;
556
- };
557
- readonly rootPath?: string;
558
- readonly displayName?: string;
559
- readonly provider?: string;
560
- readonly owner?: string;
561
- readonly name?: string;
562
- } | null | undefined;
563
358
  }[];
564
359
  readonly threads: readonly {
565
360
  readonly id: string & import("effect/Brand").Brand<"ThreadId">;
@@ -573,13 +368,13 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
573
368
  readonly value: string | boolean;
574
369
  }[];
575
370
  };
576
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
371
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
577
372
  readonly interactionMode: "default" | "plan";
578
373
  readonly branch: string | null;
579
374
  readonly worktreePath: string | null;
580
375
  readonly latestTurn: {
581
376
  readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
582
- readonly state: "error" | "running" | "interrupted" | "completed";
377
+ readonly state: "completed" | "error" | "interrupted" | "running";
583
378
  readonly requestedAt: string;
584
379
  readonly startedAt: string | null;
585
380
  readonly completedAt: string | null;
@@ -592,24 +387,19 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
592
387
  readonly createdAt: string;
593
388
  readonly updatedAt: string;
594
389
  readonly archivedAt: string | null;
390
+ readonly settledOverride: "active" | "settled" | null;
391
+ readonly settledAt: string | null;
392
+ readonly snoozedUntil?: string | null | undefined;
393
+ readonly snoozedAt?: string | null | undefined;
595
394
  readonly session: {
596
395
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
597
- readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
396
+ readonly status: "error" | "idle" | "interrupted" | "ready" | "running" | "starting" | "stopped";
598
397
  readonly providerName: string | null;
599
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
398
+ readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
399
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
600
400
  readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
601
401
  readonly lastError: string | null;
602
402
  readonly updatedAt: string;
603
- readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
604
- } | null;
605
- readonly goal: {
606
- readonly objective: string;
607
- readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
608
- readonly tokensUsed: number;
609
- readonly tokenBudget: number | null;
610
- readonly timeUsedSeconds: number;
611
- readonly createdAt: string;
612
- readonly updatedAt: string;
613
403
  } | null;
614
404
  readonly latestUserMessageAt: string | null;
615
405
  readonly hasPendingApprovals: boolean;
@@ -624,6 +414,19 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
624
414
  readonly id: string & import("effect/Brand").Brand<"ProjectId">;
625
415
  readonly title: string;
626
416
  readonly workspaceRoot: string;
417
+ readonly repositoryIdentity?: {
418
+ readonly canonicalKey: string;
419
+ readonly locator: {
420
+ readonly source: "git-remote";
421
+ readonly remoteName: string;
422
+ readonly remoteUrl: string;
423
+ };
424
+ readonly rootPath?: string;
425
+ readonly displayName?: string;
426
+ readonly provider?: string;
427
+ readonly owner?: string;
428
+ readonly name?: string;
429
+ } | null | undefined;
627
430
  readonly defaultModelSelection: {
628
431
  readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
629
432
  readonly model: string;
@@ -636,26 +439,13 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
636
439
  readonly id: string;
637
440
  readonly name: string;
638
441
  readonly command: string;
639
- readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
442
+ readonly icon: "build" | "configure" | "debug" | "lint" | "play" | "test";
640
443
  readonly runOnWorktreeCreate: boolean;
641
444
  readonly previewUrl?: string | undefined;
642
445
  readonly autoOpenPreview?: boolean | undefined;
643
446
  }[];
644
447
  readonly createdAt: string;
645
448
  readonly updatedAt: string;
646
- readonly repositoryIdentity?: {
647
- readonly canonicalKey: string;
648
- readonly locator: {
649
- readonly source: "git-remote";
650
- readonly remoteName: string;
651
- readonly remoteUrl: string;
652
- };
653
- readonly rootPath?: string;
654
- readonly displayName?: string;
655
- readonly provider?: string;
656
- readonly owner?: string;
657
- readonly name?: string;
658
- } | null | undefined;
659
449
  }[];
660
450
  readonly threads: readonly {
661
451
  readonly id: string & import("effect/Brand").Brand<"ThreadId">;
@@ -669,13 +459,13 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
669
459
  readonly value: string | boolean;
670
460
  }[];
671
461
  };
672
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
462
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
673
463
  readonly interactionMode: "default" | "plan";
674
464
  readonly branch: string | null;
675
465
  readonly worktreePath: string | null;
676
466
  readonly latestTurn: {
677
467
  readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
678
- readonly state: "error" | "running" | "interrupted" | "completed";
468
+ readonly state: "completed" | "error" | "interrupted" | "running";
679
469
  readonly requestedAt: string;
680
470
  readonly startedAt: string | null;
681
471
  readonly completedAt: string | null;
@@ -688,24 +478,19 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
688
478
  readonly createdAt: string;
689
479
  readonly updatedAt: string;
690
480
  readonly archivedAt: string | null;
481
+ readonly settledOverride: "active" | "settled" | null;
482
+ readonly settledAt: string | null;
483
+ readonly snoozedUntil?: string | null | undefined;
484
+ readonly snoozedAt?: string | null | undefined;
691
485
  readonly session: {
692
486
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
693
- readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
487
+ readonly status: "error" | "idle" | "interrupted" | "ready" | "running" | "starting" | "stopped";
694
488
  readonly providerName: string | null;
695
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
489
+ readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
490
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
696
491
  readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
697
492
  readonly lastError: string | null;
698
493
  readonly updatedAt: string;
699
- readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
700
- } | null;
701
- readonly goal: {
702
- readonly objective: string;
703
- readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
704
- readonly tokensUsed: number;
705
- readonly tokenBudget: number | null;
706
- readonly timeUsedSeconds: number;
707
- readonly createdAt: string;
708
- readonly updatedAt: string;
709
494
  } | null;
710
495
  readonly latestUserMessageAt: string | null;
711
496
  readonly hasPendingApprovals: boolean;
@@ -726,13 +511,13 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
726
511
  readonly value: string | boolean;
727
512
  }[];
728
513
  };
729
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
514
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
730
515
  readonly interactionMode: "default" | "plan";
731
516
  readonly branch: string | null;
732
517
  readonly worktreePath: string | null;
733
518
  readonly latestTurn: {
734
519
  readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
735
- readonly state: "error" | "running" | "interrupted" | "completed";
520
+ readonly state: "completed" | "error" | "interrupted" | "running";
736
521
  readonly requestedAt: string;
737
522
  readonly startedAt: string | null;
738
523
  readonly completedAt: string | null;
@@ -745,24 +530,15 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
745
530
  readonly createdAt: string;
746
531
  readonly updatedAt: string;
747
532
  readonly archivedAt: string | null;
533
+ readonly settledOverride: "active" | "settled" | null;
534
+ readonly settledAt: string | null;
535
+ readonly snoozedUntil?: string | null | undefined;
536
+ readonly snoozedAt?: string | null | undefined;
748
537
  readonly deletedAt: string | null;
749
- readonly goal: {
750
- readonly objective: string;
751
- readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
752
- readonly tokensUsed: number;
753
- readonly tokenBudget: number | null;
754
- readonly timeUsedSeconds: number;
755
- readonly createdAt: string;
756
- readonly updatedAt: string;
757
- } | null;
758
538
  readonly messages: readonly {
759
539
  readonly id: string & import("effect/Brand").Brand<"MessageId">;
760
- readonly role: "user" | "assistant" | "system";
540
+ readonly role: "assistant" | "system" | "user";
761
541
  readonly text: string;
762
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
763
- readonly streaming: boolean;
764
- readonly createdAt: string;
765
- readonly updatedAt: string;
766
542
  readonly attachments?: readonly {
767
543
  readonly type: "image";
768
544
  readonly id: string;
@@ -770,6 +546,10 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
770
546
  readonly mimeType: string;
771
547
  readonly sizeBytes: number;
772
548
  }[] | undefined;
549
+ readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
550
+ readonly streaming: boolean;
551
+ readonly createdAt: string;
552
+ readonly updatedAt: string;
773
553
  }[];
774
554
  readonly proposedPlans: readonly {
775
555
  readonly id: string;
@@ -782,19 +562,19 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
782
562
  }[];
783
563
  readonly activities: readonly {
784
564
  readonly id: string & import("effect/Brand").Brand<"EventId">;
785
- readonly tone: "error" | "info" | "tool" | "approval";
565
+ readonly tone: "approval" | "error" | "info" | "tool";
786
566
  readonly kind: string;
787
567
  readonly summary: string;
788
568
  readonly payload: unknown;
789
569
  readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
790
- readonly createdAt: string;
791
570
  readonly sequence?: number | undefined;
571
+ readonly createdAt: string;
792
572
  }[];
793
573
  readonly checkpoints: readonly {
794
574
  readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
795
575
  readonly checkpointTurnCount: number;
796
576
  readonly checkpointRef: string & import("effect/Brand").Brand<"CheckpointRef">;
797
- readonly status: "error" | "ready" | "missing";
577
+ readonly status: "error" | "missing" | "ready";
798
578
  readonly files: readonly {
799
579
  readonly path: string;
800
580
  readonly kind: string;
@@ -806,13 +586,13 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
806
586
  }[];
807
587
  readonly session: {
808
588
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
809
- readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
589
+ readonly status: "error" | "idle" | "interrupted" | "ready" | "running" | "starting" | "stopped";
810
590
  readonly providerName: string | null;
811
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
591
+ readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
592
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
812
593
  readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
813
594
  readonly lastError: string | null;
814
595
  readonly updatedAt: string;
815
- readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
816
596
  } | null;
817
597
  }, RpcError, never>;
818
598
  watchShellSequence: () => Stream.Stream<number, import("./service.ts").OrchestrationError, import("effect/Scope").Scope>;
@@ -830,13 +610,13 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
830
610
  readonly value: string | boolean;
831
611
  }[];
832
612
  };
833
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
613
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
834
614
  readonly interactionMode: "default" | "plan";
835
615
  readonly branch: string | null;
836
616
  readonly worktreePath: string | null;
837
617
  readonly latestTurn: {
838
618
  readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
839
- readonly state: "error" | "running" | "interrupted" | "completed";
619
+ readonly state: "completed" | "error" | "interrupted" | "running";
840
620
  readonly requestedAt: string;
841
621
  readonly startedAt: string | null;
842
622
  readonly completedAt: string | null;
@@ -849,24 +629,15 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
849
629
  readonly createdAt: string;
850
630
  readonly updatedAt: string;
851
631
  readonly archivedAt: string | null;
632
+ readonly settledOverride: "active" | "settled" | null;
633
+ readonly settledAt: string | null;
634
+ readonly snoozedUntil?: string | null | undefined;
635
+ readonly snoozedAt?: string | null | undefined;
852
636
  readonly deletedAt: string | null;
853
- readonly goal: {
854
- readonly objective: string;
855
- readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
856
- readonly tokensUsed: number;
857
- readonly tokenBudget: number | null;
858
- readonly timeUsedSeconds: number;
859
- readonly createdAt: string;
860
- readonly updatedAt: string;
861
- } | null;
862
637
  readonly messages: readonly {
863
638
  readonly id: string & import("effect/Brand").Brand<"MessageId">;
864
- readonly role: "user" | "assistant" | "system";
639
+ readonly role: "assistant" | "system" | "user";
865
640
  readonly text: string;
866
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
867
- readonly streaming: boolean;
868
- readonly createdAt: string;
869
- readonly updatedAt: string;
870
641
  readonly attachments?: readonly {
871
642
  readonly type: "image";
872
643
  readonly id: string;
@@ -874,6 +645,10 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
874
645
  readonly mimeType: string;
875
646
  readonly sizeBytes: number;
876
647
  }[] | undefined;
648
+ readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
649
+ readonly streaming: boolean;
650
+ readonly createdAt: string;
651
+ readonly updatedAt: string;
877
652
  }[];
878
653
  readonly proposedPlans: readonly {
879
654
  readonly id: string;
@@ -886,19 +661,19 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
886
661
  }[];
887
662
  readonly activities: readonly {
888
663
  readonly id: string & import("effect/Brand").Brand<"EventId">;
889
- readonly tone: "error" | "info" | "tool" | "approval";
664
+ readonly tone: "approval" | "error" | "info" | "tool";
890
665
  readonly kind: string;
891
666
  readonly summary: string;
892
667
  readonly payload: unknown;
893
668
  readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
894
- readonly createdAt: string;
895
669
  readonly sequence?: number | undefined;
670
+ readonly createdAt: string;
896
671
  }[];
897
672
  readonly checkpoints: readonly {
898
673
  readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
899
674
  readonly checkpointTurnCount: number;
900
675
  readonly checkpointRef: string & import("effect/Brand").Brand<"CheckpointRef">;
901
- readonly status: "error" | "ready" | "missing";
676
+ readonly status: "error" | "missing" | "ready";
902
677
  readonly files: readonly {
903
678
  readonly path: string;
904
679
  readonly kind: string;
@@ -910,21 +685,49 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
910
685
  }[];
911
686
  readonly session: {
912
687
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
913
- readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
688
+ readonly status: "error" | "idle" | "interrupted" | "ready" | "running" | "starting" | "stopped";
914
689
  readonly providerName: string | null;
915
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
690
+ readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
691
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
916
692
  readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
917
693
  readonly lastError: string | null;
918
694
  readonly updatedAt: string;
919
- readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
920
695
  } | null;
921
696
  };
922
697
  events: Stream.Stream<{
698
+ readonly sequence: number;
699
+ readonly eventId: string & import("effect/Brand").Brand<"EventId">;
700
+ readonly aggregateKind: "project" | "thread";
701
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
702
+ readonly occurredAt: string;
703
+ readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
704
+ readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
705
+ readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
706
+ readonly metadata: {
707
+ readonly providerTurnId?: string | undefined;
708
+ readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
709
+ readonly adapterKey?: string | undefined;
710
+ readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
711
+ readonly ingestedAt?: string | undefined;
712
+ };
923
713
  readonly type: "project.created";
924
714
  readonly payload: {
925
715
  readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
926
716
  readonly title: string;
927
717
  readonly workspaceRoot: string;
718
+ readonly repositoryIdentity?: {
719
+ readonly canonicalKey: string;
720
+ readonly locator: {
721
+ readonly source: "git-remote";
722
+ readonly remoteName: string;
723
+ readonly remoteUrl: string;
724
+ };
725
+ readonly rootPath?: string;
726
+ readonly displayName?: string;
727
+ readonly provider?: string;
728
+ readonly owner?: string;
729
+ readonly name?: string;
730
+ } | null | undefined;
928
731
  readonly defaultModelSelection: {
929
732
  readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
930
733
  readonly model: string;
@@ -937,31 +740,19 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
937
740
  readonly id: string;
938
741
  readonly name: string;
939
742
  readonly command: string;
940
- readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
743
+ readonly icon: "build" | "configure" | "debug" | "lint" | "play" | "test";
941
744
  readonly runOnWorktreeCreate: boolean;
942
745
  readonly previewUrl?: string | undefined;
943
746
  readonly autoOpenPreview?: boolean | undefined;
944
747
  }[];
945
748
  readonly createdAt: string;
946
749
  readonly updatedAt: string;
947
- readonly repositoryIdentity?: {
948
- readonly canonicalKey: string;
949
- readonly locator: {
950
- readonly source: "git-remote";
951
- readonly remoteName: string;
952
- readonly remoteUrl: string;
953
- };
954
- readonly rootPath?: string;
955
- readonly displayName?: string;
956
- readonly provider?: string;
957
- readonly owner?: string;
958
- readonly name?: string;
959
- } | null | undefined;
960
750
  };
751
+ } | {
961
752
  readonly sequence: number;
962
753
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
963
754
  readonly aggregateKind: "project" | "thread";
964
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
755
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
965
756
  readonly occurredAt: string;
966
757
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
967
758
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -973,11 +764,9 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
973
764
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
974
765
  readonly ingestedAt?: string | undefined;
975
766
  };
976
- } | {
977
767
  readonly type: "project.meta-updated";
978
768
  readonly payload: {
979
769
  readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
980
- readonly updatedAt: string;
981
770
  readonly title?: string | undefined;
982
771
  readonly workspaceRoot?: string | undefined;
983
772
  readonly repositoryIdentity?: {
@@ -1005,16 +794,18 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1005
794
  readonly id: string;
1006
795
  readonly name: string;
1007
796
  readonly command: string;
1008
- readonly icon: "play" | "test" | "lint" | "configure" | "build" | "debug";
797
+ readonly icon: "build" | "configure" | "debug" | "lint" | "play" | "test";
1009
798
  readonly runOnWorktreeCreate: boolean;
1010
799
  readonly previewUrl?: string | undefined;
1011
800
  readonly autoOpenPreview?: boolean | undefined;
1012
801
  }[] | undefined;
802
+ readonly updatedAt: string;
1013
803
  };
804
+ } | {
1014
805
  readonly sequence: number;
1015
806
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1016
807
  readonly aggregateKind: "project" | "thread";
1017
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
808
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1018
809
  readonly occurredAt: string;
1019
810
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1020
811
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1026,16 +817,16 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1026
817
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1027
818
  readonly ingestedAt?: string | undefined;
1028
819
  };
1029
- } | {
1030
820
  readonly type: "project.deleted";
1031
821
  readonly payload: {
1032
822
  readonly projectId: string & import("effect/Brand").Brand<"ProjectId">;
1033
823
  readonly deletedAt: string;
1034
824
  };
825
+ } | {
1035
826
  readonly sequence: number;
1036
827
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1037
828
  readonly aggregateKind: "project" | "thread";
1038
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
829
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1039
830
  readonly occurredAt: string;
1040
831
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1041
832
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1047,7 +838,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1047
838
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1048
839
  readonly ingestedAt?: string | undefined;
1049
840
  };
1050
- } | {
1051
841
  readonly type: "thread.created";
1052
842
  readonly payload: {
1053
843
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
@@ -1061,17 +851,18 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1061
851
  readonly value: string | boolean;
1062
852
  }[];
1063
853
  };
1064
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
854
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
1065
855
  readonly interactionMode: "default" | "plan";
1066
856
  readonly branch: string | null;
1067
857
  readonly worktreePath: string | null;
1068
858
  readonly createdAt: string;
1069
859
  readonly updatedAt: string;
1070
860
  };
861
+ } | {
1071
862
  readonly sequence: number;
1072
863
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1073
864
  readonly aggregateKind: "project" | "thread";
1074
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
865
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1075
866
  readonly occurredAt: string;
1076
867
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1077
868
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1083,16 +874,16 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1083
874
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1084
875
  readonly ingestedAt?: string | undefined;
1085
876
  };
1086
- } | {
1087
877
  readonly type: "thread.deleted";
1088
878
  readonly payload: {
1089
879
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1090
880
  readonly deletedAt: string;
1091
881
  };
882
+ } | {
1092
883
  readonly sequence: number;
1093
884
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1094
885
  readonly aggregateKind: "project" | "thread";
1095
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
886
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1096
887
  readonly occurredAt: string;
1097
888
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1098
889
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1104,17 +895,17 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1104
895
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1105
896
  readonly ingestedAt?: string | undefined;
1106
897
  };
1107
- } | {
1108
898
  readonly type: "thread.archived";
1109
899
  readonly payload: {
1110
900
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1111
901
  readonly archivedAt: string;
1112
902
  readonly updatedAt: string;
1113
903
  };
904
+ } | {
1114
905
  readonly sequence: number;
1115
906
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1116
907
  readonly aggregateKind: "project" | "thread";
1117
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
908
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1118
909
  readonly occurredAt: string;
1119
910
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1120
911
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1126,16 +917,16 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1126
917
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1127
918
  readonly ingestedAt?: string | undefined;
1128
919
  };
1129
- } | {
1130
920
  readonly type: "thread.unarchived";
1131
921
  readonly payload: {
1132
922
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1133
923
  readonly updatedAt: string;
1134
924
  };
925
+ } | {
1135
926
  readonly sequence: number;
1136
927
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1137
928
  readonly aggregateKind: "project" | "thread";
1138
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
929
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1139
930
  readonly occurredAt: string;
1140
931
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1141
932
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1147,11 +938,98 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1147
938
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1148
939
  readonly ingestedAt?: string | undefined;
1149
940
  };
941
+ readonly type: "thread.settled";
942
+ readonly payload: {
943
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
944
+ readonly settledAt: string;
945
+ readonly updatedAt: string;
946
+ };
1150
947
  } | {
1151
- readonly type: "thread.meta-updated";
948
+ readonly sequence: number;
949
+ readonly eventId: string & import("effect/Brand").Brand<"EventId">;
950
+ readonly aggregateKind: "project" | "thread";
951
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
952
+ readonly occurredAt: string;
953
+ readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
954
+ readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
955
+ readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
956
+ readonly metadata: {
957
+ readonly providerTurnId?: string | undefined;
958
+ readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
959
+ readonly adapterKey?: string | undefined;
960
+ readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
961
+ readonly ingestedAt?: string | undefined;
962
+ };
963
+ readonly type: "thread.unsettled";
964
+ readonly payload: {
965
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
966
+ readonly reason: "activity" | "user";
967
+ readonly updatedAt: string;
968
+ };
969
+ } | {
970
+ readonly sequence: number;
971
+ readonly eventId: string & import("effect/Brand").Brand<"EventId">;
972
+ readonly aggregateKind: "project" | "thread";
973
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
974
+ readonly occurredAt: string;
975
+ readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
976
+ readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
977
+ readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
978
+ readonly metadata: {
979
+ readonly providerTurnId?: string | undefined;
980
+ readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
981
+ readonly adapterKey?: string | undefined;
982
+ readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
983
+ readonly ingestedAt?: string | undefined;
984
+ };
985
+ readonly type: "thread.snoozed";
1152
986
  readonly payload: {
1153
987
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
988
+ readonly snoozedUntil: string;
989
+ readonly snoozedAt: string;
1154
990
  readonly updatedAt: string;
991
+ };
992
+ } | {
993
+ readonly sequence: number;
994
+ readonly eventId: string & import("effect/Brand").Brand<"EventId">;
995
+ readonly aggregateKind: "project" | "thread";
996
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
997
+ readonly occurredAt: string;
998
+ readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
999
+ readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1000
+ readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1001
+ readonly metadata: {
1002
+ readonly providerTurnId?: string | undefined;
1003
+ readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1004
+ readonly adapterKey?: string | undefined;
1005
+ readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1006
+ readonly ingestedAt?: string | undefined;
1007
+ };
1008
+ readonly type: "thread.unsnoozed";
1009
+ readonly payload: {
1010
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1011
+ readonly reason: "activity" | "user";
1012
+ readonly updatedAt: string;
1013
+ };
1014
+ } | {
1015
+ readonly sequence: number;
1016
+ readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1017
+ readonly aggregateKind: "project" | "thread";
1018
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1019
+ readonly occurredAt: string;
1020
+ readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1021
+ readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1022
+ readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1023
+ readonly metadata: {
1024
+ readonly providerTurnId?: string | undefined;
1025
+ readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1026
+ readonly adapterKey?: string | undefined;
1027
+ readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1028
+ readonly ingestedAt?: string | undefined;
1029
+ };
1030
+ readonly type: "thread.meta-updated";
1031
+ readonly payload: {
1032
+ readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1155
1033
  readonly title?: string | undefined;
1156
1034
  readonly modelSelection?: {
1157
1035
  readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
@@ -1163,11 +1041,13 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1163
1041
  } | undefined;
1164
1042
  readonly branch?: string | null | undefined;
1165
1043
  readonly worktreePath?: string | null | undefined;
1044
+ readonly updatedAt: string;
1166
1045
  };
1046
+ } | {
1167
1047
  readonly sequence: number;
1168
1048
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1169
1049
  readonly aggregateKind: "project" | "thread";
1170
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1050
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1171
1051
  readonly occurredAt: string;
1172
1052
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1173
1053
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1179,17 +1059,17 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1179
1059
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1180
1060
  readonly ingestedAt?: string | undefined;
1181
1061
  };
1182
- } | {
1183
1062
  readonly type: "thread.runtime-mode-set";
1184
1063
  readonly payload: {
1185
1064
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1186
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
1065
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
1187
1066
  readonly updatedAt: string;
1188
1067
  };
1068
+ } | {
1189
1069
  readonly sequence: number;
1190
1070
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1191
1071
  readonly aggregateKind: "project" | "thread";
1192
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1072
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1193
1073
  readonly occurredAt: string;
1194
1074
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1195
1075
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1201,17 +1081,17 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1201
1081
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1202
1082
  readonly ingestedAt?: string | undefined;
1203
1083
  };
1204
- } | {
1205
1084
  readonly type: "thread.interaction-mode-set";
1206
1085
  readonly payload: {
1207
1086
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1208
1087
  readonly interactionMode: "default" | "plan";
1209
1088
  readonly updatedAt: string;
1210
1089
  };
1090
+ } | {
1211
1091
  readonly sequence: number;
1212
1092
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1213
1093
  readonly aggregateKind: "project" | "thread";
1214
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1094
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1215
1095
  readonly occurredAt: string;
1216
1096
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1217
1097
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1223,17 +1103,12 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1223
1103
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1224
1104
  readonly ingestedAt?: string | undefined;
1225
1105
  };
1226
- } | {
1227
1106
  readonly type: "thread.message-sent";
1228
1107
  readonly payload: {
1229
1108
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1230
1109
  readonly messageId: string & import("effect/Brand").Brand<"MessageId">;
1231
- readonly role: "user" | "assistant" | "system";
1110
+ readonly role: "assistant" | "system" | "user";
1232
1111
  readonly text: string;
1233
- readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1234
- readonly streaming: boolean;
1235
- readonly createdAt: string;
1236
- readonly updatedAt: string;
1237
1112
  readonly attachments?: readonly {
1238
1113
  readonly type: "image";
1239
1114
  readonly id: string;
@@ -1241,11 +1116,16 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1241
1116
  readonly mimeType: string;
1242
1117
  readonly sizeBytes: number;
1243
1118
  }[] | undefined;
1119
+ readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1120
+ readonly streaming: boolean;
1121
+ readonly createdAt: string;
1122
+ readonly updatedAt: string;
1244
1123
  };
1124
+ } | {
1245
1125
  readonly sequence: number;
1246
1126
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1247
1127
  readonly aggregateKind: "project" | "thread";
1248
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1128
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1249
1129
  readonly occurredAt: string;
1250
1130
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1251
1131
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1257,14 +1137,10 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1257
1137
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1258
1138
  readonly ingestedAt?: string | undefined;
1259
1139
  };
1260
- } | {
1261
1140
  readonly type: "thread.turn-start-requested";
1262
1141
  readonly payload: {
1263
1142
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1264
1143
  readonly messageId: string & import("effect/Brand").Brand<"MessageId">;
1265
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
1266
- readonly interactionMode: "default" | "plan";
1267
- readonly createdAt: string;
1268
1144
  readonly modelSelection?: {
1269
1145
  readonly instanceId: string & import("effect/Brand").Brand<"ProviderInstanceId">;
1270
1146
  readonly model: string;
@@ -1274,15 +1150,19 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1274
1150
  }[];
1275
1151
  } | undefined;
1276
1152
  readonly titleSeed?: string | undefined;
1153
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
1154
+ readonly interactionMode: "default" | "plan";
1277
1155
  readonly sourceProposedPlan?: {
1278
1156
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1279
1157
  readonly planId: string;
1280
1158
  } | undefined;
1159
+ readonly createdAt: string;
1281
1160
  };
1161
+ } | {
1282
1162
  readonly sequence: number;
1283
1163
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1284
1164
  readonly aggregateKind: "project" | "thread";
1285
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1165
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1286
1166
  readonly occurredAt: string;
1287
1167
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1288
1168
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1294,17 +1174,17 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1294
1174
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1295
1175
  readonly ingestedAt?: string | undefined;
1296
1176
  };
1297
- } | {
1298
1177
  readonly type: "thread.turn-interrupt-requested";
1299
1178
  readonly payload: {
1300
1179
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1301
- readonly createdAt: string;
1302
1180
  readonly turnId?: (string & import("effect/Brand").Brand<"TurnId">) | undefined;
1181
+ readonly createdAt: string;
1303
1182
  };
1183
+ } | {
1304
1184
  readonly sequence: number;
1305
1185
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1306
1186
  readonly aggregateKind: "project" | "thread";
1307
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1187
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1308
1188
  readonly occurredAt: string;
1309
1189
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1310
1190
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1316,18 +1196,18 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1316
1196
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1317
1197
  readonly ingestedAt?: string | undefined;
1318
1198
  };
1319
- } | {
1320
1199
  readonly type: "thread.approval-response-requested";
1321
1200
  readonly payload: {
1322
1201
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1323
1202
  readonly requestId: string & import("effect/Brand").Brand<"ApprovalRequestId">;
1324
- readonly decision: "accept" | "acceptForSession" | "decline" | "cancel";
1203
+ readonly decision: "accept" | "acceptForSession" | "cancel" | "decline";
1325
1204
  readonly createdAt: string;
1326
1205
  };
1206
+ } | {
1327
1207
  readonly sequence: number;
1328
1208
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1329
1209
  readonly aggregateKind: "project" | "thread";
1330
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1210
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1331
1211
  readonly occurredAt: string;
1332
1212
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1333
1213
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1339,7 +1219,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1339
1219
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1340
1220
  readonly ingestedAt?: string | undefined;
1341
1221
  };
1342
- } | {
1343
1222
  readonly type: "thread.user-input-response-requested";
1344
1223
  readonly payload: {
1345
1224
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
@@ -1349,10 +1228,11 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1349
1228
  };
1350
1229
  readonly createdAt: string;
1351
1230
  };
1231
+ } | {
1352
1232
  readonly sequence: number;
1353
1233
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1354
1234
  readonly aggregateKind: "project" | "thread";
1355
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1235
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1356
1236
  readonly occurredAt: string;
1357
1237
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1358
1238
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1364,17 +1244,17 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1364
1244
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1365
1245
  readonly ingestedAt?: string | undefined;
1366
1246
  };
1367
- } | {
1368
1247
  readonly type: "thread.checkpoint-revert-requested";
1369
1248
  readonly payload: {
1370
1249
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1371
1250
  readonly turnCount: number;
1372
1251
  readonly createdAt: string;
1373
1252
  };
1253
+ } | {
1374
1254
  readonly sequence: number;
1375
1255
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1376
1256
  readonly aggregateKind: "project" | "thread";
1377
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1257
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1378
1258
  readonly occurredAt: string;
1379
1259
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1380
1260
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1386,16 +1266,16 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1386
1266
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1387
1267
  readonly ingestedAt?: string | undefined;
1388
1268
  };
1389
- } | {
1390
1269
  readonly type: "thread.reverted";
1391
1270
  readonly payload: {
1392
1271
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1393
1272
  readonly turnCount: number;
1394
1273
  };
1274
+ } | {
1395
1275
  readonly sequence: number;
1396
1276
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1397
1277
  readonly aggregateKind: "project" | "thread";
1398
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1278
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1399
1279
  readonly occurredAt: string;
1400
1280
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1401
1281
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1407,16 +1287,16 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1407
1287
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1408
1288
  readonly ingestedAt?: string | undefined;
1409
1289
  };
1410
- } | {
1411
1290
  readonly type: "thread.session-stop-requested";
1412
1291
  readonly payload: {
1413
1292
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1414
1293
  readonly createdAt: string;
1415
1294
  };
1295
+ } | {
1416
1296
  readonly sequence: number;
1417
1297
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1418
1298
  readonly aggregateKind: "project" | "thread";
1419
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1299
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1420
1300
  readonly occurredAt: string;
1421
1301
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1422
1302
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1428,104 +1308,25 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1428
1308
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1429
1309
  readonly ingestedAt?: string | undefined;
1430
1310
  };
1431
- } | {
1432
1311
  readonly type: "thread.session-set";
1433
1312
  readonly payload: {
1434
1313
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1435
1314
  readonly session: {
1436
1315
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1437
- readonly status: "error" | "idle" | "starting" | "running" | "ready" | "interrupted" | "stopped";
1316
+ readonly status: "error" | "idle" | "interrupted" | "ready" | "running" | "starting" | "stopped";
1438
1317
  readonly providerName: string | null;
1439
- readonly runtimeMode: "approval-required" | "auto-accept-edits" | "full-access";
1318
+ readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
1319
+ readonly runtimeMode: "approval-required" | "auto" | "auto-accept-edits" | "full-access";
1440
1320
  readonly activeTurnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1441
1321
  readonly lastError: string | null;
1442
1322
  readonly updatedAt: string;
1443
- readonly providerInstanceId?: (string & import("effect/Brand").Brand<"ProviderInstanceId">) | undefined;
1444
1323
  };
1445
1324
  };
1446
- readonly sequence: number;
1447
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1448
- readonly aggregateKind: "project" | "thread";
1449
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1450
- readonly occurredAt: string;
1451
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1452
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1453
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1454
- readonly metadata: {
1455
- readonly providerTurnId?: string | undefined;
1456
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1457
- readonly adapterKey?: string | undefined;
1458
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1459
- readonly ingestedAt?: string | undefined;
1460
- };
1461
1325
  } | {
1462
- readonly type: "thread.goal-requested";
1463
- readonly payload: {
1464
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1465
- readonly request: {
1466
- readonly kind: "status";
1467
- } | {
1468
- readonly kind: "control";
1469
- readonly action: "pause" | "resume" | "clear";
1470
- } | {
1471
- readonly kind: "set";
1472
- readonly objective: string;
1473
- };
1474
- readonly createdAt: string;
1475
- };
1476
- readonly sequence: number;
1477
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1478
- readonly aggregateKind: "project" | "thread";
1479
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1480
- readonly occurredAt: string;
1481
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1482
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1483
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1484
- readonly metadata: {
1485
- readonly providerTurnId?: string | undefined;
1486
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1487
- readonly adapterKey?: string | undefined;
1488
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1489
- readonly ingestedAt?: string | undefined;
1490
- };
1491
- } | {
1492
- readonly type: "thread.goal-updated";
1493
- readonly payload: {
1494
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1495
- readonly goal: {
1496
- readonly objective: string;
1497
- readonly status: "active" | "paused" | "blocked" | "usageLimited" | "budgetLimited" | "complete";
1498
- readonly tokensUsed: number;
1499
- readonly tokenBudget: number | null;
1500
- readonly timeUsedSeconds: number;
1501
- readonly createdAt: string;
1502
- readonly updatedAt: string;
1503
- };
1504
- };
1505
- readonly sequence: number;
1506
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1507
- readonly aggregateKind: "project" | "thread";
1508
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1509
- readonly occurredAt: string;
1510
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1511
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1512
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1513
- readonly metadata: {
1514
- readonly providerTurnId?: string | undefined;
1515
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1516
- readonly adapterKey?: string | undefined;
1517
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1518
- readonly ingestedAt?: string | undefined;
1519
- };
1520
- } | {
1521
- readonly type: "thread.goal-cleared";
1522
- readonly payload: {
1523
- readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1524
- };
1525
1326
  readonly sequence: number;
1526
1327
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1527
1328
  readonly aggregateKind: "project" | "thread";
1528
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1329
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1529
1330
  readonly occurredAt: string;
1530
1331
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1531
1332
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1537,7 +1338,6 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1537
1338
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1538
1339
  readonly ingestedAt?: string | undefined;
1539
1340
  };
1540
- } | {
1541
1341
  readonly type: "thread.proposed-plan-upserted";
1542
1342
  readonly payload: {
1543
1343
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
@@ -1551,10 +1351,11 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1551
1351
  readonly updatedAt: string;
1552
1352
  };
1553
1353
  };
1354
+ } | {
1554
1355
  readonly sequence: number;
1555
1356
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1556
1357
  readonly aggregateKind: "project" | "thread";
1557
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1358
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1558
1359
  readonly occurredAt: string;
1559
1360
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1560
1361
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1566,14 +1367,13 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1566
1367
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1567
1368
  readonly ingestedAt?: string | undefined;
1568
1369
  };
1569
- } | {
1570
1370
  readonly type: "thread.turn-diff-completed";
1571
1371
  readonly payload: {
1572
1372
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1573
1373
  readonly turnId: string & import("effect/Brand").Brand<"TurnId">;
1574
1374
  readonly checkpointTurnCount: number;
1575
1375
  readonly checkpointRef: string & import("effect/Brand").Brand<"CheckpointRef">;
1576
- readonly status: "error" | "ready" | "missing";
1376
+ readonly status: "error" | "missing" | "ready";
1577
1377
  readonly files: readonly {
1578
1378
  readonly path: string;
1579
1379
  readonly kind: string;
@@ -1583,10 +1383,11 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1583
1383
  readonly assistantMessageId: (string & import("effect/Brand").Brand<"MessageId">) | null;
1584
1384
  readonly completedAt: string;
1585
1385
  };
1386
+ } | {
1586
1387
  readonly sequence: number;
1587
1388
  readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1588
1389
  readonly aggregateKind: "project" | "thread";
1589
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1390
+ readonly aggregateId: (string & import("effect/Brand").Brand<"ProjectId">) | (string & import("effect/Brand").Brand<"ThreadId">);
1590
1391
  readonly occurredAt: string;
1591
1392
  readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1592
1393
  readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
@@ -1598,36 +1399,20 @@ export declare const makeT3Orchestration: () => Effect.Effect<{
1598
1399
  readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1599
1400
  readonly ingestedAt?: string | undefined;
1600
1401
  };
1601
- } | {
1602
1402
  readonly type: "thread.activity-appended";
1603
1403
  readonly payload: {
1604
1404
  readonly threadId: string & import("effect/Brand").Brand<"ThreadId">;
1605
1405
  readonly activity: {
1606
1406
  readonly id: string & import("effect/Brand").Brand<"EventId">;
1607
- readonly tone: "error" | "info" | "tool" | "approval";
1407
+ readonly tone: "approval" | "error" | "info" | "tool";
1608
1408
  readonly kind: string;
1609
1409
  readonly summary: string;
1610
1410
  readonly payload: unknown;
1611
1411
  readonly turnId: (string & import("effect/Brand").Brand<"TurnId">) | null;
1612
- readonly createdAt: string;
1613
1412
  readonly sequence?: number | undefined;
1413
+ readonly createdAt: string;
1614
1414
  };
1615
1415
  };
1616
- readonly sequence: number;
1617
- readonly eventId: string & import("effect/Brand").Brand<"EventId">;
1618
- readonly aggregateKind: "project" | "thread";
1619
- readonly aggregateId: (string & import("effect/Brand").Brand<"ThreadId">) | (string & import("effect/Brand").Brand<"ProjectId">);
1620
- readonly occurredAt: string;
1621
- readonly commandId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1622
- readonly causationEventId: (string & import("effect/Brand").Brand<"EventId">) | null;
1623
- readonly correlationId: (string & import("effect/Brand").Brand<"CommandId">) | null;
1624
- readonly metadata: {
1625
- readonly providerTurnId?: string | undefined;
1626
- readonly providerItemId?: (string & import("effect/Brand").Brand<"ProviderItemId">) | undefined;
1627
- readonly adapterKey?: string | undefined;
1628
- readonly requestId?: (string & import("effect/Brand").Brand<"ApprovalRequestId">) | undefined;
1629
- readonly ingestedAt?: string | undefined;
1630
- };
1631
1416
  }, RpcError, never>;
1632
1417
  }, RpcError, import("effect/Scope").Scope>;
1633
1418
  }, never, T3RpcOperations>;