opencode-swarm 7.144.8 → 7.145.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/dist/background/workspace-snapshot.d.ts +29 -0
  2. package/dist/cli/{config-doctor-zbqfp0v6.js → config-doctor-96jmxr7s.js} +3 -3
  3. package/dist/cli/{core-pz9gwatq.js → core-w78pc1hh.js} +3 -3
  4. package/dist/cli/{curation-policy-a511r0qz.js → curation-policy-smyc2mrm.js} +7 -7
  5. package/dist/cli/{curator-sk0dyvke.js → curator-59hzdxrv.js} +33 -32
  6. package/dist/cli/{curator-drift-ckjm272w.js → curator-drift-r50x1rac.js} +4 -4
  7. package/dist/cli/{curator-llm-factory-3nq3p02z.js → curator-llm-factory-g794pv51.js} +33 -32
  8. package/dist/cli/dispatch-ndxbsk98.js +1 -1
  9. package/dist/cli/{evidence-summary-service-abwrjqd0.js → evidence-summary-service-41m0cna6.js} +15 -14
  10. package/dist/cli/{gate-evidence-aa7vvtcd.js → gate-evidence-7aywx7qa.js} +10 -9
  11. package/dist/cli/guardrail-explain-j88dhm6w.js +65 -0
  12. package/dist/cli/{guardrail-log-jw5mzs0d.js → guardrail-log-xcb3ke8s.js} +5 -5
  13. package/dist/cli/{hive-promoter-m20j63yg.js → hive-promoter-nnnx5692.js} +33 -32
  14. package/dist/cli/{index-7qb0hn8n.js → index-17e73wac.js} +1 -1
  15. package/dist/cli/{index-r2rkwvzq.js → index-19v4tccw.js} +2 -2
  16. package/dist/cli/{index-vdha477y.js → index-2qrd8mfa.js} +1 -1
  17. package/dist/cli/{index-6z5jtf7d.js → index-34tawmyx.js} +4 -4
  18. package/dist/cli/{index-jdxnzbah.js → index-41t3hgaa.js} +10 -10
  19. package/dist/cli/index-4evasm2b.js +514 -0
  20. package/dist/cli/{index-gfvkttvd.js → index-7axx11dt.js} +1 -1
  21. package/dist/cli/{index-8dbzaf0m.js → index-8ef23wex.js} +4 -4
  22. package/dist/cli/{index-k7fk9fjs.js → index-90w06fqr.js} +107 -29
  23. package/dist/cli/{index-t2ntgzts.js → index-b7ntt9cw.js} +3 -3
  24. package/dist/cli/{index-c2rpht77.js → index-bst6epnr.js} +2703 -2054
  25. package/dist/cli/{index-tffg4mwr.js → index-cqfp05jb.js} +3 -3
  26. package/dist/cli/{index-1jsmmx7y.js → index-dppzthm9.js} +92 -35
  27. package/dist/cli/{index-h1p08s3n.js → index-dzan8czb.js} +1 -1
  28. package/dist/cli/{index-cwtpqm5f.js → index-e1pxav9g.js} +1 -1
  29. package/dist/cli/{index-d1dbpxxk.js → index-evpgszmp.js} +2 -2
  30. package/dist/cli/{index-cx51wy0c.js → index-ff66fbjt.js} +10 -10
  31. package/dist/cli/{index-wknz5c8q.js → index-fwnhh6s7.js} +2 -2
  32. package/dist/cli/{index-hkdgkkhb.js → index-gey2257h.js} +2 -2
  33. package/dist/cli/{index-f9vvg5xb.js → index-gf03198s.js} +67 -2
  34. package/dist/cli/{index-z4fssj97.js → index-kxzgnz2h.js} +20 -20
  35. package/dist/cli/{index-9s8drsf9.js → index-mpf01swm.js} +4 -21
  36. package/dist/cli/{index-sxe5nyq4.js → index-mrkgxfeh.js} +13 -15
  37. package/dist/cli/{index-0v1f2sdb.js → index-neh8azwc.js} +2 -2
  38. package/dist/cli/{index-3k3nbs52.js → index-qpke2x5h.js} +9 -9
  39. package/dist/cli/{index-n4hwcsbd.js → index-rtkttser.js} +5 -5
  40. package/dist/cli/{index-xx8tm58n.js → index-sfemjcb8.js} +5 -5
  41. package/dist/cli/{index-bv44950t.js → index-tm0bezd9.js} +1 -1
  42. package/dist/cli/{index-r14qx363.js → index-tw8ck794.js} +1 -1
  43. package/dist/cli/{index-t72g4a7y.js → index-xz4x17z0.js} +35 -34
  44. package/dist/cli/{index-nmy6rss1.js → index-ymyke19q.js} +1 -1
  45. package/dist/cli/{index-f36ybbsv.js → index-z9yhhk6q.js} +93 -5
  46. package/dist/cli/{index-xp5g9eps.js → index-zpp507z0.js} +15 -1
  47. package/dist/cli/index.js +33 -32
  48. package/dist/cli/{knowledge-escalator-mg8qb7tm.js → knowledge-escalator-s6acdpwj.js} +15 -14
  49. package/dist/cli/{knowledge-events-3zxf8xpb.js → knowledge-events-jprkz49t.js} +13 -12
  50. package/dist/cli/{knowledge-link-4cg4776a.js → knowledge-link-zvtmj756.js} +6 -6
  51. package/dist/cli/{knowledge-store-awnm8s6c.js → knowledge-store-mc4awds4.js} +7 -7
  52. package/dist/cli/{knowledge-validator-3ke5scx3.js → knowledge-validator-pe4ncrvj.js} +9 -9
  53. package/dist/cli/model-preflight-77dwxfv5.js +170 -0
  54. package/dist/cli/{pending-delegations-9h1jmtw1.js → pending-delegations-epzht3d7.js} +6 -6
  55. package/dist/cli/{pr-subscriptions-8pg34pev.js → pr-subscriptions-2ahy8g87.js} +6 -6
  56. package/dist/cli/{runner-cqecp1na.js → runner-ra9pjhp2.js} +8 -7
  57. package/dist/cli/{scan-cursor-00rbxkb4.js → scan-cursor-hdzhqwzj.js} +8 -8
  58. package/dist/cli/{schema-5nmkp1pc.js → schema-pg85z06v.js} +1 -1
  59. package/dist/cli/{scope-persistence-6m79atw9.js → scope-persistence-v8we8ja7.js} +11 -7
  60. package/dist/cli/{skill-generator-gv70s796.js → skill-generator-ctskfct2.js} +17 -16
  61. package/dist/cli/{telemetry-cybx6cfz.js → telemetry-c21dgffc.js} +1 -1
  62. package/dist/cli/{workspace-snapshot-d89zm6wm.js → workspace-snapshot-kznz5e13.js} +3 -1
  63. package/dist/cli/{worktree-collision-ownership-vy0kxa98.js → worktree-collision-ownership-f7se4wbf.js} +10 -10
  64. package/dist/cli/{worktree-isolation-bne0p54w.js → worktree-isolation-j4qb7mgb.js} +35 -32
  65. package/dist/cli/{worktree-provisioning-owner-zzkjycp1.js → worktree-provisioning-owner-72cyddz5.js} +3 -3
  66. package/dist/commands/close.d.ts +8 -1
  67. package/dist/config/evidence-schema.d.ts +6 -6
  68. package/dist/config/plan-schema.d.ts +2 -2
  69. package/dist/config/schema.d.ts +7 -7
  70. package/dist/evidence/task-file.d.ts +16 -16
  71. package/dist/hooks/delegation-gate/worktree-isolation.d.ts +4 -0
  72. package/dist/index.js +603 -559
  73. package/dist/memory/schema.d.ts +3 -3
  74. package/dist/observability/catalog.d.ts +5 -4
  75. package/dist/observability/envelope.d.ts +2 -2
  76. package/dist/scope/scope-binding.d.ts +16 -0
  77. package/dist/services/model-preflight.d.ts +151 -0
  78. package/dist/services/session-reflection.d.ts +24 -0
  79. package/dist/services/swarm-residue.d.ts +151 -0
  80. package/dist/telemetry.d.ts +32 -2
  81. package/dist/tools/knowledge-receipt.d.ts +1 -1
  82. package/dist/tools/placeholder-scan.d.ts +64 -0
  83. package/dist/tools/sast-scan.d.ts +6 -0
  84. package/dist/utils/atomic-write.d.ts +185 -0
  85. package/package.json +1 -1
  86. package/dist/cli/guardrail-explain-hvtyr2fz.js +0 -64
  87. package/dist/cli/{index-fv0s19g9.js → index-w8pgjr75.js} +3 -3
@@ -4,14 +4,14 @@ import {
4
4
  PlanSchema,
5
5
  TaskStatusSchema,
6
6
  init_loader
7
- } from "./index-7qb0hn8n.js";
7
+ } from "./index-17e73wac.js";
8
8
  import {
9
9
  assertProjectRoot,
10
10
  withEvidenceLock
11
- } from "./index-f9vvg5xb.js";
11
+ } from "./index-gf03198s.js";
12
12
  import {
13
13
  emit
14
- } from "./index-1jsmmx7y.js";
14
+ } from "./index-dppzthm9.js";
15
15
  import {
16
16
  criticalWarn,
17
17
  init_logger,
@@ -33,7 +33,7 @@ var CONSUMER_COST_ACCOUNTING = Object.freeze([
33
33
  "src/services/cost-accounting.ts:127"
34
34
  ]);
35
35
  var CONSUMER_GATE_STATS = Object.freeze(["src/evaluation/gate-stats.ts:99"]);
36
- var CONSUMER_HEARTBEAT_LISTENER = Object.freeze(["src/telemetry.ts:163"]);
36
+ var CONSUMER_HEARTBEAT_LISTENER = Object.freeze(["src/telemetry.ts:174"]);
37
37
  function defineEntry(kind, input) {
38
38
  const entry = {
39
39
  kind,
@@ -66,7 +66,7 @@ var CATALOG_SOURCE = [
66
66
  category: "lifecycle",
67
67
  severity: "info",
68
68
  privacyClass: "pseudonymous",
69
- producer: "src/telemetry.ts:468",
69
+ producer: "src/telemetry.ts:479",
70
70
  consumers: NO_CONSUMERS,
71
71
  futureOwnerIssue: ISSUE_SINK,
72
72
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -80,7 +80,7 @@ var CATALOG_SOURCE = [
80
80
  category: "lifecycle",
81
81
  severity: "info",
82
82
  privacyClass: "pseudonymous",
83
- producer: "src/telemetry.ts:472",
83
+ producer: "src/telemetry.ts:483",
84
84
  consumers: NO_CONSUMERS,
85
85
  futureOwnerIssue: ISSUE_SINK,
86
86
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -94,7 +94,7 @@ var CATALOG_SOURCE = [
94
94
  category: "lifecycle",
95
95
  severity: "info",
96
96
  privacyClass: "pseudonymous",
97
- producer: "src/telemetry.ts:476",
97
+ producer: "src/telemetry.ts:487",
98
98
  consumers: NO_CONSUMERS,
99
99
  futureOwnerIssue: ISSUE_SINK,
100
100
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -108,7 +108,7 @@ var CATALOG_SOURCE = [
108
108
  category: "lifecycle",
109
109
  severity: "info",
110
110
  privacyClass: "pseudonymous",
111
- producer: "src/telemetry.ts:513",
111
+ producer: "src/telemetry.ts:524",
112
112
  consumers: NO_CONSUMERS,
113
113
  futureOwnerIssue: ISSUE_SINK,
114
114
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -122,7 +122,7 @@ var CATALOG_SOURCE = [
122
122
  category: "lifecycle",
123
123
  severity: "info",
124
124
  privacyClass: "pseudonymous",
125
- producer: "src/telemetry.ts:561",
125
+ producer: "src/telemetry.ts:572",
126
126
  consumers: NO_CONSUMERS,
127
127
  futureOwnerIssue: ISSUE_SINK,
128
128
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -136,7 +136,7 @@ var CATALOG_SOURCE = [
136
136
  category: "lifecycle",
137
137
  severity: "debug",
138
138
  privacyClass: "pseudonymous",
139
- producer: "src/telemetry.ts:730",
139
+ producer: "src/telemetry.ts:754",
140
140
  consumers: CONSUMER_HEARTBEAT_LISTENER,
141
141
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
142
142
  requiredWorkflowIds: REQUIRE_SESSION,
@@ -149,7 +149,7 @@ var CATALOG_SOURCE = [
149
149
  category: "lifecycle",
150
150
  severity: "info",
151
151
  privacyClass: "pseudonymous",
152
- producer: "src/telemetry.ts:738",
152
+ producer: "src/telemetry.ts:762",
153
153
  consumers: NO_CONSUMERS,
154
154
  futureOwnerIssue: ISSUE_SINK,
155
155
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -162,7 +162,7 @@ var CATALOG_SOURCE = [
162
162
  category: "lifecycle",
163
163
  severity: "info",
164
164
  privacyClass: "pseudonymous",
165
- producer: "src/telemetry.ts:763",
165
+ producer: "src/telemetry.ts:787",
166
166
  consumers: NO_CONSUMERS,
167
167
  futureOwnerIssue: ISSUE_SINK,
168
168
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -176,7 +176,7 @@ var CATALOG_SOURCE = [
176
176
  category: "delegation",
177
177
  severity: "info",
178
178
  privacyClass: "pseudonymous",
179
- producer: "src/telemetry.ts:480",
179
+ producer: "src/telemetry.ts:491",
180
180
  consumers: NO_CONSUMERS,
181
181
  futureOwnerIssue: ISSUE_SINK,
182
182
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -190,7 +190,7 @@ var CATALOG_SOURCE = [
190
190
  category: "delegation",
191
191
  severity: "info",
192
192
  privacyClass: "pseudonymous",
193
- producer: "src/telemetry.ts:490",
193
+ producer: "src/telemetry.ts:501",
194
194
  consumers: CONSUMER_COST_ACCOUNTING,
195
195
  retentionOwnerIssue: ISSUE_COST_RETENTION,
196
196
  requiredWorkflowIds: REQUIRE_SESSION_AND_TASK,
@@ -203,7 +203,21 @@ var CATALOG_SOURCE = [
203
203
  category: "delegation",
204
204
  severity: "notice",
205
205
  privacyClass: "pseudonymous",
206
- producer: "src/telemetry.ts:594",
206
+ producer: "src/telemetry.ts:605",
207
+ consumers: NO_CONSUMERS,
208
+ futureOwnerIssue: ISSUE_SINK,
209
+ retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
210
+ requiredWorkflowIds: REQUIRE_SESSION,
211
+ otelMapping: "genai"
212
+ }
213
+ ],
214
+ [
215
+ "model_unresolved",
216
+ {
217
+ category: "delegation",
218
+ severity: "warning",
219
+ privacyClass: "pseudonymous",
220
+ producer: "src/telemetry.ts:619",
207
221
  consumers: NO_CONSUMERS,
208
222
  futureOwnerIssue: ISSUE_SINK,
209
223
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -217,7 +231,7 @@ var CATALOG_SOURCE = [
217
231
  category: "gate",
218
232
  severity: "info",
219
233
  privacyClass: "pseudonymous",
220
- producer: "src/telemetry.ts:522",
234
+ producer: "src/telemetry.ts:533",
221
235
  consumers: NO_CONSUMERS,
222
236
  futureOwnerIssue: ISSUE_SINK,
223
237
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -230,7 +244,7 @@ var CATALOG_SOURCE = [
230
244
  category: "gate",
231
245
  severity: "warning",
232
246
  privacyClass: "pseudonymous",
233
- producer: "src/telemetry.ts:539",
247
+ producer: "src/telemetry.ts:550",
234
248
  consumers: NO_CONSUMERS,
235
249
  futureOwnerIssue: ISSUE_SINK,
236
250
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -243,7 +257,7 @@ var CATALOG_SOURCE = [
243
257
  category: "gate",
244
258
  severity: "warning",
245
259
  privacyClass: "sensitive",
246
- producer: "src/telemetry.ts:526",
260
+ producer: "src/telemetry.ts:537",
247
261
  consumers: NO_CONSUMERS,
248
262
  futureOwnerIssue: ISSUE_SINK,
249
263
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
@@ -257,7 +271,7 @@ var CATALOG_SOURCE = [
257
271
  category: "gate",
258
272
  severity: "info",
259
273
  privacyClass: "pseudonymous",
260
- producer: "src/telemetry.ts:549",
274
+ producer: "src/telemetry.ts:560",
261
275
  consumers: CONSUMER_GATE_STATS,
262
276
  retentionOwnerIssue: ISSUE_LIFECYCLE_RETENTION,
263
277
  requiredWorkflowIds: REQUIRE_SESSION_AND_TASK
@@ -269,7 +283,7 @@ var CATALOG_SOURCE = [
269
283
  category: "cost",
270
284
  severity: "info",
271
285
  privacyClass: "pseudonymous",
272
- producer: "src/telemetry.ts:565",
286
+ producer: "src/telemetry.ts:576",
273
287
  consumers: NO_CONSUMERS,
274
288
  futureOwnerIssue: ISSUE_SINK,
275
289
  retentionOwnerIssue: ISSUE_COST_RETENTION,
@@ -282,7 +296,7 @@ var CATALOG_SOURCE = [
282
296
  category: "guardrail",
283
297
  severity: "notice",
284
298
  privacyClass: "pseudonymous",
285
- producer: "src/telemetry.ts:584",
299
+ producer: "src/telemetry.ts:595",
286
300
  consumers: NO_CONSUMERS,
287
301
  futureOwnerIssue: ISSUE_SINK,
288
302
  retentionOwnerIssue: ISSUE_SINK,
@@ -295,7 +309,7 @@ var CATALOG_SOURCE = [
295
309
  category: "guardrail",
296
310
  severity: "error",
297
311
  privacyClass: "pseudonymous",
298
- producer: "src/telemetry.ts:609",
312
+ producer: "src/telemetry.ts:633",
299
313
  consumers: NO_CONSUMERS,
300
314
  futureOwnerIssue: ISSUE_SINK,
301
315
  retentionOwnerIssue: ISSUE_SINK,
@@ -308,7 +322,7 @@ var CATALOG_SOURCE = [
308
322
  category: "guardrail",
309
323
  severity: "warning",
310
324
  privacyClass: "pseudonymous",
311
- producer: "src/telemetry.ts:618",
325
+ producer: "src/telemetry.ts:642",
312
326
  consumers: NO_CONSUMERS,
313
327
  futureOwnerIssue: ISSUE_SINK,
314
328
  retentionOwnerIssue: ISSUE_SINK,
@@ -321,7 +335,7 @@ var CATALOG_SOURCE = [
321
335
  category: "guardrail",
322
336
  severity: "warning",
323
337
  privacyClass: "sensitive",
324
- producer: "src/telemetry.ts:622",
338
+ producer: "src/telemetry.ts:646",
325
339
  consumers: NO_CONSUMERS,
326
340
  futureOwnerIssue: ISSUE_SINK,
327
341
  retentionOwnerIssue: ISSUE_SINK,
@@ -334,7 +348,7 @@ var CATALOG_SOURCE = [
334
348
  category: "guardrail",
335
349
  severity: "error",
336
350
  privacyClass: "sensitive",
337
- producer: "src/telemetry.ts:718",
351
+ producer: "src/telemetry.ts:742",
338
352
  consumers: NO_CONSUMERS,
339
353
  futureOwnerIssue: ISSUE_SINK,
340
354
  retentionOwnerIssue: ISSUE_SINK,
@@ -347,7 +361,7 @@ var CATALOG_SOURCE = [
347
361
  category: "guardrail",
348
362
  severity: "warning",
349
363
  privacyClass: "pseudonymous",
350
- producer: "src/telemetry.ts:726",
364
+ producer: "src/telemetry.ts:750",
351
365
  consumers: NO_CONSUMERS,
352
366
  futureOwnerIssue: ISSUE_SINK,
353
367
  retentionOwnerIssue: ISSUE_SINK,
@@ -360,7 +374,7 @@ var CATALOG_SOURCE = [
360
374
  category: "guardrail",
361
375
  severity: "warning",
362
376
  privacyClass: "pseudonymous",
363
- producer: "src/telemetry.ts:748",
377
+ producer: "src/telemetry.ts:772",
364
378
  consumers: NO_CONSUMERS,
365
379
  futureOwnerIssue: ISSUE_SINK,
366
380
  retentionOwnerIssue: ISSUE_SINK,
@@ -373,7 +387,7 @@ var CATALOG_SOURCE = [
373
387
  category: "guardrail",
374
388
  severity: "warning",
375
389
  privacyClass: "pseudonymous",
376
- producer: "src/telemetry.ts:636",
390
+ producer: "src/telemetry.ts:660",
377
391
  consumers: NO_CONSUMERS,
378
392
  futureOwnerIssue: ISSUE_SINK,
379
393
  retentionOwnerIssue: ISSUE_SINK,
@@ -386,7 +400,7 @@ var CATALOG_SOURCE = [
386
400
  category: "guardrail",
387
401
  severity: "warning",
388
402
  privacyClass: "pseudonymous",
389
- producer: "src/telemetry.ts:657",
403
+ producer: "src/telemetry.ts:681",
390
404
  consumers: NO_CONSUMERS,
391
405
  futureOwnerIssue: ISSUE_SINK,
392
406
  retentionOwnerIssue: ISSUE_SINK,
@@ -399,7 +413,7 @@ var CATALOG_SOURCE = [
399
413
  category: "guardrail",
400
414
  severity: "warning",
401
415
  privacyClass: "pseudonymous",
402
- producer: "src/telemetry.ts:671",
416
+ producer: "src/telemetry.ts:695",
403
417
  consumers: NO_CONSUMERS,
404
418
  futureOwnerIssue: ISSUE_SINK,
405
419
  retentionOwnerIssue: ISSUE_SINK,
@@ -412,7 +426,7 @@ var CATALOG_SOURCE = [
412
426
  category: "guardrail",
413
427
  severity: "error",
414
428
  privacyClass: "pseudonymous",
415
- producer: "src/telemetry.ts:688",
429
+ producer: "src/telemetry.ts:712",
416
430
  consumers: NO_CONSUMERS,
417
431
  futureOwnerIssue: ISSUE_SINK,
418
432
  retentionOwnerIssue: ISSUE_SINK,
@@ -425,7 +439,7 @@ var CATALOG_SOURCE = [
425
439
  category: "guardrail",
426
440
  severity: "error",
427
441
  privacyClass: "sensitive",
428
- producer: "src/telemetry.ts:705",
442
+ producer: "src/telemetry.ts:729",
429
443
  consumers: NO_CONSUMERS,
430
444
  futureOwnerIssue: ISSUE_SINK,
431
445
  retentionOwnerIssue: ISSUE_SINK,
@@ -438,7 +452,7 @@ var CATALOG_SOURCE = [
438
452
  category: "prm",
439
453
  severity: "error",
440
454
  privacyClass: "pseudonymous",
441
- producer: "src/telemetry.ts:872",
455
+ producer: "src/telemetry.ts:918",
442
456
  consumers: NO_CONSUMERS,
443
457
  futureOwnerIssue: ISSUE_SINK,
444
458
  retentionOwnerIssue: ISSUE_SINK,
@@ -451,7 +465,7 @@ var CATALOG_SOURCE = [
451
465
  category: "prm",
452
466
  severity: "notice",
453
467
  privacyClass: "pseudonymous",
454
- producer: "src/telemetry.ts:778",
468
+ producer: "src/telemetry.ts:802",
455
469
  consumers: NO_CONSUMERS,
456
470
  futureOwnerIssue: ISSUE_SINK,
457
471
  retentionOwnerIssue: ISSUE_SINK,
@@ -464,7 +478,7 @@ var CATALOG_SOURCE = [
464
478
  category: "prm",
465
479
  severity: "notice",
466
480
  privacyClass: "pseudonymous",
467
- producer: "src/telemetry.ts:792",
481
+ producer: "src/telemetry.ts:816",
468
482
  consumers: NO_CONSUMERS,
469
483
  futureOwnerIssue: ISSUE_SINK,
470
484
  retentionOwnerIssue: ISSUE_SINK,
@@ -477,7 +491,7 @@ var CATALOG_SOURCE = [
477
491
  category: "prm",
478
492
  severity: "warning",
479
493
  privacyClass: "pseudonymous",
480
- producer: "src/telemetry.ts:805",
494
+ producer: "src/telemetry.ts:829",
481
495
  consumers: NO_CONSUMERS,
482
496
  futureOwnerIssue: ISSUE_SINK,
483
497
  retentionOwnerIssue: ISSUE_SINK,
@@ -490,7 +504,7 @@ var CATALOG_SOURCE = [
490
504
  category: "prm",
491
505
  severity: "critical",
492
506
  privacyClass: "pseudonymous",
493
- producer: "src/telemetry.ts:819",
507
+ producer: "src/telemetry.ts:843",
494
508
  consumers: NO_CONSUMERS,
495
509
  futureOwnerIssue: ISSUE_SINK,
496
510
  retentionOwnerIssue: ISSUE_SINK,
@@ -600,7 +614,7 @@ var CATALOG_SOURCE = [
600
614
  category: "lifecycle",
601
615
  severity: "notice",
602
616
  privacyClass: "operational",
603
- producer: "src/telemetry.ts:856",
617
+ producer: "src/telemetry.ts:880",
604
618
  consumers: NO_CONSUMERS,
605
619
  futureOwnerIssue: ISSUE_SINK,
606
620
  retentionOwnerIssue: ISSUE_SINK
@@ -633,6 +647,20 @@ var CATALOG_SOURCE = [
633
647
  requiredWorkflowIds: NO_WORKFLOW_IDS,
634
648
  allowsLinks: false
635
649
  }
650
+ ],
651
+ [
652
+ "residue_health",
653
+ {
654
+ category: "lifecycle",
655
+ severity: "notice",
656
+ privacyClass: "operational",
657
+ producer: "src/telemetry.ts:902",
658
+ consumers: NO_CONSUMERS,
659
+ futureOwnerIssue: ISSUE_SINK,
660
+ retentionOwnerIssue: ISSUE_SINK,
661
+ requiredWorkflowIds: NO_WORKFLOW_IDS,
662
+ allowsLinks: false
663
+ }
636
664
  ]
637
665
  ];
638
666
  var catalog = {};
@@ -893,6 +921,12 @@ var KNOWN_TELEMETRY_KEYS = Object.freeze({
893
921
  "toModel",
894
922
  "reason"
895
923
  ]),
924
+ model_unresolved: Object.freeze([
925
+ "sessionId",
926
+ "agentName",
927
+ "model",
928
+ "detail"
929
+ ]),
896
930
  hard_limit_hit: Object.freeze([
897
931
  "sessionId",
898
932
  "agentName",
@@ -1030,6 +1064,18 @@ var KNOWN_TELEMETRY_KEYS = Object.freeze({
1030
1064
  "backupBytes",
1031
1065
  "storeSha256Prefix",
1032
1066
  "token12"
1067
+ ]),
1068
+ residue_health: Object.freeze([
1069
+ "trigger",
1070
+ "scanned",
1071
+ "matched",
1072
+ "eligible",
1073
+ "ambiguous",
1074
+ "quarantined",
1075
+ "preserved",
1076
+ "total_bytes",
1077
+ "oldest_age_ms",
1078
+ "grammar_counts"
1033
1079
  ])
1034
1080
  });
1035
1081
  var EMPTY_EXTRA = Object.freeze({});
@@ -1669,6 +1715,14 @@ var telemetry = {
1669
1715
  reason
1670
1716
  });
1671
1717
  },
1718
+ modelUnresolved(agentName, model, detail) {
1719
+ _internals.emit("model_unresolved", {
1720
+ sessionId: "preflight",
1721
+ agentName,
1722
+ model,
1723
+ detail
1724
+ });
1725
+ },
1672
1726
  hardLimitHit(sessionId, agentName, limitType, value) {
1673
1727
  _internals.emit("hard_limit_hit", {
1674
1728
  sessionId,
@@ -1780,6 +1834,9 @@ var telemetry = {
1780
1834
  closeArchiveResult(data) {
1781
1835
  _internals.emit("close_archive_result", data);
1782
1836
  },
1837
+ residueHealth(data) {
1838
+ _internals.emit("residue_health", data);
1839
+ },
1783
1840
  prmHardStopDelivered(sessionId, pattern, level, occurrenceCount) {
1784
1841
  _internals.emit("prm_hard_stop_delivered", {
1785
1842
  sessionId,
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  atomicWriteFile
4
- } from "./index-9s8drsf9.js";
4
+ } from "./index-mpf01swm.js";
5
5
  import {
6
6
  init_logger,
7
7
  warn
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  validateSwarmPath
4
- } from "./index-fv0s19g9.js";
4
+ } from "./index-w8pgjr75.js";
5
5
 
6
6
  // src/hooks/delegation-gate/worktree-provisioning-owner.ts
7
7
  import { createHash, randomBytes } from "crypto";
@@ -2,14 +2,14 @@
2
2
  import {
3
3
  readKnowledge,
4
4
  transactKnowledge
5
- } from "./index-3k3nbs52.js";
5
+ } from "./index-qpke2x5h.js";
6
6
  import {
7
7
  init_git_executable,
8
8
  resolveGitExecutableAsync
9
9
  } from "./index-9e6fdz2h.js";
10
10
  import {
11
11
  resolveKnowledgeStoreDir
12
- } from "./index-h1p08s3n.js";
12
+ } from "./index-dzan8czb.js";
13
13
  import {
14
14
  init_knowledge_types,
15
15
  isActiveStatus
@@ -1,29 +1,29 @@
1
1
  // @bun
2
- import {
3
- validateSwarmPath
4
- } from "./index-fv0s19g9.js";
5
2
  import {
6
3
  loadPluginConfigWithMeta
7
- } from "./index-7qb0hn8n.js";
4
+ } from "./index-17e73wac.js";
8
5
  import {
9
6
  KnowledgeConfigSchema,
10
7
  init_schema
11
- } from "./index-gfvkttvd.js";
8
+ } from "./index-7axx11dt.js";
9
+ import {
10
+ validateSwarmPath
11
+ } from "./index-w8pgjr75.js";
12
12
  import {
13
13
  resolveHiveEventsPath
14
14
  } from "./index-ae75rja9.js";
15
15
  import {
16
16
  resolveKnowledgeStoreDir
17
- } from "./index-h1p08s3n.js";
17
+ } from "./index-dzan8czb.js";
18
18
  import {
19
19
  atomicWriteFile
20
- } from "./index-9s8drsf9.js";
20
+ } from "./index-mpf01swm.js";
21
21
  import {
22
22
  assertProjectRoot
23
- } from "./index-f9vvg5xb.js";
23
+ } from "./index-gf03198s.js";
24
24
  import {
25
25
  emit
26
- } from "./index-1jsmmx7y.js";
26
+ } from "./index-dppzthm9.js";
27
27
  import {
28
28
  require_proper_lockfile
29
29
  } from "./index-7g4c7s5r.js";
@@ -2545,7 +2545,7 @@ async function applyKnowledgeVerdictFeedback(directory, options) {
2545
2545
  }
2546
2546
  let bumps = 0;
2547
2547
  if (deltas.length > 0) {
2548
- const { bumpKnowledgeConfidenceBatch } = await import("./knowledge-store-awnm8s6c.js");
2548
+ const { bumpKnowledgeConfidenceBatch } = await import("./knowledge-store-mc4awds4.js");
2549
2549
  bumps = await bumpKnowledgeConfidenceBatch(directory, deltas, options?.floorOptions);
2550
2550
  }
2551
2551
  return {
@@ -9,11 +9,11 @@ import {
9
9
  } from "./index-y8552snf.js";
10
10
  import {
11
11
  atomicWriteFile
12
- } from "./index-9s8drsf9.js";
12
+ } from "./index-mpf01swm.js";
13
13
  import {
14
14
  assertProjectRoot,
15
15
  withEvidenceLock
16
- } from "./index-f9vvg5xb.js";
16
+ } from "./index-gf03198s.js";
17
17
  import {
18
18
  exports_external,
19
19
  init_zod
@@ -1,10 +1,10 @@
1
1
  // @bun
2
2
  import {
3
3
  validateSwarmPath
4
- } from "./index-fv0s19g9.js";
4
+ } from "./index-w8pgjr75.js";
5
5
  import {
6
6
  withEvidenceLock
7
- } from "./index-f9vvg5xb.js";
7
+ } from "./index-gf03198s.js";
8
8
  import {
9
9
  exports_external,
10
10
  init_zod
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  emit
4
- } from "./index-1jsmmx7y.js";
4
+ } from "./index-dppzthm9.js";
5
5
  import {
6
6
  require_proper_lockfile
7
7
  } from "./index-7g4c7s5r.js";
@@ -47,6 +47,17 @@ function getLockFilePath(directory, filePath) {
47
47
  }
48
48
  return lockPath;
49
49
  }
50
+ function getMetaPath(lockPath) {
51
+ return `${lockPath.replace(/\.lock$/, "")}.meta`;
52
+ }
53
+ function readMetaFile(metaPath) {
54
+ try {
55
+ const content = fs.readFileSync(metaPath, "utf-8");
56
+ return JSON.parse(content);
57
+ } catch {
58
+ return null;
59
+ }
60
+ }
50
61
  async function tryAcquireLock(directory, filePath, agent, taskId) {
51
62
  const lockPath = getLockFilePath(directory, filePath);
52
63
  const locksDir = path.dirname(lockPath);
@@ -85,6 +96,60 @@ async function tryAcquireLock(directory, filePath, agent, taskId) {
85
96
  };
86
97
  return { acquired: true, lock };
87
98
  }
99
+ function listActiveLocks(directory) {
100
+ const locksDir = path.join(directory, LOCKS_DIR);
101
+ const locks = [];
102
+ if (!fs.existsSync(locksDir)) {
103
+ return locks;
104
+ }
105
+ const files = fs.readdirSync(locksDir);
106
+ const now = Date.now();
107
+ for (const file of files) {
108
+ if (!file.endsWith(".lock"))
109
+ continue;
110
+ const lockPath = path.join(locksDir, file);
111
+ try {
112
+ const stat = fs.statSync(lockPath);
113
+ if (stat.isFile()) {
114
+ const plLockDir = `${lockPath}.lock`;
115
+ if (fs.existsSync(plLockDir)) {
116
+ const metaPath = getMetaPath(lockPath);
117
+ const meta = readMetaFile(metaPath);
118
+ if (meta) {
119
+ if (meta.expiresAt < now) {
120
+ continue;
121
+ }
122
+ locks.push({
123
+ filePath: meta.originalPath,
124
+ agent: meta.agent,
125
+ taskId: meta.taskId,
126
+ timestamp: meta.acquiredAt,
127
+ expiresAt: meta.expiresAt,
128
+ laneId: meta.laneId
129
+ });
130
+ } else {
131
+ let acquiredAt = Date.now();
132
+ try {
133
+ acquiredAt = fs.statSync(plLockDir).mtimeMs;
134
+ } catch {}
135
+ const expiresAt = acquiredAt + LOCK_TIMEOUT_MS;
136
+ if (expiresAt < now) {
137
+ continue;
138
+ }
139
+ locks.push({
140
+ filePath: lockPath,
141
+ agent: "unknown",
142
+ taskId: "unknown",
143
+ timestamp: new Date(acquiredAt).toISOString(),
144
+ expiresAt
145
+ });
146
+ }
147
+ }
148
+ }
149
+ } catch {}
150
+ }
151
+ return locks;
152
+ }
88
153
 
89
154
  // src/utils/project-boundary.ts
90
155
  init_logger();
@@ -295,4 +360,4 @@ async function withEvidenceLock(directory, evidencePath, agent, taskId, fn, time
295
360
  }
296
361
  }
297
362
 
298
- export { tryAcquireLock, hasExplicitProjectBoundary, isStrictPathDescendant, assertProjectRoot, withEvidenceLock };
363
+ export { tryAcquireLock, listActiveLocks, hasExplicitProjectBoundary, isStrictPathDescendant, assertProjectRoot, withEvidenceLock };