@knpkv/herdr-fleet 0.2.0 → 0.4.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.
- package/README.md +16 -2
- package/dist/config.d.ts +6 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/errors.d.ts +7 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +3 -0
- package/dist/errors.js.map +1 -1
- package/dist/hash.d.ts +131 -1
- package/dist/hash.d.ts.map +1 -1
- package/dist/hash.js +128 -4
- package/dist/hash.js.map +1 -1
- package/dist/model.d.ts +843 -12
- package/dist/model.d.ts.map +1 -1
- package/dist/model.js +161 -8
- package/dist/model.js.map +1 -1
- package/dist/response.d.ts +1 -1
- package/dist/response.d.ts.map +1 -1
- package/dist/service.d.ts +1710 -29
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +256 -44
- package/dist/service.js.map +1 -1
- package/dist/store.d.ts +1397 -11
- package/dist/store.d.ts.map +1 -1
- package/package.json +6 -6
package/dist/service.d.ts
CHANGED
|
@@ -1,15 +1,60 @@
|
|
|
1
|
-
import { Crypto, Effect } from "effect";
|
|
2
|
-
import { FleetApprovalError, FleetJobNotFoundError, FleetOperationError, FleetStoreError, FleetTransitionConflictError, FleetValidationError } from "./errors.js";
|
|
3
|
-
import { type AgentDelegate, type AgentInventory, type AgentWorkerIdentity, type CoreJobPayload, type HostDetails, type JobHash, type LocalJobPayload } from "./model.js";
|
|
1
|
+
import { Crypto, Effect, Schema } from "effect";
|
|
2
|
+
import { FleetApprovalError, FleetJobNotFoundError, FleetOperationError, FleetOperationUnavailableError, FleetStoreError, FleetTransitionConflictError, FleetValidationError } from "./errors.js";
|
|
3
|
+
import { type AgentDelegate, type AgentInventory, type AgentWorkerIdentity, type CoreJobPayload, type HostDetails, JobActor, type JobHash, type LocalJobPayload, type SubmissionProvenance, type WorkJobKind } from "./model.js";
|
|
4
4
|
import type { JobStore } from "./store.js";
|
|
5
5
|
export type { AgentInventory, AgentSummary, HostDetails } from "./model.js";
|
|
6
6
|
export type WorkerStarted = (identity: AgentWorkerIdentity) => Effect.Effect<void, FleetOperationError>;
|
|
7
|
+
export declare const hostOperationTerminalDetailMaxLength = 20000;
|
|
8
|
+
export declare const HostOperationTerminal: Schema.Union<readonly [Schema.Struct<{
|
|
9
|
+
readonly type: Schema.Literal<"settled">;
|
|
10
|
+
readonly detail: Schema.String;
|
|
11
|
+
}>, Schema.Struct<{
|
|
12
|
+
readonly type: Schema.Literal<"delivery_failed">;
|
|
13
|
+
readonly detail: Schema.String;
|
|
14
|
+
}>, Schema.Struct<{
|
|
15
|
+
readonly type: Schema.Literal<"task_failed">;
|
|
16
|
+
readonly detail: Schema.String;
|
|
17
|
+
}>]>;
|
|
18
|
+
export type HostOperationTerminal = typeof HostOperationTerminal.Type;
|
|
19
|
+
/** Projects an authoritative coordinator detail into Fleet's bounded summary. */
|
|
20
|
+
export declare const summarizeHostOperationTerminalDetail: (detail: string) => string;
|
|
21
|
+
export type HostOperationLifecycle = {
|
|
22
|
+
/** Persists a durable receipt while the fleet job remains running. */
|
|
23
|
+
readonly accepted: (receipt: string) => Effect.Effect<void, FleetOperationError>;
|
|
24
|
+
/** Mirrors the authoritative durable terminal event into the fleet job. */
|
|
25
|
+
readonly terminal: (event: HostOperationTerminal) => Effect.Effect<void, FleetOperationError>;
|
|
26
|
+
};
|
|
27
|
+
export type ResumeHostOperation = (payload: CoreJobPayload, workerStarted: WorkerStarted, jobId: string, actor: JobActor, receipt: string | null, lifecycle: HostOperationLifecycle, persistedWorker: AgentWorkerIdentity | null) => Effect.Effect<void, FleetOperationError>;
|
|
28
|
+
export type HostOperationRecovery = {
|
|
29
|
+
/** Identifies operations whose deterministic Fleet job ID is their durable submission identity. */
|
|
30
|
+
readonly matches: (payload: CoreJobPayload) => boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Rejoins or idempotently completes submission, including before Fleet persisted a receipt.
|
|
33
|
+
* A running job's exact persisted worker is supplied for authoritative replay without discovery.
|
|
34
|
+
* It must attach observation in its owning scope and return without waiting for terminal work.
|
|
35
|
+
*/
|
|
36
|
+
readonly resume: ResumeHostOperation;
|
|
37
|
+
};
|
|
7
38
|
export type HostOperations = {
|
|
8
39
|
readonly listAgents: () => Effect.Effect<AgentInventory, FleetOperationError>;
|
|
9
40
|
readonly inspect: () => Effect.Effect<HostDetails, FleetOperationError>;
|
|
10
|
-
readonly run: (payload: CoreJobPayload, workerStarted: WorkerStarted, jobId: string) => Effect.Effect<string, FleetOperationError>;
|
|
41
|
+
readonly run: (payload: CoreJobPayload, workerStarted: WorkerStarted, jobId: string, actor: JobActor, lifecycle: HostOperationLifecycle, approval?: ApprovedJobIdentity | null) => Effect.Effect<string, FleetOperationError>;
|
|
11
42
|
readonly runLocal: (payload: LocalJobPayload) => Effect.Effect<string, FleetOperationError>;
|
|
12
|
-
readonly runCoordinatorChat: (payload: AgentDelegate, workerStarted: WorkerStarted, jobId: string) => Effect.Effect<string, FleetOperationError>;
|
|
43
|
+
readonly runCoordinatorChat: (payload: AgentDelegate, workerStarted: WorkerStarted, jobId: string, actor: JobActor, lifecycle: HostOperationLifecycle) => Effect.Effect<string, FleetOperationError>;
|
|
44
|
+
/** Explicit crash recovery for operations backed by another durable store. */
|
|
45
|
+
readonly recovery?: HostOperationRecovery;
|
|
46
|
+
/**
|
|
47
|
+
* Work job kinds this host's composed Work adapter executes. Submission
|
|
48
|
+
* refuses every other Work kind before an approval request exists; absent
|
|
49
|
+
* means the host executes none.
|
|
50
|
+
*/
|
|
51
|
+
readonly workJobKinds?: ReadonlySet<WorkJobKind>;
|
|
52
|
+
};
|
|
53
|
+
/** Persisted Fleet approval, distinct from the job's submitting actor. */
|
|
54
|
+
export type ApprovedJobIdentity = {
|
|
55
|
+
readonly approvedBy: string;
|
|
56
|
+
readonly approvedAt: number;
|
|
57
|
+
readonly hash: JobHash;
|
|
13
58
|
};
|
|
14
59
|
export type Approval = {
|
|
15
60
|
readonly hash: JobHash;
|
|
@@ -37,16 +82,140 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
37
82
|
readonly kind: "agent.delegate";
|
|
38
83
|
readonly repository: string;
|
|
39
84
|
readonly prompt: string;
|
|
40
|
-
readonly mode: "consult" | "review" | "work";
|
|
85
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
41
86
|
readonly channel?: "coordinator_chat";
|
|
42
87
|
} | {
|
|
43
88
|
readonly kind: "agent.message";
|
|
44
89
|
readonly session: string;
|
|
45
90
|
readonly message: string;
|
|
91
|
+
} | {
|
|
92
|
+
readonly kind: "work.reconcile";
|
|
93
|
+
readonly repository: string;
|
|
94
|
+
readonly pullRequest: number;
|
|
95
|
+
readonly goalId: string;
|
|
96
|
+
readonly laneId: string;
|
|
97
|
+
readonly operationId: string;
|
|
98
|
+
readonly expectedRevision: number;
|
|
99
|
+
readonly expectedHead: string;
|
|
100
|
+
readonly newHead: string;
|
|
101
|
+
readonly expectedOwner: {
|
|
102
|
+
readonly id: string;
|
|
103
|
+
readonly name: string;
|
|
104
|
+
};
|
|
105
|
+
readonly expectedGoalEventId: string;
|
|
106
|
+
readonly bindingDispatchRequestId: string;
|
|
107
|
+
readonly sessionId: string;
|
|
108
|
+
readonly expectedWork: string;
|
|
109
|
+
readonly worker: {
|
|
110
|
+
readonly host: string;
|
|
111
|
+
readonly agentId: string;
|
|
112
|
+
readonly name: string;
|
|
113
|
+
readonly paneId: string;
|
|
114
|
+
readonly relationship?: {
|
|
115
|
+
readonly parentAgentId: string;
|
|
116
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
readonly worktree: string;
|
|
120
|
+
readonly branch: string;
|
|
121
|
+
} | {
|
|
122
|
+
readonly kind: "work.admit";
|
|
123
|
+
readonly repository: string;
|
|
124
|
+
readonly pullRequest: number;
|
|
125
|
+
readonly reviewUrl: string;
|
|
126
|
+
readonly goalId: string;
|
|
127
|
+
readonly laneId: string;
|
|
128
|
+
readonly operationId: string;
|
|
129
|
+
readonly expectedAbsenceToken: string;
|
|
130
|
+
readonly head: string;
|
|
131
|
+
readonly baseHead: string;
|
|
132
|
+
readonly owner: {
|
|
133
|
+
readonly id: string;
|
|
134
|
+
readonly name: string;
|
|
135
|
+
};
|
|
136
|
+
readonly sessionId: string;
|
|
137
|
+
readonly expectedWork: string;
|
|
138
|
+
readonly worker: {
|
|
139
|
+
readonly host: string;
|
|
140
|
+
readonly agentId: string;
|
|
141
|
+
readonly name: string;
|
|
142
|
+
readonly paneId: string;
|
|
143
|
+
readonly relationship?: {
|
|
144
|
+
readonly parentAgentId: string;
|
|
145
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
146
|
+
};
|
|
147
|
+
};
|
|
148
|
+
readonly worktree: string;
|
|
149
|
+
readonly branch: string;
|
|
150
|
+
readonly title: string;
|
|
151
|
+
readonly summary: string;
|
|
152
|
+
readonly detail: string;
|
|
153
|
+
} | {
|
|
154
|
+
readonly kind: "work.recover";
|
|
155
|
+
readonly repository: string;
|
|
156
|
+
readonly pullRequest: number;
|
|
157
|
+
readonly reviewUrl: string;
|
|
158
|
+
readonly goalId: string;
|
|
159
|
+
readonly laneId: string;
|
|
160
|
+
readonly operationId: string;
|
|
161
|
+
readonly expectedGoalEventId: string;
|
|
162
|
+
readonly expectedGoalUpdatedAt: number;
|
|
163
|
+
readonly expectedHistoryToken: string;
|
|
164
|
+
readonly head: string;
|
|
165
|
+
readonly baseHead: string;
|
|
166
|
+
readonly owner: {
|
|
167
|
+
readonly id: string;
|
|
168
|
+
readonly name: string;
|
|
169
|
+
};
|
|
170
|
+
readonly sessionId: string;
|
|
171
|
+
readonly expectedWork: string;
|
|
172
|
+
readonly worker: {
|
|
173
|
+
readonly host: string;
|
|
174
|
+
readonly agentId: string;
|
|
175
|
+
readonly name: string;
|
|
176
|
+
readonly paneId: string;
|
|
177
|
+
readonly relationship?: {
|
|
178
|
+
readonly parentAgentId: string;
|
|
179
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
180
|
+
};
|
|
181
|
+
};
|
|
182
|
+
readonly worktree: string;
|
|
183
|
+
readonly branch: string;
|
|
184
|
+
} | {
|
|
185
|
+
readonly kind: "work.reassign";
|
|
186
|
+
readonly goalId: string;
|
|
187
|
+
readonly from: {
|
|
188
|
+
readonly id: string;
|
|
189
|
+
readonly name: string;
|
|
190
|
+
};
|
|
191
|
+
readonly to: {
|
|
192
|
+
readonly id: string;
|
|
193
|
+
readonly name: string;
|
|
194
|
+
};
|
|
195
|
+
readonly toAgent: {
|
|
196
|
+
readonly _tag: "clear";
|
|
197
|
+
} | {
|
|
198
|
+
readonly _tag: "keep";
|
|
199
|
+
} | {
|
|
200
|
+
readonly _tag: "set";
|
|
201
|
+
readonly agent: {
|
|
202
|
+
readonly host: string;
|
|
203
|
+
readonly agentId: string;
|
|
204
|
+
readonly name: string;
|
|
205
|
+
readonly paneId: string;
|
|
206
|
+
readonly relationship?: {
|
|
207
|
+
readonly parentAgentId: string;
|
|
208
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
209
|
+
};
|
|
210
|
+
};
|
|
211
|
+
};
|
|
212
|
+
readonly reason: string;
|
|
213
|
+
readonly expectedGoalEventId: string;
|
|
214
|
+
readonly expectedGoalUpdatedAt: number;
|
|
46
215
|
} | {
|
|
47
216
|
readonly kind: "browser.mcp.recover";
|
|
48
217
|
};
|
|
49
|
-
}, actor: string) => Effect.Effect<{
|
|
218
|
+
}, actor: string, provenance?: SubmissionProvenance | undefined) => Effect.Effect<{
|
|
50
219
|
readonly id: string;
|
|
51
220
|
readonly createdAt: number;
|
|
52
221
|
readonly updatedAt: number;
|
|
@@ -69,16 +238,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
69
238
|
readonly kind: "agent.delegate";
|
|
70
239
|
readonly repository: string;
|
|
71
240
|
readonly prompt: string;
|
|
72
|
-
readonly mode: "consult" | "review" | "work";
|
|
241
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
73
242
|
readonly channel?: "coordinator_chat";
|
|
74
243
|
} | {
|
|
75
244
|
readonly kind: "agent.message";
|
|
76
245
|
readonly session: string;
|
|
77
246
|
readonly message: string;
|
|
247
|
+
} | {
|
|
248
|
+
readonly kind: "work.reconcile";
|
|
249
|
+
readonly repository: string;
|
|
250
|
+
readonly pullRequest: number;
|
|
251
|
+
readonly goalId: string;
|
|
252
|
+
readonly laneId: string;
|
|
253
|
+
readonly operationId: string;
|
|
254
|
+
readonly expectedRevision: number;
|
|
255
|
+
readonly expectedHead: string;
|
|
256
|
+
readonly newHead: string;
|
|
257
|
+
readonly expectedOwner: {
|
|
258
|
+
readonly id: string;
|
|
259
|
+
readonly name: string;
|
|
260
|
+
};
|
|
261
|
+
readonly expectedGoalEventId: string;
|
|
262
|
+
readonly bindingDispatchRequestId: string;
|
|
263
|
+
readonly sessionId: string;
|
|
264
|
+
readonly expectedWork: string;
|
|
265
|
+
readonly worker: {
|
|
266
|
+
readonly host: string;
|
|
267
|
+
readonly agentId: string;
|
|
268
|
+
readonly name: string;
|
|
269
|
+
readonly paneId: string;
|
|
270
|
+
readonly relationship?: {
|
|
271
|
+
readonly parentAgentId: string;
|
|
272
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
273
|
+
};
|
|
274
|
+
};
|
|
275
|
+
readonly worktree: string;
|
|
276
|
+
readonly branch: string;
|
|
277
|
+
} | {
|
|
278
|
+
readonly kind: "work.admit";
|
|
279
|
+
readonly repository: string;
|
|
280
|
+
readonly pullRequest: number;
|
|
281
|
+
readonly reviewUrl: string;
|
|
282
|
+
readonly goalId: string;
|
|
283
|
+
readonly laneId: string;
|
|
284
|
+
readonly operationId: string;
|
|
285
|
+
readonly expectedAbsenceToken: string;
|
|
286
|
+
readonly head: string;
|
|
287
|
+
readonly baseHead: string;
|
|
288
|
+
readonly owner: {
|
|
289
|
+
readonly id: string;
|
|
290
|
+
readonly name: string;
|
|
291
|
+
};
|
|
292
|
+
readonly sessionId: string;
|
|
293
|
+
readonly expectedWork: string;
|
|
294
|
+
readonly worker: {
|
|
295
|
+
readonly host: string;
|
|
296
|
+
readonly agentId: string;
|
|
297
|
+
readonly name: string;
|
|
298
|
+
readonly paneId: string;
|
|
299
|
+
readonly relationship?: {
|
|
300
|
+
readonly parentAgentId: string;
|
|
301
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
302
|
+
};
|
|
303
|
+
};
|
|
304
|
+
readonly worktree: string;
|
|
305
|
+
readonly branch: string;
|
|
306
|
+
readonly title: string;
|
|
307
|
+
readonly summary: string;
|
|
308
|
+
readonly detail: string;
|
|
309
|
+
} | {
|
|
310
|
+
readonly kind: "work.recover";
|
|
311
|
+
readonly repository: string;
|
|
312
|
+
readonly pullRequest: number;
|
|
313
|
+
readonly reviewUrl: string;
|
|
314
|
+
readonly goalId: string;
|
|
315
|
+
readonly laneId: string;
|
|
316
|
+
readonly operationId: string;
|
|
317
|
+
readonly expectedGoalEventId: string;
|
|
318
|
+
readonly expectedGoalUpdatedAt: number;
|
|
319
|
+
readonly expectedHistoryToken: string;
|
|
320
|
+
readonly head: string;
|
|
321
|
+
readonly baseHead: string;
|
|
322
|
+
readonly owner: {
|
|
323
|
+
readonly id: string;
|
|
324
|
+
readonly name: string;
|
|
325
|
+
};
|
|
326
|
+
readonly sessionId: string;
|
|
327
|
+
readonly expectedWork: string;
|
|
328
|
+
readonly worker: {
|
|
329
|
+
readonly host: string;
|
|
330
|
+
readonly agentId: string;
|
|
331
|
+
readonly name: string;
|
|
332
|
+
readonly paneId: string;
|
|
333
|
+
readonly relationship?: {
|
|
334
|
+
readonly parentAgentId: string;
|
|
335
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
336
|
+
};
|
|
337
|
+
};
|
|
338
|
+
readonly worktree: string;
|
|
339
|
+
readonly branch: string;
|
|
340
|
+
} | {
|
|
341
|
+
readonly kind: "work.reassign";
|
|
342
|
+
readonly goalId: string;
|
|
343
|
+
readonly from: {
|
|
344
|
+
readonly id: string;
|
|
345
|
+
readonly name: string;
|
|
346
|
+
};
|
|
347
|
+
readonly to: {
|
|
348
|
+
readonly id: string;
|
|
349
|
+
readonly name: string;
|
|
350
|
+
};
|
|
351
|
+
readonly toAgent: {
|
|
352
|
+
readonly _tag: "clear";
|
|
353
|
+
} | {
|
|
354
|
+
readonly _tag: "keep";
|
|
355
|
+
} | {
|
|
356
|
+
readonly _tag: "set";
|
|
357
|
+
readonly agent: {
|
|
358
|
+
readonly host: string;
|
|
359
|
+
readonly agentId: string;
|
|
360
|
+
readonly name: string;
|
|
361
|
+
readonly paneId: string;
|
|
362
|
+
readonly relationship?: {
|
|
363
|
+
readonly parentAgentId: string;
|
|
364
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
365
|
+
};
|
|
366
|
+
};
|
|
367
|
+
};
|
|
368
|
+
readonly reason: string;
|
|
369
|
+
readonly expectedGoalEventId: string;
|
|
370
|
+
readonly expectedGoalUpdatedAt: number;
|
|
78
371
|
} | {
|
|
79
372
|
readonly kind: "browser.mcp.recover";
|
|
80
373
|
};
|
|
81
374
|
readonly result: string | null;
|
|
375
|
+
readonly acceptedReceipt?: string | null;
|
|
376
|
+
readonly durableOperation?: true;
|
|
82
377
|
readonly error: string | null;
|
|
83
378
|
readonly worker?: {
|
|
84
379
|
readonly host: string;
|
|
@@ -96,7 +391,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
96
391
|
readonly url: string;
|
|
97
392
|
};
|
|
98
393
|
readonly workerTerminalObservedAt?: number | null;
|
|
99
|
-
}, import("./errors.js").FleetJobConflictError | FleetOperationError | FleetStoreError | FleetValidationError, never>;
|
|
394
|
+
}, import("./errors.js").FleetJobConflictError | FleetOperationError | FleetOperationUnavailableError | FleetStoreError | FleetValidationError, never>;
|
|
100
395
|
approve: (jobId: string, approval: Approval, actor: string) => Effect.Effect<{
|
|
101
396
|
readonly id: string;
|
|
102
397
|
readonly createdAt: number;
|
|
@@ -120,16 +415,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
120
415
|
readonly kind: "agent.delegate";
|
|
121
416
|
readonly repository: string;
|
|
122
417
|
readonly prompt: string;
|
|
123
|
-
readonly mode: "consult" | "review" | "work";
|
|
418
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
124
419
|
readonly channel?: "coordinator_chat";
|
|
125
420
|
} | {
|
|
126
421
|
readonly kind: "agent.message";
|
|
127
422
|
readonly session: string;
|
|
128
423
|
readonly message: string;
|
|
424
|
+
} | {
|
|
425
|
+
readonly kind: "work.reconcile";
|
|
426
|
+
readonly repository: string;
|
|
427
|
+
readonly pullRequest: number;
|
|
428
|
+
readonly goalId: string;
|
|
429
|
+
readonly laneId: string;
|
|
430
|
+
readonly operationId: string;
|
|
431
|
+
readonly expectedRevision: number;
|
|
432
|
+
readonly expectedHead: string;
|
|
433
|
+
readonly newHead: string;
|
|
434
|
+
readonly expectedOwner: {
|
|
435
|
+
readonly id: string;
|
|
436
|
+
readonly name: string;
|
|
437
|
+
};
|
|
438
|
+
readonly expectedGoalEventId: string;
|
|
439
|
+
readonly bindingDispatchRequestId: string;
|
|
440
|
+
readonly sessionId: string;
|
|
441
|
+
readonly expectedWork: string;
|
|
442
|
+
readonly worker: {
|
|
443
|
+
readonly host: string;
|
|
444
|
+
readonly agentId: string;
|
|
445
|
+
readonly name: string;
|
|
446
|
+
readonly paneId: string;
|
|
447
|
+
readonly relationship?: {
|
|
448
|
+
readonly parentAgentId: string;
|
|
449
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
450
|
+
};
|
|
451
|
+
};
|
|
452
|
+
readonly worktree: string;
|
|
453
|
+
readonly branch: string;
|
|
454
|
+
} | {
|
|
455
|
+
readonly kind: "work.admit";
|
|
456
|
+
readonly repository: string;
|
|
457
|
+
readonly pullRequest: number;
|
|
458
|
+
readonly reviewUrl: string;
|
|
459
|
+
readonly goalId: string;
|
|
460
|
+
readonly laneId: string;
|
|
461
|
+
readonly operationId: string;
|
|
462
|
+
readonly expectedAbsenceToken: string;
|
|
463
|
+
readonly head: string;
|
|
464
|
+
readonly baseHead: string;
|
|
465
|
+
readonly owner: {
|
|
466
|
+
readonly id: string;
|
|
467
|
+
readonly name: string;
|
|
468
|
+
};
|
|
469
|
+
readonly sessionId: string;
|
|
470
|
+
readonly expectedWork: string;
|
|
471
|
+
readonly worker: {
|
|
472
|
+
readonly host: string;
|
|
473
|
+
readonly agentId: string;
|
|
474
|
+
readonly name: string;
|
|
475
|
+
readonly paneId: string;
|
|
476
|
+
readonly relationship?: {
|
|
477
|
+
readonly parentAgentId: string;
|
|
478
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
479
|
+
};
|
|
480
|
+
};
|
|
481
|
+
readonly worktree: string;
|
|
482
|
+
readonly branch: string;
|
|
483
|
+
readonly title: string;
|
|
484
|
+
readonly summary: string;
|
|
485
|
+
readonly detail: string;
|
|
486
|
+
} | {
|
|
487
|
+
readonly kind: "work.recover";
|
|
488
|
+
readonly repository: string;
|
|
489
|
+
readonly pullRequest: number;
|
|
490
|
+
readonly reviewUrl: string;
|
|
491
|
+
readonly goalId: string;
|
|
492
|
+
readonly laneId: string;
|
|
493
|
+
readonly operationId: string;
|
|
494
|
+
readonly expectedGoalEventId: string;
|
|
495
|
+
readonly expectedGoalUpdatedAt: number;
|
|
496
|
+
readonly expectedHistoryToken: string;
|
|
497
|
+
readonly head: string;
|
|
498
|
+
readonly baseHead: string;
|
|
499
|
+
readonly owner: {
|
|
500
|
+
readonly id: string;
|
|
501
|
+
readonly name: string;
|
|
502
|
+
};
|
|
503
|
+
readonly sessionId: string;
|
|
504
|
+
readonly expectedWork: string;
|
|
505
|
+
readonly worker: {
|
|
506
|
+
readonly host: string;
|
|
507
|
+
readonly agentId: string;
|
|
508
|
+
readonly name: string;
|
|
509
|
+
readonly paneId: string;
|
|
510
|
+
readonly relationship?: {
|
|
511
|
+
readonly parentAgentId: string;
|
|
512
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
513
|
+
};
|
|
514
|
+
};
|
|
515
|
+
readonly worktree: string;
|
|
516
|
+
readonly branch: string;
|
|
517
|
+
} | {
|
|
518
|
+
readonly kind: "work.reassign";
|
|
519
|
+
readonly goalId: string;
|
|
520
|
+
readonly from: {
|
|
521
|
+
readonly id: string;
|
|
522
|
+
readonly name: string;
|
|
523
|
+
};
|
|
524
|
+
readonly to: {
|
|
525
|
+
readonly id: string;
|
|
526
|
+
readonly name: string;
|
|
527
|
+
};
|
|
528
|
+
readonly toAgent: {
|
|
529
|
+
readonly _tag: "clear";
|
|
530
|
+
} | {
|
|
531
|
+
readonly _tag: "keep";
|
|
532
|
+
} | {
|
|
533
|
+
readonly _tag: "set";
|
|
534
|
+
readonly agent: {
|
|
535
|
+
readonly host: string;
|
|
536
|
+
readonly agentId: string;
|
|
537
|
+
readonly name: string;
|
|
538
|
+
readonly paneId: string;
|
|
539
|
+
readonly relationship?: {
|
|
540
|
+
readonly parentAgentId: string;
|
|
541
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
542
|
+
};
|
|
543
|
+
};
|
|
544
|
+
};
|
|
545
|
+
readonly reason: string;
|
|
546
|
+
readonly expectedGoalEventId: string;
|
|
547
|
+
readonly expectedGoalUpdatedAt: number;
|
|
129
548
|
} | {
|
|
130
549
|
readonly kind: "browser.mcp.recover";
|
|
131
550
|
};
|
|
132
551
|
readonly result: string | null;
|
|
552
|
+
readonly acceptedReceipt?: string | null;
|
|
553
|
+
readonly durableOperation?: true;
|
|
133
554
|
readonly error: string | null;
|
|
134
555
|
readonly worker?: {
|
|
135
556
|
readonly host: string;
|
|
@@ -171,16 +592,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
171
592
|
readonly kind: "agent.delegate";
|
|
172
593
|
readonly repository: string;
|
|
173
594
|
readonly prompt: string;
|
|
174
|
-
readonly mode: "consult" | "review" | "work";
|
|
595
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
175
596
|
readonly channel?: "coordinator_chat";
|
|
176
597
|
} | {
|
|
177
598
|
readonly kind: "agent.message";
|
|
178
599
|
readonly session: string;
|
|
179
600
|
readonly message: string;
|
|
601
|
+
} | {
|
|
602
|
+
readonly kind: "work.reconcile";
|
|
603
|
+
readonly repository: string;
|
|
604
|
+
readonly pullRequest: number;
|
|
605
|
+
readonly goalId: string;
|
|
606
|
+
readonly laneId: string;
|
|
607
|
+
readonly operationId: string;
|
|
608
|
+
readonly expectedRevision: number;
|
|
609
|
+
readonly expectedHead: string;
|
|
610
|
+
readonly newHead: string;
|
|
611
|
+
readonly expectedOwner: {
|
|
612
|
+
readonly id: string;
|
|
613
|
+
readonly name: string;
|
|
614
|
+
};
|
|
615
|
+
readonly expectedGoalEventId: string;
|
|
616
|
+
readonly bindingDispatchRequestId: string;
|
|
617
|
+
readonly sessionId: string;
|
|
618
|
+
readonly expectedWork: string;
|
|
619
|
+
readonly worker: {
|
|
620
|
+
readonly host: string;
|
|
621
|
+
readonly agentId: string;
|
|
622
|
+
readonly name: string;
|
|
623
|
+
readonly paneId: string;
|
|
624
|
+
readonly relationship?: {
|
|
625
|
+
readonly parentAgentId: string;
|
|
626
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
627
|
+
};
|
|
628
|
+
};
|
|
629
|
+
readonly worktree: string;
|
|
630
|
+
readonly branch: string;
|
|
631
|
+
} | {
|
|
632
|
+
readonly kind: "work.admit";
|
|
633
|
+
readonly repository: string;
|
|
634
|
+
readonly pullRequest: number;
|
|
635
|
+
readonly reviewUrl: string;
|
|
636
|
+
readonly goalId: string;
|
|
637
|
+
readonly laneId: string;
|
|
638
|
+
readonly operationId: string;
|
|
639
|
+
readonly expectedAbsenceToken: string;
|
|
640
|
+
readonly head: string;
|
|
641
|
+
readonly baseHead: string;
|
|
642
|
+
readonly owner: {
|
|
643
|
+
readonly id: string;
|
|
644
|
+
readonly name: string;
|
|
645
|
+
};
|
|
646
|
+
readonly sessionId: string;
|
|
647
|
+
readonly expectedWork: string;
|
|
648
|
+
readonly worker: {
|
|
649
|
+
readonly host: string;
|
|
650
|
+
readonly agentId: string;
|
|
651
|
+
readonly name: string;
|
|
652
|
+
readonly paneId: string;
|
|
653
|
+
readonly relationship?: {
|
|
654
|
+
readonly parentAgentId: string;
|
|
655
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
656
|
+
};
|
|
657
|
+
};
|
|
658
|
+
readonly worktree: string;
|
|
659
|
+
readonly branch: string;
|
|
660
|
+
readonly title: string;
|
|
661
|
+
readonly summary: string;
|
|
662
|
+
readonly detail: string;
|
|
663
|
+
} | {
|
|
664
|
+
readonly kind: "work.recover";
|
|
665
|
+
readonly repository: string;
|
|
666
|
+
readonly pullRequest: number;
|
|
667
|
+
readonly reviewUrl: string;
|
|
668
|
+
readonly goalId: string;
|
|
669
|
+
readonly laneId: string;
|
|
670
|
+
readonly operationId: string;
|
|
671
|
+
readonly expectedGoalEventId: string;
|
|
672
|
+
readonly expectedGoalUpdatedAt: number;
|
|
673
|
+
readonly expectedHistoryToken: string;
|
|
674
|
+
readonly head: string;
|
|
675
|
+
readonly baseHead: string;
|
|
676
|
+
readonly owner: {
|
|
677
|
+
readonly id: string;
|
|
678
|
+
readonly name: string;
|
|
679
|
+
};
|
|
680
|
+
readonly sessionId: string;
|
|
681
|
+
readonly expectedWork: string;
|
|
682
|
+
readonly worker: {
|
|
683
|
+
readonly host: string;
|
|
684
|
+
readonly agentId: string;
|
|
685
|
+
readonly name: string;
|
|
686
|
+
readonly paneId: string;
|
|
687
|
+
readonly relationship?: {
|
|
688
|
+
readonly parentAgentId: string;
|
|
689
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
690
|
+
};
|
|
691
|
+
};
|
|
692
|
+
readonly worktree: string;
|
|
693
|
+
readonly branch: string;
|
|
694
|
+
} | {
|
|
695
|
+
readonly kind: "work.reassign";
|
|
696
|
+
readonly goalId: string;
|
|
697
|
+
readonly from: {
|
|
698
|
+
readonly id: string;
|
|
699
|
+
readonly name: string;
|
|
700
|
+
};
|
|
701
|
+
readonly to: {
|
|
702
|
+
readonly id: string;
|
|
703
|
+
readonly name: string;
|
|
704
|
+
};
|
|
705
|
+
readonly toAgent: {
|
|
706
|
+
readonly _tag: "clear";
|
|
707
|
+
} | {
|
|
708
|
+
readonly _tag: "keep";
|
|
709
|
+
} | {
|
|
710
|
+
readonly _tag: "set";
|
|
711
|
+
readonly agent: {
|
|
712
|
+
readonly host: string;
|
|
713
|
+
readonly agentId: string;
|
|
714
|
+
readonly name: string;
|
|
715
|
+
readonly paneId: string;
|
|
716
|
+
readonly relationship?: {
|
|
717
|
+
readonly parentAgentId: string;
|
|
718
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
719
|
+
};
|
|
720
|
+
};
|
|
721
|
+
};
|
|
722
|
+
readonly reason: string;
|
|
723
|
+
readonly expectedGoalEventId: string;
|
|
724
|
+
readonly expectedGoalUpdatedAt: number;
|
|
180
725
|
} | {
|
|
181
726
|
readonly kind: "browser.mcp.recover";
|
|
182
727
|
};
|
|
183
728
|
readonly result: string | null;
|
|
729
|
+
readonly acceptedReceipt?: string | null;
|
|
730
|
+
readonly durableOperation?: true;
|
|
184
731
|
readonly error: string | null;
|
|
185
732
|
readonly worker?: {
|
|
186
733
|
readonly host: string;
|
|
@@ -222,16 +769,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
222
769
|
readonly kind: "agent.delegate";
|
|
223
770
|
readonly repository: string;
|
|
224
771
|
readonly prompt: string;
|
|
225
|
-
readonly mode: "consult" | "review" | "work";
|
|
772
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
226
773
|
readonly channel?: "coordinator_chat";
|
|
227
774
|
} | {
|
|
228
775
|
readonly kind: "agent.message";
|
|
229
776
|
readonly session: string;
|
|
230
777
|
readonly message: string;
|
|
778
|
+
} | {
|
|
779
|
+
readonly kind: "work.reconcile";
|
|
780
|
+
readonly repository: string;
|
|
781
|
+
readonly pullRequest: number;
|
|
782
|
+
readonly goalId: string;
|
|
783
|
+
readonly laneId: string;
|
|
784
|
+
readonly operationId: string;
|
|
785
|
+
readonly expectedRevision: number;
|
|
786
|
+
readonly expectedHead: string;
|
|
787
|
+
readonly newHead: string;
|
|
788
|
+
readonly expectedOwner: {
|
|
789
|
+
readonly id: string;
|
|
790
|
+
readonly name: string;
|
|
791
|
+
};
|
|
792
|
+
readonly expectedGoalEventId: string;
|
|
793
|
+
readonly bindingDispatchRequestId: string;
|
|
794
|
+
readonly sessionId: string;
|
|
795
|
+
readonly expectedWork: string;
|
|
796
|
+
readonly worker: {
|
|
797
|
+
readonly host: string;
|
|
798
|
+
readonly agentId: string;
|
|
799
|
+
readonly name: string;
|
|
800
|
+
readonly paneId: string;
|
|
801
|
+
readonly relationship?: {
|
|
802
|
+
readonly parentAgentId: string;
|
|
803
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
804
|
+
};
|
|
805
|
+
};
|
|
806
|
+
readonly worktree: string;
|
|
807
|
+
readonly branch: string;
|
|
808
|
+
} | {
|
|
809
|
+
readonly kind: "work.admit";
|
|
810
|
+
readonly repository: string;
|
|
811
|
+
readonly pullRequest: number;
|
|
812
|
+
readonly reviewUrl: string;
|
|
813
|
+
readonly goalId: string;
|
|
814
|
+
readonly laneId: string;
|
|
815
|
+
readonly operationId: string;
|
|
816
|
+
readonly expectedAbsenceToken: string;
|
|
817
|
+
readonly head: string;
|
|
818
|
+
readonly baseHead: string;
|
|
819
|
+
readonly owner: {
|
|
820
|
+
readonly id: string;
|
|
821
|
+
readonly name: string;
|
|
822
|
+
};
|
|
823
|
+
readonly sessionId: string;
|
|
824
|
+
readonly expectedWork: string;
|
|
825
|
+
readonly worker: {
|
|
826
|
+
readonly host: string;
|
|
827
|
+
readonly agentId: string;
|
|
828
|
+
readonly name: string;
|
|
829
|
+
readonly paneId: string;
|
|
830
|
+
readonly relationship?: {
|
|
831
|
+
readonly parentAgentId: string;
|
|
832
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
833
|
+
};
|
|
834
|
+
};
|
|
835
|
+
readonly worktree: string;
|
|
836
|
+
readonly branch: string;
|
|
837
|
+
readonly title: string;
|
|
838
|
+
readonly summary: string;
|
|
839
|
+
readonly detail: string;
|
|
840
|
+
} | {
|
|
841
|
+
readonly kind: "work.recover";
|
|
842
|
+
readonly repository: string;
|
|
843
|
+
readonly pullRequest: number;
|
|
844
|
+
readonly reviewUrl: string;
|
|
845
|
+
readonly goalId: string;
|
|
846
|
+
readonly laneId: string;
|
|
847
|
+
readonly operationId: string;
|
|
848
|
+
readonly expectedGoalEventId: string;
|
|
849
|
+
readonly expectedGoalUpdatedAt: number;
|
|
850
|
+
readonly expectedHistoryToken: string;
|
|
851
|
+
readonly head: string;
|
|
852
|
+
readonly baseHead: string;
|
|
853
|
+
readonly owner: {
|
|
854
|
+
readonly id: string;
|
|
855
|
+
readonly name: string;
|
|
856
|
+
};
|
|
857
|
+
readonly sessionId: string;
|
|
858
|
+
readonly expectedWork: string;
|
|
859
|
+
readonly worker: {
|
|
860
|
+
readonly host: string;
|
|
861
|
+
readonly agentId: string;
|
|
862
|
+
readonly name: string;
|
|
863
|
+
readonly paneId: string;
|
|
864
|
+
readonly relationship?: {
|
|
865
|
+
readonly parentAgentId: string;
|
|
866
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
867
|
+
};
|
|
868
|
+
};
|
|
869
|
+
readonly worktree: string;
|
|
870
|
+
readonly branch: string;
|
|
871
|
+
} | {
|
|
872
|
+
readonly kind: "work.reassign";
|
|
873
|
+
readonly goalId: string;
|
|
874
|
+
readonly from: {
|
|
875
|
+
readonly id: string;
|
|
876
|
+
readonly name: string;
|
|
877
|
+
};
|
|
878
|
+
readonly to: {
|
|
879
|
+
readonly id: string;
|
|
880
|
+
readonly name: string;
|
|
881
|
+
};
|
|
882
|
+
readonly toAgent: {
|
|
883
|
+
readonly _tag: "clear";
|
|
884
|
+
} | {
|
|
885
|
+
readonly _tag: "keep";
|
|
886
|
+
} | {
|
|
887
|
+
readonly _tag: "set";
|
|
888
|
+
readonly agent: {
|
|
889
|
+
readonly host: string;
|
|
890
|
+
readonly agentId: string;
|
|
891
|
+
readonly name: string;
|
|
892
|
+
readonly paneId: string;
|
|
893
|
+
readonly relationship?: {
|
|
894
|
+
readonly parentAgentId: string;
|
|
895
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
896
|
+
};
|
|
897
|
+
};
|
|
898
|
+
};
|
|
899
|
+
readonly reason: string;
|
|
900
|
+
readonly expectedGoalEventId: string;
|
|
901
|
+
readonly expectedGoalUpdatedAt: number;
|
|
231
902
|
} | {
|
|
232
903
|
readonly kind: "browser.mcp.recover";
|
|
233
904
|
};
|
|
234
905
|
readonly result: string | null;
|
|
906
|
+
readonly acceptedReceipt?: string | null;
|
|
907
|
+
readonly durableOperation?: true;
|
|
235
908
|
readonly error: string | null;
|
|
236
909
|
readonly worker?: {
|
|
237
910
|
readonly host: string;
|
|
@@ -249,7 +922,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
249
922
|
readonly url: string;
|
|
250
923
|
};
|
|
251
924
|
readonly workerTerminalObservedAt?: number | null;
|
|
252
|
-
}, FleetApprovalError | FleetJobNotFoundError | FleetStoreError | FleetTransitionConflictError, never>;
|
|
925
|
+
}, FleetApprovalError | FleetJobNotFoundError | FleetOperationError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
253
926
|
runCoordinatorChat: (jobId: string) => Effect.Effect<{
|
|
254
927
|
readonly id: string;
|
|
255
928
|
readonly createdAt: number;
|
|
@@ -273,16 +946,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
273
946
|
readonly kind: "agent.delegate";
|
|
274
947
|
readonly repository: string;
|
|
275
948
|
readonly prompt: string;
|
|
276
|
-
readonly mode: "consult" | "review" | "work";
|
|
949
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
277
950
|
readonly channel?: "coordinator_chat";
|
|
278
951
|
} | {
|
|
279
952
|
readonly kind: "agent.message";
|
|
280
953
|
readonly session: string;
|
|
281
954
|
readonly message: string;
|
|
955
|
+
} | {
|
|
956
|
+
readonly kind: "work.reconcile";
|
|
957
|
+
readonly repository: string;
|
|
958
|
+
readonly pullRequest: number;
|
|
959
|
+
readonly goalId: string;
|
|
960
|
+
readonly laneId: string;
|
|
961
|
+
readonly operationId: string;
|
|
962
|
+
readonly expectedRevision: number;
|
|
963
|
+
readonly expectedHead: string;
|
|
964
|
+
readonly newHead: string;
|
|
965
|
+
readonly expectedOwner: {
|
|
966
|
+
readonly id: string;
|
|
967
|
+
readonly name: string;
|
|
968
|
+
};
|
|
969
|
+
readonly expectedGoalEventId: string;
|
|
970
|
+
readonly bindingDispatchRequestId: string;
|
|
971
|
+
readonly sessionId: string;
|
|
972
|
+
readonly expectedWork: string;
|
|
973
|
+
readonly worker: {
|
|
974
|
+
readonly host: string;
|
|
975
|
+
readonly agentId: string;
|
|
976
|
+
readonly name: string;
|
|
977
|
+
readonly paneId: string;
|
|
978
|
+
readonly relationship?: {
|
|
979
|
+
readonly parentAgentId: string;
|
|
980
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
981
|
+
};
|
|
982
|
+
};
|
|
983
|
+
readonly worktree: string;
|
|
984
|
+
readonly branch: string;
|
|
985
|
+
} | {
|
|
986
|
+
readonly kind: "work.admit";
|
|
987
|
+
readonly repository: string;
|
|
988
|
+
readonly pullRequest: number;
|
|
989
|
+
readonly reviewUrl: string;
|
|
990
|
+
readonly goalId: string;
|
|
991
|
+
readonly laneId: string;
|
|
992
|
+
readonly operationId: string;
|
|
993
|
+
readonly expectedAbsenceToken: string;
|
|
994
|
+
readonly head: string;
|
|
995
|
+
readonly baseHead: string;
|
|
996
|
+
readonly owner: {
|
|
997
|
+
readonly id: string;
|
|
998
|
+
readonly name: string;
|
|
999
|
+
};
|
|
1000
|
+
readonly sessionId: string;
|
|
1001
|
+
readonly expectedWork: string;
|
|
1002
|
+
readonly worker: {
|
|
1003
|
+
readonly host: string;
|
|
1004
|
+
readonly agentId: string;
|
|
1005
|
+
readonly name: string;
|
|
1006
|
+
readonly paneId: string;
|
|
1007
|
+
readonly relationship?: {
|
|
1008
|
+
readonly parentAgentId: string;
|
|
1009
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1010
|
+
};
|
|
1011
|
+
};
|
|
1012
|
+
readonly worktree: string;
|
|
1013
|
+
readonly branch: string;
|
|
1014
|
+
readonly title: string;
|
|
1015
|
+
readonly summary: string;
|
|
1016
|
+
readonly detail: string;
|
|
1017
|
+
} | {
|
|
1018
|
+
readonly kind: "work.recover";
|
|
1019
|
+
readonly repository: string;
|
|
1020
|
+
readonly pullRequest: number;
|
|
1021
|
+
readonly reviewUrl: string;
|
|
1022
|
+
readonly goalId: string;
|
|
1023
|
+
readonly laneId: string;
|
|
1024
|
+
readonly operationId: string;
|
|
1025
|
+
readonly expectedGoalEventId: string;
|
|
1026
|
+
readonly expectedGoalUpdatedAt: number;
|
|
1027
|
+
readonly expectedHistoryToken: string;
|
|
1028
|
+
readonly head: string;
|
|
1029
|
+
readonly baseHead: string;
|
|
1030
|
+
readonly owner: {
|
|
1031
|
+
readonly id: string;
|
|
1032
|
+
readonly name: string;
|
|
1033
|
+
};
|
|
1034
|
+
readonly sessionId: string;
|
|
1035
|
+
readonly expectedWork: string;
|
|
1036
|
+
readonly worker: {
|
|
1037
|
+
readonly host: string;
|
|
1038
|
+
readonly agentId: string;
|
|
1039
|
+
readonly name: string;
|
|
1040
|
+
readonly paneId: string;
|
|
1041
|
+
readonly relationship?: {
|
|
1042
|
+
readonly parentAgentId: string;
|
|
1043
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1044
|
+
};
|
|
1045
|
+
};
|
|
1046
|
+
readonly worktree: string;
|
|
1047
|
+
readonly branch: string;
|
|
1048
|
+
} | {
|
|
1049
|
+
readonly kind: "work.reassign";
|
|
1050
|
+
readonly goalId: string;
|
|
1051
|
+
readonly from: {
|
|
1052
|
+
readonly id: string;
|
|
1053
|
+
readonly name: string;
|
|
1054
|
+
};
|
|
1055
|
+
readonly to: {
|
|
1056
|
+
readonly id: string;
|
|
1057
|
+
readonly name: string;
|
|
1058
|
+
};
|
|
1059
|
+
readonly toAgent: {
|
|
1060
|
+
readonly _tag: "clear";
|
|
1061
|
+
} | {
|
|
1062
|
+
readonly _tag: "keep";
|
|
1063
|
+
} | {
|
|
1064
|
+
readonly _tag: "set";
|
|
1065
|
+
readonly agent: {
|
|
1066
|
+
readonly host: string;
|
|
1067
|
+
readonly agentId: string;
|
|
1068
|
+
readonly name: string;
|
|
1069
|
+
readonly paneId: string;
|
|
1070
|
+
readonly relationship?: {
|
|
1071
|
+
readonly parentAgentId: string;
|
|
1072
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1073
|
+
};
|
|
1074
|
+
};
|
|
1075
|
+
};
|
|
1076
|
+
readonly reason: string;
|
|
1077
|
+
readonly expectedGoalEventId: string;
|
|
1078
|
+
readonly expectedGoalUpdatedAt: number;
|
|
282
1079
|
} | {
|
|
283
1080
|
readonly kind: "browser.mcp.recover";
|
|
284
1081
|
};
|
|
285
1082
|
readonly result: string | null;
|
|
1083
|
+
readonly acceptedReceipt?: string | null;
|
|
1084
|
+
readonly durableOperation?: true;
|
|
286
1085
|
readonly error: string | null;
|
|
287
1086
|
readonly worker?: {
|
|
288
1087
|
readonly host: string;
|
|
@@ -300,7 +1099,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
300
1099
|
readonly url: string;
|
|
301
1100
|
};
|
|
302
1101
|
readonly workerTerminalObservedAt?: number | null;
|
|
303
|
-
}, FleetApprovalError | FleetJobNotFoundError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
1102
|
+
}, FleetApprovalError | FleetJobNotFoundError | FleetOperationError | FleetStoreError | FleetTransitionConflictError | FleetValidationError, never>;
|
|
304
1103
|
get: (jobId: string) => Effect.Effect<{
|
|
305
1104
|
readonly id: string;
|
|
306
1105
|
readonly createdAt: number;
|
|
@@ -321,19 +1120,145 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
321
1120
|
readonly kind: "nix.apply";
|
|
322
1121
|
readonly ref: string;
|
|
323
1122
|
} | {
|
|
324
|
-
readonly kind: "agent.delegate";
|
|
1123
|
+
readonly kind: "agent.delegate";
|
|
1124
|
+
readonly repository: string;
|
|
1125
|
+
readonly prompt: string;
|
|
1126
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
1127
|
+
readonly channel?: "coordinator_chat";
|
|
1128
|
+
} | {
|
|
1129
|
+
readonly kind: "agent.message";
|
|
1130
|
+
readonly session: string;
|
|
1131
|
+
readonly message: string;
|
|
1132
|
+
} | {
|
|
1133
|
+
readonly kind: "work.reconcile";
|
|
1134
|
+
readonly repository: string;
|
|
1135
|
+
readonly pullRequest: number;
|
|
1136
|
+
readonly goalId: string;
|
|
1137
|
+
readonly laneId: string;
|
|
1138
|
+
readonly operationId: string;
|
|
1139
|
+
readonly expectedRevision: number;
|
|
1140
|
+
readonly expectedHead: string;
|
|
1141
|
+
readonly newHead: string;
|
|
1142
|
+
readonly expectedOwner: {
|
|
1143
|
+
readonly id: string;
|
|
1144
|
+
readonly name: string;
|
|
1145
|
+
};
|
|
1146
|
+
readonly expectedGoalEventId: string;
|
|
1147
|
+
readonly bindingDispatchRequestId: string;
|
|
1148
|
+
readonly sessionId: string;
|
|
1149
|
+
readonly expectedWork: string;
|
|
1150
|
+
readonly worker: {
|
|
1151
|
+
readonly host: string;
|
|
1152
|
+
readonly agentId: string;
|
|
1153
|
+
readonly name: string;
|
|
1154
|
+
readonly paneId: string;
|
|
1155
|
+
readonly relationship?: {
|
|
1156
|
+
readonly parentAgentId: string;
|
|
1157
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1158
|
+
};
|
|
1159
|
+
};
|
|
1160
|
+
readonly worktree: string;
|
|
1161
|
+
readonly branch: string;
|
|
1162
|
+
} | {
|
|
1163
|
+
readonly kind: "work.admit";
|
|
1164
|
+
readonly repository: string;
|
|
1165
|
+
readonly pullRequest: number;
|
|
1166
|
+
readonly reviewUrl: string;
|
|
1167
|
+
readonly goalId: string;
|
|
1168
|
+
readonly laneId: string;
|
|
1169
|
+
readonly operationId: string;
|
|
1170
|
+
readonly expectedAbsenceToken: string;
|
|
1171
|
+
readonly head: string;
|
|
1172
|
+
readonly baseHead: string;
|
|
1173
|
+
readonly owner: {
|
|
1174
|
+
readonly id: string;
|
|
1175
|
+
readonly name: string;
|
|
1176
|
+
};
|
|
1177
|
+
readonly sessionId: string;
|
|
1178
|
+
readonly expectedWork: string;
|
|
1179
|
+
readonly worker: {
|
|
1180
|
+
readonly host: string;
|
|
1181
|
+
readonly agentId: string;
|
|
1182
|
+
readonly name: string;
|
|
1183
|
+
readonly paneId: string;
|
|
1184
|
+
readonly relationship?: {
|
|
1185
|
+
readonly parentAgentId: string;
|
|
1186
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1187
|
+
};
|
|
1188
|
+
};
|
|
1189
|
+
readonly worktree: string;
|
|
1190
|
+
readonly branch: string;
|
|
1191
|
+
readonly title: string;
|
|
1192
|
+
readonly summary: string;
|
|
1193
|
+
readonly detail: string;
|
|
1194
|
+
} | {
|
|
1195
|
+
readonly kind: "work.recover";
|
|
325
1196
|
readonly repository: string;
|
|
326
|
-
readonly
|
|
327
|
-
readonly
|
|
328
|
-
readonly
|
|
1197
|
+
readonly pullRequest: number;
|
|
1198
|
+
readonly reviewUrl: string;
|
|
1199
|
+
readonly goalId: string;
|
|
1200
|
+
readonly laneId: string;
|
|
1201
|
+
readonly operationId: string;
|
|
1202
|
+
readonly expectedGoalEventId: string;
|
|
1203
|
+
readonly expectedGoalUpdatedAt: number;
|
|
1204
|
+
readonly expectedHistoryToken: string;
|
|
1205
|
+
readonly head: string;
|
|
1206
|
+
readonly baseHead: string;
|
|
1207
|
+
readonly owner: {
|
|
1208
|
+
readonly id: string;
|
|
1209
|
+
readonly name: string;
|
|
1210
|
+
};
|
|
1211
|
+
readonly sessionId: string;
|
|
1212
|
+
readonly expectedWork: string;
|
|
1213
|
+
readonly worker: {
|
|
1214
|
+
readonly host: string;
|
|
1215
|
+
readonly agentId: string;
|
|
1216
|
+
readonly name: string;
|
|
1217
|
+
readonly paneId: string;
|
|
1218
|
+
readonly relationship?: {
|
|
1219
|
+
readonly parentAgentId: string;
|
|
1220
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1221
|
+
};
|
|
1222
|
+
};
|
|
1223
|
+
readonly worktree: string;
|
|
1224
|
+
readonly branch: string;
|
|
329
1225
|
} | {
|
|
330
|
-
readonly kind: "
|
|
331
|
-
readonly
|
|
332
|
-
readonly
|
|
1226
|
+
readonly kind: "work.reassign";
|
|
1227
|
+
readonly goalId: string;
|
|
1228
|
+
readonly from: {
|
|
1229
|
+
readonly id: string;
|
|
1230
|
+
readonly name: string;
|
|
1231
|
+
};
|
|
1232
|
+
readonly to: {
|
|
1233
|
+
readonly id: string;
|
|
1234
|
+
readonly name: string;
|
|
1235
|
+
};
|
|
1236
|
+
readonly toAgent: {
|
|
1237
|
+
readonly _tag: "clear";
|
|
1238
|
+
} | {
|
|
1239
|
+
readonly _tag: "keep";
|
|
1240
|
+
} | {
|
|
1241
|
+
readonly _tag: "set";
|
|
1242
|
+
readonly agent: {
|
|
1243
|
+
readonly host: string;
|
|
1244
|
+
readonly agentId: string;
|
|
1245
|
+
readonly name: string;
|
|
1246
|
+
readonly paneId: string;
|
|
1247
|
+
readonly relationship?: {
|
|
1248
|
+
readonly parentAgentId: string;
|
|
1249
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1250
|
+
};
|
|
1251
|
+
};
|
|
1252
|
+
};
|
|
1253
|
+
readonly reason: string;
|
|
1254
|
+
readonly expectedGoalEventId: string;
|
|
1255
|
+
readonly expectedGoalUpdatedAt: number;
|
|
333
1256
|
} | {
|
|
334
1257
|
readonly kind: "browser.mcp.recover";
|
|
335
1258
|
};
|
|
336
1259
|
readonly result: string | null;
|
|
1260
|
+
readonly acceptedReceipt?: string | null;
|
|
1261
|
+
readonly durableOperation?: true;
|
|
337
1262
|
readonly error: string | null;
|
|
338
1263
|
readonly worker?: {
|
|
339
1264
|
readonly host: string;
|
|
@@ -375,16 +1300,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
375
1300
|
readonly kind: "agent.delegate";
|
|
376
1301
|
readonly repository: string;
|
|
377
1302
|
readonly prompt: string;
|
|
378
|
-
readonly mode: "consult" | "review" | "work";
|
|
1303
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
379
1304
|
readonly channel?: "coordinator_chat";
|
|
380
1305
|
} | {
|
|
381
1306
|
readonly kind: "agent.message";
|
|
382
1307
|
readonly session: string;
|
|
383
1308
|
readonly message: string;
|
|
1309
|
+
} | {
|
|
1310
|
+
readonly kind: "work.reconcile";
|
|
1311
|
+
readonly repository: string;
|
|
1312
|
+
readonly pullRequest: number;
|
|
1313
|
+
readonly goalId: string;
|
|
1314
|
+
readonly laneId: string;
|
|
1315
|
+
readonly operationId: string;
|
|
1316
|
+
readonly expectedRevision: number;
|
|
1317
|
+
readonly expectedHead: string;
|
|
1318
|
+
readonly newHead: string;
|
|
1319
|
+
readonly expectedOwner: {
|
|
1320
|
+
readonly id: string;
|
|
1321
|
+
readonly name: string;
|
|
1322
|
+
};
|
|
1323
|
+
readonly expectedGoalEventId: string;
|
|
1324
|
+
readonly bindingDispatchRequestId: string;
|
|
1325
|
+
readonly sessionId: string;
|
|
1326
|
+
readonly expectedWork: string;
|
|
1327
|
+
readonly worker: {
|
|
1328
|
+
readonly host: string;
|
|
1329
|
+
readonly agentId: string;
|
|
1330
|
+
readonly name: string;
|
|
1331
|
+
readonly paneId: string;
|
|
1332
|
+
readonly relationship?: {
|
|
1333
|
+
readonly parentAgentId: string;
|
|
1334
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1335
|
+
};
|
|
1336
|
+
};
|
|
1337
|
+
readonly worktree: string;
|
|
1338
|
+
readonly branch: string;
|
|
1339
|
+
} | {
|
|
1340
|
+
readonly kind: "work.admit";
|
|
1341
|
+
readonly repository: string;
|
|
1342
|
+
readonly pullRequest: number;
|
|
1343
|
+
readonly reviewUrl: string;
|
|
1344
|
+
readonly goalId: string;
|
|
1345
|
+
readonly laneId: string;
|
|
1346
|
+
readonly operationId: string;
|
|
1347
|
+
readonly expectedAbsenceToken: string;
|
|
1348
|
+
readonly head: string;
|
|
1349
|
+
readonly baseHead: string;
|
|
1350
|
+
readonly owner: {
|
|
1351
|
+
readonly id: string;
|
|
1352
|
+
readonly name: string;
|
|
1353
|
+
};
|
|
1354
|
+
readonly sessionId: string;
|
|
1355
|
+
readonly expectedWork: string;
|
|
1356
|
+
readonly worker: {
|
|
1357
|
+
readonly host: string;
|
|
1358
|
+
readonly agentId: string;
|
|
1359
|
+
readonly name: string;
|
|
1360
|
+
readonly paneId: string;
|
|
1361
|
+
readonly relationship?: {
|
|
1362
|
+
readonly parentAgentId: string;
|
|
1363
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1364
|
+
};
|
|
1365
|
+
};
|
|
1366
|
+
readonly worktree: string;
|
|
1367
|
+
readonly branch: string;
|
|
1368
|
+
readonly title: string;
|
|
1369
|
+
readonly summary: string;
|
|
1370
|
+
readonly detail: string;
|
|
1371
|
+
} | {
|
|
1372
|
+
readonly kind: "work.recover";
|
|
1373
|
+
readonly repository: string;
|
|
1374
|
+
readonly pullRequest: number;
|
|
1375
|
+
readonly reviewUrl: string;
|
|
1376
|
+
readonly goalId: string;
|
|
1377
|
+
readonly laneId: string;
|
|
1378
|
+
readonly operationId: string;
|
|
1379
|
+
readonly expectedGoalEventId: string;
|
|
1380
|
+
readonly expectedGoalUpdatedAt: number;
|
|
1381
|
+
readonly expectedHistoryToken: string;
|
|
1382
|
+
readonly head: string;
|
|
1383
|
+
readonly baseHead: string;
|
|
1384
|
+
readonly owner: {
|
|
1385
|
+
readonly id: string;
|
|
1386
|
+
readonly name: string;
|
|
1387
|
+
};
|
|
1388
|
+
readonly sessionId: string;
|
|
1389
|
+
readonly expectedWork: string;
|
|
1390
|
+
readonly worker: {
|
|
1391
|
+
readonly host: string;
|
|
1392
|
+
readonly agentId: string;
|
|
1393
|
+
readonly name: string;
|
|
1394
|
+
readonly paneId: string;
|
|
1395
|
+
readonly relationship?: {
|
|
1396
|
+
readonly parentAgentId: string;
|
|
1397
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1398
|
+
};
|
|
1399
|
+
};
|
|
1400
|
+
readonly worktree: string;
|
|
1401
|
+
readonly branch: string;
|
|
1402
|
+
} | {
|
|
1403
|
+
readonly kind: "work.reassign";
|
|
1404
|
+
readonly goalId: string;
|
|
1405
|
+
readonly from: {
|
|
1406
|
+
readonly id: string;
|
|
1407
|
+
readonly name: string;
|
|
1408
|
+
};
|
|
1409
|
+
readonly to: {
|
|
1410
|
+
readonly id: string;
|
|
1411
|
+
readonly name: string;
|
|
1412
|
+
};
|
|
1413
|
+
readonly toAgent: {
|
|
1414
|
+
readonly _tag: "clear";
|
|
1415
|
+
} | {
|
|
1416
|
+
readonly _tag: "keep";
|
|
1417
|
+
} | {
|
|
1418
|
+
readonly _tag: "set";
|
|
1419
|
+
readonly agent: {
|
|
1420
|
+
readonly host: string;
|
|
1421
|
+
readonly agentId: string;
|
|
1422
|
+
readonly name: string;
|
|
1423
|
+
readonly paneId: string;
|
|
1424
|
+
readonly relationship?: {
|
|
1425
|
+
readonly parentAgentId: string;
|
|
1426
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1427
|
+
};
|
|
1428
|
+
};
|
|
1429
|
+
};
|
|
1430
|
+
readonly reason: string;
|
|
1431
|
+
readonly expectedGoalEventId: string;
|
|
1432
|
+
readonly expectedGoalUpdatedAt: number;
|
|
384
1433
|
} | {
|
|
385
1434
|
readonly kind: "browser.mcp.recover";
|
|
386
1435
|
};
|
|
387
1436
|
readonly result: string | null;
|
|
1437
|
+
readonly acceptedReceipt?: string | null;
|
|
1438
|
+
readonly durableOperation?: true;
|
|
388
1439
|
readonly error: string | null;
|
|
389
1440
|
readonly worker?: {
|
|
390
1441
|
readonly host: string;
|
|
@@ -429,16 +1480,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
429
1480
|
readonly kind: "agent.delegate";
|
|
430
1481
|
readonly repository: string;
|
|
431
1482
|
readonly prompt: string;
|
|
432
|
-
readonly mode: "consult" | "review" | "work";
|
|
1483
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
433
1484
|
readonly channel?: "coordinator_chat";
|
|
434
1485
|
} | {
|
|
435
1486
|
readonly kind: "agent.message";
|
|
436
1487
|
readonly session: string;
|
|
437
1488
|
readonly message: string;
|
|
1489
|
+
} | {
|
|
1490
|
+
readonly kind: "work.reconcile";
|
|
1491
|
+
readonly repository: string;
|
|
1492
|
+
readonly pullRequest: number;
|
|
1493
|
+
readonly goalId: string;
|
|
1494
|
+
readonly laneId: string;
|
|
1495
|
+
readonly operationId: string;
|
|
1496
|
+
readonly expectedRevision: number;
|
|
1497
|
+
readonly expectedHead: string;
|
|
1498
|
+
readonly newHead: string;
|
|
1499
|
+
readonly expectedOwner: {
|
|
1500
|
+
readonly id: string;
|
|
1501
|
+
readonly name: string;
|
|
1502
|
+
};
|
|
1503
|
+
readonly expectedGoalEventId: string;
|
|
1504
|
+
readonly bindingDispatchRequestId: string;
|
|
1505
|
+
readonly sessionId: string;
|
|
1506
|
+
readonly expectedWork: string;
|
|
1507
|
+
readonly worker: {
|
|
1508
|
+
readonly host: string;
|
|
1509
|
+
readonly agentId: string;
|
|
1510
|
+
readonly name: string;
|
|
1511
|
+
readonly paneId: string;
|
|
1512
|
+
readonly relationship?: {
|
|
1513
|
+
readonly parentAgentId: string;
|
|
1514
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1515
|
+
};
|
|
1516
|
+
};
|
|
1517
|
+
readonly worktree: string;
|
|
1518
|
+
readonly branch: string;
|
|
1519
|
+
} | {
|
|
1520
|
+
readonly kind: "work.admit";
|
|
1521
|
+
readonly repository: string;
|
|
1522
|
+
readonly pullRequest: number;
|
|
1523
|
+
readonly reviewUrl: string;
|
|
1524
|
+
readonly goalId: string;
|
|
1525
|
+
readonly laneId: string;
|
|
1526
|
+
readonly operationId: string;
|
|
1527
|
+
readonly expectedAbsenceToken: string;
|
|
1528
|
+
readonly head: string;
|
|
1529
|
+
readonly baseHead: string;
|
|
1530
|
+
readonly owner: {
|
|
1531
|
+
readonly id: string;
|
|
1532
|
+
readonly name: string;
|
|
1533
|
+
};
|
|
1534
|
+
readonly sessionId: string;
|
|
1535
|
+
readonly expectedWork: string;
|
|
1536
|
+
readonly worker: {
|
|
1537
|
+
readonly host: string;
|
|
1538
|
+
readonly agentId: string;
|
|
1539
|
+
readonly name: string;
|
|
1540
|
+
readonly paneId: string;
|
|
1541
|
+
readonly relationship?: {
|
|
1542
|
+
readonly parentAgentId: string;
|
|
1543
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1544
|
+
};
|
|
1545
|
+
};
|
|
1546
|
+
readonly worktree: string;
|
|
1547
|
+
readonly branch: string;
|
|
1548
|
+
readonly title: string;
|
|
1549
|
+
readonly summary: string;
|
|
1550
|
+
readonly detail: string;
|
|
1551
|
+
} | {
|
|
1552
|
+
readonly kind: "work.recover";
|
|
1553
|
+
readonly repository: string;
|
|
1554
|
+
readonly pullRequest: number;
|
|
1555
|
+
readonly reviewUrl: string;
|
|
1556
|
+
readonly goalId: string;
|
|
1557
|
+
readonly laneId: string;
|
|
1558
|
+
readonly operationId: string;
|
|
1559
|
+
readonly expectedGoalEventId: string;
|
|
1560
|
+
readonly expectedGoalUpdatedAt: number;
|
|
1561
|
+
readonly expectedHistoryToken: string;
|
|
1562
|
+
readonly head: string;
|
|
1563
|
+
readonly baseHead: string;
|
|
1564
|
+
readonly owner: {
|
|
1565
|
+
readonly id: string;
|
|
1566
|
+
readonly name: string;
|
|
1567
|
+
};
|
|
1568
|
+
readonly sessionId: string;
|
|
1569
|
+
readonly expectedWork: string;
|
|
1570
|
+
readonly worker: {
|
|
1571
|
+
readonly host: string;
|
|
1572
|
+
readonly agentId: string;
|
|
1573
|
+
readonly name: string;
|
|
1574
|
+
readonly paneId: string;
|
|
1575
|
+
readonly relationship?: {
|
|
1576
|
+
readonly parentAgentId: string;
|
|
1577
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1578
|
+
};
|
|
1579
|
+
};
|
|
1580
|
+
readonly worktree: string;
|
|
1581
|
+
readonly branch: string;
|
|
1582
|
+
} | {
|
|
1583
|
+
readonly kind: "work.reassign";
|
|
1584
|
+
readonly goalId: string;
|
|
1585
|
+
readonly from: {
|
|
1586
|
+
readonly id: string;
|
|
1587
|
+
readonly name: string;
|
|
1588
|
+
};
|
|
1589
|
+
readonly to: {
|
|
1590
|
+
readonly id: string;
|
|
1591
|
+
readonly name: string;
|
|
1592
|
+
};
|
|
1593
|
+
readonly toAgent: {
|
|
1594
|
+
readonly _tag: "clear";
|
|
1595
|
+
} | {
|
|
1596
|
+
readonly _tag: "keep";
|
|
1597
|
+
} | {
|
|
1598
|
+
readonly _tag: "set";
|
|
1599
|
+
readonly agent: {
|
|
1600
|
+
readonly host: string;
|
|
1601
|
+
readonly agentId: string;
|
|
1602
|
+
readonly name: string;
|
|
1603
|
+
readonly paneId: string;
|
|
1604
|
+
readonly relationship?: {
|
|
1605
|
+
readonly parentAgentId: string;
|
|
1606
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1607
|
+
};
|
|
1608
|
+
};
|
|
1609
|
+
};
|
|
1610
|
+
readonly reason: string;
|
|
1611
|
+
readonly expectedGoalEventId: string;
|
|
1612
|
+
readonly expectedGoalUpdatedAt: number;
|
|
438
1613
|
} | {
|
|
439
1614
|
readonly kind: "browser.mcp.recover";
|
|
440
1615
|
};
|
|
441
1616
|
readonly result: string | null;
|
|
1617
|
+
readonly acceptedReceipt?: string | null;
|
|
1618
|
+
readonly durableOperation?: true;
|
|
442
1619
|
readonly error: string | null;
|
|
443
1620
|
readonly worker?: {
|
|
444
1621
|
readonly host: string;
|
|
@@ -484,16 +1661,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
484
1661
|
readonly kind: "agent.delegate";
|
|
485
1662
|
readonly repository: string;
|
|
486
1663
|
readonly prompt: string;
|
|
487
|
-
readonly mode: "consult" | "review" | "work";
|
|
1664
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
488
1665
|
readonly channel?: "coordinator_chat";
|
|
489
1666
|
} | {
|
|
490
1667
|
readonly kind: "agent.message";
|
|
491
1668
|
readonly session: string;
|
|
492
1669
|
readonly message: string;
|
|
1670
|
+
} | {
|
|
1671
|
+
readonly kind: "work.reconcile";
|
|
1672
|
+
readonly repository: string;
|
|
1673
|
+
readonly pullRequest: number;
|
|
1674
|
+
readonly goalId: string;
|
|
1675
|
+
readonly laneId: string;
|
|
1676
|
+
readonly operationId: string;
|
|
1677
|
+
readonly expectedRevision: number;
|
|
1678
|
+
readonly expectedHead: string;
|
|
1679
|
+
readonly newHead: string;
|
|
1680
|
+
readonly expectedOwner: {
|
|
1681
|
+
readonly id: string;
|
|
1682
|
+
readonly name: string;
|
|
1683
|
+
};
|
|
1684
|
+
readonly expectedGoalEventId: string;
|
|
1685
|
+
readonly bindingDispatchRequestId: string;
|
|
1686
|
+
readonly sessionId: string;
|
|
1687
|
+
readonly expectedWork: string;
|
|
1688
|
+
readonly worker: {
|
|
1689
|
+
readonly host: string;
|
|
1690
|
+
readonly agentId: string;
|
|
1691
|
+
readonly name: string;
|
|
1692
|
+
readonly paneId: string;
|
|
1693
|
+
readonly relationship?: {
|
|
1694
|
+
readonly parentAgentId: string;
|
|
1695
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1696
|
+
};
|
|
1697
|
+
};
|
|
1698
|
+
readonly worktree: string;
|
|
1699
|
+
readonly branch: string;
|
|
1700
|
+
} | {
|
|
1701
|
+
readonly kind: "work.admit";
|
|
1702
|
+
readonly repository: string;
|
|
1703
|
+
readonly pullRequest: number;
|
|
1704
|
+
readonly reviewUrl: string;
|
|
1705
|
+
readonly goalId: string;
|
|
1706
|
+
readonly laneId: string;
|
|
1707
|
+
readonly operationId: string;
|
|
1708
|
+
readonly expectedAbsenceToken: string;
|
|
1709
|
+
readonly head: string;
|
|
1710
|
+
readonly baseHead: string;
|
|
1711
|
+
readonly owner: {
|
|
1712
|
+
readonly id: string;
|
|
1713
|
+
readonly name: string;
|
|
1714
|
+
};
|
|
1715
|
+
readonly sessionId: string;
|
|
1716
|
+
readonly expectedWork: string;
|
|
1717
|
+
readonly worker: {
|
|
1718
|
+
readonly host: string;
|
|
1719
|
+
readonly agentId: string;
|
|
1720
|
+
readonly name: string;
|
|
1721
|
+
readonly paneId: string;
|
|
1722
|
+
readonly relationship?: {
|
|
1723
|
+
readonly parentAgentId: string;
|
|
1724
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1725
|
+
};
|
|
1726
|
+
};
|
|
1727
|
+
readonly worktree: string;
|
|
1728
|
+
readonly branch: string;
|
|
1729
|
+
readonly title: string;
|
|
1730
|
+
readonly summary: string;
|
|
1731
|
+
readonly detail: string;
|
|
1732
|
+
} | {
|
|
1733
|
+
readonly kind: "work.recover";
|
|
1734
|
+
readonly repository: string;
|
|
1735
|
+
readonly pullRequest: number;
|
|
1736
|
+
readonly reviewUrl: string;
|
|
1737
|
+
readonly goalId: string;
|
|
1738
|
+
readonly laneId: string;
|
|
1739
|
+
readonly operationId: string;
|
|
1740
|
+
readonly expectedGoalEventId: string;
|
|
1741
|
+
readonly expectedGoalUpdatedAt: number;
|
|
1742
|
+
readonly expectedHistoryToken: string;
|
|
1743
|
+
readonly head: string;
|
|
1744
|
+
readonly baseHead: string;
|
|
1745
|
+
readonly owner: {
|
|
1746
|
+
readonly id: string;
|
|
1747
|
+
readonly name: string;
|
|
1748
|
+
};
|
|
1749
|
+
readonly sessionId: string;
|
|
1750
|
+
readonly expectedWork: string;
|
|
1751
|
+
readonly worker: {
|
|
1752
|
+
readonly host: string;
|
|
1753
|
+
readonly agentId: string;
|
|
1754
|
+
readonly name: string;
|
|
1755
|
+
readonly paneId: string;
|
|
1756
|
+
readonly relationship?: {
|
|
1757
|
+
readonly parentAgentId: string;
|
|
1758
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1759
|
+
};
|
|
1760
|
+
};
|
|
1761
|
+
readonly worktree: string;
|
|
1762
|
+
readonly branch: string;
|
|
1763
|
+
} | {
|
|
1764
|
+
readonly kind: "work.reassign";
|
|
1765
|
+
readonly goalId: string;
|
|
1766
|
+
readonly from: {
|
|
1767
|
+
readonly id: string;
|
|
1768
|
+
readonly name: string;
|
|
1769
|
+
};
|
|
1770
|
+
readonly to: {
|
|
1771
|
+
readonly id: string;
|
|
1772
|
+
readonly name: string;
|
|
1773
|
+
};
|
|
1774
|
+
readonly toAgent: {
|
|
1775
|
+
readonly _tag: "clear";
|
|
1776
|
+
} | {
|
|
1777
|
+
readonly _tag: "keep";
|
|
1778
|
+
} | {
|
|
1779
|
+
readonly _tag: "set";
|
|
1780
|
+
readonly agent: {
|
|
1781
|
+
readonly host: string;
|
|
1782
|
+
readonly agentId: string;
|
|
1783
|
+
readonly name: string;
|
|
1784
|
+
readonly paneId: string;
|
|
1785
|
+
readonly relationship?: {
|
|
1786
|
+
readonly parentAgentId: string;
|
|
1787
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1788
|
+
};
|
|
1789
|
+
};
|
|
1790
|
+
};
|
|
1791
|
+
readonly reason: string;
|
|
1792
|
+
readonly expectedGoalEventId: string;
|
|
1793
|
+
readonly expectedGoalUpdatedAt: number;
|
|
493
1794
|
} | {
|
|
494
1795
|
readonly kind: "browser.mcp.recover";
|
|
495
1796
|
};
|
|
496
1797
|
readonly result: string | null;
|
|
1798
|
+
readonly acceptedReceipt?: string | null;
|
|
1799
|
+
readonly durableOperation?: true;
|
|
497
1800
|
readonly error: string | null;
|
|
498
1801
|
readonly worker?: {
|
|
499
1802
|
readonly host: string;
|
|
@@ -544,16 +1847,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
544
1847
|
readonly kind: "agent.delegate";
|
|
545
1848
|
readonly repository: string;
|
|
546
1849
|
readonly prompt: string;
|
|
547
|
-
readonly mode: "consult" | "review" | "work";
|
|
1850
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
548
1851
|
readonly channel?: "coordinator_chat";
|
|
549
1852
|
} | {
|
|
550
1853
|
readonly kind: "agent.message";
|
|
551
1854
|
readonly session: string;
|
|
552
1855
|
readonly message: string;
|
|
1856
|
+
} | {
|
|
1857
|
+
readonly kind: "work.reconcile";
|
|
1858
|
+
readonly repository: string;
|
|
1859
|
+
readonly pullRequest: number;
|
|
1860
|
+
readonly goalId: string;
|
|
1861
|
+
readonly laneId: string;
|
|
1862
|
+
readonly operationId: string;
|
|
1863
|
+
readonly expectedRevision: number;
|
|
1864
|
+
readonly expectedHead: string;
|
|
1865
|
+
readonly newHead: string;
|
|
1866
|
+
readonly expectedOwner: {
|
|
1867
|
+
readonly id: string;
|
|
1868
|
+
readonly name: string;
|
|
1869
|
+
};
|
|
1870
|
+
readonly expectedGoalEventId: string;
|
|
1871
|
+
readonly bindingDispatchRequestId: string;
|
|
1872
|
+
readonly sessionId: string;
|
|
1873
|
+
readonly expectedWork: string;
|
|
1874
|
+
readonly worker: {
|
|
1875
|
+
readonly host: string;
|
|
1876
|
+
readonly agentId: string;
|
|
1877
|
+
readonly name: string;
|
|
1878
|
+
readonly paneId: string;
|
|
1879
|
+
readonly relationship?: {
|
|
1880
|
+
readonly parentAgentId: string;
|
|
1881
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1882
|
+
};
|
|
1883
|
+
};
|
|
1884
|
+
readonly worktree: string;
|
|
1885
|
+
readonly branch: string;
|
|
1886
|
+
} | {
|
|
1887
|
+
readonly kind: "work.admit";
|
|
1888
|
+
readonly repository: string;
|
|
1889
|
+
readonly pullRequest: number;
|
|
1890
|
+
readonly reviewUrl: string;
|
|
1891
|
+
readonly goalId: string;
|
|
1892
|
+
readonly laneId: string;
|
|
1893
|
+
readonly operationId: string;
|
|
1894
|
+
readonly expectedAbsenceToken: string;
|
|
1895
|
+
readonly head: string;
|
|
1896
|
+
readonly baseHead: string;
|
|
1897
|
+
readonly owner: {
|
|
1898
|
+
readonly id: string;
|
|
1899
|
+
readonly name: string;
|
|
1900
|
+
};
|
|
1901
|
+
readonly sessionId: string;
|
|
1902
|
+
readonly expectedWork: string;
|
|
1903
|
+
readonly worker: {
|
|
1904
|
+
readonly host: string;
|
|
1905
|
+
readonly agentId: string;
|
|
1906
|
+
readonly name: string;
|
|
1907
|
+
readonly paneId: string;
|
|
1908
|
+
readonly relationship?: {
|
|
1909
|
+
readonly parentAgentId: string;
|
|
1910
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1911
|
+
};
|
|
1912
|
+
};
|
|
1913
|
+
readonly worktree: string;
|
|
1914
|
+
readonly branch: string;
|
|
1915
|
+
readonly title: string;
|
|
1916
|
+
readonly summary: string;
|
|
1917
|
+
readonly detail: string;
|
|
1918
|
+
} | {
|
|
1919
|
+
readonly kind: "work.recover";
|
|
1920
|
+
readonly repository: string;
|
|
1921
|
+
readonly pullRequest: number;
|
|
1922
|
+
readonly reviewUrl: string;
|
|
1923
|
+
readonly goalId: string;
|
|
1924
|
+
readonly laneId: string;
|
|
1925
|
+
readonly operationId: string;
|
|
1926
|
+
readonly expectedGoalEventId: string;
|
|
1927
|
+
readonly expectedGoalUpdatedAt: number;
|
|
1928
|
+
readonly expectedHistoryToken: string;
|
|
1929
|
+
readonly head: string;
|
|
1930
|
+
readonly baseHead: string;
|
|
1931
|
+
readonly owner: {
|
|
1932
|
+
readonly id: string;
|
|
1933
|
+
readonly name: string;
|
|
1934
|
+
};
|
|
1935
|
+
readonly sessionId: string;
|
|
1936
|
+
readonly expectedWork: string;
|
|
1937
|
+
readonly worker: {
|
|
1938
|
+
readonly host: string;
|
|
1939
|
+
readonly agentId: string;
|
|
1940
|
+
readonly name: string;
|
|
1941
|
+
readonly paneId: string;
|
|
1942
|
+
readonly relationship?: {
|
|
1943
|
+
readonly parentAgentId: string;
|
|
1944
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1945
|
+
};
|
|
1946
|
+
};
|
|
1947
|
+
readonly worktree: string;
|
|
1948
|
+
readonly branch: string;
|
|
1949
|
+
} | {
|
|
1950
|
+
readonly kind: "work.reassign";
|
|
1951
|
+
readonly goalId: string;
|
|
1952
|
+
readonly from: {
|
|
1953
|
+
readonly id: string;
|
|
1954
|
+
readonly name: string;
|
|
1955
|
+
};
|
|
1956
|
+
readonly to: {
|
|
1957
|
+
readonly id: string;
|
|
1958
|
+
readonly name: string;
|
|
1959
|
+
};
|
|
1960
|
+
readonly toAgent: {
|
|
1961
|
+
readonly _tag: "clear";
|
|
1962
|
+
} | {
|
|
1963
|
+
readonly _tag: "keep";
|
|
1964
|
+
} | {
|
|
1965
|
+
readonly _tag: "set";
|
|
1966
|
+
readonly agent: {
|
|
1967
|
+
readonly host: string;
|
|
1968
|
+
readonly agentId: string;
|
|
1969
|
+
readonly name: string;
|
|
1970
|
+
readonly paneId: string;
|
|
1971
|
+
readonly relationship?: {
|
|
1972
|
+
readonly parentAgentId: string;
|
|
1973
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
1974
|
+
};
|
|
1975
|
+
};
|
|
1976
|
+
};
|
|
1977
|
+
readonly reason: string;
|
|
1978
|
+
readonly expectedGoalEventId: string;
|
|
1979
|
+
readonly expectedGoalUpdatedAt: number;
|
|
553
1980
|
} | {
|
|
554
1981
|
readonly kind: "browser.mcp.recover";
|
|
555
1982
|
};
|
|
556
1983
|
readonly result: string | null;
|
|
1984
|
+
readonly acceptedReceipt?: string | null;
|
|
1985
|
+
readonly durableOperation?: true;
|
|
557
1986
|
readonly error: string | null;
|
|
558
1987
|
readonly worker?: {
|
|
559
1988
|
readonly host: string;
|
|
@@ -600,16 +2029,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
600
2029
|
readonly kind: "agent.delegate";
|
|
601
2030
|
readonly repository: string;
|
|
602
2031
|
readonly prompt: string;
|
|
603
|
-
readonly mode: "consult" | "review" | "work";
|
|
2032
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
604
2033
|
readonly channel?: "coordinator_chat";
|
|
605
2034
|
} | {
|
|
606
2035
|
readonly kind: "agent.message";
|
|
607
2036
|
readonly session: string;
|
|
608
2037
|
readonly message: string;
|
|
2038
|
+
} | {
|
|
2039
|
+
readonly kind: "work.reconcile";
|
|
2040
|
+
readonly repository: string;
|
|
2041
|
+
readonly pullRequest: number;
|
|
2042
|
+
readonly goalId: string;
|
|
2043
|
+
readonly laneId: string;
|
|
2044
|
+
readonly operationId: string;
|
|
2045
|
+
readonly expectedRevision: number;
|
|
2046
|
+
readonly expectedHead: string;
|
|
2047
|
+
readonly newHead: string;
|
|
2048
|
+
readonly expectedOwner: {
|
|
2049
|
+
readonly id: string;
|
|
2050
|
+
readonly name: string;
|
|
2051
|
+
};
|
|
2052
|
+
readonly expectedGoalEventId: string;
|
|
2053
|
+
readonly bindingDispatchRequestId: string;
|
|
2054
|
+
readonly sessionId: string;
|
|
2055
|
+
readonly expectedWork: string;
|
|
2056
|
+
readonly worker: {
|
|
2057
|
+
readonly host: string;
|
|
2058
|
+
readonly agentId: string;
|
|
2059
|
+
readonly name: string;
|
|
2060
|
+
readonly paneId: string;
|
|
2061
|
+
readonly relationship?: {
|
|
2062
|
+
readonly parentAgentId: string;
|
|
2063
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
2064
|
+
};
|
|
2065
|
+
};
|
|
2066
|
+
readonly worktree: string;
|
|
2067
|
+
readonly branch: string;
|
|
2068
|
+
} | {
|
|
2069
|
+
readonly kind: "work.admit";
|
|
2070
|
+
readonly repository: string;
|
|
2071
|
+
readonly pullRequest: number;
|
|
2072
|
+
readonly reviewUrl: string;
|
|
2073
|
+
readonly goalId: string;
|
|
2074
|
+
readonly laneId: string;
|
|
2075
|
+
readonly operationId: string;
|
|
2076
|
+
readonly expectedAbsenceToken: string;
|
|
2077
|
+
readonly head: string;
|
|
2078
|
+
readonly baseHead: string;
|
|
2079
|
+
readonly owner: {
|
|
2080
|
+
readonly id: string;
|
|
2081
|
+
readonly name: string;
|
|
2082
|
+
};
|
|
2083
|
+
readonly sessionId: string;
|
|
2084
|
+
readonly expectedWork: string;
|
|
2085
|
+
readonly worker: {
|
|
2086
|
+
readonly host: string;
|
|
2087
|
+
readonly agentId: string;
|
|
2088
|
+
readonly name: string;
|
|
2089
|
+
readonly paneId: string;
|
|
2090
|
+
readonly relationship?: {
|
|
2091
|
+
readonly parentAgentId: string;
|
|
2092
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
2093
|
+
};
|
|
2094
|
+
};
|
|
2095
|
+
readonly worktree: string;
|
|
2096
|
+
readonly branch: string;
|
|
2097
|
+
readonly title: string;
|
|
2098
|
+
readonly summary: string;
|
|
2099
|
+
readonly detail: string;
|
|
2100
|
+
} | {
|
|
2101
|
+
readonly kind: "work.recover";
|
|
2102
|
+
readonly repository: string;
|
|
2103
|
+
readonly pullRequest: number;
|
|
2104
|
+
readonly reviewUrl: string;
|
|
2105
|
+
readonly goalId: string;
|
|
2106
|
+
readonly laneId: string;
|
|
2107
|
+
readonly operationId: string;
|
|
2108
|
+
readonly expectedGoalEventId: string;
|
|
2109
|
+
readonly expectedGoalUpdatedAt: number;
|
|
2110
|
+
readonly expectedHistoryToken: string;
|
|
2111
|
+
readonly head: string;
|
|
2112
|
+
readonly baseHead: string;
|
|
2113
|
+
readonly owner: {
|
|
2114
|
+
readonly id: string;
|
|
2115
|
+
readonly name: string;
|
|
2116
|
+
};
|
|
2117
|
+
readonly sessionId: string;
|
|
2118
|
+
readonly expectedWork: string;
|
|
2119
|
+
readonly worker: {
|
|
2120
|
+
readonly host: string;
|
|
2121
|
+
readonly agentId: string;
|
|
2122
|
+
readonly name: string;
|
|
2123
|
+
readonly paneId: string;
|
|
2124
|
+
readonly relationship?: {
|
|
2125
|
+
readonly parentAgentId: string;
|
|
2126
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
2127
|
+
};
|
|
2128
|
+
};
|
|
2129
|
+
readonly worktree: string;
|
|
2130
|
+
readonly branch: string;
|
|
2131
|
+
} | {
|
|
2132
|
+
readonly kind: "work.reassign";
|
|
2133
|
+
readonly goalId: string;
|
|
2134
|
+
readonly from: {
|
|
2135
|
+
readonly id: string;
|
|
2136
|
+
readonly name: string;
|
|
2137
|
+
};
|
|
2138
|
+
readonly to: {
|
|
2139
|
+
readonly id: string;
|
|
2140
|
+
readonly name: string;
|
|
2141
|
+
};
|
|
2142
|
+
readonly toAgent: {
|
|
2143
|
+
readonly _tag: "clear";
|
|
2144
|
+
} | {
|
|
2145
|
+
readonly _tag: "keep";
|
|
2146
|
+
} | {
|
|
2147
|
+
readonly _tag: "set";
|
|
2148
|
+
readonly agent: {
|
|
2149
|
+
readonly host: string;
|
|
2150
|
+
readonly agentId: string;
|
|
2151
|
+
readonly name: string;
|
|
2152
|
+
readonly paneId: string;
|
|
2153
|
+
readonly relationship?: {
|
|
2154
|
+
readonly parentAgentId: string;
|
|
2155
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
2156
|
+
};
|
|
2157
|
+
};
|
|
2158
|
+
};
|
|
2159
|
+
readonly reason: string;
|
|
2160
|
+
readonly expectedGoalEventId: string;
|
|
2161
|
+
readonly expectedGoalUpdatedAt: number;
|
|
609
2162
|
} | {
|
|
610
2163
|
readonly kind: "browser.mcp.recover";
|
|
611
2164
|
};
|
|
612
2165
|
readonly result: string | null;
|
|
2166
|
+
readonly acceptedReceipt?: string | null;
|
|
2167
|
+
readonly durableOperation?: true;
|
|
613
2168
|
readonly error: string | null;
|
|
614
2169
|
readonly worker?: {
|
|
615
2170
|
readonly host: string;
|
|
@@ -679,7 +2234,7 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
679
2234
|
readonly error: string | null;
|
|
680
2235
|
};
|
|
681
2236
|
}, FleetOperationError, never>;
|
|
682
|
-
recover: () => Effect.Effect<string[], FleetStoreError | FleetTransitionConflictError, never>;
|
|
2237
|
+
recover: () => Effect.Effect<string[], FleetOperationError | FleetStoreError | FleetTransitionConflictError, never>;
|
|
683
2238
|
abortSubmission: (jobId: string, detail: string) => Effect.Effect<{
|
|
684
2239
|
readonly id: string;
|
|
685
2240
|
readonly createdAt: number;
|
|
@@ -703,16 +2258,142 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
|
|
|
703
2258
|
readonly kind: "agent.delegate";
|
|
704
2259
|
readonly repository: string;
|
|
705
2260
|
readonly prompt: string;
|
|
706
|
-
readonly mode: "consult" | "review" | "work";
|
|
2261
|
+
readonly mode: "consult" | "review" | "transition_summary" | "work";
|
|
707
2262
|
readonly channel?: "coordinator_chat";
|
|
708
2263
|
} | {
|
|
709
2264
|
readonly kind: "agent.message";
|
|
710
2265
|
readonly session: string;
|
|
711
2266
|
readonly message: string;
|
|
2267
|
+
} | {
|
|
2268
|
+
readonly kind: "work.reconcile";
|
|
2269
|
+
readonly repository: string;
|
|
2270
|
+
readonly pullRequest: number;
|
|
2271
|
+
readonly goalId: string;
|
|
2272
|
+
readonly laneId: string;
|
|
2273
|
+
readonly operationId: string;
|
|
2274
|
+
readonly expectedRevision: number;
|
|
2275
|
+
readonly expectedHead: string;
|
|
2276
|
+
readonly newHead: string;
|
|
2277
|
+
readonly expectedOwner: {
|
|
2278
|
+
readonly id: string;
|
|
2279
|
+
readonly name: string;
|
|
2280
|
+
};
|
|
2281
|
+
readonly expectedGoalEventId: string;
|
|
2282
|
+
readonly bindingDispatchRequestId: string;
|
|
2283
|
+
readonly sessionId: string;
|
|
2284
|
+
readonly expectedWork: string;
|
|
2285
|
+
readonly worker: {
|
|
2286
|
+
readonly host: string;
|
|
2287
|
+
readonly agentId: string;
|
|
2288
|
+
readonly name: string;
|
|
2289
|
+
readonly paneId: string;
|
|
2290
|
+
readonly relationship?: {
|
|
2291
|
+
readonly parentAgentId: string;
|
|
2292
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
2293
|
+
};
|
|
2294
|
+
};
|
|
2295
|
+
readonly worktree: string;
|
|
2296
|
+
readonly branch: string;
|
|
2297
|
+
} | {
|
|
2298
|
+
readonly kind: "work.admit";
|
|
2299
|
+
readonly repository: string;
|
|
2300
|
+
readonly pullRequest: number;
|
|
2301
|
+
readonly reviewUrl: string;
|
|
2302
|
+
readonly goalId: string;
|
|
2303
|
+
readonly laneId: string;
|
|
2304
|
+
readonly operationId: string;
|
|
2305
|
+
readonly expectedAbsenceToken: string;
|
|
2306
|
+
readonly head: string;
|
|
2307
|
+
readonly baseHead: string;
|
|
2308
|
+
readonly owner: {
|
|
2309
|
+
readonly id: string;
|
|
2310
|
+
readonly name: string;
|
|
2311
|
+
};
|
|
2312
|
+
readonly sessionId: string;
|
|
2313
|
+
readonly expectedWork: string;
|
|
2314
|
+
readonly worker: {
|
|
2315
|
+
readonly host: string;
|
|
2316
|
+
readonly agentId: string;
|
|
2317
|
+
readonly name: string;
|
|
2318
|
+
readonly paneId: string;
|
|
2319
|
+
readonly relationship?: {
|
|
2320
|
+
readonly parentAgentId: string;
|
|
2321
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
2322
|
+
};
|
|
2323
|
+
};
|
|
2324
|
+
readonly worktree: string;
|
|
2325
|
+
readonly branch: string;
|
|
2326
|
+
readonly title: string;
|
|
2327
|
+
readonly summary: string;
|
|
2328
|
+
readonly detail: string;
|
|
2329
|
+
} | {
|
|
2330
|
+
readonly kind: "work.recover";
|
|
2331
|
+
readonly repository: string;
|
|
2332
|
+
readonly pullRequest: number;
|
|
2333
|
+
readonly reviewUrl: string;
|
|
2334
|
+
readonly goalId: string;
|
|
2335
|
+
readonly laneId: string;
|
|
2336
|
+
readonly operationId: string;
|
|
2337
|
+
readonly expectedGoalEventId: string;
|
|
2338
|
+
readonly expectedGoalUpdatedAt: number;
|
|
2339
|
+
readonly expectedHistoryToken: string;
|
|
2340
|
+
readonly head: string;
|
|
2341
|
+
readonly baseHead: string;
|
|
2342
|
+
readonly owner: {
|
|
2343
|
+
readonly id: string;
|
|
2344
|
+
readonly name: string;
|
|
2345
|
+
};
|
|
2346
|
+
readonly sessionId: string;
|
|
2347
|
+
readonly expectedWork: string;
|
|
2348
|
+
readonly worker: {
|
|
2349
|
+
readonly host: string;
|
|
2350
|
+
readonly agentId: string;
|
|
2351
|
+
readonly name: string;
|
|
2352
|
+
readonly paneId: string;
|
|
2353
|
+
readonly relationship?: {
|
|
2354
|
+
readonly parentAgentId: string;
|
|
2355
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
2356
|
+
};
|
|
2357
|
+
};
|
|
2358
|
+
readonly worktree: string;
|
|
2359
|
+
readonly branch: string;
|
|
2360
|
+
} | {
|
|
2361
|
+
readonly kind: "work.reassign";
|
|
2362
|
+
readonly goalId: string;
|
|
2363
|
+
readonly from: {
|
|
2364
|
+
readonly id: string;
|
|
2365
|
+
readonly name: string;
|
|
2366
|
+
};
|
|
2367
|
+
readonly to: {
|
|
2368
|
+
readonly id: string;
|
|
2369
|
+
readonly name: string;
|
|
2370
|
+
};
|
|
2371
|
+
readonly toAgent: {
|
|
2372
|
+
readonly _tag: "clear";
|
|
2373
|
+
} | {
|
|
2374
|
+
readonly _tag: "keep";
|
|
2375
|
+
} | {
|
|
2376
|
+
readonly _tag: "set";
|
|
2377
|
+
readonly agent: {
|
|
2378
|
+
readonly host: string;
|
|
2379
|
+
readonly agentId: string;
|
|
2380
|
+
readonly name: string;
|
|
2381
|
+
readonly paneId: string;
|
|
2382
|
+
readonly relationship?: {
|
|
2383
|
+
readonly parentAgentId: string;
|
|
2384
|
+
readonly relation: "delegated" | "pair" | "review";
|
|
2385
|
+
};
|
|
2386
|
+
};
|
|
2387
|
+
};
|
|
2388
|
+
readonly reason: string;
|
|
2389
|
+
readonly expectedGoalEventId: string;
|
|
2390
|
+
readonly expectedGoalUpdatedAt: number;
|
|
712
2391
|
} | {
|
|
713
2392
|
readonly kind: "browser.mcp.recover";
|
|
714
2393
|
};
|
|
715
2394
|
readonly result: string | null;
|
|
2395
|
+
readonly acceptedReceipt?: string | null;
|
|
2396
|
+
readonly durableOperation?: true;
|
|
716
2397
|
readonly error: string | null;
|
|
717
2398
|
readonly worker?: {
|
|
718
2399
|
readonly host: string;
|