@knpkv/herdr-fleet 0.5.0 → 0.6.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/dist/service.d.ts CHANGED
@@ -74,11 +74,20 @@ type Options = {
74
74
  export declare const makeFleetService: (options: Options) => Effect.Effect<{
75
75
  submit: (request: {
76
76
  readonly payload: {
77
+ readonly kind: "nix.check";
78
+ } | {
79
+ readonly kind: "nix.apply";
80
+ readonly ref: string;
81
+ } | {
77
82
  readonly kind: "agent.delegate";
78
83
  readonly repository: string;
79
84
  readonly prompt: string;
80
85
  readonly mode: "consult" | "review" | "transition_summary" | "work";
81
86
  readonly channel?: "coordinator_chat";
87
+ } | {
88
+ readonly kind: "agent.message";
89
+ readonly session: string;
90
+ readonly message: string;
82
91
  } | {
83
92
  readonly kind: "work.reconcile";
84
93
  readonly repository: string;
@@ -204,16 +213,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
204
213
  readonly expectedGoalEventId: string;
205
214
  readonly expectedGoalUpdatedAt: number;
206
215
  } | {
207
- readonly kind: "browser.mcp.recover";
208
- } | {
209
- readonly kind: "nix.check";
210
- } | {
211
- readonly kind: "nix.apply";
212
- readonly ref: string;
216
+ readonly kind: "work.abandon";
217
+ readonly goalId: string;
218
+ readonly owner: {
219
+ readonly id: string;
220
+ readonly name: string;
221
+ };
222
+ readonly reason: string;
223
+ readonly expectedGoalEventId: string;
224
+ readonly expectedGoalUpdatedAt: number;
213
225
  } | {
214
- readonly kind: "agent.message";
215
- readonly session: string;
216
- readonly message: string;
226
+ readonly kind: "browser.mcp.recover";
217
227
  };
218
228
  }, actor: string, provenance?: SubmissionProvenance | undefined) => Effect.Effect<{
219
229
  readonly id: string;
@@ -230,11 +240,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
230
240
  readonly expiredAt?: number | null;
231
241
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
232
242
  readonly payload: {
243
+ readonly kind: "nix.check";
244
+ } | {
245
+ readonly kind: "nix.apply";
246
+ readonly ref: string;
247
+ } | {
233
248
  readonly kind: "agent.delegate";
234
249
  readonly repository: string;
235
250
  readonly prompt: string;
236
251
  readonly mode: "consult" | "review" | "transition_summary" | "work";
237
252
  readonly channel?: "coordinator_chat";
253
+ } | {
254
+ readonly kind: "agent.message";
255
+ readonly session: string;
256
+ readonly message: string;
238
257
  } | {
239
258
  readonly kind: "work.reconcile";
240
259
  readonly repository: string;
@@ -360,16 +379,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
360
379
  readonly expectedGoalEventId: string;
361
380
  readonly expectedGoalUpdatedAt: number;
362
381
  } | {
363
- readonly kind: "browser.mcp.recover";
364
- } | {
365
- readonly kind: "nix.check";
366
- } | {
367
- readonly kind: "nix.apply";
368
- readonly ref: string;
382
+ readonly kind: "work.abandon";
383
+ readonly goalId: string;
384
+ readonly owner: {
385
+ readonly id: string;
386
+ readonly name: string;
387
+ };
388
+ readonly reason: string;
389
+ readonly expectedGoalEventId: string;
390
+ readonly expectedGoalUpdatedAt: number;
369
391
  } | {
370
- readonly kind: "agent.message";
371
- readonly session: string;
372
- readonly message: string;
392
+ readonly kind: "browser.mcp.recover";
373
393
  };
374
394
  readonly result: string | null;
375
395
  readonly acceptedReceipt?: string | null;
@@ -407,11 +427,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
407
427
  readonly expiredAt?: number | null;
408
428
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
409
429
  readonly payload: {
430
+ readonly kind: "nix.check";
431
+ } | {
432
+ readonly kind: "nix.apply";
433
+ readonly ref: string;
434
+ } | {
410
435
  readonly kind: "agent.delegate";
411
436
  readonly repository: string;
412
437
  readonly prompt: string;
413
438
  readonly mode: "consult" | "review" | "transition_summary" | "work";
414
439
  readonly channel?: "coordinator_chat";
440
+ } | {
441
+ readonly kind: "agent.message";
442
+ readonly session: string;
443
+ readonly message: string;
415
444
  } | {
416
445
  readonly kind: "work.reconcile";
417
446
  readonly repository: string;
@@ -537,16 +566,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
537
566
  readonly expectedGoalEventId: string;
538
567
  readonly expectedGoalUpdatedAt: number;
539
568
  } | {
540
- readonly kind: "browser.mcp.recover";
541
- } | {
542
- readonly kind: "nix.check";
543
- } | {
544
- readonly kind: "nix.apply";
545
- readonly ref: string;
569
+ readonly kind: "work.abandon";
570
+ readonly goalId: string;
571
+ readonly owner: {
572
+ readonly id: string;
573
+ readonly name: string;
574
+ };
575
+ readonly reason: string;
576
+ readonly expectedGoalEventId: string;
577
+ readonly expectedGoalUpdatedAt: number;
546
578
  } | {
547
- readonly kind: "agent.message";
548
- readonly session: string;
549
- readonly message: string;
579
+ readonly kind: "browser.mcp.recover";
550
580
  };
551
581
  readonly result: string | null;
552
582
  readonly acceptedReceipt?: string | null;
@@ -584,11 +614,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
584
614
  readonly expiredAt?: number | null;
585
615
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
586
616
  readonly payload: {
617
+ readonly kind: "nix.check";
618
+ } | {
619
+ readonly kind: "nix.apply";
620
+ readonly ref: string;
621
+ } | {
587
622
  readonly kind: "agent.delegate";
588
623
  readonly repository: string;
589
624
  readonly prompt: string;
590
625
  readonly mode: "consult" | "review" | "transition_summary" | "work";
591
626
  readonly channel?: "coordinator_chat";
627
+ } | {
628
+ readonly kind: "agent.message";
629
+ readonly session: string;
630
+ readonly message: string;
592
631
  } | {
593
632
  readonly kind: "work.reconcile";
594
633
  readonly repository: string;
@@ -714,16 +753,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
714
753
  readonly expectedGoalEventId: string;
715
754
  readonly expectedGoalUpdatedAt: number;
716
755
  } | {
717
- readonly kind: "browser.mcp.recover";
718
- } | {
719
- readonly kind: "nix.check";
720
- } | {
721
- readonly kind: "nix.apply";
722
- readonly ref: string;
756
+ readonly kind: "work.abandon";
757
+ readonly goalId: string;
758
+ readonly owner: {
759
+ readonly id: string;
760
+ readonly name: string;
761
+ };
762
+ readonly reason: string;
763
+ readonly expectedGoalEventId: string;
764
+ readonly expectedGoalUpdatedAt: number;
723
765
  } | {
724
- readonly kind: "agent.message";
725
- readonly session: string;
726
- readonly message: string;
766
+ readonly kind: "browser.mcp.recover";
727
767
  };
728
768
  readonly result: string | null;
729
769
  readonly acceptedReceipt?: string | null;
@@ -761,11 +801,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
761
801
  readonly expiredAt?: number | null;
762
802
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
763
803
  readonly payload: {
804
+ readonly kind: "nix.check";
805
+ } | {
806
+ readonly kind: "nix.apply";
807
+ readonly ref: string;
808
+ } | {
764
809
  readonly kind: "agent.delegate";
765
810
  readonly repository: string;
766
811
  readonly prompt: string;
767
812
  readonly mode: "consult" | "review" | "transition_summary" | "work";
768
813
  readonly channel?: "coordinator_chat";
814
+ } | {
815
+ readonly kind: "agent.message";
816
+ readonly session: string;
817
+ readonly message: string;
769
818
  } | {
770
819
  readonly kind: "work.reconcile";
771
820
  readonly repository: string;
@@ -891,16 +940,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
891
940
  readonly expectedGoalEventId: string;
892
941
  readonly expectedGoalUpdatedAt: number;
893
942
  } | {
894
- readonly kind: "browser.mcp.recover";
895
- } | {
896
- readonly kind: "nix.check";
897
- } | {
898
- readonly kind: "nix.apply";
899
- readonly ref: string;
943
+ readonly kind: "work.abandon";
944
+ readonly goalId: string;
945
+ readonly owner: {
946
+ readonly id: string;
947
+ readonly name: string;
948
+ };
949
+ readonly reason: string;
950
+ readonly expectedGoalEventId: string;
951
+ readonly expectedGoalUpdatedAt: number;
900
952
  } | {
901
- readonly kind: "agent.message";
902
- readonly session: string;
903
- readonly message: string;
953
+ readonly kind: "browser.mcp.recover";
904
954
  };
905
955
  readonly result: string | null;
906
956
  readonly acceptedReceipt?: string | null;
@@ -938,11 +988,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
938
988
  readonly expiredAt?: number | null;
939
989
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
940
990
  readonly payload: {
991
+ readonly kind: "nix.check";
992
+ } | {
993
+ readonly kind: "nix.apply";
994
+ readonly ref: string;
995
+ } | {
941
996
  readonly kind: "agent.delegate";
942
997
  readonly repository: string;
943
998
  readonly prompt: string;
944
999
  readonly mode: "consult" | "review" | "transition_summary" | "work";
945
1000
  readonly channel?: "coordinator_chat";
1001
+ } | {
1002
+ readonly kind: "agent.message";
1003
+ readonly session: string;
1004
+ readonly message: string;
946
1005
  } | {
947
1006
  readonly kind: "work.reconcile";
948
1007
  readonly repository: string;
@@ -1068,16 +1127,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1068
1127
  readonly expectedGoalEventId: string;
1069
1128
  readonly expectedGoalUpdatedAt: number;
1070
1129
  } | {
1071
- readonly kind: "browser.mcp.recover";
1072
- } | {
1073
- readonly kind: "nix.check";
1074
- } | {
1075
- readonly kind: "nix.apply";
1076
- readonly ref: string;
1130
+ readonly kind: "work.abandon";
1131
+ readonly goalId: string;
1132
+ readonly owner: {
1133
+ readonly id: string;
1134
+ readonly name: string;
1135
+ };
1136
+ readonly reason: string;
1137
+ readonly expectedGoalEventId: string;
1138
+ readonly expectedGoalUpdatedAt: number;
1077
1139
  } | {
1078
- readonly kind: "agent.message";
1079
- readonly session: string;
1080
- readonly message: string;
1140
+ readonly kind: "browser.mcp.recover";
1081
1141
  };
1082
1142
  readonly result: string | null;
1083
1143
  readonly acceptedReceipt?: string | null;
@@ -1115,11 +1175,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1115
1175
  readonly expiredAt?: number | null;
1116
1176
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
1117
1177
  readonly payload: {
1178
+ readonly kind: "nix.check";
1179
+ } | {
1180
+ readonly kind: "nix.apply";
1181
+ readonly ref: string;
1182
+ } | {
1118
1183
  readonly kind: "agent.delegate";
1119
1184
  readonly repository: string;
1120
1185
  readonly prompt: string;
1121
1186
  readonly mode: "consult" | "review" | "transition_summary" | "work";
1122
1187
  readonly channel?: "coordinator_chat";
1188
+ } | {
1189
+ readonly kind: "agent.message";
1190
+ readonly session: string;
1191
+ readonly message: string;
1123
1192
  } | {
1124
1193
  readonly kind: "work.reconcile";
1125
1194
  readonly repository: string;
@@ -1245,16 +1314,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1245
1314
  readonly expectedGoalEventId: string;
1246
1315
  readonly expectedGoalUpdatedAt: number;
1247
1316
  } | {
1248
- readonly kind: "browser.mcp.recover";
1249
- } | {
1250
- readonly kind: "nix.check";
1251
- } | {
1252
- readonly kind: "nix.apply";
1253
- readonly ref: string;
1317
+ readonly kind: "work.abandon";
1318
+ readonly goalId: string;
1319
+ readonly owner: {
1320
+ readonly id: string;
1321
+ readonly name: string;
1322
+ };
1323
+ readonly reason: string;
1324
+ readonly expectedGoalEventId: string;
1325
+ readonly expectedGoalUpdatedAt: number;
1254
1326
  } | {
1255
- readonly kind: "agent.message";
1256
- readonly session: string;
1257
- readonly message: string;
1327
+ readonly kind: "browser.mcp.recover";
1258
1328
  };
1259
1329
  readonly result: string | null;
1260
1330
  readonly acceptedReceipt?: string | null;
@@ -1292,11 +1362,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1292
1362
  readonly expiredAt?: number | null;
1293
1363
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
1294
1364
  readonly payload: {
1365
+ readonly kind: "nix.check";
1366
+ } | {
1367
+ readonly kind: "nix.apply";
1368
+ readonly ref: string;
1369
+ } | {
1295
1370
  readonly kind: "agent.delegate";
1296
1371
  readonly repository: string;
1297
1372
  readonly prompt: string;
1298
1373
  readonly mode: "consult" | "review" | "transition_summary" | "work";
1299
1374
  readonly channel?: "coordinator_chat";
1375
+ } | {
1376
+ readonly kind: "agent.message";
1377
+ readonly session: string;
1378
+ readonly message: string;
1300
1379
  } | {
1301
1380
  readonly kind: "work.reconcile";
1302
1381
  readonly repository: string;
@@ -1422,16 +1501,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1422
1501
  readonly expectedGoalEventId: string;
1423
1502
  readonly expectedGoalUpdatedAt: number;
1424
1503
  } | {
1425
- readonly kind: "browser.mcp.recover";
1426
- } | {
1427
- readonly kind: "nix.check";
1428
- } | {
1429
- readonly kind: "nix.apply";
1430
- readonly ref: string;
1504
+ readonly kind: "work.abandon";
1505
+ readonly goalId: string;
1506
+ readonly owner: {
1507
+ readonly id: string;
1508
+ readonly name: string;
1509
+ };
1510
+ readonly reason: string;
1511
+ readonly expectedGoalEventId: string;
1512
+ readonly expectedGoalUpdatedAt: number;
1431
1513
  } | {
1432
- readonly kind: "agent.message";
1433
- readonly session: string;
1434
- readonly message: string;
1514
+ readonly kind: "browser.mcp.recover";
1435
1515
  };
1436
1516
  readonly result: string | null;
1437
1517
  readonly acceptedReceipt?: string | null;
@@ -1472,11 +1552,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1472
1552
  readonly expiredAt?: number | null;
1473
1553
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
1474
1554
  readonly payload: {
1555
+ readonly kind: "nix.check";
1556
+ } | {
1557
+ readonly kind: "nix.apply";
1558
+ readonly ref: string;
1559
+ } | {
1475
1560
  readonly kind: "agent.delegate";
1476
1561
  readonly repository: string;
1477
1562
  readonly prompt: string;
1478
1563
  readonly mode: "consult" | "review" | "transition_summary" | "work";
1479
1564
  readonly channel?: "coordinator_chat";
1565
+ } | {
1566
+ readonly kind: "agent.message";
1567
+ readonly session: string;
1568
+ readonly message: string;
1480
1569
  } | {
1481
1570
  readonly kind: "work.reconcile";
1482
1571
  readonly repository: string;
@@ -1602,16 +1691,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1602
1691
  readonly expectedGoalEventId: string;
1603
1692
  readonly expectedGoalUpdatedAt: number;
1604
1693
  } | {
1605
- readonly kind: "browser.mcp.recover";
1606
- } | {
1607
- readonly kind: "nix.check";
1608
- } | {
1609
- readonly kind: "nix.apply";
1610
- readonly ref: string;
1694
+ readonly kind: "work.abandon";
1695
+ readonly goalId: string;
1696
+ readonly owner: {
1697
+ readonly id: string;
1698
+ readonly name: string;
1699
+ };
1700
+ readonly reason: string;
1701
+ readonly expectedGoalEventId: string;
1702
+ readonly expectedGoalUpdatedAt: number;
1611
1703
  } | {
1612
- readonly kind: "agent.message";
1613
- readonly session: string;
1614
- readonly message: string;
1704
+ readonly kind: "browser.mcp.recover";
1615
1705
  };
1616
1706
  readonly result: string | null;
1617
1707
  readonly acceptedReceipt?: string | null;
@@ -1653,11 +1743,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1653
1743
  readonly expiredAt?: number | null;
1654
1744
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
1655
1745
  readonly payload: {
1746
+ readonly kind: "nix.check";
1747
+ } | {
1748
+ readonly kind: "nix.apply";
1749
+ readonly ref: string;
1750
+ } | {
1656
1751
  readonly kind: "agent.delegate";
1657
1752
  readonly repository: string;
1658
1753
  readonly prompt: string;
1659
1754
  readonly mode: "consult" | "review" | "transition_summary" | "work";
1660
1755
  readonly channel?: "coordinator_chat";
1756
+ } | {
1757
+ readonly kind: "agent.message";
1758
+ readonly session: string;
1759
+ readonly message: string;
1661
1760
  } | {
1662
1761
  readonly kind: "work.reconcile";
1663
1762
  readonly repository: string;
@@ -1783,16 +1882,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1783
1882
  readonly expectedGoalEventId: string;
1784
1883
  readonly expectedGoalUpdatedAt: number;
1785
1884
  } | {
1786
- readonly kind: "browser.mcp.recover";
1787
- } | {
1788
- readonly kind: "nix.check";
1789
- } | {
1790
- readonly kind: "nix.apply";
1791
- readonly ref: string;
1885
+ readonly kind: "work.abandon";
1886
+ readonly goalId: string;
1887
+ readonly owner: {
1888
+ readonly id: string;
1889
+ readonly name: string;
1890
+ };
1891
+ readonly reason: string;
1892
+ readonly expectedGoalEventId: string;
1893
+ readonly expectedGoalUpdatedAt: number;
1792
1894
  } | {
1793
- readonly kind: "agent.message";
1794
- readonly session: string;
1795
- readonly message: string;
1895
+ readonly kind: "browser.mcp.recover";
1796
1896
  };
1797
1897
  readonly result: string | null;
1798
1898
  readonly acceptedReceipt?: string | null;
@@ -1839,11 +1939,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1839
1939
  readonly expiredAt?: number | null;
1840
1940
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
1841
1941
  readonly payload: {
1942
+ readonly kind: "nix.check";
1943
+ } | {
1944
+ readonly kind: "nix.apply";
1945
+ readonly ref: string;
1946
+ } | {
1842
1947
  readonly kind: "agent.delegate";
1843
1948
  readonly repository: string;
1844
1949
  readonly prompt: string;
1845
1950
  readonly mode: "consult" | "review" | "transition_summary" | "work";
1846
1951
  readonly channel?: "coordinator_chat";
1952
+ } | {
1953
+ readonly kind: "agent.message";
1954
+ readonly session: string;
1955
+ readonly message: string;
1847
1956
  } | {
1848
1957
  readonly kind: "work.reconcile";
1849
1958
  readonly repository: string;
@@ -1969,16 +2078,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
1969
2078
  readonly expectedGoalEventId: string;
1970
2079
  readonly expectedGoalUpdatedAt: number;
1971
2080
  } | {
1972
- readonly kind: "browser.mcp.recover";
1973
- } | {
1974
- readonly kind: "nix.check";
1975
- } | {
1976
- readonly kind: "nix.apply";
1977
- readonly ref: string;
2081
+ readonly kind: "work.abandon";
2082
+ readonly goalId: string;
2083
+ readonly owner: {
2084
+ readonly id: string;
2085
+ readonly name: string;
2086
+ };
2087
+ readonly reason: string;
2088
+ readonly expectedGoalEventId: string;
2089
+ readonly expectedGoalUpdatedAt: number;
1978
2090
  } | {
1979
- readonly kind: "agent.message";
1980
- readonly session: string;
1981
- readonly message: string;
2091
+ readonly kind: "browser.mcp.recover";
1982
2092
  };
1983
2093
  readonly result: string | null;
1984
2094
  readonly acceptedReceipt?: string | null;
@@ -2021,11 +2131,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
2021
2131
  readonly expiredAt?: number | null;
2022
2132
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
2023
2133
  readonly payload: {
2134
+ readonly kind: "nix.check";
2135
+ } | {
2136
+ readonly kind: "nix.apply";
2137
+ readonly ref: string;
2138
+ } | {
2024
2139
  readonly kind: "agent.delegate";
2025
2140
  readonly repository: string;
2026
2141
  readonly prompt: string;
2027
2142
  readonly mode: "consult" | "review" | "transition_summary" | "work";
2028
2143
  readonly channel?: "coordinator_chat";
2144
+ } | {
2145
+ readonly kind: "agent.message";
2146
+ readonly session: string;
2147
+ readonly message: string;
2029
2148
  } | {
2030
2149
  readonly kind: "work.reconcile";
2031
2150
  readonly repository: string;
@@ -2151,16 +2270,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
2151
2270
  readonly expectedGoalEventId: string;
2152
2271
  readonly expectedGoalUpdatedAt: number;
2153
2272
  } | {
2154
- readonly kind: "browser.mcp.recover";
2155
- } | {
2156
- readonly kind: "nix.check";
2157
- } | {
2158
- readonly kind: "nix.apply";
2159
- readonly ref: string;
2273
+ readonly kind: "work.abandon";
2274
+ readonly goalId: string;
2275
+ readonly owner: {
2276
+ readonly id: string;
2277
+ readonly name: string;
2278
+ };
2279
+ readonly reason: string;
2280
+ readonly expectedGoalEventId: string;
2281
+ readonly expectedGoalUpdatedAt: number;
2160
2282
  } | {
2161
- readonly kind: "agent.message";
2162
- readonly session: string;
2163
- readonly message: string;
2283
+ readonly kind: "browser.mcp.recover";
2164
2284
  };
2165
2285
  readonly result: string | null;
2166
2286
  readonly acceptedReceipt?: string | null;
@@ -2250,11 +2370,20 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
2250
2370
  readonly expiredAt?: number | null;
2251
2371
  readonly status: "expired" | "failed" | "interrupted" | "pending_approval" | "queued" | "rejected" | "running" | "succeeded";
2252
2372
  readonly payload: {
2373
+ readonly kind: "nix.check";
2374
+ } | {
2375
+ readonly kind: "nix.apply";
2376
+ readonly ref: string;
2377
+ } | {
2253
2378
  readonly kind: "agent.delegate";
2254
2379
  readonly repository: string;
2255
2380
  readonly prompt: string;
2256
2381
  readonly mode: "consult" | "review" | "transition_summary" | "work";
2257
2382
  readonly channel?: "coordinator_chat";
2383
+ } | {
2384
+ readonly kind: "agent.message";
2385
+ readonly session: string;
2386
+ readonly message: string;
2258
2387
  } | {
2259
2388
  readonly kind: "work.reconcile";
2260
2389
  readonly repository: string;
@@ -2380,16 +2509,17 @@ export declare const makeFleetService: (options: Options) => Effect.Effect<{
2380
2509
  readonly expectedGoalEventId: string;
2381
2510
  readonly expectedGoalUpdatedAt: number;
2382
2511
  } | {
2383
- readonly kind: "browser.mcp.recover";
2384
- } | {
2385
- readonly kind: "nix.check";
2386
- } | {
2387
- readonly kind: "nix.apply";
2388
- readonly ref: string;
2512
+ readonly kind: "work.abandon";
2513
+ readonly goalId: string;
2514
+ readonly owner: {
2515
+ readonly id: string;
2516
+ readonly name: string;
2517
+ };
2518
+ readonly reason: string;
2519
+ readonly expectedGoalEventId: string;
2520
+ readonly expectedGoalUpdatedAt: number;
2389
2521
  } | {
2390
- readonly kind: "agent.message";
2391
- readonly session: string;
2392
- readonly message: string;
2522
+ readonly kind: "browser.mcp.recover";
2393
2523
  };
2394
2524
  readonly result: string | null;
2395
2525
  readonly acceptedReceipt?: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA2uB3B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA4uB3B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAA"}
package/dist/service.js CHANGED
@@ -300,7 +300,8 @@ export const makeFleetService = Effect.fn("FleetService.make")(function* (option
300
300
  detail: `job is ${record.status}, not queued`
301
301
  });
302
302
  }
303
- if ((record.payload.kind === "work.recover" || record.payload.kind === "work.reassign") &&
303
+ if ((record.payload.kind === "work.recover" || record.payload.kind === "work.reassign" ||
304
+ record.payload.kind === "work.abandon") &&
304
305
  (record.approvedBy === null ||
305
306
  record.approvedAt === null || record.approvedAt === undefined ||
306
307
  record.hash !==