opencode-swarm 7.188.4 → 7.188.6

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 (103) hide show
  1. package/README.md +2 -2
  2. package/binaries/win32-arm64/swarm-sandbox-runner.exe +0 -0
  3. package/binaries/win32-x64/swarm-sandbox-runner.exe +0 -0
  4. package/dist/cli/{auto-checkpoint-gp13e1h5.js → auto-checkpoint-q2xwy0hz.js} +9 -9
  5. package/dist/cli/{checkpoint-61vy6pjg.js → checkpoint-9cbytsxe.js} +17 -17
  6. package/dist/cli/{coder-settlement-2s4rr23t.js → coder-settlement-a74xcmtn.js} +13 -13
  7. package/dist/cli/{config-doctor-0pjjr594.js → config-doctor-jec44ph0.js} +16 -16
  8. package/dist/cli/{core-qdn60dm0.js → core-yvx60mhw.js} +4 -4
  9. package/dist/cli/{curation-policy-2rdbwc6a.js → curation-policy-65ckmmd5.js} +6 -6
  10. package/dist/cli/{curator-drift-n4t27md5.js → curator-drift-t95vqagz.js} +9 -9
  11. package/dist/cli/curator-llm-factory-znjp0g9d.js +82 -0
  12. package/dist/cli/{curator-8yqmmn5w.js → curator-wr25srz6.js} +43 -43
  13. package/dist/cli/{doctor-knowledge-receipt-phase-id-vk9c6t3k.js → doctor-knowledge-receipt-phase-id-hxyxqqya.js} +9 -9
  14. package/dist/cli/{evidence-summary-service-xpdx8se9.js → evidence-summary-service-pzr0aw1h.js} +20 -20
  15. package/dist/cli/{gate-evidence-px2mexyg.js → gate-evidence-0dwbqya4.js} +8 -8
  16. package/dist/cli/guardrail-explain-etssbwma.js +83 -0
  17. package/dist/cli/{guardrail-log-y61ewh6d.js → guardrail-log-055340sb.js} +8 -8
  18. package/dist/cli/{guardrail-reset-3arv6rfs.js → guardrail-reset-zdnshfqh.js} +43 -43
  19. package/dist/cli/{hive-promoter-5naewxf9.js → hive-promoter-nphztsfb.js} +43 -43
  20. package/dist/cli/{index-tr6kaa6q.js → index-06c2j365.js} +5 -5
  21. package/dist/cli/{index-195msz9x.js → index-0bf26e0h.js} +1 -1
  22. package/dist/cli/{index-1e4s8cyt.js → index-0gdyd1mx.js} +4 -4
  23. package/dist/cli/{index-4vgvybav.js → index-15836xvt.js} +2 -2
  24. package/dist/cli/{index-wftdsx38.js → index-16f28gya.js} +5 -5
  25. package/dist/cli/{index-8zs4v02d.js → index-1cz2j033.js} +6 -6
  26. package/dist/cli/{index-64nkt4ek.js → index-1pfga0cy.js} +1 -1
  27. package/dist/cli/{index-gmmz119k.js → index-1r5k2b4v.js} +2 -2
  28. package/dist/cli/{index-8tf5tewn.js → index-1xa8wq76.js} +2 -2
  29. package/dist/cli/{index-0yqa3awy.js → index-2sc36smx.js} +2 -2
  30. package/dist/cli/{index-wsab75et.js → index-35ythzj4.js} +4 -4
  31. package/dist/cli/{index-yctaaj1k.js → index-46zge5zc.js} +5 -5
  32. package/dist/cli/{index-6kf62j82.js → index-6p6m98bb.js} +1 -1
  33. package/dist/cli/{index-a5z8eqs0.js → index-6yb7fhah.js} +45 -45
  34. package/dist/cli/{index-p8kv9hh6.js → index-71b12k03.js} +11 -11
  35. package/dist/cli/{index-4czf0es9.js → index-7hr5m7yp.js} +1 -1
  36. package/dist/cli/{index-jkz10gm7.js → index-8q8783g0.js} +1 -1
  37. package/dist/cli/{index-75bm071p.js → index-8xabhfwr.js} +2 -2
  38. package/dist/cli/{index-j7pqzxyq.js → index-99h4ez5x.js} +3 -3
  39. package/dist/cli/{index-53me7h10.js → index-9bdz8cbx.js} +5 -5
  40. package/dist/cli/{index-ntyc39rv.js → index-9c2t70wh.js} +3 -3
  41. package/dist/cli/{index-d74wbpqc.js → index-9czp2dcg.js} +7 -7
  42. package/dist/cli/{index-ww91zjzk.js → index-9tvjwv01.js} +1 -1
  43. package/dist/cli/{index-ywpn0arj.js → index-akg9rdt1.js} +43 -43
  44. package/dist/cli/{index-d3p96wkj.js → index-aq962xjf.js} +6 -6
  45. package/dist/cli/{index-h83221w1.js → index-d3rjvm9e.js} +3 -3
  46. package/dist/cli/{index-jc0jxg7y.js → index-f6exny9m.js} +2 -2
  47. package/dist/cli/{index-xn48kjf4.js → index-fce5drxa.js} +2 -2
  48. package/dist/cli/{index-dka1ra21.js → index-g1avjt26.js} +7 -7
  49. package/dist/cli/{index-gyhj562n.js → index-hh7pa3yk.js} +2 -2
  50. package/dist/cli/{index-fm0yan3t.js → index-hshx5znv.js} +4 -4
  51. package/dist/cli/{index-sh7se0x5.js → index-jp7qd7r4.js} +7 -7
  52. package/dist/cli/{index-yacpp9jq.js → index-jy33tgeb.js} +4 -4
  53. package/dist/cli/{index-vx59q2ex.js → index-k8sarme1.js} +1 -1
  54. package/dist/cli/{index-qwrx78m5.js → index-kaqdzhj3.js} +2 -2
  55. package/dist/cli/{index-rqheyf9e.js → index-mv2ptr24.js} +4 -4
  56. package/dist/cli/{index-v09x4k5h.js → index-ntda6tje.js} +1 -1
  57. package/dist/cli/{index-1d51nz8d.js → index-p2tqzwh6.js} +1 -1
  58. package/dist/cli/{index-2ajapc0r.js → index-q9kefh33.js} +1 -1
  59. package/dist/cli/{index-94b58ssa.js → index-qkhssaay.js} +163 -103
  60. package/dist/cli/{index-6qtgyzw2.js → index-s0r30djy.js} +3 -3
  61. package/dist/cli/{index-6kckcdd7.js → index-sqkz9hyj.js} +4 -4
  62. package/dist/cli/{index-4zran0jk.js → index-twb3f4tk.js} +1 -1
  63. package/dist/cli/{index-ge4hk20b.js → index-wrdktgpy.js} +2 -2
  64. package/dist/cli/{index-103gsfn1.js → index-x1eh2636.js} +1 -1
  65. package/dist/cli/{index-3034m1wv.js → index-xhgq58e1.js} +4 -4
  66. package/dist/cli/{index-bqqyxmpk.js → index-yn5r962a.js} +7 -7
  67. package/dist/cli/{index-bstjg81q.js → index-zfbxfm2m.js} +33 -33
  68. package/dist/cli/index.js +44 -44
  69. package/dist/cli/{knowledge-escalator-2c4svh7n.js → knowledge-escalator-h4wqey95.js} +15 -15
  70. package/dist/cli/{knowledge-events-7zea5hzr.js → knowledge-events-jdj0kg0x.js} +13 -13
  71. package/dist/cli/{knowledge-link-r9nx1eaj.js → knowledge-link-h4pdcnya.js} +5 -5
  72. package/dist/cli/{knowledge-store-rdya1anx.js → knowledge-store-9pkka657.js} +6 -6
  73. package/dist/cli/{knowledge-validator-qnc4byyh.js → knowledge-validator-2hh4838s.js} +8 -8
  74. package/dist/cli/{mcp-z21kvvnf.js → mcp-dr2qg42d.js} +1 -1
  75. package/dist/cli/{model-preflight-jbg35f6e.js → model-preflight-t6megn5m.js} +87 -43
  76. package/dist/cli/{pending-delegations-c1yjybf1.js → pending-delegations-96j63y3v.js} +12 -12
  77. package/dist/cli/{pr-subscriptions-2mngc0jg.js → pr-subscriptions-qrc475pd.js} +12 -12
  78. package/dist/cli/{pr-workflow-gate-h4s5w5y0.js → pr-workflow-gate-1hf06vw7.js} +43 -43
  79. package/dist/cli/{runner-3ynjanks.js → runner-4hfmp1ag.js} +6 -6
  80. package/dist/cli/{scan-cursor-385k9dkp.js → scan-cursor-wfa7239s.js} +7 -7
  81. package/dist/cli/{schema-cp8sqp1b.js → schema-v3z4wgje.js} +2 -2
  82. package/dist/cli/{scope-persistence-d587cb6v.js → scope-persistence-k2zq1h9h.js} +16 -16
  83. package/dist/cli/{server-t0wansfd.js → server-qk8e60ah.js} +43 -43
  84. package/dist/cli/{skill-generator-f2j1jnqf.js → skill-generator-q6jzjcer.js} +17 -17
  85. package/dist/cli/{snapshot-coordination-init-9gvgq52n.js → snapshot-coordination-init-h8cqcmve.js} +43 -43
  86. package/dist/cli/{speckit-checkoff-zw0w6ekx.js → speckit-checkoff-mh45c204.js} +5 -5
  87. package/dist/cli/{telemetry-eq1cwq2x.js → telemetry-kvhe94gs.js} +1 -1
  88. package/dist/cli/{workspace-snapshot-w60bykdz.js → workspace-snapshot-30kdf018.js} +3 -3
  89. package/dist/cli/{worktree-collision-ownership-0d8xf1d8.js → worktree-collision-ownership-hm5y77hr.js} +13 -13
  90. package/dist/cli/{worktree-isolation-ds8n4a16.js → worktree-isolation-tdst4qs1.js} +43 -43
  91. package/dist/full-auto/evidence-names.d.ts +24 -0
  92. package/dist/full-auto/oversight.d.ts +0 -1
  93. package/dist/full-auto/state.d.ts +35 -0
  94. package/dist/host/v2/events.d.ts +19 -1
  95. package/dist/host/v2/model-apply.d.ts +39 -0
  96. package/dist/host/v2/setup.d.ts +0 -35
  97. package/dist/index.js +32 -32
  98. package/dist/models/task-model-routing.d.ts +8 -0
  99. package/dist/services/model-preflight.d.ts +24 -0
  100. package/dist/utils/provider-error-classification.d.ts +30 -4
  101. package/package.json +1 -1
  102. package/dist/cli/curator-llm-factory-30n2fnef.js +0 -82
  103. package/dist/cli/guardrail-explain-38hmb1s9.js +0 -83
@@ -8,14 +8,14 @@ import {
8
8
  protectedRoots,
9
9
  redactDecisionLineForArchive,
10
10
  stableCanonicalStringify
11
- } from "./index-yacpp9jq.js";
11
+ } from "./index-jy33tgeb.js";
12
12
  import {
13
13
  detectStraySwarmDirs,
14
14
  readDoctorArtifact,
15
15
  removeStraySwarmDir,
16
16
  resolvePlanParallelizationFlag,
17
17
  runConfigDoctor
18
- } from "./index-ntyc39rv.js";
18
+ } from "./index-9c2t70wh.js";
19
19
  import {
20
20
  archiveEvidence,
21
21
  checkRequirementCoverage,
@@ -27,7 +27,7 @@ import {
27
27
  sanitizeTaskId,
28
28
  saveEvidence,
29
29
  validateProjectRoot
30
- } from "./index-tr6kaa6q.js";
30
+ } from "./index-06c2j365.js";
31
31
  import {
32
32
  JAVA_SYMBOL_GRAMMAR,
33
33
  LANGUAGE_REGISTRY,
@@ -48,7 +48,7 @@ import {
48
48
  runEvaluation,
49
49
  runExternalTool,
50
50
  withDisposableWorktree
51
- } from "./index-vx59q2ex.js";
51
+ } from "./index-k8sarme1.js";
52
52
  import {
53
53
  EvaluationTaskV1Schema,
54
54
  GateAuditManifestV1Schema,
@@ -65,7 +65,7 @@ import {
65
65
  saveGateAuditResult,
66
66
  savePromotionDecision,
67
67
  saveTaskSetSnapshot
68
- } from "./index-75bm071p.js";
68
+ } from "./index-8xabhfwr.js";
69
69
  import {
70
70
  canonicalHash,
71
71
  canonicalJson,
@@ -81,7 +81,7 @@ import {
81
81
  alreadyCuratedThisGeneration,
82
82
  claimNextScanBatch,
83
83
  resolveCohortId
84
- } from "./index-4vgvybav.js";
84
+ } from "./index-15836xvt.js";
85
85
  import {
86
86
  CURATOR_CONSOLIDATION_PROMPT,
87
87
  CURATOR_INIT_PROMPT,
@@ -100,13 +100,13 @@ import {
100
100
  getGroupCommitWriter,
101
101
  importLegacyJsonl,
102
102
  readPriorDriftReports
103
- } from "./index-6qtgyzw2.js";
103
+ } from "./index-s0r30djy.js";
104
104
  import {
105
105
  assertNoUnsettledCoderDispatch,
106
106
  listCoderSettlementWalStates,
107
107
  recoverCoderSettlement,
108
108
  recoverStaleCoderSettlements
109
- } from "./index-sh7se0x5.js";
109
+ } from "./index-jp7qd7r4.js";
110
110
  import {
111
111
  BUNDLED_PROJECT_SKILL_ROOT,
112
112
  DEFAULT_SKILL_MIN_CONFIDENCE,
@@ -127,11 +127,11 @@ import {
127
127
  retireSkill,
128
128
  selectCandidateEntries,
129
129
  syncBundledProjectSkillsIfMissingAsync
130
- } from "./index-fm0yan3t.js";
130
+ } from "./index-hshx5znv.js";
131
131
  import {
132
132
  buildEscalationBriefing,
133
133
  readRecentEscalations
134
- } from "./index-8zs4v02d.js";
134
+ } from "./index-1cz2j033.js";
135
135
  import {
136
136
  parsePorcelainV2Snapshot,
137
137
  resolveCommitCountSince,
@@ -159,7 +159,7 @@ import {
159
159
  resolveRemoteUrlIdentity,
160
160
  resolveRemoteUrlIdentityAsync,
161
161
  switchPrFeedbackTrackingCandidateAsync
162
- } from "./index-qwrx78m5.js";
162
+ } from "./index-kaqdzhj3.js";
163
163
  import {
164
164
  buildCorrelationId,
165
165
  buildIssueUrl,
@@ -180,12 +180,12 @@ import {
180
180
  sweepStale,
181
181
  unsubscribe,
182
182
  updateSnapshot
183
- } from "./index-d74wbpqc.js";
183
+ } from "./index-9czp2dcg.js";
184
184
  import {
185
185
  WORKTREE_LIFECYCLE_LOCK_FILE,
186
186
  recordWorktreeProvisioningOwner,
187
187
  removeWorktreeProvisioningOwner
188
- } from "./index-jc0jxg7y.js";
188
+ } from "./index-f6exny9m.js";
189
189
  import {
190
190
  getLanguageForExtension
191
191
  } from "./index-pt7h91zc.js";
@@ -211,7 +211,7 @@ import {
211
211
  resolveWorkingDirectory,
212
212
  swarmOverwriteCandidates,
213
213
  trackedDirtyCandidates
214
- } from "./index-d3p96wkj.js";
214
+ } from "./index-aq962xjf.js";
215
215
  import {
216
216
  MAX_TRANSIENT_RETRIES,
217
217
  PlanRecoverySupersededError,
@@ -238,7 +238,7 @@ import {
238
238
  transientBackoff,
239
239
  updateTaskStatus,
240
240
  withPlanLifecycleLock
241
- } from "./index-p8kv9hh6.js";
241
+ } from "./index-71b12k03.js";
242
242
  import {
243
243
  containsControlChars,
244
244
  containsPathTraversal,
@@ -254,7 +254,7 @@ import {
254
254
  resolveSpeckitProjection,
255
255
  validateSpeckit,
256
256
  writeProjectedSpecSync
257
- } from "./index-195msz9x.js";
257
+ } from "./index-0bf26e0h.js";
258
258
  import {
259
259
  clearWorktreeMergeStatus,
260
260
  getAllWorktreeMergeFailures,
@@ -285,7 +285,7 @@ import {
285
285
  transitionTaskWorkflowEvidenceWithStatus,
286
286
  withTaskEvidenceTransaction,
287
287
  writeWorkflowWalFile
288
- } from "./index-1e4s8cyt.js";
288
+ } from "./index-0gdyd1mx.js";
289
289
  import {
290
290
  isPathUnderSwarmWorktreeBase,
291
291
  listLiveLaneOwners,
@@ -294,7 +294,7 @@ import {
294
294
  recordLiveLaneOwner,
295
295
  removeWorktree,
296
296
  resolveWorktreeBaseDir
297
- } from "./index-6kckcdd7.js";
297
+ } from "./index-sqkz9hyj.js";
298
298
  import {
299
299
  DEFAULT_STALE_DELEGATION_TIMEOUT_MS,
300
300
  DELEGATION_COMPACTION_HIGH_WATER_BYTES,
@@ -328,7 +328,7 @@ import {
328
328
  scanBackgroundCoderReservationsForAdmission,
329
329
  scanDelegationsForRecovery,
330
330
  sweepStaleDelegations
331
- } from "./index-dka1ra21.js";
331
+ } from "./index-g1avjt26.js";
332
332
  import {
333
333
  MAX_EVENT_LOG_ENTRIES,
334
334
  _internals,
@@ -340,7 +340,7 @@ import {
340
340
  recordHiveKnowledgeEvent,
341
341
  recordKnowledgeEvent,
342
342
  resolveKnowledgeEventsPath
343
- } from "./index-rqheyf9e.js";
343
+ } from "./index-mv2ptr24.js";
344
344
  import {
345
345
  commitDisplayedMembership,
346
346
  commitEmptyRetrieval,
@@ -353,7 +353,7 @@ import {
353
353
  queryLiveMemberships,
354
354
  reconcilePhaseClose,
355
355
  recordPhaseCloseIntent
356
- } from "./index-wftdsx38.js";
356
+ } from "./index-16f28gya.js";
357
357
  import {
358
358
  sanitizeContextText
359
359
  } from "./index-m9zzj4ee.js";
@@ -364,7 +364,7 @@ import {
364
364
  readSwarmFileAsync,
365
365
  safeHook,
366
366
  validateSwarmPath
367
- } from "./index-4czf0es9.js";
367
+ } from "./index-7hr5m7yp.js";
368
368
  import {
369
369
  bunFile,
370
370
  bunSpawn,
@@ -384,18 +384,18 @@ import {
384
384
  validateActionableFields,
385
385
  validateLesson,
386
386
  validateSkillPath
387
- } from "./index-3034m1wv.js";
387
+ } from "./index-xhgq58e1.js";
388
388
  import {
389
389
  MAX_CURATION_PROPOSALS,
390
390
  authorizeCuration,
391
391
  buildConfigFingerprintInput
392
- } from "./index-2ajapc0r.js";
392
+ } from "./index-q9kefh33.js";
393
393
  import {
394
394
  cohortConfigFingerprint
395
395
  } from "./index-rtry5xyf.js";
396
396
  import {
397
397
  resolveWorktreeIsolationConfig
398
- } from "./index-j7pqzxyq.js";
398
+ } from "./index-99h4ez5x.js";
399
399
  import {
400
400
  RetrospectiveEvidenceSchema
401
401
  } from "./index-kbkk7vnh.js";
@@ -407,7 +407,7 @@ import {
407
407
  clearScopeBindings,
408
408
  readAuthoritativeScopeBindingSet,
409
409
  readDeclaredScopeFilesFromBindings
410
- } from "./index-53me7h10.js";
410
+ } from "./index-9bdz8cbx.js";
411
411
  import {
412
412
  clearPlanLedgerForReset,
413
413
  computePlanStructureHash,
@@ -423,7 +423,7 @@ import {
423
423
  replayFromLedgerWithStatus,
424
424
  resolvePlanningProfile,
425
425
  takeSnapshotEvent
426
- } from "./index-yctaaj1k.js";
426
+ } from "./index-46zge5zc.js";
427
427
  import {
428
428
  CORE_EVENT_LOCKED,
429
429
  appendCoreEventSync,
@@ -433,7 +433,7 @@ import {
433
433
  hasSpecDriftAuditEvent,
434
434
  hasTaskRepairAuditEvent,
435
435
  readCoreEvents
436
- } from "./index-ge4hk20b.js";
436
+ } from "./index-wrdktgpy.js";
437
437
  import {
438
438
  DEFAULT_QA_GATES,
439
439
  computeProfileHash,
@@ -441,7 +441,7 @@ import {
441
441
  getEffectiveGates,
442
442
  getProfileLookupForIdentity,
443
443
  setGatesForIdentity
444
- } from "./index-103gsfn1.js";
444
+ } from "./index-x1eh2636.js";
445
445
  import {
446
446
  MAX_COORDINATION_STATE_LIST_ROWS,
447
447
  deleteCoordinationImports,
@@ -452,7 +452,7 @@ import {
452
452
  listCoordinationStates,
453
453
  transitionCoordinationState,
454
454
  withCoordinationTransaction
455
- } from "./index-v09x4k5h.js";
455
+ } from "./index-ntda6tje.js";
456
456
  import {
457
457
  DURABILITY_CLASSES,
458
458
  closeAllProjectDbs,
@@ -461,7 +461,7 @@ import {
461
461
  projectDbExists,
462
462
  projectDbPath,
463
463
  withImmediateTransaction
464
- } from "./index-ww91zjzk.js";
464
+ } from "./index-9tvjwv01.js";
465
465
  import {
466
466
  canonicalExistingFilesystemPath,
467
467
  canonicalPathForFutureIo,
@@ -481,7 +481,7 @@ import {
481
481
  observeModelLimitResolution,
482
482
  observeStoreHealth,
483
483
  readLearningHealth
484
- } from "./index-8tf5tewn.js";
484
+ } from "./index-1xa8wq76.js";
485
485
  import {
486
486
  appendKnowledge,
487
487
  appendRejectedLesson,
@@ -512,7 +512,7 @@ import {
512
512
  transactFile,
513
513
  transactKnowledge,
514
514
  wordBigrams
515
- } from "./index-bqqyxmpk.js";
515
+ } from "./index-yn5r962a.js";
516
516
  import {
517
517
  readTailJsonl,
518
518
  readTailJsonlDetailed,
@@ -533,13 +533,13 @@ import {
533
533
  resolveLinkDir,
534
534
  sanitizeLinkId,
535
535
  writeLinkPointer
536
- } from "./index-jkz10gm7.js";
536
+ } from "./index-8q8783g0.js";
537
537
  import {
538
538
  atomicWriteFile
539
- } from "./index-gyhj562n.js";
539
+ } from "./index-hh7pa3yk.js";
540
540
  import {
541
541
  withEvidenceLock
542
- } from "./index-4zran0jk.js";
542
+ } from "./index-twb3f4tk.js";
543
543
  import {
544
544
  assertProjectRoot
545
545
  } from "./index-t7hmqgjy.js";
@@ -553,7 +553,7 @@ import {
553
553
  pseudonymousRef,
554
554
  resolveLineageSalt,
555
555
  telemetry
556
- } from "./index-h83221w1.js";
556
+ } from "./index-d3rjvm9e.js";
557
557
  import {
558
558
  SESSION_KEY_SEPARATOR,
559
559
  canonicalRootKey,
@@ -579,7 +579,7 @@ import {
579
579
  matchTempGrammar,
580
580
  parseTargetBasename,
581
581
  resetSwarmArtifactCache
582
- } from "./index-1d51nz8d.js";
582
+ } from "./index-p2tqzwh6.js";
583
583
  import {
584
584
  PlanSchema,
585
585
  TaskStatusSchema,
@@ -593,7 +593,7 @@ import {
593
593
  loadGateOverrides,
594
594
  loadPluginConfig,
595
595
  loadPluginConfigWithMeta
596
- } from "./index-6kf62j82.js";
596
+ } from "./index-6p6m98bb.js";
597
597
  import {
598
598
  addDeferredWarning,
599
599
  advisoryWarn,
@@ -625,7 +625,7 @@ import {
625
625
  resolveContextWindow,
626
626
  resolveGeneratedAgentRole,
627
627
  stripKnownSwarmPrefix
628
- } from "./index-gmmz119k.js";
628
+ } from "./index-1r5k2b4v.js";
629
629
  import {
630
630
  AGENT_TOOL_MAP,
631
631
  ALL_AGENT_NAMES,
@@ -648,7 +648,7 @@ import {
648
648
  init_agent_names,
649
649
  init_constants,
650
650
  init_tool_metadata
651
- } from "./index-bstjg81q.js";
651
+ } from "./index-zfbxfm2m.js";
652
652
  import {
653
653
  KNOWLEDGE_SCHEMA_VERSION,
654
654
  OUTCOME_BLOCK_THRESHOLD,
@@ -3414,7 +3414,7 @@ async function importLegacyPrWorkflowGateStateIfNeeded(directory, sessionID, all
3414
3414
  return null;
3415
3415
  throw error2;
3416
3416
  }
3417
- const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-h4s5w5y0.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
3417
+ const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-1hf06vw7.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
3418
3418
  if (!legacy)
3419
3419
  return null;
3420
3420
  const namespace = workflowGateStateCoordinationNamespace(sessionID);
@@ -3501,7 +3501,7 @@ async function deleteStateWhileLocked(directory, sessionID, options = {}) {
3501
3501
  let recoveryState = null;
3502
3502
  if (!currentAuthoritative) {
3503
3503
  if (options.allowSalvagedRead) {
3504
- const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-h4s5w5y0.js");
3504
+ const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-1hf06vw7.js");
3505
3505
  recoveryState = (await readPrWorkflowGateStateForRecovery(directory, normalizedSessionID))?.state ?? null;
3506
3506
  }
3507
3507
  if (!recoveryState) {
@@ -15074,7 +15074,7 @@ function isLaneOwnedByCurrentSession(branchName, expectedSessionId) {
15074
15074
  return extracted === expectedSessionId;
15075
15075
  }
15076
15076
  async function inspectStandardWorktreeCollisionOwnership(identity) {
15077
- const collisionOwnership = await import("./worktree-collision-ownership-0d8xf1d8.js");
15077
+ const collisionOwnership = await import("./worktree-collision-ownership-hm5y77hr.js");
15078
15078
  return collisionOwnership.inspectStandardWorktreeCollisionOwnership(identity);
15079
15079
  }
15080
15080
  async function runRecoveryGit(directory, args, timeoutMs = 15000) {
@@ -15500,7 +15500,7 @@ async function precreateStandardWorktreeSession(args) {
15500
15500
  const laneProfile = computeLaneRuntimeProfile(worktreeConfig.runtime_isolation, laneIndex, handle.worktreePath);
15501
15501
  if (laneProfile) {
15502
15502
  try {
15503
- const { writeLaneProfileToDiskReal } = await import("./core-qdn60dm0.js");
15503
+ const { writeLaneProfileToDiskReal } = await import("./core-yvx60mhw.js");
15504
15504
  await writeLaneProfileToDiskReal(handle.worktreePath, laneProfile.laneIndex, laneProfile.envOverrides);
15505
15505
  } catch {}
15506
15506
  }
@@ -16479,7 +16479,7 @@ async function finishStandardWorktreeDispatch(directory, dispatch, config, callI
16479
16479
  }
16480
16480
  clearWorktreeMergeStatus(statusKey);
16481
16481
  try {
16482
- const { removeLaneProfileFromDiskReal } = await import("./core-qdn60dm0.js");
16482
+ const { removeLaneProfileFromDiskReal } = await import("./core-yvx60mhw.js");
16483
16483
  await removeLaneProfileFromDiskReal(dispatch.handle.worktreePath, dispatch.laneIndex);
16484
16484
  } catch {}
16485
16485
  const state = serializationStateBySessionID.get(dispatch.parentSessionID);
@@ -16881,7 +16881,8 @@ function extractStatusCode(errorMsg) {
16881
16881
  }
16882
16882
  return null;
16883
16883
  }
16884
- var TRANSIENT_MODEL_ERROR_PATTERN = /rate.?limit|429|500|502|503|504|529|timeout|overloaded|model.?not.?found|temporarily.?unavailable|provider[_\s-]?unavailable|server.?error|network.?connection.?lost|connection.?(refused|reset|timeout|lost)|bad.?gateway|gateway.?timeout|internal.?server.?error|service.?unavailable|ECONNRESET|ECONNREFUSED|ETIMEDOUT|EPIPE|ENOTFOUND|broken.?pipe|dns(?:[\s_-]+(?:resolution)?)?[\s_-]+fail|name.?not.?resolved|EAI_AGAIN/i;
16884
+ var TRANSIENT_MODEL_ERROR_PATTERN = /rate.?limit|429|500|502|503|504|529|timeout|overloaded|model.?not.?found|model.?unavailable|temporarily.?unavailable|provider[_\s-]?unavailable|server.?error|network.?connection.?lost|connection.?(refused|reset|timeout|lost)|bad.?gateway|gateway.?timeout|internal.?server.?error|service.?unavailable|ECONNRESET|ECONNREFUSED|ETIMEDOUT|EPIPE|ENOTFOUND|broken.?pipe|dns(?:[\s_-]+(?:resolution)?)?[\s_-]+fail|name.?not.?resolved|EAI_AGAIN/i;
16885
+ var MODEL_UNAVAILABLE_PATTERN = /model.?unavailable/i;
16885
16886
  var QUOTA_ERROR_PATTERN = /quota|usage.?limit|insufficient.?(?:quota|credits?)|\b402\b|payment.?required|credit.?balance|out of credits|billing.?(?:hard.?)?limit/i;
16886
16887
  var REQUEST_SHAPE_REJECTION_PATTERN = /\b(?:single|one|only|exactly)[^.]{0,48}?\bsystem\s+messages?\b|\bmultiple\s+system\s+messages?\b|\bsystem\s+messages?\s+(?:are\s+)?not\s+supported\b/i;
16887
16888
  function isTransientProviderError(signal) {
@@ -17586,6 +17587,18 @@ function classifyProviderFailure(error2, action2) {
17586
17587
  statusCode
17587
17588
  });
17588
17589
  }
17590
+ if (MODEL_UNAVAILABLE_PATTERN.test(signal)) {
17591
+ return buildRecord({
17592
+ source: "provider",
17593
+ category: "provider.unavailable",
17594
+ retryClass: "retry_fallback",
17595
+ risk: "medium",
17596
+ action: action2,
17597
+ display: signal,
17598
+ code,
17599
+ statusCode
17600
+ });
17601
+ }
17589
17602
  if (statusCode !== undefined && TRANSIENT_STATUS_CODES.has(statusCode) || TRANSIENT_MODEL_ERROR_PATTERN.test(signal)) {
17590
17603
  return buildRecord({
17591
17604
  source: "provider",
@@ -24046,7 +24059,7 @@ function clearCriticalShownIds(sessionID) {
24046
24059
  async function rehydratePrSubscriptions(sessionID, directory) {
24047
24060
  const map = new Map;
24048
24061
  try {
24049
- const { listActive: listActive2 } = await import("./pr-subscriptions-2mngc0jg.js");
24062
+ const { listActive: listActive2 } = await import("./pr-subscriptions-qrc475pd.js");
24050
24063
  const records = await listActive2(directory);
24051
24064
  for (const record of records) {
24052
24065
  if (record.sessionID !== sessionID)
@@ -40593,9 +40606,9 @@ function hashContent(content) {
40593
40606
  return createHash27("sha1").update(content).digest("hex");
40594
40607
  }
40595
40608
  async function loadConfigForPolicyCurator(directory) {
40596
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-cp8sqp1b.js");
40609
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-v3z4wgje.js");
40597
40610
  try {
40598
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-wsab75et.js");
40611
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-35ythzj4.js");
40599
40612
  const { config: loadedConfig } = loadPluginConfigWithMeta2(directory);
40600
40613
  return KnowledgeConfigSchema2.parse(loadedConfig.knowledge ?? {});
40601
40614
  } catch {
@@ -43653,7 +43666,7 @@ async function resolveCuratorLLMDelegate(directory, mode, sessionId) {
43653
43666
  const seam = _internals38.createCuratorLLMDelegate;
43654
43667
  if (seam)
43655
43668
  return seam(directory, mode, sessionId);
43656
- const { createCuratorLLMDelegate } = await import("./curator-llm-factory-30n2fnef.js");
43669
+ const { createCuratorLLMDelegate } = await import("./curator-llm-factory-znjp0g9d.js");
43657
43670
  return createCuratorLLMDelegate(directory, mode, sessionId);
43658
43671
  }
43659
43672
  async function reconcileCloseTerminalStateForPlan(directory, targetPlan, options) {
@@ -44048,7 +44061,7 @@ async function runFinalizeStage(ctx) {
44048
44061
  }
44049
44062
  }
44050
44063
  try {
44051
- const { CuratorConfigSchema: CCS } = await import("./schema-cp8sqp1b.js");
44064
+ const { CuratorConfigSchema: CCS } = await import("./schema-v3z4wgje.js");
44052
44065
  const { config: pmLoadedConfig } = _internals38.loadPluginConfigWithMeta(ctx.directory);
44053
44066
  const curatorCfg = CCS.parse(pmLoadedConfig.curator ?? {});
44054
44067
  if (curatorCfg.enabled && curatorCfg.postmortem_enabled) {
@@ -44082,6 +44095,11 @@ var import_proper_lockfile4 = __toESM(require_proper_lockfile(), 1);
44082
44095
  import * as fs31 from "fs";
44083
44096
  import * as path51 from "path";
44084
44097
  init_logger();
44098
+
44099
+ // src/full-auto/evidence-names.ts
44100
+ var FULL_AUTO_OVERSIGHT_EVIDENCE_FILE_RE = /^full-auto-(\d+)\.json$/;
44101
+
44102
+ // src/full-auto/state.ts
44085
44103
  var lockfile4 = import_proper_lockfile4.default;
44086
44104
  var STATE_FILE2 = "full-auto-state.json";
44087
44105
  var STATE_LOCK_STALE_MS = 5000;
@@ -44484,6 +44502,47 @@ function isFullAutoRunActive(directory, sessionID) {
44484
44502
  const state = loadFullAutoRunState(directory, sessionID);
44485
44503
  return state?.status === "running";
44486
44504
  }
44505
+ function maxPersistedOversightEvidenceSequence(directory) {
44506
+ const evidenceRoot = validateSwarmPath(directory, "evidence");
44507
+ let phaseDirs;
44508
+ try {
44509
+ if (!fs31.existsSync(evidenceRoot))
44510
+ return 0;
44511
+ if (!fs31.statSync(evidenceRoot).isDirectory())
44512
+ return 0;
44513
+ phaseDirs = fs31.readdirSync(evidenceRoot, { withFileTypes: true });
44514
+ } catch (error2) {
44515
+ const msg = error2 instanceof Error ? error2.message : String(error2);
44516
+ error(`[full-auto/state] Failed to scan evidence root for sequence catch-up: ${msg}`);
44517
+ throw new Error("Full-Auto oversight evidence scan failed for sequence allocation");
44518
+ }
44519
+ let max = 0;
44520
+ for (const entry of phaseDirs) {
44521
+ if (!/^\d+$/.test(entry.name))
44522
+ continue;
44523
+ if (!entry.isDirectory())
44524
+ continue;
44525
+ let files;
44526
+ try {
44527
+ const phaseDir = validateSwarmPath(directory, path51.posix.join("evidence", entry.name));
44528
+ files = fs31.readdirSync(phaseDir);
44529
+ } catch (error2) {
44530
+ const msg = error2 instanceof Error ? error2.message : String(error2);
44531
+ error(`[full-auto/state] Failed to scan evidence phase dir ${entry.name} for sequence catch-up: ${msg}`);
44532
+ throw new Error("Full-Auto oversight evidence scan failed for sequence allocation");
44533
+ }
44534
+ for (const file of files) {
44535
+ const match = file.match(FULL_AUTO_OVERSIGHT_EVIDENCE_FILE_RE);
44536
+ if (!match)
44537
+ continue;
44538
+ const sequence = Number(match[1]);
44539
+ if (Number.isSafeInteger(sequence) && sequence > max) {
44540
+ max = sequence;
44541
+ }
44542
+ }
44543
+ }
44544
+ return max;
44545
+ }
44487
44546
  function recordFullAutoRecoveryProbe(directory, sessionID, probe) {
44488
44547
  return withStateLock(directory, () => {
44489
44548
  const persisted = _internals48.readPersisted(directory);
@@ -44497,7 +44556,12 @@ function recordFullAutoRecoveryProbe(directory, sessionID, probe) {
44497
44556
  return state;
44498
44557
  });
44499
44558
  }
44500
- var _internals48 = { readPersisted: readPersistedForMutation, writePersisted, lockfile: lockfile4 };
44559
+ var _internals48 = {
44560
+ readPersisted: readPersistedForMutation,
44561
+ writePersisted,
44562
+ lockfile: lockfile4,
44563
+ scanOversightEvidenceSequence: maxPersistedOversightEvidenceSequence
44564
+ };
44501
44565
 
44502
44566
  // src/retention/sweep.ts
44503
44567
  import * as fs34 from "fs";
@@ -45288,7 +45352,7 @@ function isTerminal(state) {
45288
45352
  import {
45289
45353
  linkSync,
45290
45354
  mkdirSync as mkdirSync14,
45291
- readdirSync as readdirSync5,
45355
+ readdirSync as readdirSync6,
45292
45356
  rmSync as rmSync6,
45293
45357
  statSync as statSync17,
45294
45358
  unlinkSync as unlinkSync11
@@ -45339,7 +45403,7 @@ async function listStaleSummaryIds(directory, retentionDays, options) {
45339
45403
  const summariesBasePath = validateSwarmPath(directory, "summaries");
45340
45404
  let retentionFiles = [];
45341
45405
  try {
45342
- retentionFiles = readdirSync5(summariesBasePath).filter((name) => name.endsWith(".json") && /^S.+$/.test(name.slice(0, -5)));
45406
+ retentionFiles = readdirSync6(summariesBasePath).filter((name) => name.endsWith(".json") && /^S.+$/.test(name.slice(0, -5)));
45343
45407
  } catch {
45344
45408
  retentionFiles = [];
45345
45409
  }
@@ -46234,7 +46298,7 @@ function serializeAgentSession(s) {
46234
46298
  }
46235
46299
  async function writeSnapshot(directory, state) {
46236
46300
  try {
46237
- const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-9gvgq52n.js");
46301
+ const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-h8cqcmve.js");
46238
46302
  await ensureSnapshotCoordinationReady(directory);
46239
46303
  const snapshot = {
46240
46304
  version: 3,
@@ -48100,7 +48164,7 @@ function emitHealth(directory, payload) {
48100
48164
  }
48101
48165
 
48102
48166
  // src/hooks/curator-postmortem.ts
48103
- import { existsSync as existsSync34, readdirSync as readdirSync8, readFileSync as readFileSync26 } from "fs";
48167
+ import { existsSync as existsSync34, readdirSync as readdirSync9, readFileSync as readFileSync26 } from "fs";
48104
48168
  import * as path64 from "path";
48105
48169
 
48106
48170
  // src/hooks/curator.ts
@@ -49244,7 +49308,7 @@ function planMerges(active, threshold, maxComparisons, maxMerges) {
49244
49308
  };
49245
49309
  }
49246
49310
  async function sweepActiveNearDuplicates(directory, options = {}) {
49247
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-wsab75et.js");
49311
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-35ythzj4.js");
49248
49312
  const { config } = loadPluginConfigWithMeta2(directory);
49249
49313
  const sweepConfig = config.learning?.dedup_sweep;
49250
49314
  if (sweepConfig?.enabled === false)
@@ -50368,7 +50432,7 @@ async function runCuratorPhase(directory, phase, agentsDispatched, config, knowl
50368
50432
  }
50369
50433
  if (config.skill_generation_enabled === true && skillCandidates.length > 0) {
50370
50434
  try {
50371
- const skillModule = await import("./skill-generator-f2j1jnqf.js");
50435
+ const skillModule = await import("./skill-generator-q6jzjcer.js");
50372
50436
  for (const cand of skillCandidates) {
50373
50437
  if (cand.confidence < (config.min_skill_confidence ?? DEFAULT_SKILL_MIN_CONFIDENCE)) {
50374
50438
  continue;
@@ -50840,7 +50904,7 @@ async function applyCuratorKnowledgeUpdates(directory, recommendations, knowledg
50840
50904
  } catch {}
50841
50905
  }
50842
50906
  if (contradictedEntries.length > 0 && knowledgeConfig.contradiction_threshold_action === "quarantine") {
50843
- const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-2c4svh7n.js");
50907
+ const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-h4wqey95.js");
50844
50908
  for (const { id } of contradictedEntries) {
50845
50909
  try {
50846
50910
  await maybeQuarantineOnContradiction(directory, id, knowledgeConfig.contradiction_quarantine_threshold, knowledgeConfig.contradiction_quarantine_window_days);
@@ -51398,7 +51462,7 @@ function collectRetrospectives(directory) {
51398
51462
  try {
51399
51463
  if (!existsSync34(evidenceDir))
51400
51464
  return results;
51401
- const retroDirs = readdirSync8(evidenceDir, { withFileTypes: true }).filter((e) => e.isDirectory() && e.name.startsWith("retro-")).slice(0, MAX_RETROSPECTIVES);
51465
+ const retroDirs = readdirSync9(evidenceDir, { withFileTypes: true }).filter((e) => e.isDirectory() && e.name.startsWith("retro-")).slice(0, MAX_RETROSPECTIVES);
51402
51466
  for (const entry of retroDirs) {
51403
51467
  const retroPath = path64.join(evidenceDir, entry.name, "evidence.json");
51404
51468
  if (existsSync34(retroPath)) {
@@ -51445,7 +51509,7 @@ function collectPendingProposals(directory) {
51445
51509
  const proposalsDir = path64.join(directory, ".swarm", "skills", "proposals");
51446
51510
  try {
51447
51511
  if (existsSync34(proposalsDir)) {
51448
- const proposalFiles = readdirSync8(proposalsDir).filter((e) => e.endsWith(".md") || e.endsWith(".json")).slice(0, MAX_PROPOSALS);
51512
+ const proposalFiles = readdirSync9(proposalsDir).filter((e) => e.endsWith(".md") || e.endsWith(".json")).slice(0, MAX_PROPOSALS);
51449
51513
  for (const entry of proposalFiles) {
51450
51514
  try {
51451
51515
  results.push({
@@ -51672,7 +51736,7 @@ async function runCuratorPostMortem(directory, options = {}) {
51672
51736
  warnings.push("Failed to collect knowledge summary.");
51673
51737
  }
51674
51738
  try {
51675
- const { getScanStatus } = await import("./scan-cursor-385k9dkp.js");
51739
+ const { getScanStatus } = await import("./scan-cursor-wfa7239s.js");
51676
51740
  const scanStatus = await getScanStatus(directory);
51677
51741
  if (scanStatus.remaining_estimate > 0) {
51678
51742
  warnings.push(`Fair scan: reviewed ${knowledgeSummary.length} entries this sweep (generation ${scanStatus.generation}); ${scanStatus.remaining_estimate} more eligible entries will be visited in future curation sweeps.`);
@@ -51844,9 +51908,9 @@ var _internals56 = {
51844
51908
  verifyPostMortemKnowledgeActions,
51845
51909
  repairPostMortemActions,
51846
51910
  loadDefaultKnowledgeConfig: async (directory) => {
51847
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-cp8sqp1b.js");
51911
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-v3z4wgje.js");
51848
51912
  try {
51849
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-wsab75et.js");
51913
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-35ythzj4.js");
51850
51914
  const loaded = loadPluginConfigWithMeta2(directory);
51851
51915
  return KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
51852
51916
  } catch {
@@ -51854,11 +51918,11 @@ var _internals56 = {
51854
51918
  }
51855
51919
  },
51856
51920
  applyCuratorKnowledgeUpdates: async (directory, recommendations, knowledgeConfig, generation) => {
51857
- const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-8yqmmn5w.js");
51921
+ const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-wr25srz6.js");
51858
51922
  return applyCuratorKnowledgeUpdates2(directory, recommendations, knowledgeConfig, generation);
51859
51923
  },
51860
51924
  checkHivePromotions: async (entries2, knowledgeConfig, directory) => {
51861
- const { checkHivePromotions } = await import("./hive-promoter-5naewxf9.js");
51925
+ const { checkHivePromotions } = await import("./hive-promoter-nphztsfb.js");
51862
51926
  return checkHivePromotions(entries2, knowledgeConfig, directory);
51863
51927
  },
51864
51928
  applyProposalTriage: async (directory, triage) => {
@@ -51867,7 +51931,7 @@ var _internals56 = {
51867
51931
  activateProposal,
51868
51932
  listSkills: listSkills2,
51869
51933
  sanitizeSlug
51870
- } = await import("./skill-generator-f2j1jnqf.js");
51934
+ } = await import("./skill-generator-q6jzjcer.js");
51871
51935
  const result = {
51872
51936
  approved: [],
51873
51937
  rejected: [],
@@ -51909,7 +51973,7 @@ var _internals56 = {
51909
51973
  return result;
51910
51974
  },
51911
51975
  readPriorDriftReports: async (directory) => {
51912
- const { readPriorDriftReports: readPriorDriftReports2 } = await import("./curator-drift-n4t27md5.js");
51976
+ const { readPriorDriftReports: readPriorDriftReports2 } = await import("./curator-drift-t95vqagz.js");
51913
51977
  return readPriorDriftReports2(directory);
51914
51978
  },
51915
51979
  readSwarmKnowledge: (directory) => readKnowledge(resolveSwarmKnowledgePath(directory))
@@ -60353,7 +60417,7 @@ function wireCloseInternals() {
60353
60417
  archiveEvidence,
60354
60418
  endAgentSession,
60355
60419
  flushAndDrainTelemetry: async () => {
60356
- const { flushAndDrainTelemetry } = await import("./telemetry-eq1cwq2x.js");
60420
+ const { flushAndDrainTelemetry } = await import("./telemetry-kvhe94gs.js");
60357
60421
  return flushAndDrainTelemetry();
60358
60422
  },
60359
60423
  finalizeContextTelemetry,
@@ -61712,9 +61776,9 @@ var _internals66 = {
61712
61776
  loadPluginConfigWithMeta,
61713
61777
  loadCuratorDeps: async () => {
61714
61778
  const [{ CuratorConfigSchema }, curator, { createCuratorLLMDelegate }] = await Promise.all([
61715
- import("./schema-cp8sqp1b.js"),
61716
- import("./curator-8yqmmn5w.js"),
61717
- import("./curator-llm-factory-30n2fnef.js")
61779
+ import("./schema-v3z4wgje.js"),
61780
+ import("./curator-wr25srz6.js"),
61781
+ import("./curator-llm-factory-znjp0g9d.js")
61718
61782
  ]);
61719
61783
  return { CuratorConfigSchema, curator, createCuratorLLMDelegate };
61720
61784
  }
@@ -63242,7 +63306,7 @@ ${USAGE10}`;
63242
63306
  // src/services/diagnose-service.ts
63243
63307
  init_package();
63244
63308
  import * as child_process4 from "child_process";
63245
- import { existsSync as existsSync46, readdirSync as readdirSync12, readFileSync as readFileSync37, statSync as statSync25 } from "fs";
63309
+ import { existsSync as existsSync46, readdirSync as readdirSync13, readFileSync as readFileSync37, statSync as statSync25 } from "fs";
63246
63310
  import * as path85 from "path";
63247
63311
  import { fileURLToPath as fileURLToPath2 } from "url";
63248
63312
 
@@ -64112,7 +64176,7 @@ async function computeCurationDiagnostics(directory, entries2) {
64112
64176
  let scanCompleted = false;
64113
64177
  let scanRemaining = 0;
64114
64178
  try {
64115
- const { getScanStatus } = await import("./scan-cursor-385k9dkp.js");
64179
+ const { getScanStatus } = await import("./scan-cursor-wfa7239s.js");
64116
64180
  const status = await getScanStatus(directory);
64117
64181
  scanGeneration = status.generation;
64118
64182
  scanCompleted = status.completed;
@@ -64120,19 +64184,19 @@ async function computeCurationDiagnostics(directory, entries2) {
64120
64184
  } catch {}
64121
64185
  let configMatch = null;
64122
64186
  try {
64123
- const { isLinked: isLinked2 } = await import("./knowledge-link-r9nx1eaj.js");
64187
+ const { isLinked: isLinked2 } = await import("./knowledge-link-h4pdcnya.js");
64124
64188
  if (isLinked2(directory)) {
64125
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-cp8sqp1b.js");
64189
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-v3z4wgje.js");
64126
64190
  let config;
64127
64191
  try {
64128
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-wsab75et.js");
64192
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-35ythzj4.js");
64129
64193
  const loaded = loadPluginConfigWithMeta2(directory);
64130
64194
  config = KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
64131
64195
  } catch {
64132
64196
  config = KnowledgeConfigSchema2.parse({});
64133
64197
  }
64134
64198
  const { cohortConfigFingerprint: cohortConfigFingerprint2 } = await import("./config-fingerprint-v22xh5a2.js");
64135
- const { buildConfigFingerprintInput: buildConfigFingerprintInput2, readCohortConfigFingerprint } = await import("./curation-policy-2rdbwc6a.js");
64199
+ const { buildConfigFingerprintInput: buildConfigFingerprintInput2, readCohortConfigFingerprint } = await import("./curation-policy-65ckmmd5.js");
64136
64200
  const currentFp = cohortConfigFingerprint2(buildConfigFingerprintInput2(config));
64137
64201
  const cohortFp = await readCohortConfigFingerprint(directory);
64138
64202
  configMatch = cohortFp === null ? null : currentFp === cohortFp;
@@ -64551,7 +64615,7 @@ async function checkPlanSync(directory, plan) {
64551
64615
  }
64552
64616
  async function checkConfigBackups(directory) {
64553
64617
  try {
64554
- const files = readdirSync12(directory);
64618
+ const files = readdirSync13(directory);
64555
64619
  const backupCount = files.filter((f) => /\.opencode-swarm\.yaml\.bak/.test(f)).length;
64556
64620
  if (backupCount <= 5) {
64557
64621
  return {
@@ -65236,7 +65300,7 @@ async function getDiagnoseData(directory, sessionID) {
65236
65300
  checks.push(await checkResidueInventory(directory));
65237
65301
  try {
65238
65302
  const evidenceDir = path85.join(directory, ".swarm", "evidence");
65239
- const snapshotFiles = existsSync46(evidenceDir) ? readdirSync12(evidenceDir).filter((f) => f.startsWith("agent-tools-") && f.endsWith(".json")) : [];
65303
+ const snapshotFiles = existsSync46(evidenceDir) ? readdirSync13(evidenceDir).filter((f) => f.startsWith("agent-tools-") && f.endsWith(".json")) : [];
65240
65304
  if (snapshotFiles.length > 0) {
65241
65305
  const latest = snapshotFiles.sort().pop();
65242
65306
  checks.push({
@@ -65581,7 +65645,7 @@ async function handleDoctorCommand(directory, args) {
65581
65645
  const result = runConfigDoctor(config, directory, planParallelizationEnabled);
65582
65646
  let output;
65583
65647
  if (enableAutoFix && result.hasAutoFixableIssues) {
65584
- const { runConfigDoctorWithFixes } = await import("./config-doctor-0pjjr594.js");
65648
+ const { runConfigDoctorWithFixes } = await import("./config-doctor-jec44ph0.js");
65585
65649
  const fixResult = await runConfigDoctorWithFixes(directory, config, true, {
65586
65650
  applyLossy: true
65587
65651
  });
@@ -65619,7 +65683,7 @@ async function handleDoctorCommand(directory, args) {
65619
65683
  `;
65620
65684
  }
65621
65685
  try {
65622
- const { runModelPreflight } = await import("./model-preflight-jbg35f6e.js");
65686
+ const { runModelPreflight } = await import("./model-preflight-t6megn5m.js");
65623
65687
  const preflight = await runModelPreflight(config, swarmState.opencodeClient, { generatedAgentNames: swarmState.generatedAgentNames });
65624
65688
  const missingSelection = preflight.resolutions.filter((resolution) => resolution.status === "missing-selection");
65625
65689
  const unresolved = preflight.catalogAvailable ? preflight.resolutions.filter((resolution) => resolution.status === "unresolved") : [];
@@ -65653,7 +65717,7 @@ async function handleDoctorCommand(directory, args) {
65653
65717
  }
65654
65718
  } catch {}
65655
65719
  try {
65656
- const { renderKnowledgeReceiptPhaseIdSection } = await import("./doctor-knowledge-receipt-phase-id-vk9c6t3k.js");
65720
+ const { renderKnowledgeReceiptPhaseIdSection } = await import("./doctor-knowledge-receipt-phase-id-hxyxqqya.js");
65657
65721
  output += await renderKnowledgeReceiptPhaseIdSection(directory, enableAutoFix);
65658
65722
  } catch {}
65659
65723
  const strayDirs = detectStraySwarmDirs(directory);
@@ -66550,7 +66614,7 @@ async function handleEvidenceCommand(directory, args) {
66550
66614
  return formatTaskEvidenceMarkdown(evidenceData);
66551
66615
  }
66552
66616
  async function handleEvidenceSummaryCommand(directory) {
66553
- const { buildEvidenceSummary } = await import("./evidence-summary-service-xpdx8se9.js");
66617
+ const { buildEvidenceSummary } = await import("./evidence-summary-service-pzr0aw1h.js");
66554
66618
  const artifact = await buildEvidenceSummary(directory);
66555
66619
  if (!artifact) {
66556
66620
  return "No plan found. Run `/swarm plan` to check plan status.";
@@ -67463,7 +67527,6 @@ ${line}`;
67463
67527
  }
67464
67528
 
67465
67529
  // src/full-auto/oversight.ts
67466
- var oversightSequenceCounter = 0;
67467
67530
  function remainingMs(deadlineMs) {
67468
67531
  return Math.max(0, deadlineMs - _internals73.now());
67469
67532
  }
@@ -67497,9 +67560,6 @@ async function cleanupEphemeralSessionWithinBudget(client, sessionId, deadlineMs
67497
67560
  }
67498
67561
  }
67499
67562
  var _internals73 = {
67500
- resetSequence: () => {
67501
- oversightSequenceCounter = 0;
67502
- },
67503
67563
  now: () => performance.now(),
67504
67564
  sleep,
67505
67565
  setTimer: setTimeout,
@@ -77476,7 +77536,7 @@ async function runSubstrateEvaluation(args) {
77476
77536
  }
77477
77537
 
77478
77538
  // src/services/harness-optimizer/lineage.ts
77479
- import { existsSync as existsSync55, mkdirSync as mkdirSync35, readdirSync as readdirSync15, readFileSync as readFileSync50 } from "fs";
77539
+ import { existsSync as existsSync55, mkdirSync as mkdirSync35, readdirSync as readdirSync16, readFileSync as readFileSync50 } from "fs";
77480
77540
  import * as path102 from "path";
77481
77541
  function lineageRoundDir(projectRoot, roundId) {
77482
77542
  return path102.join(projectRoot, ".swarm", "evolution", "harness-opt", "rounds", roundId);
@@ -77492,7 +77552,7 @@ function listHarnessOptLineage(projectRoot) {
77492
77552
  if (!existsSync55(roundsRoot))
77493
77553
  return [];
77494
77554
  const records = [];
77495
- for (const entry of readdirSync15(roundsRoot)) {
77555
+ for (const entry of readdirSync16(roundsRoot)) {
77496
77556
  const recordPath = path102.join(roundsRoot, entry, "record.json");
77497
77557
  if (!existsSync55(recordPath))
77498
77558
  continue;
@@ -81082,12 +81142,12 @@ var MIN_MAX_CYCLES = 1;
81082
81142
  var MAX_MAX_CYCLES = 5;
81083
81143
  async function readLatestLoopState(directory) {
81084
81144
  try {
81085
- const { readdirSync: readdirSync16, statSync: statSync32, readFileSync: readFileSync56 } = await import("fs");
81145
+ const { readdirSync: readdirSync17, statSync: statSync32, readFileSync: readFileSync56 } = await import("fs");
81086
81146
  const loopDir = `${directory}/.swarm/loop`;
81087
81147
  let latestMtime = 0;
81088
81148
  let latestPath = null;
81089
81149
  try {
81090
- const entries2 = readdirSync16(loopDir, { withFileTypes: true });
81150
+ const entries2 = readdirSync17(loopDir, { withFileTypes: true });
81091
81151
  for (const entry of entries2) {
81092
81152
  if (!entry.isDirectory())
81093
81153
  continue;
@@ -84746,8 +84806,8 @@ async function migrateMemoryFamily(destRoot, sourceRoot) {
84746
84806
  copyFileSync4(sourceDbPath, path116.join(backupDir, `memory.db.pre-merge-${stamp}`));
84747
84807
  } catch {}
84748
84808
  try {
84749
- const { readdirSync: readdirSync16, unlinkSync: rmFileSync } = await import("fs");
84750
- const backups = readdirSync16(backupDir).filter((f) => f.startsWith("memory.db.pre-merge-")).sort();
84809
+ const { readdirSync: readdirSync17, unlinkSync: rmFileSync } = await import("fs");
84810
+ const backups = readdirSync17(backupDir).filter((f) => f.startsWith("memory.db.pre-merge-")).sort();
84751
84811
  while (backups.length > MAX_BACKUPS) {
84752
84812
  const oldest = backups.shift();
84753
84813
  if (oldest)
@@ -91001,7 +91061,7 @@ function createCuratorLLMDelegate(directory, mode = "init", sessionId) {
91001
91061
  }
91002
91062
  const sdkOpts = signal ? { signal } : {};
91003
91063
  try {
91004
- const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-ywpn0arj.js");
91064
+ const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-akg9rdt1.js");
91005
91065
  const createResult = await client.session.create({
91006
91066
  ...sessionId ? {
91007
91067
  body: {
@@ -93338,7 +93398,7 @@ async function cancelPrFeedbackLoopUnlocked(directory, sessionID, reason) {
93338
93398
  clearedEvents: []
93339
93399
  };
93340
93400
  try {
93341
- const { cancelPrFeedbackPublication: cancelPrFeedbackPublication2 } = await import("./pr-workflow-gate-h4s5w5y0.js");
93401
+ const { cancelPrFeedbackPublication: cancelPrFeedbackPublication2 } = await import("./pr-workflow-gate-1hf06vw7.js");
93342
93402
  await cancelPrFeedbackPublication2(directory, sessionID, reason);
93343
93403
  } catch (err) {
93344
93404
  warn(`[pr-feedback-loop] cancelPrFeedbackPublication failed (fail-open): ${err instanceof Error ? err.message : String(err)}`);
@@ -107079,7 +107139,7 @@ async function runValidationWithTransientRetry(input, candidateContent, baseline
107079
107139
  if (!input.dispatcher) {
107080
107140
  throw new Error("no evaluation dispatcher available (cannot run validation)");
107081
107141
  }
107082
- const { createModelEvaluationExecutor: createModelEvaluationExecutor2 } = await import("./runner-3ynjanks.js");
107142
+ const { createModelEvaluationExecutor: createModelEvaluationExecutor2 } = await import("./runner-4hfmp1ag.js");
107083
107143
  const executor = createModelEvaluationExecutor2(input.dispatcher, input.sessionId);
107084
107144
  const result = await withProtectedSetIntegrity([evalInputRoot, ...protectedRoots(input.directory)], () => _internals128.evaluateCandidateV1({
107085
107145
  projectRoot: input.directory,
@@ -109708,7 +109768,7 @@ function buildDetailedHelp(commandName, entry) {
109708
109768
  async function handleHelpCommand(ctx) {
109709
109769
  const targetCommand = ctx.args.join(" ");
109710
109770
  if (!targetCommand) {
109711
- const { buildHelpText } = await import("./index-a5z8eqs0.js");
109771
+ const { buildHelpText } = await import("./index-6yb7fhah.js");
109712
109772
  return buildHelpText();
109713
109773
  }
109714
109774
  const tokens = targetCommand.split(/\s+/);
@@ -109722,7 +109782,7 @@ async function handleHelpCommand(ctx) {
109722
109782
  > Note: \`/swarm ${resolved.key}\` is a deprecated alias for \`/swarm ${aliasTarget}\`.` : detailed;
109723
109783
  }
109724
109784
  const similar = _internals27.findSimilarCommands(targetCommand);
109725
- const { buildHelpText: fullHelp } = await import("./index-a5z8eqs0.js");
109785
+ const { buildHelpText: fullHelp } = await import("./index-6yb7fhah.js");
109726
109786
  if (similar.length > 0) {
109727
109787
  return `Command '/swarm ${targetCommand}' not found.
109728
109788
 
@@ -110050,7 +110110,7 @@ var COMMAND_REGISTRY = {
110050
110110
  },
110051
110111
  "guardrail explain": {
110052
110112
  handler: async (ctx) => {
110053
- const { handleGuardrailExplain } = await import("./guardrail-explain-38hmb1s9.js");
110113
+ const { handleGuardrailExplain } = await import("./guardrail-explain-etssbwma.js");
110054
110114
  return handleGuardrailExplain(ctx.directory, ctx.args);
110055
110115
  },
110056
110116
  description: "Dry-run: show what the guardrails would do to a command or write target (executes nothing)",
@@ -110060,7 +110120,7 @@ var COMMAND_REGISTRY = {
110060
110120
  },
110061
110121
  "guardrail reset": {
110062
110122
  handler: async (ctx) => {
110063
- const { handleGuardrailReset } = await import("./guardrail-reset-3arv6rfs.js");
110123
+ const { handleGuardrailReset } = await import("./guardrail-reset-zdnshfqh.js");
110064
110124
  return handleGuardrailReset(ctx.args, ctx.sessionID);
110065
110125
  },
110066
110126
  description: "Reset one exact active invocation/action circuit after repair",
@@ -110081,7 +110141,7 @@ var COMMAND_REGISTRY = {
110081
110141
  },
110082
110142
  "guardrail-log": {
110083
110143
  handler: async (ctx) => {
110084
- const { handleGuardrailLog } = await import("./guardrail-log-y61ewh6d.js");
110144
+ const { handleGuardrailLog } = await import("./guardrail-log-055340sb.js");
110085
110145
  return handleGuardrailLog(ctx.directory, ctx.args);
110086
110146
  },
110087
110147
  description: "Read the guardrail decision log (use --blocks-only for blocks)",