opencode-swarm 7.193.0 → 7.194.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/README.md +1 -1
  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/background/pending-delegations.d.ts +8 -0
  5. package/dist/cli/{auto-checkpoint-taay16xe.js → auto-checkpoint-67dk8rjz.js} +5 -5
  6. package/dist/cli/{checkpoint-6229g3jq.js → checkpoint-jbqqyp5e.js} +9 -9
  7. package/dist/cli/{coder-settlement-hexmmefv.js → coder-settlement-a09t7mvx.js} +4 -4
  8. package/dist/cli/{config-doctor-3ghvthh5.js → config-doctor-dkp263xx.js} +8 -8
  9. package/dist/cli/{core-0k7t9fw0.js → core-stnmz1rg.js} +2 -2
  10. package/dist/cli/{curator-drift-a5142x0d.js → curator-drift-d1wedyed.js} +6 -6
  11. package/dist/cli/{curator-llm-factory-8gt3mvg9.js → curator-llm-factory-97dpqjz4.js} +26 -26
  12. package/dist/cli/{curator-kwwnkyr7.js → curator-mc0wcpvw.js} +26 -26
  13. package/dist/cli/{doctor-knowledge-receipt-phase-id-11nsf9tz.js → doctor-knowledge-receipt-phase-id-dfwx5jha.js} +5 -5
  14. package/dist/cli/{evidence-summary-service-y2ykc6ta.js → evidence-summary-service-k1shqefr.js} +10 -10
  15. package/dist/cli/{gate-evidence-cd5299js.js → gate-evidence-vw9y4gs6.js} +3 -3
  16. package/dist/cli/{guardrail-explain-hpgecr7x.js → guardrail-explain-24g3bsqw.js} +27 -27
  17. package/dist/cli/{guardrail-log-g6krx0s2.js → guardrail-log-vbeyx6nq.js} +4 -4
  18. package/dist/cli/{guardrail-reset-a3xv675m.js → guardrail-reset-jwtt15e3.js} +26 -26
  19. package/dist/cli/{hive-promoter-90svfzvs.js → hive-promoter-p9ad63mx.js} +26 -26
  20. package/dist/cli/{index-ngk8hpc3.js → index-0xe19j9g.js} +1 -1
  21. package/dist/cli/{index-py8wpe81.js → index-1jt12p3y.js} +1 -1
  22. package/dist/cli/{index-jxs9qnad.js → index-3dpb3kps.js} +1 -1
  23. package/dist/cli/{index-cs0p582p.js → index-43v5axvm.js} +2 -2
  24. package/dist/cli/{index-ma71x1aa.js → index-48h1yn6c.js} +1 -1
  25. package/dist/cli/{index-1dx5zyss.js → index-4ftg3p9n.js} +2 -2
  26. package/dist/cli/{index-bkpyff61.js → index-51dxek4p.js} +2 -2
  27. package/dist/cli/{index-bgtfvst1.js → index-6xppb1er.js} +1 -1
  28. package/dist/cli/{index-vbp35frb.js → index-7bfshvq1.js} +3 -3
  29. package/dist/cli/{index-r3mffz78.js → index-9bzgea2y.js} +3 -3
  30. package/dist/cli/{index-cpt38e0e.js → index-9kbnxb7v.js} +2 -2
  31. package/dist/cli/{index-he2nyr7x.js → index-9v43y7y6.js} +5 -5
  32. package/dist/cli/{index-tr47q89d.js → index-ajkdt5b8.js} +2 -2
  33. package/dist/cli/{index-5ev6f1gj.js → index-at34nry4.js} +2 -2
  34. package/dist/cli/{index-bg19b84s.js → index-cwr69qw7.js} +4 -4
  35. package/dist/cli/{index-x2phyvcv.js → index-d7pznffh.js} +2 -2
  36. package/dist/cli/{index-6dn16dre.js → index-dy7nztyp.js} +2 -2
  37. package/dist/cli/{index-4mq8r4be.js → index-ehab3z5y.js} +4 -4
  38. package/dist/cli/{index-4gacy6y6.js → index-f3ttgqak.js} +1 -1
  39. package/dist/cli/{index-rd9th57y.js → index-h14wpwpa.js} +4 -4
  40. package/dist/cli/{index-nz6ehpjn.js → index-jrs2qh6j.js} +1 -1
  41. package/dist/cli/{index-3xj89bf0.js → index-kp5qw5p4.js} +28 -28
  42. package/dist/cli/{index-ymnathfr.js → index-n5xwza76.js} +3 -3
  43. package/dist/cli/{index-1p24bfn2.js → index-r8mavcg6.js} +1 -1
  44. package/dist/cli/{index-5n760fzn.js → index-rpnkp79f.js} +6 -6
  45. package/dist/cli/{index-ntmnse4d.js → index-t6aae9wq.js} +1 -1
  46. package/dist/cli/{index-prvancd0.js → index-vfdkvvkf.js} +1 -1
  47. package/dist/cli/{index-jx80ed6g.js → index-vjytfp05.js} +90 -66
  48. package/dist/cli/{index-db786kn6.js → index-x7qeaa9y.js} +26 -26
  49. package/dist/cli/{index-d2emv8ap.js → index-y3n9ry9q.js} +1 -1
  50. package/dist/cli/{index-nktwf2xm.js → index-yfbk69b1.js} +3 -3
  51. package/dist/cli/index.js +27 -27
  52. package/dist/cli/{knowledge-escalator-2d7g3hs0.js → knowledge-escalator-g6dctrae.js} +8 -8
  53. package/dist/cli/{knowledge-events-hjeaevc9.js → knowledge-events-acdz0x2g.js} +6 -6
  54. package/dist/cli/{knowledge-store-g9cb2m0v.js → knowledge-store-vxtj4m59.js} +1 -1
  55. package/dist/cli/{knowledge-validator-dghf9pcj.js → knowledge-validator-b545vc9t.js} +2 -2
  56. package/dist/cli/{mcp-f5myvd7r.js → mcp-c3t18313.js} +1 -1
  57. package/dist/cli/{model-preflight-4w4wd6dj.js → model-preflight-r99c08re.js} +26 -26
  58. package/dist/cli/{pending-delegations-adm6gf3n.js → pending-delegations-57f3049j.js} +4 -2
  59. package/dist/cli/{pr-subscriptions-n1hks854.js → pr-subscriptions-5jb793xe.js} +1 -1
  60. package/dist/cli/{pr-workflow-gate-59cr6gve.js → pr-workflow-gate-n3x25ddw.js} +28 -26
  61. package/dist/cli/{scan-cursor-t26xmfhd.js → scan-cursor-s9mazw82.js} +2 -2
  62. package/dist/cli/{schema-cr120ar5.js → schema-7czxpvwm.js} +2 -2
  63. package/dist/cli/{scope-persistence-mrnz8j43.js → scope-persistence-y0ebqyjm.js} +6 -6
  64. package/dist/cli/{server-mwk6zn83.js → server-m10e78ey.js} +26 -26
  65. package/dist/cli/{skill-generator-svs4k0g8.js → skill-generator-kzw1dcba.js} +9 -9
  66. package/dist/cli/{snapshot-coordination-init-xzrahhsb.js → snapshot-coordination-init-z1aqsvn4.js} +26 -26
  67. package/dist/cli/{speckit-checkoff-g2qrb1tn.js → speckit-checkoff-1g3vzywn.js} +4 -4
  68. package/dist/cli/{worktree-collision-ownership-d145wmpg.js → worktree-collision-ownership-d0etv08a.js} +2 -2
  69. package/dist/cli/{worktree-isolation-pt1rws6p.js → worktree-isolation-dj2qw13p.js} +26 -26
  70. package/dist/commands/registry.d.ts +1 -1
  71. package/dist/epic/start.d.ts +8 -5
  72. package/dist/hooks/pr-workflow-gate.d.ts +37 -0
  73. package/dist/host/v2/session-client.d.ts +77 -0
  74. package/dist/host/v2/types.d.ts +7 -5
  75. package/dist/index.js +13 -11
  76. package/dist/tools/pr-workflow-status.d.ts +24 -1
  77. package/package.json +1 -1
@@ -8,14 +8,14 @@ import {
8
8
  protectedRoots,
9
9
  redactDecisionLineForArchive,
10
10
  stableCanonicalStringify
11
- } from "./index-bkpyff61.js";
11
+ } from "./index-51dxek4p.js";
12
12
  import {
13
13
  detectStraySwarmDirs,
14
14
  readDoctorArtifact,
15
15
  removeStraySwarmDir,
16
16
  resolvePlanParallelizationFlag,
17
17
  runConfigDoctor
18
- } from "./index-4mq8r4be.js";
18
+ } from "./index-ehab3z5y.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-ma71x1aa.js";
30
+ } from "./index-48h1yn6c.js";
31
31
  import {
32
32
  JAVA_SYMBOL_GRAMMAR,
33
33
  LANGUAGE_REGISTRY,
@@ -89,7 +89,7 @@ import {
89
89
  alreadyCuratedThisGeneration,
90
90
  claimNextScanBatch,
91
91
  resolveCohortId
92
- } from "./index-prvancd0.js";
92
+ } from "./index-vfdkvvkf.js";
93
93
  import {
94
94
  CURATOR_CONSOLIDATION_PROMPT,
95
95
  CURATOR_INIT_PROMPT,
@@ -108,13 +108,13 @@ import {
108
108
  getGroupCommitWriter,
109
109
  importLegacyJsonl,
110
110
  readPriorDriftReports
111
- } from "./index-d2emv8ap.js";
111
+ } from "./index-y3n9ry9q.js";
112
112
  import {
113
113
  assertNoUnsettledCoderDispatch,
114
114
  listCoderSettlementWalStates,
115
115
  recoverCoderSettlement,
116
116
  recoverStaleCoderSettlements
117
- } from "./index-ymnathfr.js";
117
+ } from "./index-n5xwza76.js";
118
118
  import {
119
119
  BUNDLED_PROJECT_SKILL_ROOT,
120
120
  DEFAULT_SKILL_MIN_CONFIDENCE,
@@ -135,11 +135,11 @@ import {
135
135
  retireSkill,
136
136
  selectCandidateEntries,
137
137
  syncBundledProjectSkillsIfMissingAsync
138
- } from "./index-r3mffz78.js";
138
+ } from "./index-9bzgea2y.js";
139
139
  import {
140
140
  buildEscalationBriefing,
141
141
  readRecentEscalations
142
- } from "./index-5n760fzn.js";
142
+ } from "./index-rpnkp79f.js";
143
143
  import {
144
144
  parsePorcelainV2Snapshot,
145
145
  resolveCommitCountSince,
@@ -223,7 +223,7 @@ import {
223
223
  swarmOverwriteCandidates,
224
224
  trackedDirtyCandidates,
225
225
  transientBackoff
226
- } from "./index-nktwf2xm.js";
226
+ } from "./index-yfbk69b1.js";
227
227
  import {
228
228
  EPIC_MODE_CONFIG_DISABLED_MESSAGE,
229
229
  PlanRecoverySupersededError,
@@ -255,7 +255,7 @@ import {
255
255
  updateEpicRecord,
256
256
  updateTaskStatus,
257
257
  withPlanLifecycleLock
258
- } from "./index-he2nyr7x.js";
258
+ } from "./index-9v43y7y6.js";
259
259
  import {
260
260
  containsControlChars,
261
261
  containsPathTraversal,
@@ -271,7 +271,7 @@ import {
271
271
  resolveSpeckitProjection,
272
272
  validateSpeckit,
273
273
  writeProjectedSpecSync
274
- } from "./index-bgtfvst1.js";
274
+ } from "./index-6xppb1er.js";
275
275
  import {
276
276
  clearWorktreeMergeStatus,
277
277
  getAllWorktreeMergeFailures,
@@ -303,7 +303,7 @@ import {
303
303
  transitionTaskWorkflowEvidenceWithStatus,
304
304
  withTaskEvidenceTransaction,
305
305
  writeWorkflowWalFile
306
- } from "./index-nz6ehpjn.js";
306
+ } from "./index-jrs2qh6j.js";
307
307
  import {
308
308
  isPathUnderSwarmWorktreeBase,
309
309
  listLiveLaneOwners,
@@ -312,7 +312,7 @@ import {
312
312
  recordLiveLaneOwner,
313
313
  removeWorktree,
314
314
  resolveWorktreeBaseDir
315
- } from "./index-x2phyvcv.js";
315
+ } from "./index-d7pznffh.js";
316
316
  import {
317
317
  GitBinaryMissingError,
318
318
  GitSpawnCwdError,
@@ -354,7 +354,7 @@ import {
354
354
  scanBackgroundCoderReservationsForAdmission,
355
355
  scanDelegationsForRecovery,
356
356
  sweepStaleDelegations
357
- } from "./index-6dn16dre.js";
357
+ } from "./index-dy7nztyp.js";
358
358
  import {
359
359
  MAX_EVENT_LOG_ENTRIES,
360
360
  _internals,
@@ -366,7 +366,7 @@ import {
366
366
  recordHiveKnowledgeEvent,
367
367
  recordKnowledgeEvent,
368
368
  resolveKnowledgeEventsPath
369
- } from "./index-tr47q89d.js";
369
+ } from "./index-ajkdt5b8.js";
370
370
  import {
371
371
  commitDisplayedMembership,
372
372
  commitEmptyRetrieval,
@@ -379,7 +379,7 @@ import {
379
379
  queryLiveMemberships,
380
380
  reconcilePhaseClose,
381
381
  recordPhaseCloseIntent
382
- } from "./index-cs0p582p.js";
382
+ } from "./index-43v5axvm.js";
383
383
  import {
384
384
  sanitizeContextText
385
385
  } from "./index-m9zzj4ee.js";
@@ -410,7 +410,7 @@ import {
410
410
  validateActionableFields,
411
411
  validateLesson,
412
412
  validateSkillPath
413
- } from "./index-jxs9qnad.js";
413
+ } from "./index-3dpb3kps.js";
414
414
  import {
415
415
  MAX_CURATION_PROPOSALS,
416
416
  authorizeCuration,
@@ -421,7 +421,7 @@ import {
421
421
  } from "./index-rtry5xyf.js";
422
422
  import {
423
423
  resolveWorktreeIsolationConfig
424
- } from "./index-vbp35frb.js";
424
+ } from "./index-7bfshvq1.js";
425
425
  import {
426
426
  RetrospectiveEvidenceSchema
427
427
  } from "./index-g22dps7x.js";
@@ -433,7 +433,7 @@ import {
433
433
  clearScopeBindings,
434
434
  readAuthoritativeScopeBindingSet,
435
435
  readDeclaredScopeFilesFromBindings
436
- } from "./index-1p24bfn2.js";
436
+ } from "./index-r8mavcg6.js";
437
437
  import {
438
438
  approvedSnapshotCoversPlan,
439
439
  clearPlanLedgerForReset,
@@ -450,7 +450,7 @@ import {
450
450
  replayFromLedgerWithStatus,
451
451
  resolvePlanningProfile,
452
452
  takeSnapshotEvent
453
- } from "./index-5ev6f1gj.js";
453
+ } from "./index-at34nry4.js";
454
454
  import {
455
455
  CORE_EVENT_LOCKED,
456
456
  appendCoreEventSync,
@@ -539,7 +539,7 @@ import {
539
539
  transactFile,
540
540
  transactKnowledge,
541
541
  wordBigrams
542
- } from "./index-bg19b84s.js";
542
+ } from "./index-cwr69qw7.js";
543
543
  import {
544
544
  readTailJsonl,
545
545
  readTailJsonlDetailed,
@@ -624,7 +624,7 @@ import {
624
624
  loadPluginConfig,
625
625
  loadPluginConfigWithMeta,
626
626
  resolveEpicConfig
627
- } from "./index-ngk8hpc3.js";
627
+ } from "./index-0xe19j9g.js";
628
628
  import {
629
629
  GIT_BINARY_ENV_VAR,
630
630
  addDeferredWarning,
@@ -657,7 +657,7 @@ import {
657
657
  resolveContextWindow,
658
658
  resolveGeneratedAgentRole,
659
659
  stripKnownSwarmPrefix
660
- } from "./index-1dx5zyss.js";
660
+ } from "./index-4ftg3p9n.js";
661
661
  import {
662
662
  AGENT_TOOL_MAP,
663
663
  ALL_AGENT_NAMES,
@@ -683,7 +683,7 @@ import {
683
683
  init_agent_names,
684
684
  init_constants,
685
685
  init_tool_metadata
686
- } from "./index-py8wpe81.js";
686
+ } from "./index-1jt12p3y.js";
687
687
  import {
688
688
  KNOWLEDGE_SCHEMA_VERSION,
689
689
  OUTCOME_BLOCK_THRESHOLD,
@@ -3457,7 +3457,7 @@ async function importLegacyPrWorkflowGateStateIfNeeded(directory, sessionID, all
3457
3457
  return null;
3458
3458
  throw error2;
3459
3459
  }
3460
- const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-59cr6gve.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
3460
+ const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-n3x25ddw.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
3461
3461
  if (!legacy)
3462
3462
  return null;
3463
3463
  const namespace = workflowGateStateCoordinationNamespace(sessionID);
@@ -3544,7 +3544,7 @@ async function deleteStateWhileLocked(directory, sessionID, options = {}) {
3544
3544
  let recoveryState = null;
3545
3545
  if (!currentAuthoritative) {
3546
3546
  if (options.allowSalvagedRead) {
3547
- const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-59cr6gve.js");
3547
+ const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-n3x25ddw.js");
3548
3548
  recoveryState = (await readPrWorkflowGateStateForRecovery(directory, normalizedSessionID))?.state ?? null;
3549
3549
  }
3550
3550
  if (!recoveryState) {
@@ -11267,7 +11267,7 @@ function isLaneOwnedByCurrentSession(branchName, expectedSessionId) {
11267
11267
  return extracted === expectedSessionId;
11268
11268
  }
11269
11269
  async function inspectStandardWorktreeCollisionOwnership(identity) {
11270
- const collisionOwnership = await import("./worktree-collision-ownership-d145wmpg.js");
11270
+ const collisionOwnership = await import("./worktree-collision-ownership-d0etv08a.js");
11271
11271
  return collisionOwnership.inspectStandardWorktreeCollisionOwnership(identity);
11272
11272
  }
11273
11273
  async function runRecoveryGit(directory, args, timeoutMs = 15000) {
@@ -11695,7 +11695,7 @@ async function precreateStandardWorktreeSession(args) {
11695
11695
  const laneProfile = computeLaneRuntimeProfile(worktreeConfig.runtime_isolation, laneIndex, handle.worktreePath);
11696
11696
  if (laneProfile) {
11697
11697
  try {
11698
- const { writeLaneProfileToDiskReal } = await import("./core-0k7t9fw0.js");
11698
+ const { writeLaneProfileToDiskReal } = await import("./core-stnmz1rg.js");
11699
11699
  await writeLaneProfileToDiskReal(handle.worktreePath, laneProfile.laneIndex, laneProfile.envOverrides);
11700
11700
  } catch {}
11701
11701
  }
@@ -12689,7 +12689,7 @@ async function finishStandardWorktreeDispatch(directory, dispatch, config, callI
12689
12689
  }
12690
12690
  clearWorktreeMergeStatus(statusKey);
12691
12691
  try {
12692
- const { removeLaneProfileFromDiskReal } = await import("./core-0k7t9fw0.js");
12692
+ const { removeLaneProfileFromDiskReal } = await import("./core-stnmz1rg.js");
12693
12693
  await removeLaneProfileFromDiskReal(dispatch.handle.worktreePath, dispatch.laneIndex);
12694
12694
  } catch {}
12695
12695
  const state = serializationStateBySessionID.get(dispatch.parentSessionID);
@@ -29031,7 +29031,7 @@ function clearCriticalShownIds(sessionID) {
29031
29031
  async function rehydratePrSubscriptions(sessionID, directory) {
29032
29032
  const map = new Map;
29033
29033
  try {
29034
- const { listActive: listActive2 } = await import("./pr-subscriptions-n1hks854.js");
29034
+ const { listActive: listActive2 } = await import("./pr-subscriptions-5jb793xe.js");
29035
29035
  const records = await listActive2(directory);
29036
29036
  for (const record of records) {
29037
29037
  if (record.sessionID !== sessionID)
@@ -36175,6 +36175,29 @@ function derivePrReviewCandidateInventory2(directory, state, ctx) {
36175
36175
  ctx.candidateInventory = candidateIds.length > 0 ? candidateIds.sort() : [PR_REVIEW_CLEAN_SENTINEL_ID];
36176
36176
  return ctx.candidateInventory;
36177
36177
  }
36178
+ var PR_REVIEW_STATUS_REASON_MAX_CHARS = 240;
36179
+ function boundPrReviewStatusReason(error2) {
36180
+ const message = error2 instanceof Error ? error2.message : String(error2 ?? "unknown error");
36181
+ const cleaned = message.replace(/[\p{Cc}]/gu, " ").replace(/[`<>]/g, " ").replace(/\s+/g, " ").trim();
36182
+ return cleaned.length > PR_REVIEW_STATUS_REASON_MAX_CHARS ? `${cleaned.slice(0, PR_REVIEW_STATUS_REASON_MAX_CHARS)}\u2026` : cleaned;
36183
+ }
36184
+ async function derivePrReviewCandidateInventoryForStatus(directory, state) {
36185
+ if (!state.prHeadSha) {
36186
+ return {
36187
+ state: "unavailable",
36188
+ reason: "active PR_REVIEW workflow is not bound to a PR head"
36189
+ };
36190
+ }
36191
+ try {
36192
+ const ctx = await createPrReviewGateContext2(directory, state);
36193
+ return {
36194
+ state: "available",
36195
+ inventory: derivePrReviewCandidateInventory2(directory, state, ctx)
36196
+ };
36197
+ } catch (error2) {
36198
+ return { state: "unavailable", reason: boundPrReviewStatusReason(error2) };
36199
+ }
36200
+ }
36178
36201
  function appendBoundedCandidateIssue(issues, message) {
36179
36202
  if (issues.length < MAX_CANDIDATE_ISSUES_PER_ARTIFACT - 1) {
36180
36203
  issues.push(message.slice(0, MAX_BASE_COVERAGE_DIAGNOSTIC_CHARS2));
@@ -37492,7 +37515,8 @@ async function readPrWorkflowGateStateForRecovery(directory, sessionID) {
37492
37515
  schemaErrors,
37493
37516
  disclosure,
37494
37517
  revisionSalvageable: salvagedRevision.success,
37495
- armedShapeUnreadable
37518
+ armedShapeUnreadable,
37519
+ prReviewProjectionDropped: true
37496
37520
  };
37497
37521
  }
37498
37522
 
@@ -45885,9 +45909,9 @@ function hashContent(content) {
45885
45909
  return createHash30("sha1").update(content).digest("hex");
45886
45910
  }
45887
45911
  async function loadConfigForPolicyCurator(directory) {
45888
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-cr120ar5.js");
45912
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-7czxpvwm.js");
45889
45913
  try {
45890
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rd9th57y.js");
45914
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-h14wpwpa.js");
45891
45915
  const { config: loadedConfig } = loadPluginConfigWithMeta2(directory);
45892
45916
  return KnowledgeConfigSchema2.parse(loadedConfig.knowledge ?? {});
45893
45917
  } catch {
@@ -48945,7 +48969,7 @@ async function resolveCuratorLLMDelegate(directory, mode, sessionId) {
48945
48969
  const seam = _internals50.createCuratorLLMDelegate;
48946
48970
  if (seam)
48947
48971
  return seam(directory, mode, sessionId);
48948
- const { createCuratorLLMDelegate } = await import("./curator-llm-factory-8gt3mvg9.js");
48972
+ const { createCuratorLLMDelegate } = await import("./curator-llm-factory-97dpqjz4.js");
48949
48973
  return createCuratorLLMDelegate(directory, mode, sessionId);
48950
48974
  }
48951
48975
  async function reconcileCloseTerminalStateForPlan(directory, targetPlan, options) {
@@ -49340,7 +49364,7 @@ async function runFinalizeStage(ctx) {
49340
49364
  }
49341
49365
  }
49342
49366
  try {
49343
- const { CuratorConfigSchema: CCS } = await import("./schema-cr120ar5.js");
49367
+ const { CuratorConfigSchema: CCS } = await import("./schema-7czxpvwm.js");
49344
49368
  const { config: pmLoadedConfig } = _internals50.loadPluginConfigWithMeta(ctx.directory);
49345
49369
  const curatorCfg = CCS.parse(pmLoadedConfig.curator ?? {});
49346
49370
  if (curatorCfg.enabled && curatorCfg.postmortem_enabled) {
@@ -53373,7 +53397,7 @@ function serializeAgentSession(s) {
53373
53397
  }
53374
53398
  async function writeSnapshot(directory, state) {
53375
53399
  try {
53376
- const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-xzrahhsb.js");
53400
+ const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-z1aqsvn4.js");
53377
53401
  await ensureSnapshotCoordinationReady(directory);
53378
53402
  const snapshot = {
53379
53403
  version: 3,
@@ -56394,7 +56418,7 @@ function planMerges(active, threshold, maxComparisons, maxMerges) {
56394
56418
  };
56395
56419
  }
56396
56420
  async function sweepActiveNearDuplicates(directory, options = {}) {
56397
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rd9th57y.js");
56421
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-h14wpwpa.js");
56398
56422
  const { config } = loadPluginConfigWithMeta2(directory);
56399
56423
  const sweepConfig = config.learning?.dedup_sweep;
56400
56424
  if (sweepConfig?.enabled === false)
@@ -57518,7 +57542,7 @@ async function runCuratorPhase(directory, phase, agentsDispatched, config, knowl
57518
57542
  }
57519
57543
  if (config.skill_generation_enabled === true && skillCandidates.length > 0) {
57520
57544
  try {
57521
- const skillModule = await import("./skill-generator-svs4k0g8.js");
57545
+ const skillModule = await import("./skill-generator-kzw1dcba.js");
57522
57546
  for (const cand of skillCandidates) {
57523
57547
  if (cand.confidence < (config.min_skill_confidence ?? DEFAULT_SKILL_MIN_CONFIDENCE)) {
57524
57548
  continue;
@@ -57990,7 +58014,7 @@ async function applyCuratorKnowledgeUpdates(directory, recommendations, knowledg
57990
58014
  } catch {}
57991
58015
  }
57992
58016
  if (contradictedEntries.length > 0 && knowledgeConfig.contradiction_threshold_action === "quarantine") {
57993
- const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-2d7g3hs0.js");
58017
+ const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-g6dctrae.js");
57994
58018
  for (const { id } of contradictedEntries) {
57995
58019
  try {
57996
58020
  await maybeQuarantineOnContradiction(directory, id, knowledgeConfig.contradiction_quarantine_threshold, knowledgeConfig.contradiction_quarantine_window_days);
@@ -58822,7 +58846,7 @@ async function runCuratorPostMortem(directory, options = {}) {
58822
58846
  warnings.push("Failed to collect knowledge summary.");
58823
58847
  }
58824
58848
  try {
58825
- const { getScanStatus } = await import("./scan-cursor-t26xmfhd.js");
58849
+ const { getScanStatus } = await import("./scan-cursor-s9mazw82.js");
58826
58850
  const scanStatus = await getScanStatus(directory);
58827
58851
  if (scanStatus.remaining_estimate > 0) {
58828
58852
  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.`);
@@ -58994,9 +59018,9 @@ var _internals72 = {
58994
59018
  verifyPostMortemKnowledgeActions,
58995
59019
  repairPostMortemActions,
58996
59020
  loadDefaultKnowledgeConfig: async (directory) => {
58997
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-cr120ar5.js");
59021
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-7czxpvwm.js");
58998
59022
  try {
58999
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rd9th57y.js");
59023
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-h14wpwpa.js");
59000
59024
  const loaded = loadPluginConfigWithMeta2(directory);
59001
59025
  return KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
59002
59026
  } catch {
@@ -59004,11 +59028,11 @@ var _internals72 = {
59004
59028
  }
59005
59029
  },
59006
59030
  applyCuratorKnowledgeUpdates: async (directory, recommendations, knowledgeConfig, generation) => {
59007
- const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-kwwnkyr7.js");
59031
+ const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-mc0wcpvw.js");
59008
59032
  return applyCuratorKnowledgeUpdates2(directory, recommendations, knowledgeConfig, generation);
59009
59033
  },
59010
59034
  checkHivePromotions: async (entries2, knowledgeConfig, directory) => {
59011
- const { checkHivePromotions } = await import("./hive-promoter-90svfzvs.js");
59035
+ const { checkHivePromotions } = await import("./hive-promoter-p9ad63mx.js");
59012
59036
  return checkHivePromotions(entries2, knowledgeConfig, directory);
59013
59037
  },
59014
59038
  applyProposalTriage: async (directory, triage) => {
@@ -59017,7 +59041,7 @@ var _internals72 = {
59017
59041
  activateProposal,
59018
59042
  listSkills: listSkills2,
59019
59043
  sanitizeSlug
59020
- } = await import("./skill-generator-svs4k0g8.js");
59044
+ } = await import("./skill-generator-kzw1dcba.js");
59021
59045
  const result = {
59022
59046
  approved: [],
59023
59047
  rejected: [],
@@ -59059,7 +59083,7 @@ var _internals72 = {
59059
59083
  return result;
59060
59084
  },
59061
59085
  readPriorDriftReports: async (directory) => {
59062
- const { readPriorDriftReports: readPriorDriftReports2 } = await import("./curator-drift-a5142x0d.js");
59086
+ const { readPriorDriftReports: readPriorDriftReports2 } = await import("./curator-drift-d1wedyed.js");
59063
59087
  return readPriorDriftReports2(directory);
59064
59088
  },
59065
59089
  readSwarmKnowledge: (directory) => readKnowledge(resolveSwarmKnowledgePath(directory))
@@ -69329,9 +69353,9 @@ var _internals80 = {
69329
69353
  loadPluginConfigWithMeta,
69330
69354
  loadCuratorDeps: async () => {
69331
69355
  const [{ CuratorConfigSchema }, curator, { createCuratorLLMDelegate }] = await Promise.all([
69332
- import("./schema-cr120ar5.js"),
69333
- import("./curator-kwwnkyr7.js"),
69334
- import("./curator-llm-factory-8gt3mvg9.js")
69356
+ import("./schema-7czxpvwm.js"),
69357
+ import("./curator-mc0wcpvw.js"),
69358
+ import("./curator-llm-factory-97dpqjz4.js")
69335
69359
  ]);
69336
69360
  return { CuratorConfigSchema, curator, createCuratorLLMDelegate };
69337
69361
  }
@@ -71781,7 +71805,7 @@ async function computeCurationDiagnostics(directory, entries2) {
71781
71805
  let scanCompleted = false;
71782
71806
  let scanRemaining = 0;
71783
71807
  try {
71784
- const { getScanStatus } = await import("./scan-cursor-t26xmfhd.js");
71808
+ const { getScanStatus } = await import("./scan-cursor-s9mazw82.js");
71785
71809
  const status = await getScanStatus(directory);
71786
71810
  scanGeneration = status.generation;
71787
71811
  scanCompleted = status.completed;
@@ -71791,10 +71815,10 @@ async function computeCurationDiagnostics(directory, entries2) {
71791
71815
  try {
71792
71816
  const { isLinked: isLinked2 } = await import("./knowledge-link-srnt95wh.js");
71793
71817
  if (isLinked2(directory)) {
71794
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-cr120ar5.js");
71818
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-7czxpvwm.js");
71795
71819
  let config;
71796
71820
  try {
71797
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rd9th57y.js");
71821
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-h14wpwpa.js");
71798
71822
  const loaded = loadPluginConfigWithMeta2(directory);
71799
71823
  config = KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
71800
71824
  } catch {
@@ -73250,7 +73274,7 @@ async function handleDoctorCommand(directory, args) {
73250
73274
  const result = runConfigDoctor(config, directory, planParallelizationEnabled);
73251
73275
  let output;
73252
73276
  if (enableAutoFix && result.hasAutoFixableIssues) {
73253
- const { runConfigDoctorWithFixes } = await import("./config-doctor-3ghvthh5.js");
73277
+ const { runConfigDoctorWithFixes } = await import("./config-doctor-dkp263xx.js");
73254
73278
  const fixResult = await runConfigDoctorWithFixes(directory, config, true, {
73255
73279
  applyLossy: true
73256
73280
  });
@@ -73288,7 +73312,7 @@ async function handleDoctorCommand(directory, args) {
73288
73312
  `;
73289
73313
  }
73290
73314
  try {
73291
- const { runModelPreflight } = await import("./model-preflight-4w4wd6dj.js");
73315
+ const { runModelPreflight } = await import("./model-preflight-r99c08re.js");
73292
73316
  const preflight = await runModelPreflight(config, swarmState.opencodeClient, { generatedAgentNames: swarmState.generatedAgentNames });
73293
73317
  const missingSelection = preflight.resolutions.filter((resolution) => resolution.status === "missing-selection");
73294
73318
  const unresolved = preflight.catalogAvailable ? preflight.resolutions.filter((resolution) => resolution.status === "unresolved") : [];
@@ -73322,7 +73346,7 @@ async function handleDoctorCommand(directory, args) {
73322
73346
  }
73323
73347
  } catch {}
73324
73348
  try {
73325
- const { renderKnowledgeReceiptPhaseIdSection } = await import("./doctor-knowledge-receipt-phase-id-11nsf9tz.js");
73349
+ const { renderKnowledgeReceiptPhaseIdSection } = await import("./doctor-knowledge-receipt-phase-id-dfwx5jha.js");
73326
73350
  output += await renderKnowledgeReceiptPhaseIdSection(directory, enableAutoFix);
73327
73351
  } catch {}
73328
73352
  const strayDirs = detectStraySwarmDirs(directory);
@@ -73818,7 +73842,7 @@ var BACKGROUND_DELEGATION_NAMESPACE = "background.pending-delegation";
73818
73842
  var LEGACY_LEAN_STATE_FILE = "turbo-state.json";
73819
73843
  var MAX_LEGACY_LEAN_STATE_BYTES = 4 * 1024 * 1024;
73820
73844
  var UNSETTLED_WAL_STATES2 = new Set(["DISPATCHED", "PREPARED", "unreadable"]);
73821
- var EPIC_HOST_UNSUPPORTED_MESSAGE = "This OpenCode host gives the plugin no SDK client (OpenCode 2 does not yet, see docs/host/v2-hook-inventory.md). Epic needs it for worktree-isolated coders and for the epic_phase_review reviewer/critic, so an epic here could neither run its coders nor complete a phase. Run the plan in Balanced, or use an OpenCode 1.x host (1.18.29+).";
73845
+ var EPIC_HOST_UNSUPPORTED_MESSAGE = "This OpenCode host gives the plugin no SDK client. Epic needs it for worktree-isolated coders and for the epic_phase_review reviewer/critic, so an epic here could neither run its coders nor complete a phase. Run the plan in Balanced, or use an OpenCode 1.x host (1.18.29+). (On OpenCode 2 the v2 adapter now ships a session-capable client, so this refusal no longer fires there \u2014 Epic on v2 is held by the #3169 child-session placement work instead.)";
73822
73846
  function refused2(reason, details, sizing) {
73823
73847
  return { status: "refused", reason, details, sizing };
73824
73848
  }
@@ -75339,7 +75363,7 @@ async function handleEvidenceCommand(directory, args) {
75339
75363
  return formatTaskEvidenceMarkdown(evidenceData);
75340
75364
  }
75341
75365
  async function handleEvidenceSummaryCommand(directory) {
75342
- const { buildEvidenceSummary } = await import("./evidence-summary-service-y2ykc6ta.js");
75366
+ const { buildEvidenceSummary } = await import("./evidence-summary-service-k1shqefr.js");
75343
75367
  const artifact = await buildEvidenceSummary(directory);
75344
75368
  if (!artifact) {
75345
75369
  return "No plan found. Run `/swarm plan` to check plan status.";
@@ -99805,7 +99829,7 @@ function createCuratorLLMDelegate(directory, mode = "init", sessionId) {
99805
99829
  }
99806
99830
  const sdkOpts = signal ? { signal } : {};
99807
99831
  try {
99808
- const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-db786kn6.js");
99832
+ const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-x7qeaa9y.js");
99809
99833
  const createResult = await client.session.create({
99810
99834
  ...sessionId ? {
99811
99835
  body: {
@@ -101903,7 +101927,7 @@ async function cancelPrFeedbackLoopUnlocked(directory, sessionID, reason) {
101903
101927
  clearedEvents: []
101904
101928
  };
101905
101929
  try {
101906
- const { cancelPrFeedbackPublication: cancelPrFeedbackPublication2 } = await import("./pr-workflow-gate-59cr6gve.js");
101930
+ const { cancelPrFeedbackPublication: cancelPrFeedbackPublication2 } = await import("./pr-workflow-gate-n3x25ddw.js");
101907
101931
  await cancelPrFeedbackPublication2(directory, sessionID, reason);
101908
101932
  } catch (err) {
101909
101933
  warn(`[pr-feedback-loop] cancelPrFeedbackPublication failed (fail-open): ${err instanceof Error ? err.message : String(err)}`);
@@ -118369,7 +118393,7 @@ function buildDetailedHelp(commandName, entry) {
118369
118393
  async function handleHelpCommand(ctx) {
118370
118394
  const targetCommand = ctx.args.join(" ");
118371
118395
  if (!targetCommand) {
118372
- const { buildHelpText } = await import("./index-3xj89bf0.js");
118396
+ const { buildHelpText } = await import("./index-kp5qw5p4.js");
118373
118397
  return buildHelpText();
118374
118398
  }
118375
118399
  const tokens = targetCommand.split(/\s+/);
@@ -118383,7 +118407,7 @@ async function handleHelpCommand(ctx) {
118383
118407
  > Note: \`/swarm ${resolved.key}\` is a deprecated alias for \`/swarm ${aliasTarget}\`.` : detailed;
118384
118408
  }
118385
118409
  const similar = _internals39.findSimilarCommands(targetCommand);
118386
- const { buildHelpText: fullHelp } = await import("./index-3xj89bf0.js");
118410
+ const { buildHelpText: fullHelp } = await import("./index-kp5qw5p4.js");
118387
118411
  if (similar.length > 0) {
118388
118412
  return `Command '/swarm ${targetCommand}' not found.
118389
118413
 
@@ -118711,7 +118735,7 @@ var COMMAND_REGISTRY = {
118711
118735
  },
118712
118736
  "guardrail explain": {
118713
118737
  handler: async (ctx) => {
118714
- const { handleGuardrailExplain } = await import("./guardrail-explain-hpgecr7x.js");
118738
+ const { handleGuardrailExplain } = await import("./guardrail-explain-24g3bsqw.js");
118715
118739
  return handleGuardrailExplain(ctx.directory, ctx.args);
118716
118740
  },
118717
118741
  description: "Dry-run: show what the guardrails would do to a command or write target (executes nothing)",
@@ -118721,7 +118745,7 @@ var COMMAND_REGISTRY = {
118721
118745
  },
118722
118746
  "guardrail reset": {
118723
118747
  handler: async (ctx) => {
118724
- const { handleGuardrailReset } = await import("./guardrail-reset-a3xv675m.js");
118748
+ const { handleGuardrailReset } = await import("./guardrail-reset-jwtt15e3.js");
118725
118749
  return handleGuardrailReset(ctx.args, ctx.sessionID);
118726
118750
  },
118727
118751
  description: "Reset one exact active invocation/action circuit after repair",
@@ -118742,7 +118766,7 @@ var COMMAND_REGISTRY = {
118742
118766
  },
118743
118767
  "guardrail-log": {
118744
118768
  handler: async (ctx) => {
118745
- const { handleGuardrailLog } = await import("./guardrail-log-g6krx0s2.js");
118769
+ const { handleGuardrailLog } = await import("./guardrail-log-vbeyx6nq.js");
118746
118770
  return handleGuardrailLog(ctx.directory, ctx.args);
118747
118771
  },
118748
118772
  description: "Read the guardrail decision log (use --blocks-only for blocks)",
@@ -119140,7 +119164,7 @@ var COMMAND_REGISTRY = {
119140
119164
  epic: {
119141
119165
  handler: (ctx) => handleEpicCommand(ctx.directory, ctx.args, ctx.sessionID),
119142
119166
  description: "Open, inspect, and close a plan-scoped epic (coupling-aware parallel execution of the current plan)",
119143
- details: "An epic is bound to ONE plan: `start` opens it for the current plan, `close` ends it. Requires `epic.mode.enabled: true` in config (top-level `epic` block; no `turbo` block needed \u2014 the legacy `turbo.epic` path is still accepted and migrated). `start [--force]` refuses, in order: epic-disabled-by-config, host-unsupported (the host gives the plugin no OpenCode SDK client \u2014 OpenCode 2 does not yet \u2014 so worktree-isolated coders and the phase review cannot run), no-plan / plan-ledger-unreadable, epic-already-open (idempotent for the same plan) / epic-open-for-other-plan, turbo-active (config turbo_mode, a session with Turbo on, or a running Lean run \u2014 Epic enables neither Lean nor Turbo and never waives per-task QA), dirty-baseline (git: uncommitted changes outside .swarm/), detached-head / epic-branch-exists (epic-branch policy), in-flight-coders (any coder dispatch, background delegation, unsettled settlement, or preserved/recovery lane), not-epic-sized (too few pending tasks, insufficient scope coverage, or insufficient effective speedup \u2014 run it in Balanced, or reshape it with the plan-shaping suggestions shown; `--force` overrides and is recorded). Non-git projects run an epic serially (one task per wave). Git epics default to `epic.commit_policy: \"epic-branch\"`: start checks out `swarm/epic/<epicKey>` and every Epic commit goes there (epic_next_wave blocks with epic-branch-mismatch, and no landing or residue is committed, while HEAD is elsewhere); `current-branch` keeps commits on the starting branch. In a git epic every coder runs in an isolated worktree (refused EPIC_ISOLATION_DEGRADED when isolation is unavailable) and lands as a `swarm(task <id>): \u2026` merge commit; main-tree files a non-coder writer (test_engineer, docs) wrote for a task are committed as residue of that task; update_task_status writes nothing to git; wave close records the commit of each task as `refs/swarm/epics/<epicKey>/tasks/<id>` (deleted at close unless `epic.retain_refs`; never pushed by default). While open, the architect calls epic_next_wave and does what its status says: it issues one wave at a time (tasks with non-conflicting declared scopes \u2014 exclusive tasks alone, at most one task per densely coupled component; phases strictly in order), the architect dispatches one Task per taskId in ONE message and runs per-task QA (pre_check_batch \u2192 reviewer + test_engineer \u2192 update_task_status(completed)), and the next epic_next_wave closes the wave (recording outcomes and declared-vs-actual divergence) and issues the next; when a phase is done it returns phase-ready-for-review \u2192 epic_phase_review \u2192 phase_complete. `close [--abandon] [--land squash|merge|none]` refuses while tasks are pending (or the epic is orphaned / unreadable) unless `--abandon`, refuses a dirty tree before landing, writes a close report (epic-report-v2, embedding the epic scorecard) to .swarm/epic/reports/ and .swarm/epic-prior/reports/ (newest 50 kept), and lands the epic branch onto the original branch: squash (default \u2014 staged, uncommitted changes for you to review and commit), merge (a --no-ff merge commit), or none (switch back only). The epic branch is kept (remove it with `git branch -D` once committed). A landing conflict is rolled back (the attempted squash or merge is undone) and the epic stays closing \u2014 rerun close to resume. `--abandon` never lands; it switches back to the original branch when the tree is clean. `status [--repair-refs]` (also bare /swarm epic) shows the epic, its waves, phases, the task components recorded with the latest wave and recorded divergence, orphan detection (plan renamed or replaced), sentinel/row repair, recorded worktree merge failures, and retires legacy Epic v1 session state once; `--repair-refs` re-adopts task commits a rebase or amend made unreachable from HEAD. `report [<key>|last] [--format json]` shows the epic scorecard: live for the open epic (bare `report`), else from the close report of a past epic in .swarm/epic-prior/reports/ (`last` = newest; `<key>` = a report or epic key) \u2014 tasks completed in the epic, waves (count, width), time over closed waves (wave span, task issue\u2192resolve time, and their ratio, a concurrency factor that is NOT a speedup: it includes queueing behind serialized QA), conflicts (merge-back failures, undeclared writes), rework (extra generations, reopens), first-pass gate rates (upper bounds: the failure history is bounded), forced/sizing at start and learned hot files. Epics learn from their outcomes: undeclared writes teach learned co-writes (a task declaring D that also wrote f makes later tasks declaring D conflict with tasks on f \u2014 planner analysis only, never write authorization) and incidents (undeclared writes, merge conflicts, Stage B failures, rework, reopens) in excess of clean exposures make a file hot (a task declaring it runs alone) \u2014 undeclared writes its strongest learned co-writer explains are discounted (expansion already separates them), so one declarer writing a file is not heat; an empty history learns nothing (neutral start). Each wave close updates the posterior of the epic; close merges it into the project prior .swarm/epic-prior/learning.json (decayed per epic and by age; kept across /swarm close; `epic.learning.*`). `learning` shows what the planner learned and uses now; `prior [show]` shows the project prior; `prior reset` previews and prints a single-use confirm token (15 minutes); `prior reset --confirm=<token>` clears it. Also: clear-merge-failure <taskId> [--confirm]. The former `on` / `off` toggles, the `decide` / `last` subcommands and `calibration` (renamed `learning`) were removed.",
119167
+ details: "An epic is bound to ONE plan: `start` opens it for the current plan, `close` ends it. Requires `epic.mode.enabled: true` in config (top-level `epic` block; no `turbo` block needed \u2014 the legacy `turbo.epic` path is still accepted and migrated). `start [--force]` refuses, in order: epic-disabled-by-config, host-unsupported (the host gives the plugin no OpenCode SDK client; on OpenCode 2 the v2 adapter now ships one, so this refusal no longer fires there \u2014 v2 is held by the child-session placement work instead), no-plan / plan-ledger-unreadable, epic-already-open (idempotent for the same plan) / epic-open-for-other-plan, turbo-active (config turbo_mode, a session with Turbo on, or a running Lean run \u2014 Epic enables neither Lean nor Turbo and never waives per-task QA), dirty-baseline (git: uncommitted changes outside .swarm/), detached-head / epic-branch-exists (epic-branch policy), in-flight-coders (any coder dispatch, background delegation, unsettled settlement, or preserved/recovery lane), not-epic-sized (too few pending tasks, insufficient scope coverage, or insufficient effective speedup \u2014 run it in Balanced, or reshape it with the plan-shaping suggestions shown; `--force` overrides and is recorded). Non-git projects run an epic serially (one task per wave). Git epics default to `epic.commit_policy: \"epic-branch\"`: start checks out `swarm/epic/<epicKey>` and every Epic commit goes there (epic_next_wave blocks with epic-branch-mismatch, and no landing or residue is committed, while HEAD is elsewhere); `current-branch` keeps commits on the starting branch. In a git epic every coder runs in an isolated worktree (refused EPIC_ISOLATION_DEGRADED when isolation is unavailable) and lands as a `swarm(task <id>): \u2026` merge commit; main-tree files a non-coder writer (test_engineer, docs) wrote for a task are committed as residue of that task; update_task_status writes nothing to git; wave close records the commit of each task as `refs/swarm/epics/<epicKey>/tasks/<id>` (deleted at close unless `epic.retain_refs`; never pushed by default). While open, the architect calls epic_next_wave and does what its status says: it issues one wave at a time (tasks with non-conflicting declared scopes \u2014 exclusive tasks alone, at most one task per densely coupled component; phases strictly in order), the architect dispatches one Task per taskId in ONE message and runs per-task QA (pre_check_batch \u2192 reviewer + test_engineer \u2192 update_task_status(completed)), and the next epic_next_wave closes the wave (recording outcomes and declared-vs-actual divergence) and issues the next; when a phase is done it returns phase-ready-for-review \u2192 epic_phase_review \u2192 phase_complete. `close [--abandon] [--land squash|merge|none]` refuses while tasks are pending (or the epic is orphaned / unreadable) unless `--abandon`, refuses a dirty tree before landing, writes a close report (epic-report-v2, embedding the epic scorecard) to .swarm/epic/reports/ and .swarm/epic-prior/reports/ (newest 50 kept), and lands the epic branch onto the original branch: squash (default \u2014 staged, uncommitted changes for you to review and commit), merge (a --no-ff merge commit), or none (switch back only). The epic branch is kept (remove it with `git branch -D` once committed). A landing conflict is rolled back (the attempted squash or merge is undone) and the epic stays closing \u2014 rerun close to resume. `--abandon` never lands; it switches back to the original branch when the tree is clean. `status [--repair-refs]` (also bare /swarm epic) shows the epic, its waves, phases, the task components recorded with the latest wave and recorded divergence, orphan detection (plan renamed or replaced), sentinel/row repair, recorded worktree merge failures, and retires legacy Epic v1 session state once; `--repair-refs` re-adopts task commits a rebase or amend made unreachable from HEAD. `report [<key>|last] [--format json]` shows the epic scorecard: live for the open epic (bare `report`), else from the close report of a past epic in .swarm/epic-prior/reports/ (`last` = newest; `<key>` = a report or epic key) \u2014 tasks completed in the epic, waves (count, width), time over closed waves (wave span, task issue\u2192resolve time, and their ratio, a concurrency factor that is NOT a speedup: it includes queueing behind serialized QA), conflicts (merge-back failures, undeclared writes), rework (extra generations, reopens), first-pass gate rates (upper bounds: the failure history is bounded), forced/sizing at start and learned hot files. Epics learn from their outcomes: undeclared writes teach learned co-writes (a task declaring D that also wrote f makes later tasks declaring D conflict with tasks on f \u2014 planner analysis only, never write authorization) and incidents (undeclared writes, merge conflicts, Stage B failures, rework, reopens) in excess of clean exposures make a file hot (a task declaring it runs alone) \u2014 undeclared writes its strongest learned co-writer explains are discounted (expansion already separates them), so one declarer writing a file is not heat; an empty history learns nothing (neutral start). Each wave close updates the posterior of the epic; close merges it into the project prior .swarm/epic-prior/learning.json (decayed per epic and by age; kept across /swarm close; `epic.learning.*`). `learning` shows what the planner learned and uses now; `prior [show]` shows the project prior; `prior reset` previews and prints a single-use confirm token (15 minutes); `prior reset --confirm=<token>` clears it. Also: clear-merge-failure <taskId> [--confirm]. The former `on` / `off` toggles, the `decide` / `last` subcommands and `calibration` (renamed `learning`) were removed.",
119144
119168
  args: "start [--force] | close [--abandon] [--land squash|merge|none] | status [--repair-refs] | report [<key>|last] [--format json] | learning | prior [show|reset [--confirm=<token>]] | clear-merge-failure <taskId> [--confirm]",
119145
119169
  category: "diagnostics",
119146
119170
  toolPolicy: "human-only"
@@ -124066,4 +124090,4 @@ function getAgentConfigs(config, directory, sessionId, projectContext) {
124066
124090
  return result;
124067
124091
  }
124068
124092
 
124069
- export { resetActionCircuitExternally, getBlockingActionCircuit, resolveConfiguredAgentModel, resolveRegisteredAgentModel, resolveEffectiveAgentOverride, MAX_PARALLEL_VERDICT_TASKS, computeParallelVerdict, declaresWindowsWrapperLoose, dcNormalizeCommand, dcUnwrapWrappers, dcSplitSegments, dcExtractRecursiveRmTargets, dcEvaluateRecursiveDeleteTargets, dcCheckJunctionCreation, dcExtractWindowsCmdTargets, dcExtractPowerShellTargets, getSharedClassifierGuardrailBlock, classifyCommand, resetArchitectPromptBudgetAdvisories, createArchitectAgent, createCoderAgent, GENERALIST_COUNCIL_PROMPT, SKEPTIC_COUNCIL_PROMPT, DOMAIN_EXPERT_COUNCIL_PROMPT, createCriticAgent, createCuratorAgent, createDesignerAgent, createDocsAgent, createResearcherAgent, SECURITY_CATEGORIES, createReviewerAgent, createSMEAgent, createTestEngineerAgent, _internals147 as _internals, stripSwarmPrefix, extractSwarmIdFromAgentName, resolveFallbackModel, getSwarmAgents, createAgents, resolvePrimaryAgentNames, getAgentConfigs, SWARM_COMMAND_TOOL_COMMANDS, SWARM_COMMAND_TOOL_ALLOWLIST, HUMAN_ONLY_SWARM_COMMANDS, classifySwarmCommandToolUse, classifySwarmCommandChatFallbackUse, mergeWriteAnalyses, isPowerShellShaped, isPowerShellReadOnlyPipeline, detectPosixWrites, detectWindowsWrites, resolveWriteTargets, resolveWindowsWriteAuthority, getAgentSession, parseLeanLaneIndex, computeLaneRuntimeProfile, MAX_TRACKED_STANDARD_WORKTREE_CALLS, awaitingMergeByCallID, standardWorktreeByCallID, standardWorktreeSerializationSessions, laneChildSessionAgents, recordLaneChildSession, assertTaskIdNotForeignLaneSession, getStandardWorktreeDegradationReason, resetStandardWorktreeIsolationState, checkStandardWorktreeSerializationRelease, sanitizeWorktreeTaskId, preProvisionCollisionCheck, isLaneOwnedByCurrentSession, precreateStandardWorktreeSession, preserveBackgroundWorktreeOwnershipForCallId, preserveDirtyWorktreeForCallId, preserveDirtyWorktreeAtPath, cleanupStandardWorktreeForCallId, abortStandardWorktreeDispatch, runSerializedWithMergeBacks, finishStandardWorktreeDispatch, readLaneEnvFileFromDisk, _internals24 as _internals1, redactSecrets, prWorkflowSessionFileStem, ensurePrWorkflowSafeParentDirectory, writePrWorkflowAtomicJson, PrWorkflowCheckoutMutationTimeoutError, withPrWorkflowCheckoutMutationLock, PR_REVIEW_REPORT_VERDICTS, allowedPrReviewReportVerdicts, normalizePrReviewPartialBaseCoverageRecord, rollbackPrReviewPartialBaseCoverageAdmission, readPrReviewTerminalCoverageForReport, PR_REVIEW_REQUIRED_MICRO_LANE_IDS, PR_REVIEW_DEPTH_TIER_THRESHOLDS, PR_REVIEW_BASE_LANE_FLOORS, PR_REVIEW_TIER_L_CONSOLIDATED_LANE_FLOOR, PR_REVIEW_MICRO_LANE_FLOORS, computePrReviewDepthTier, MAX_PR_REVIEW_SUBMIT_REJECTIONS, MAX_PR_FEEDBACK_INVENTORY_AMENDMENTS, activatePrWorkflow, appendPrWorkflowSkillContractAdvisories, readPrWorkflowGateState, recordPrReviewSubmitRejection, latestPrReviewSubmitRejectionMessage, submitPrReviewResult, withPrWorkflowCheckoutPreparationLock, withInactivePrWorkflowCheckoutRestoreLock, clearPrWorkflowGateState, terminalizePrWorkflowGateForSession2 as terminalizePrWorkflowGateForSession, PR_WORKFLOW_PROBE_SKIPPED_NO_BUDGET_REASON, collectPrWorkflowPendingLaneLiveness, settlePresumedStalePrWorkflowLanes, abortPrWorkflow, recoverArmedPrWorkflow, bindPrWorkflowHead, rebindPrFeedbackHead, bindPrReviewBase, assertCurrentCheckoutHead, assertPrReviewCleanCheckout, enforcePrWorkflowDispatchLanesAsync, PrReviewResilienceCircuitOpenError, PrReviewResilienceRetryExhaustedError, enforcePrReviewBaseDimensions, rollbackPrReviewBaseAdmissionIfUnlaunched, admitPrReviewPartialBaseCoverage2 as admitPrReviewPartialBaseCoverage, assertPrReviewBaseCoverageSettled2 as assertPrReviewBaseCoverageSettled, recordPrReviewMicroFamilyDispatch, recordPrReviewValidationBatch, assertPrReviewValidationSettled, declarePrFeedbackInventory, enforcePrFeedbackVerificationOwnership, assertPrFeedbackVerificationSettled, recordPrFeedbackStageA, recordPrFeedbackGateBatch, assertPrFeedbackGatePhaseSettled, assertPrFeedbackReadyToPublish, invalidatePrFeedbackPublication, describePrWorkflowPublicationSection, findDanglingLivePublicationGeneration, recordPrFeedbackPushAttemptResult, cancelPrFeedbackPublication, resolvePrReviewWriterRunId, markPrReviewTriggerEvaluationComplete, bindPrReviewTriggerLedger, assertPrReviewArtifactBoundary, assertPrReviewArtifactRecordsMatchAuthoritativeVerdicts, markPrReviewArtifactBoundary, markPrReviewHandoffComplete, readPrReviewFinalFindingPolicyForReport, transitionPrReviewToFeedback, declarePrFeedbackScope, resolvePrFeedbackScopeDeclaration, consumePrFeedbackScopeDeclaration, validatePrFeedbackScopeBinding, enforcePrWorkflowToolBefore, readPrReviewReentryBindingContext, hasActivePrReviewReentryAuthorization, reserveActivePrReviewReentryAuthorization, completePrWorkflow, _test_exports2 as _test_exports, normalizePrWorkflowShellCommand, describePrWorkflowRevisionDigestFailure, readPrReviewVerdictSettlementReceiptItems, readPrReviewVerdictSettlementEffectiveIds, readAuthoritativePrReviewCriticSettlements, readAuthoritativePrReviewCriticVerdicts, formatPrReviewLaneValidationFailure, validateExactStructuredReceiptCoverage2 as validateExactStructuredReceiptCoverage, validatePrReviewDiscoveryLaneCompletion2 as validatePrReviewDiscoveryLaneCompletion, validatePrWorkflowTransportRecovery, prReviewDiscoveryArtifactCoversLane, MAX_SALVAGED_SCHEMA_ERROR_CHARS, readPrWorkflowGateStateForRecovery, handleAcknowledgeSpecDriftCommand, handleAgentsCommand, handleAnalyzeCommand, handleApproveWriteCommand, handleArchiveCommand, handleAutoProceedCommand, handleBenchmarkCommand, handleBrainstormCommand, handleCheckpointCommand, DEFAULT_CI_DEADLINE_MS2 as DEFAULT_CI_DEADLINE_MS, createSignalCancellation, handleCiCommand, handleCiSimulateCommand, handleClarifyCommand, safeRealpathSync, createCuratorLLMDelegate, getCoChangePairs, startSnapshotCoordinationInitialization, ensureSnapshotCoordinationReady, retrySnapshotCoordinationInitialization, getSnapshotCoordinationStatus, beginSnapshotCoordinationReset, closeSnapshotCoordinationInitialization, markSnapshotCoordinationClosing, _snapshotCoordinationInternals, handleCloseCommand, _internals71 as _internals2, normalizeRecommendationEntryIdToken, parseKnowledgeRecommendations, parseKnowledgeRecommendationsWithDiagnostics, parseStructuredCuratorBlocks, readCuratorSummary, writeCuratorSummary, appendCuratorRecommendation, mergeCuratorPhaseSummary, filterPhaseEvents, checkPhaseCompliance, runCuratorInit, runCuratorPhase, applyCuratorKnowledgeUpdates, isHiveEligible, countDistinctProjects, checkHivePromotions, _internals75 as _internals3, createHivePromoterHook, promoteToHive, promoteFromSwarm, createMemoryGateway, handleCodebaseReviewCommand, handleConcurrencyCommand, handleConfigCommand, handleConsolidateCommand, handleCostsCommand, handleCouncilCommand, handleCurateCommand, handleDarkMatterCommand, handleDeepDiveCommand, handleDeepResearchCommand, getHostConfigDir, getPluginCachePaths, getPluginLockFilePaths, VERSION_PINNED_LEAF, discoverVersionPinnedCachePaths, readCachePackageVersion, handleDiagnoseCommand, handleDoctorCommand, handleEvidenceCommand, handleEvidenceSummaryCommand, handleExportCommand, handleFullAutoCommand, computeQualityBudget, computeSastScan, handleGateAuditCommand, handleGateStatsCommand, handleHandoffCommand, handleBlueprintValidateCommand, handleBlueprintCurrentCommand, handleBlueprintHistoryCommand, handleBlueprintDiffCommand, handleBlueprintExportCommand, handleHarnessCandidateValidateCommand, handleHarnessCandidateShowCommand, handleHarnessCandidateDiffCommand, handleHistoryCommand, handleKnowledgeQuarantineCommand, handleKnowledgeRestoreCommand, handleKnowledgeMigrateCommand, handleKnowledgeListCommand, handleKnowledgeUnactionableCommand, handleKnowledgeRetryHardeningCommand, handleLearningCommand, handleLinkCommand, searchKnowledge, symbols, handleMemoryCommand, handleMemoryStatusCommand, handleMemoryValueLogCommand, handleMemoryMigrateCommand, handleMemoryImportCommand, handleMemoryExportCommand, handlePlanCommand, handlePreflightCommand, handlePromoteCommand, handleQaGatesCommand, handleRecoverCommand, handleResetCommand, handleResetSessionCommand, handleRetrieveCommand, handleReviewCommand, handleRollbackCommand, handleSddStatusCommand, handleSddValidateCommand, handleSddProjectCommand, handleSddCommand, handleSimulateCommand, handleSpecifyCommand, handleStatusCommand, handleSyncPlanCommand, handleTurboCommand, handleUnlinkCommand, handleWriteRetroCommand, handleHelpCommand, isCommandFailure, COMMAND_REGISTRY, VALID_COMMANDS, _internals39 as _internals4, resolveCommand, normalizeSwarmCommandInput, canonicalCommandKey, formatCommandNotFound, executeSwarmCommand };
124093
+ export { resetActionCircuitExternally, getBlockingActionCircuit, resolveConfiguredAgentModel, resolveRegisteredAgentModel, resolveEffectiveAgentOverride, MAX_PARALLEL_VERDICT_TASKS, computeParallelVerdict, declaresWindowsWrapperLoose, dcNormalizeCommand, dcUnwrapWrappers, dcSplitSegments, dcExtractRecursiveRmTargets, dcEvaluateRecursiveDeleteTargets, dcCheckJunctionCreation, dcExtractWindowsCmdTargets, dcExtractPowerShellTargets, getSharedClassifierGuardrailBlock, classifyCommand, resetArchitectPromptBudgetAdvisories, createArchitectAgent, createCoderAgent, GENERALIST_COUNCIL_PROMPT, SKEPTIC_COUNCIL_PROMPT, DOMAIN_EXPERT_COUNCIL_PROMPT, createCriticAgent, createCuratorAgent, createDesignerAgent, createDocsAgent, createResearcherAgent, SECURITY_CATEGORIES, createReviewerAgent, createSMEAgent, createTestEngineerAgent, _internals147 as _internals, stripSwarmPrefix, extractSwarmIdFromAgentName, resolveFallbackModel, getSwarmAgents, createAgents, resolvePrimaryAgentNames, getAgentConfigs, SWARM_COMMAND_TOOL_COMMANDS, SWARM_COMMAND_TOOL_ALLOWLIST, HUMAN_ONLY_SWARM_COMMANDS, classifySwarmCommandToolUse, classifySwarmCommandChatFallbackUse, mergeWriteAnalyses, isPowerShellShaped, isPowerShellReadOnlyPipeline, detectPosixWrites, detectWindowsWrites, resolveWriteTargets, resolveWindowsWriteAuthority, getAgentSession, parseLeanLaneIndex, computeLaneRuntimeProfile, MAX_TRACKED_STANDARD_WORKTREE_CALLS, awaitingMergeByCallID, standardWorktreeByCallID, standardWorktreeSerializationSessions, laneChildSessionAgents, recordLaneChildSession, assertTaskIdNotForeignLaneSession, getStandardWorktreeDegradationReason, resetStandardWorktreeIsolationState, checkStandardWorktreeSerializationRelease, sanitizeWorktreeTaskId, preProvisionCollisionCheck, isLaneOwnedByCurrentSession, precreateStandardWorktreeSession, preserveBackgroundWorktreeOwnershipForCallId, preserveDirtyWorktreeForCallId, preserveDirtyWorktreeAtPath, cleanupStandardWorktreeForCallId, abortStandardWorktreeDispatch, runSerializedWithMergeBacks, finishStandardWorktreeDispatch, readLaneEnvFileFromDisk, _internals24 as _internals1, redactSecrets, prWorkflowSessionFileStem, ensurePrWorkflowSafeParentDirectory, writePrWorkflowAtomicJson, PrWorkflowCheckoutMutationTimeoutError, withPrWorkflowCheckoutMutationLock, PR_REVIEW_REPORT_VERDICTS, allowedPrReviewReportVerdicts, normalizePrReviewPartialBaseCoverageRecord, rollbackPrReviewPartialBaseCoverageAdmission, readPrReviewTerminalCoverageForReport, PR_REVIEW_REQUIRED_MICRO_LANE_IDS, PR_REVIEW_DEPTH_TIER_THRESHOLDS, PR_REVIEW_BASE_LANE_FLOORS, PR_REVIEW_TIER_L_CONSOLIDATED_LANE_FLOOR, PR_REVIEW_MICRO_LANE_FLOORS, computePrReviewDepthTier, MAX_PR_REVIEW_SUBMIT_REJECTIONS, MAX_PR_FEEDBACK_INVENTORY_AMENDMENTS, activatePrWorkflow, appendPrWorkflowSkillContractAdvisories, readPrWorkflowGateState, recordPrReviewSubmitRejection, latestPrReviewSubmitRejectionMessage, submitPrReviewResult, withPrWorkflowCheckoutPreparationLock, withInactivePrWorkflowCheckoutRestoreLock, clearPrWorkflowGateState, terminalizePrWorkflowGateForSession2 as terminalizePrWorkflowGateForSession, PR_WORKFLOW_PROBE_SKIPPED_NO_BUDGET_REASON, collectPrWorkflowPendingLaneLiveness, settlePresumedStalePrWorkflowLanes, abortPrWorkflow, recoverArmedPrWorkflow, bindPrWorkflowHead, rebindPrFeedbackHead, bindPrReviewBase, assertCurrentCheckoutHead, assertPrReviewCleanCheckout, enforcePrWorkflowDispatchLanesAsync, PrReviewResilienceCircuitOpenError, PrReviewResilienceRetryExhaustedError, enforcePrReviewBaseDimensions, rollbackPrReviewBaseAdmissionIfUnlaunched, admitPrReviewPartialBaseCoverage2 as admitPrReviewPartialBaseCoverage, assertPrReviewBaseCoverageSettled2 as assertPrReviewBaseCoverageSettled, recordPrReviewMicroFamilyDispatch, recordPrReviewValidationBatch, assertPrReviewValidationSettled, declarePrFeedbackInventory, enforcePrFeedbackVerificationOwnership, assertPrFeedbackVerificationSettled, recordPrFeedbackStageA, recordPrFeedbackGateBatch, assertPrFeedbackGatePhaseSettled, assertPrFeedbackReadyToPublish, invalidatePrFeedbackPublication, describePrWorkflowPublicationSection, findDanglingLivePublicationGeneration, recordPrFeedbackPushAttemptResult, cancelPrFeedbackPublication, resolvePrReviewWriterRunId, markPrReviewTriggerEvaluationComplete, bindPrReviewTriggerLedger, assertPrReviewArtifactBoundary, assertPrReviewArtifactRecordsMatchAuthoritativeVerdicts, markPrReviewArtifactBoundary, markPrReviewHandoffComplete, readPrReviewFinalFindingPolicyForReport, transitionPrReviewToFeedback, declarePrFeedbackScope, resolvePrFeedbackScopeDeclaration, consumePrFeedbackScopeDeclaration, validatePrFeedbackScopeBinding, enforcePrWorkflowToolBefore, readPrReviewReentryBindingContext, hasActivePrReviewReentryAuthorization, reserveActivePrReviewReentryAuthorization, completePrWorkflow, _test_exports2 as _test_exports, normalizePrWorkflowShellCommand, describePrWorkflowRevisionDigestFailure, derivePrReviewCandidateInventoryForStatus, readPrReviewVerdictSettlementReceiptItems, readPrReviewVerdictSettlementEffectiveIds, readAuthoritativePrReviewCriticSettlements, readAuthoritativePrReviewCriticVerdicts, formatPrReviewLaneValidationFailure, validateExactStructuredReceiptCoverage2 as validateExactStructuredReceiptCoverage, validatePrReviewDiscoveryLaneCompletion2 as validatePrReviewDiscoveryLaneCompletion, validatePrWorkflowTransportRecovery, prReviewDiscoveryArtifactCoversLane, MAX_SALVAGED_SCHEMA_ERROR_CHARS, readPrWorkflowGateStateForRecovery, handleAcknowledgeSpecDriftCommand, handleAgentsCommand, handleAnalyzeCommand, handleApproveWriteCommand, handleArchiveCommand, handleAutoProceedCommand, handleBenchmarkCommand, handleBrainstormCommand, handleCheckpointCommand, DEFAULT_CI_DEADLINE_MS2 as DEFAULT_CI_DEADLINE_MS, createSignalCancellation, handleCiCommand, handleCiSimulateCommand, handleClarifyCommand, safeRealpathSync, createCuratorLLMDelegate, getCoChangePairs, startSnapshotCoordinationInitialization, ensureSnapshotCoordinationReady, retrySnapshotCoordinationInitialization, getSnapshotCoordinationStatus, beginSnapshotCoordinationReset, closeSnapshotCoordinationInitialization, markSnapshotCoordinationClosing, _snapshotCoordinationInternals, handleCloseCommand, _internals71 as _internals2, normalizeRecommendationEntryIdToken, parseKnowledgeRecommendations, parseKnowledgeRecommendationsWithDiagnostics, parseStructuredCuratorBlocks, readCuratorSummary, writeCuratorSummary, appendCuratorRecommendation, mergeCuratorPhaseSummary, filterPhaseEvents, checkPhaseCompliance, runCuratorInit, runCuratorPhase, applyCuratorKnowledgeUpdates, isHiveEligible, countDistinctProjects, checkHivePromotions, _internals75 as _internals3, createHivePromoterHook, promoteToHive, promoteFromSwarm, createMemoryGateway, handleCodebaseReviewCommand, handleConcurrencyCommand, handleConfigCommand, handleConsolidateCommand, handleCostsCommand, handleCouncilCommand, handleCurateCommand, handleDarkMatterCommand, handleDeepDiveCommand, handleDeepResearchCommand, getHostConfigDir, getPluginCachePaths, getPluginLockFilePaths, VERSION_PINNED_LEAF, discoverVersionPinnedCachePaths, readCachePackageVersion, handleDiagnoseCommand, handleDoctorCommand, handleEvidenceCommand, handleEvidenceSummaryCommand, handleExportCommand, handleFullAutoCommand, computeQualityBudget, computeSastScan, handleGateAuditCommand, handleGateStatsCommand, handleHandoffCommand, handleBlueprintValidateCommand, handleBlueprintCurrentCommand, handleBlueprintHistoryCommand, handleBlueprintDiffCommand, handleBlueprintExportCommand, handleHarnessCandidateValidateCommand, handleHarnessCandidateShowCommand, handleHarnessCandidateDiffCommand, handleHistoryCommand, handleKnowledgeQuarantineCommand, handleKnowledgeRestoreCommand, handleKnowledgeMigrateCommand, handleKnowledgeListCommand, handleKnowledgeUnactionableCommand, handleKnowledgeRetryHardeningCommand, handleLearningCommand, handleLinkCommand, searchKnowledge, symbols, handleMemoryCommand, handleMemoryStatusCommand, handleMemoryValueLogCommand, handleMemoryMigrateCommand, handleMemoryImportCommand, handleMemoryExportCommand, handlePlanCommand, handlePreflightCommand, handlePromoteCommand, handleQaGatesCommand, handleRecoverCommand, handleResetCommand, handleResetSessionCommand, handleRetrieveCommand, handleReviewCommand, handleRollbackCommand, handleSddStatusCommand, handleSddValidateCommand, handleSddProjectCommand, handleSddCommand, handleSimulateCommand, handleSpecifyCommand, handleStatusCommand, handleSyncPlanCommand, handleTurboCommand, handleUnlinkCommand, handleWriteRetroCommand, handleHelpCommand, isCommandFailure, COMMAND_REGISTRY, VALID_COMMANDS, _internals39 as _internals4, resolveCommand, normalizeSwarmCommandInput, canonicalCommandKey, formatCommandNotFound, executeSwarmCommand };