opencode-swarm 7.186.5 → 7.186.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 (70) hide show
  1. package/binaries/win32-arm64/swarm-sandbox-runner.exe +0 -0
  2. package/binaries/win32-x64/swarm-sandbox-runner.exe +0 -0
  3. package/dist/cli/{auto-checkpoint-ktp27ghj.js → auto-checkpoint-bgd0a0fe.js} +5 -5
  4. package/dist/cli/{checkpoint-bmn087gt.js → checkpoint-t8c2gmqm.js} +9 -9
  5. package/dist/cli/{coder-settlement-d7m82pge.js → coder-settlement-vk29vfn1.js} +3 -3
  6. package/dist/cli/{config-doctor-5mqjz945.js → config-doctor-8xynpb9m.js} +2 -2
  7. package/dist/cli/{core-rxnyh5x1.js → core-fcnw5r5t.js} +1 -1
  8. package/dist/cli/{curator-186d4nm5.js → curator-8tkrb089.js} +25 -25
  9. package/dist/cli/{curator-drift-wag10j7q.js → curator-drift-qjfxv50p.js} +5 -5
  10. package/dist/cli/{curator-llm-factory-53p0h2zb.js → curator-llm-factory-24megesc.js} +25 -25
  11. package/dist/cli/{evidence-summary-service-6wh823gt.js → evidence-summary-service-dnr5a5pk.js} +10 -10
  12. package/dist/cli/{gate-evidence-vna61z6j.js → gate-evidence-tcamm09w.js} +2 -2
  13. package/dist/cli/{guardrail-explain-keqn86wf.js → guardrail-explain-e1v8k0wp.js} +26 -26
  14. package/dist/cli/{guardrail-log-nyfsyafa.js → guardrail-log-cxxmstms.js} +3 -3
  15. package/dist/cli/{guardrail-reset-7w1mrxsv.js → guardrail-reset-457d9p0v.js} +25 -25
  16. package/dist/cli/{hive-promoter-s8q7y45e.js → hive-promoter-sq960nda.js} +25 -25
  17. package/dist/cli/{index-7ra03prr.js → index-090p63c6.js} +2 -2
  18. package/dist/cli/{index-scx7ap3m.js → index-1835td25.js} +1 -1
  19. package/dist/cli/{index-7gnwpmca.js → index-20qmrz79.js} +3 -3
  20. package/dist/cli/{index-dya7fvxm.js → index-23hjgzze.js} +1 -1
  21. package/dist/cli/{index-38v2kw2f.js → index-2nvwnfhp.js} +1 -1
  22. package/dist/cli/{index-tra2xts5.js → index-2qhj0zq0.js} +1 -1
  23. package/dist/cli/{index-czsmzgsv.js → index-422vhxgk.js} +3 -3
  24. package/dist/cli/{index-g3akwsyy.js → index-4rkx8wz7.js} +1 -1
  25. package/dist/cli/{index-csqdjm26.js → index-5h9nwtwr.js} +3 -3
  26. package/dist/cli/{index-4ft1hq7q.js → index-5v7s12fm.js} +1 -1
  27. package/dist/cli/{index-gzvq7xrw.js → index-b1vt7jcj.js} +95 -66
  28. package/dist/cli/{index-bjenrady.js → index-cj326ajn.js} +1 -1
  29. package/dist/cli/{index-2rh911mw.js → index-cm20cnc4.js} +5 -5
  30. package/dist/cli/{index-a5a4n622.js → index-da44jcxw.js} +1 -1
  31. package/dist/cli/{index-fz5mvrg9.js → index-fsy8r0je.js} +1 -1
  32. package/dist/cli/{index-va63e494.js → index-hgbz52qk.js} +1 -1
  33. package/dist/cli/{index-2xhf2zqg.js → index-jabe1bne.js} +2 -2
  34. package/dist/cli/{index-7dz5baxx.js → index-k47skbz0.js} +1 -1
  35. package/dist/cli/{index-frcemc0b.js → index-kbkk7vnh.js} +2 -0
  36. package/dist/cli/{index-yy0zk513.js → index-kdtgj87n.js} +2 -2
  37. package/dist/cli/{index-ezya35f2.js → index-p47yt21j.js} +1 -1
  38. package/dist/cli/{index-f5wtnesp.js → index-pbd3cefv.js} +3 -3
  39. package/dist/cli/{index-qvk6eh90.js → index-pg9v3yc1.js} +4 -4
  40. package/dist/cli/{index-rn6rmf07.js → index-qmg435z5.js} +5 -5
  41. package/dist/cli/{index-9n10dpx0.js → index-re2t51n9.js} +2 -2
  42. package/dist/cli/{index-4e30e36r.js → index-rqtdtzv6.js} +25 -25
  43. package/dist/cli/{index-0pzr0gv0.js → index-rrn60xvr.js} +1 -1
  44. package/dist/cli/{index-p32em2st.js → index-xhqzrh7e.js} +27 -27
  45. package/dist/cli/{index-hf3xc4st.js → index-zdvee7mc.js} +1 -1
  46. package/dist/cli/{index-v4dmx9nm.js → index-zsvy6hyj.js} +4 -4
  47. package/dist/cli/index.js +26 -26
  48. package/dist/cli/{knowledge-escalator-pee8ed7v.js → knowledge-escalator-0tbrvw0y.js} +7 -7
  49. package/dist/cli/{knowledge-events-1v4cspg1.js → knowledge-events-htkej7nz.js} +5 -5
  50. package/dist/cli/{knowledge-store-cj7j8w51.js → knowledge-store-w2yc2809.js} +1 -1
  51. package/dist/cli/{knowledge-validator-r7p1h4gk.js → knowledge-validator-jkhcf22k.js} +2 -2
  52. package/dist/cli/{mcp-3zsg302f.js → mcp-tmmf89e9.js} +1 -1
  53. package/dist/cli/{model-preflight-a42nfvb5.js → model-preflight-v02k622n.js} +25 -25
  54. package/dist/cli/{pending-delegations-k0m9hp25.js → pending-delegations-dhak2kek.js} +2 -2
  55. package/dist/cli/{pr-subscriptions-9exqrz8y.js → pr-subscriptions-aaec8rne.js} +1 -1
  56. package/dist/cli/{pr-workflow-gate-5e8zq79d.js → pr-workflow-gate-szwc4bd9.js} +25 -25
  57. package/dist/cli/{scan-cursor-pw6t2b4p.js → scan-cursor-nyys1xp0.js} +2 -2
  58. package/dist/cli/{schema-txnvj734.js → schema-3x47j05d.js} +1 -1
  59. package/dist/cli/{scope-persistence-m19e7e20.js → scope-persistence-9a0cq54w.js} +5 -5
  60. package/dist/cli/{server-bd3m3nay.js → server-ky8hhr3h.js} +25 -25
  61. package/dist/cli/{skill-generator-jg8g3v1y.js → skill-generator-cvmvggej.js} +8 -8
  62. package/dist/cli/{snapshot-coordination-init-3fb8aa76.js → snapshot-coordination-init-7714e0rg.js} +25 -25
  63. package/dist/cli/{speckit-checkoff-xtanamx0.js → speckit-checkoff-atsgqxqd.js} +3 -3
  64. package/dist/cli/{worktree-collision-ownership-5yx378vf.js → worktree-collision-ownership-1hn0zvr1.js} +2 -2
  65. package/dist/cli/{worktree-isolation-g83bmwn3.js → worktree-isolation-xkdx8hne.js} +25 -25
  66. package/dist/config/evidence-schema.d.ts +6 -0
  67. package/dist/index.js +10 -10
  68. package/dist/tools/pre-check-batch.d.ts +8 -1
  69. package/dist/tools/secretscan.d.ts +27 -2
  70. package/package.json +1 -1
@@ -8,13 +8,13 @@ import {
8
8
  protectedRoots,
9
9
  redactDecisionLineForArchive,
10
10
  stableCanonicalStringify
11
- } from "./index-scx7ap3m.js";
11
+ } from "./index-1835td25.js";
12
12
  import {
13
13
  detectStraySwarmDirs,
14
14
  readDoctorArtifact,
15
15
  removeStraySwarmDir,
16
16
  runConfigDoctor
17
- } from "./index-g3akwsyy.js";
17
+ } from "./index-4rkx8wz7.js";
18
18
  import {
19
19
  archiveEvidence,
20
20
  checkRequirementCoverage,
@@ -26,7 +26,7 @@ import {
26
26
  sanitizeTaskId,
27
27
  saveEvidence,
28
28
  validateProjectRoot
29
- } from "./index-7ra03prr.js";
29
+ } from "./index-090p63c6.js";
30
30
  import {
31
31
  LANGUAGE_REGISTRY,
32
32
  _internals as _internals3,
@@ -77,7 +77,7 @@ import {
77
77
  alreadyCuratedThisGeneration,
78
78
  claimNextScanBatch,
79
79
  resolveCohortId
80
- } from "./index-7dz5baxx.js";
80
+ } from "./index-k47skbz0.js";
81
81
  import {
82
82
  CURATOR_CONSOLIDATION_PROMPT,
83
83
  CURATOR_INIT_PROMPT,
@@ -96,13 +96,13 @@ import {
96
96
  getGroupCommitWriter,
97
97
  importLegacyJsonl,
98
98
  readPriorDriftReports
99
- } from "./index-ezya35f2.js";
99
+ } from "./index-p47yt21j.js";
100
100
  import {
101
101
  assertNoUnsettledCoderDispatch,
102
102
  listCoderSettlementWalStates,
103
103
  recoverCoderSettlement,
104
104
  recoverStaleCoderSettlements
105
- } from "./index-7gnwpmca.js";
105
+ } from "./index-20qmrz79.js";
106
106
  import {
107
107
  BUNDLED_PROJECT_SKILL_ROOT,
108
108
  DEFAULT_SKILL_MIN_CONFIDENCE,
@@ -123,11 +123,11 @@ import {
123
123
  retireSkill,
124
124
  selectCandidateEntries,
125
125
  syncBundledProjectSkillsIfMissingAsync
126
- } from "./index-f5wtnesp.js";
126
+ } from "./index-pbd3cefv.js";
127
127
  import {
128
128
  buildEscalationBriefing,
129
129
  readRecentEscalations
130
- } from "./index-2rh911mw.js";
130
+ } from "./index-cm20cnc4.js";
131
131
  import {
132
132
  parsePorcelainV2Snapshot,
133
133
  resolveCommitCountSince,
@@ -194,7 +194,7 @@ import {
194
194
  checkpoint,
195
195
  createSwarmTool,
196
196
  resolveWorkingDirectory
197
- } from "./index-csqdjm26.js";
197
+ } from "./index-5h9nwtwr.js";
198
198
  import {
199
199
  MAX_TRANSIENT_RETRIES,
200
200
  PlanRecoverySupersededError,
@@ -222,7 +222,7 @@ import {
222
222
  transientBackoff,
223
223
  updateTaskStatus,
224
224
  withPlanLifecycleLock
225
- } from "./index-rn6rmf07.js";
225
+ } from "./index-qmg435z5.js";
226
226
  import {
227
227
  containsControlChars,
228
228
  containsPathTraversal,
@@ -238,7 +238,7 @@ import {
238
238
  resolveSpeckitProjection,
239
239
  validateSpeckit,
240
240
  writeProjectedSpecSync
241
- } from "./index-4ft1hq7q.js";
241
+ } from "./index-5v7s12fm.js";
242
242
  import {
243
243
  clearWorktreeMergeStatus,
244
244
  getAllWorktreeMergeFailures,
@@ -269,7 +269,7 @@ import {
269
269
  transitionTaskWorkflowEvidenceWithStatus,
270
270
  withTaskEvidenceTransaction,
271
271
  writeWorkflowWalFile
272
- } from "./index-bjenrady.js";
272
+ } from "./index-cj326ajn.js";
273
273
  import {
274
274
  isPathUnderSwarmWorktreeBase,
275
275
  listLiveLaneOwners,
@@ -278,7 +278,7 @@ import {
278
278
  recordLiveLaneOwner,
279
279
  removeWorktree,
280
280
  resolveWorktreeBaseDir
281
- } from "./index-38v2kw2f.js";
281
+ } from "./index-2nvwnfhp.js";
282
282
  import {
283
283
  DEFAULT_STALE_DELEGATION_TIMEOUT_MS,
284
284
  DELEGATION_COMPACTION_HIGH_WATER_BYTES,
@@ -312,7 +312,7 @@ import {
312
312
  scanBackgroundCoderReservationsForAdmission,
313
313
  scanDelegationsForRecovery,
314
314
  sweepStaleDelegations
315
- } from "./index-tra2xts5.js";
315
+ } from "./index-2qhj0zq0.js";
316
316
  import {
317
317
  MAX_EVENT_LOG_ENTRIES,
318
318
  _internals,
@@ -331,7 +331,7 @@ import {
331
331
  recordKnowledgeEvent,
332
332
  recordPhaseCloseIntent,
333
333
  resolveKnowledgeEventsPath
334
- } from "./index-czsmzgsv.js";
334
+ } from "./index-422vhxgk.js";
335
335
  import {
336
336
  estimateCharsForTokens,
337
337
  estimateTokens,
@@ -359,7 +359,7 @@ import {
359
359
  validateActionableFields,
360
360
  validateLesson,
361
361
  validateSkillPath
362
- } from "./index-dya7fvxm.js";
362
+ } from "./index-23hjgzze.js";
363
363
  import {
364
364
  MAX_CURATION_PROPOSALS,
365
365
  authorizeCuration,
@@ -370,10 +370,10 @@ import {
370
370
  } from "./index-rtry5xyf.js";
371
371
  import {
372
372
  resolveWorktreeIsolationConfig
373
- } from "./index-9n10dpx0.js";
373
+ } from "./index-re2t51n9.js";
374
374
  import {
375
375
  RetrospectiveEvidenceSchema
376
- } from "./index-frcemc0b.js";
376
+ } from "./index-kbkk7vnh.js";
377
377
  import {
378
378
  MAX_PENDING_SCOPE_BINDINGS,
379
379
  canonicalWorkspaceIdentity,
@@ -382,7 +382,7 @@ import {
382
382
  clearScopeBindings,
383
383
  readAuthoritativeScopeBindingSet,
384
384
  readDeclaredScopeFilesFromBindings
385
- } from "./index-va63e494.js";
385
+ } from "./index-hgbz52qk.js";
386
386
  import {
387
387
  clearPlanLedgerForReset,
388
388
  computePlanStructureHash,
@@ -398,7 +398,7 @@ import {
398
398
  replayFromLedgerWithStatus,
399
399
  resolvePlanningProfile,
400
400
  takeSnapshotEvent
401
- } from "./index-2xhf2zqg.js";
401
+ } from "./index-jabe1bne.js";
402
402
  import {
403
403
  CORE_EVENT_LOCKED,
404
404
  appendCoreEventSync,
@@ -487,7 +487,7 @@ import {
487
487
  transactFile,
488
488
  transactKnowledge,
489
489
  wordBigrams
490
- } from "./index-qvk6eh90.js";
490
+ } from "./index-pg9v3yc1.js";
491
491
  import {
492
492
  readTailJsonl,
493
493
  readTailJsonlDetailed,
@@ -568,7 +568,7 @@ import {
568
568
  loadGateOverrides,
569
569
  loadPluginConfig,
570
570
  loadPluginConfigWithMeta
571
- } from "./index-hf3xc4st.js";
571
+ } from "./index-zdvee7mc.js";
572
572
  import {
573
573
  addDeferredWarning,
574
574
  advisoryWarn,
@@ -600,7 +600,7 @@ import {
600
600
  resolveContextWindow,
601
601
  resolveGeneratedAgentRole,
602
602
  stripKnownSwarmPrefix
603
- } from "./index-fz5mvrg9.js";
603
+ } from "./index-fsy8r0je.js";
604
604
  import {
605
605
  AGENT_TOOL_MAP,
606
606
  ALL_AGENT_NAMES,
@@ -3389,7 +3389,7 @@ async function importLegacyPrWorkflowGateStateIfNeeded(directory, sessionID, all
3389
3389
  return null;
3390
3390
  throw error2;
3391
3391
  }
3392
- const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-5e8zq79d.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
3392
+ const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-szwc4bd9.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
3393
3393
  if (!legacy)
3394
3394
  return null;
3395
3395
  const namespace = workflowGateStateCoordinationNamespace(sessionID);
@@ -3476,7 +3476,7 @@ async function deleteStateWhileLocked(directory, sessionID, options = {}) {
3476
3476
  let recoveryState = null;
3477
3477
  if (!currentAuthoritative) {
3478
3478
  if (options.allowSalvagedRead) {
3479
- const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-5e8zq79d.js");
3479
+ const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-szwc4bd9.js");
3480
3480
  recoveryState = (await readPrWorkflowGateStateForRecovery(directory, normalizedSessionID))?.state ?? null;
3481
3481
  }
3482
3482
  if (!recoveryState) {
@@ -15039,7 +15039,7 @@ function isLaneOwnedByCurrentSession(branchName, expectedSessionId) {
15039
15039
  return extracted === expectedSessionId;
15040
15040
  }
15041
15041
  async function inspectStandardWorktreeCollisionOwnership(identity) {
15042
- const collisionOwnership = await import("./worktree-collision-ownership-5yx378vf.js");
15042
+ const collisionOwnership = await import("./worktree-collision-ownership-1hn0zvr1.js");
15043
15043
  return collisionOwnership.inspectStandardWorktreeCollisionOwnership(identity);
15044
15044
  }
15045
15045
  async function runRecoveryGit(directory, args, timeoutMs = 15000) {
@@ -15465,7 +15465,7 @@ async function precreateStandardWorktreeSession(args) {
15465
15465
  const laneProfile = computeLaneRuntimeProfile(worktreeConfig.runtime_isolation, laneIndex, handle.worktreePath);
15466
15466
  if (laneProfile) {
15467
15467
  try {
15468
- const { writeLaneProfileToDiskReal } = await import("./core-rxnyh5x1.js");
15468
+ const { writeLaneProfileToDiskReal } = await import("./core-fcnw5r5t.js");
15469
15469
  await writeLaneProfileToDiskReal(handle.worktreePath, laneProfile.laneIndex, laneProfile.envOverrides);
15470
15470
  } catch {}
15471
15471
  }
@@ -16444,7 +16444,7 @@ async function finishStandardWorktreeDispatch(directory, dispatch, config, callI
16444
16444
  }
16445
16445
  clearWorktreeMergeStatus(statusKey);
16446
16446
  try {
16447
- const { removeLaneProfileFromDiskReal } = await import("./core-rxnyh5x1.js");
16447
+ const { removeLaneProfileFromDiskReal } = await import("./core-fcnw5r5t.js");
16448
16448
  await removeLaneProfileFromDiskReal(dispatch.handle.worktreePath, dispatch.laneIndex);
16449
16449
  } catch {}
16450
16450
  const state = serializationStateBySessionID.get(dispatch.parentSessionID);
@@ -24083,7 +24083,7 @@ function clearCriticalShownIds(sessionID) {
24083
24083
  async function rehydratePrSubscriptions(sessionID, directory) {
24084
24084
  const map = new Map;
24085
24085
  try {
24086
- const { listActive: listActive2 } = await import("./pr-subscriptions-9exqrz8y.js");
24086
+ const { listActive: listActive2 } = await import("./pr-subscriptions-aaec8rne.js");
24087
24087
  const records = await listActive2(directory);
24088
24088
  for (const record of records) {
24089
24089
  if (record.sessionID !== sessionID)
@@ -40521,9 +40521,9 @@ function hashContent(content) {
40521
40521
  return createHash27("sha1").update(content).digest("hex");
40522
40522
  }
40523
40523
  async function loadConfigForPolicyCurator(directory) {
40524
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-txnvj734.js");
40524
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-3x47j05d.js");
40525
40525
  try {
40526
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-v4dmx9nm.js");
40526
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zsvy6hyj.js");
40527
40527
  const { config: loadedConfig } = loadPluginConfigWithMeta2(directory);
40528
40528
  return KnowledgeConfigSchema2.parse(loadedConfig.knowledge ?? {});
40529
40529
  } catch {
@@ -43581,7 +43581,7 @@ async function resolveCuratorLLMDelegate(directory, mode, sessionId) {
43581
43581
  const seam = _internals38.createCuratorLLMDelegate;
43582
43582
  if (seam)
43583
43583
  return seam(directory, mode, sessionId);
43584
- const { createCuratorLLMDelegate } = await import("./curator-llm-factory-53p0h2zb.js");
43584
+ const { createCuratorLLMDelegate } = await import("./curator-llm-factory-24megesc.js");
43585
43585
  return createCuratorLLMDelegate(directory, mode, sessionId);
43586
43586
  }
43587
43587
  async function reconcileCloseTerminalStateForPlan(directory, targetPlan, options) {
@@ -43976,7 +43976,7 @@ async function runFinalizeStage(ctx) {
43976
43976
  }
43977
43977
  }
43978
43978
  try {
43979
- const { CuratorConfigSchema: CCS } = await import("./schema-txnvj734.js");
43979
+ const { CuratorConfigSchema: CCS } = await import("./schema-3x47j05d.js");
43980
43980
  const { config: pmLoadedConfig } = _internals38.loadPluginConfigWithMeta(ctx.directory);
43981
43981
  const curatorCfg = CCS.parse(pmLoadedConfig.curator ?? {});
43982
43982
  if (curatorCfg.enabled && curatorCfg.postmortem_enabled) {
@@ -46162,7 +46162,7 @@ function serializeAgentSession(s) {
46162
46162
  }
46163
46163
  async function writeSnapshot(directory, state) {
46164
46164
  try {
46165
- const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-3fb8aa76.js");
46165
+ const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-7714e0rg.js");
46166
46166
  await ensureSnapshotCoordinationReady(directory);
46167
46167
  const snapshot = {
46168
46168
  version: 3,
@@ -49340,7 +49340,7 @@ function planMerges(active, threshold, maxComparisons, maxMerges) {
49340
49340
  };
49341
49341
  }
49342
49342
  async function sweepActiveNearDuplicates(directory, options = {}) {
49343
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-v4dmx9nm.js");
49343
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zsvy6hyj.js");
49344
49344
  const { config } = loadPluginConfigWithMeta2(directory);
49345
49345
  const sweepConfig = config.learning?.dedup_sweep;
49346
49346
  if (sweepConfig?.enabled === false)
@@ -50464,7 +50464,7 @@ async function runCuratorPhase(directory, phase, agentsDispatched, config, knowl
50464
50464
  }
50465
50465
  if (config.skill_generation_enabled === true && skillCandidates.length > 0) {
50466
50466
  try {
50467
- const skillModule = await import("./skill-generator-jg8g3v1y.js");
50467
+ const skillModule = await import("./skill-generator-cvmvggej.js");
50468
50468
  for (const cand of skillCandidates) {
50469
50469
  if (cand.confidence < (config.min_skill_confidence ?? DEFAULT_SKILL_MIN_CONFIDENCE)) {
50470
50470
  continue;
@@ -50936,7 +50936,7 @@ async function applyCuratorKnowledgeUpdates(directory, recommendations, knowledg
50936
50936
  } catch {}
50937
50937
  }
50938
50938
  if (contradictedEntries.length > 0 && knowledgeConfig.contradiction_threshold_action === "quarantine") {
50939
- const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-pee8ed7v.js");
50939
+ const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-0tbrvw0y.js");
50940
50940
  for (const { id } of contradictedEntries) {
50941
50941
  try {
50942
50942
  await maybeQuarantineOnContradiction(directory, id, knowledgeConfig.contradiction_quarantine_threshold, knowledgeConfig.contradiction_quarantine_window_days);
@@ -51768,7 +51768,7 @@ async function runCuratorPostMortem(directory, options = {}) {
51768
51768
  warnings.push("Failed to collect knowledge summary.");
51769
51769
  }
51770
51770
  try {
51771
- const { getScanStatus } = await import("./scan-cursor-pw6t2b4p.js");
51771
+ const { getScanStatus } = await import("./scan-cursor-nyys1xp0.js");
51772
51772
  const scanStatus = await getScanStatus(directory);
51773
51773
  if (scanStatus.remaining_estimate > 0) {
51774
51774
  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.`);
@@ -51940,9 +51940,9 @@ var _internals57 = {
51940
51940
  verifyPostMortemKnowledgeActions,
51941
51941
  repairPostMortemActions,
51942
51942
  loadDefaultKnowledgeConfig: async (directory) => {
51943
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-txnvj734.js");
51943
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-3x47j05d.js");
51944
51944
  try {
51945
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-v4dmx9nm.js");
51945
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zsvy6hyj.js");
51946
51946
  const loaded = loadPluginConfigWithMeta2(directory);
51947
51947
  return KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
51948
51948
  } catch {
@@ -51950,11 +51950,11 @@ var _internals57 = {
51950
51950
  }
51951
51951
  },
51952
51952
  applyCuratorKnowledgeUpdates: async (directory, recommendations, knowledgeConfig, generation) => {
51953
- const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-186d4nm5.js");
51953
+ const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-8tkrb089.js");
51954
51954
  return applyCuratorKnowledgeUpdates2(directory, recommendations, knowledgeConfig, generation);
51955
51955
  },
51956
51956
  checkHivePromotions: async (entries2, knowledgeConfig, directory) => {
51957
- const { checkHivePromotions } = await import("./hive-promoter-s8q7y45e.js");
51957
+ const { checkHivePromotions } = await import("./hive-promoter-sq960nda.js");
51958
51958
  return checkHivePromotions(entries2, knowledgeConfig, directory);
51959
51959
  },
51960
51960
  applyProposalTriage: async (directory, triage) => {
@@ -51963,7 +51963,7 @@ var _internals57 = {
51963
51963
  activateProposal,
51964
51964
  listSkills: listSkills2,
51965
51965
  sanitizeSlug
51966
- } = await import("./skill-generator-jg8g3v1y.js");
51966
+ } = await import("./skill-generator-cvmvggej.js");
51967
51967
  const result = {
51968
51968
  approved: [],
51969
51969
  rejected: [],
@@ -52005,7 +52005,7 @@ var _internals57 = {
52005
52005
  return result;
52006
52006
  },
52007
52007
  readPriorDriftReports: async (directory) => {
52008
- const { readPriorDriftReports: readPriorDriftReports2 } = await import("./curator-drift-wag10j7q.js");
52008
+ const { readPriorDriftReports: readPriorDriftReports2 } = await import("./curator-drift-qjfxv50p.js");
52009
52009
  return readPriorDriftReports2(directory);
52010
52010
  },
52011
52011
  readSwarmKnowledge: (directory) => readKnowledge(resolveSwarmKnowledgePath(directory))
@@ -61808,9 +61808,9 @@ var _internals67 = {
61808
61808
  loadPluginConfigWithMeta,
61809
61809
  loadCuratorDeps: async () => {
61810
61810
  const [{ CuratorConfigSchema }, curator, { createCuratorLLMDelegate }] = await Promise.all([
61811
- import("./schema-txnvj734.js"),
61812
- import("./curator-186d4nm5.js"),
61813
- import("./curator-llm-factory-53p0h2zb.js")
61811
+ import("./schema-3x47j05d.js"),
61812
+ import("./curator-8tkrb089.js"),
61813
+ import("./curator-llm-factory-24megesc.js")
61814
61814
  ]);
61815
61815
  return { CuratorConfigSchema, curator, createCuratorLLMDelegate };
61816
61816
  }
@@ -63656,9 +63656,14 @@ async function hasGreenPostSettlementPreCheck(directory, settledAfterMs) {
63656
63656
  return { green: false, reason: "pre_check_failed_or_stale" };
63657
63657
  }
63658
63658
  if (evidenceType === "secretscan") {
63659
- if ((last.verdict === "pass" || last.verdict === "approved" || last.verdict === "info") && isSecretscanEvidence(last) && (last.incomplete_files ?? 0) === 0 && (last.files_scanned ?? 0) > 0 && (last.findings_count ?? 0) === 0) {
63660
- sawSecretscanGreen = true;
63661
- continue;
63659
+ if ((last.verdict === "pass" || last.verdict === "approved" || last.verdict === "info") && isSecretscanEvidence(last)) {
63660
+ const policySkipped = last.policy_skipped_files;
63661
+ const requestedFiles = last.requested_files;
63662
+ const vacuousCoverage = (last.files_scanned ?? 0) === 0 && typeof policySkipped === "number" && Number.isSafeInteger(policySkipped) && policySkipped >= 0 && typeof requestedFiles === "number" && Number.isSafeInteger(requestedFiles) && requestedFiles > 0 && policySkipped >= requestedFiles && (last.findings_count ?? 0) === 0 && (last.incomplete_files ?? 0) === 0 && last.incomplete_paths.length === 0;
63663
+ if ((last.incomplete_files ?? 0) === 0 && ((last.files_scanned ?? 0) > 0 || vacuousCoverage) && (last.findings_count ?? 0) === 0) {
63664
+ sawSecretscanGreen = true;
63665
+ continue;
63666
+ }
63662
63667
  }
63663
63668
  } else if (last.verdict === "pass" || last.verdict === "approved" || last.verdict === "info") {
63664
63669
  sawSastGreen = true;
@@ -64203,7 +64208,7 @@ async function computeCurationDiagnostics(directory, entries2) {
64203
64208
  let scanCompleted = false;
64204
64209
  let scanRemaining = 0;
64205
64210
  try {
64206
- const { getScanStatus } = await import("./scan-cursor-pw6t2b4p.js");
64211
+ const { getScanStatus } = await import("./scan-cursor-nyys1xp0.js");
64207
64212
  const status = await getScanStatus(directory);
64208
64213
  scanGeneration = status.generation;
64209
64214
  scanCompleted = status.completed;
@@ -64213,10 +64218,10 @@ async function computeCurationDiagnostics(directory, entries2) {
64213
64218
  try {
64214
64219
  const { isLinked: isLinked2 } = await import("./knowledge-link-xwn2ww1d.js");
64215
64220
  if (isLinked2(directory)) {
64216
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-txnvj734.js");
64221
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-3x47j05d.js");
64217
64222
  let config;
64218
64223
  try {
64219
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-v4dmx9nm.js");
64224
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zsvy6hyj.js");
64220
64225
  const loaded = loadPluginConfigWithMeta2(directory);
64221
64226
  config = KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
64222
64227
  } catch {
@@ -65671,7 +65676,7 @@ async function handleDoctorCommand(directory, args) {
65671
65676
  const result = runConfigDoctor(config, directory);
65672
65677
  let output;
65673
65678
  if (enableAutoFix && result.hasAutoFixableIssues) {
65674
- const { runConfigDoctorWithFixes } = await import("./config-doctor-5mqjz945.js");
65679
+ const { runConfigDoctorWithFixes } = await import("./config-doctor-8xynpb9m.js");
65675
65680
  const fixResult = await runConfigDoctorWithFixes(directory, config, true, {
65676
65681
  applyLossy: true
65677
65682
  });
@@ -65709,7 +65714,7 @@ async function handleDoctorCommand(directory, args) {
65709
65714
  `;
65710
65715
  }
65711
65716
  try {
65712
- const { runModelPreflight } = await import("./model-preflight-a42nfvb5.js");
65717
+ const { runModelPreflight } = await import("./model-preflight-v02k622n.js");
65713
65718
  const preflight = await runModelPreflight(config, swarmState.opencodeClient, { generatedAgentNames: swarmState.generatedAgentNames });
65714
65719
  const missingSelection = preflight.resolutions.filter((resolution) => resolution.status === "missing-selection");
65715
65720
  const unresolved = preflight.catalogAvailable ? preflight.resolutions.filter((resolution) => resolution.status === "unresolved") : [];
@@ -66636,7 +66641,7 @@ async function handleEvidenceCommand(directory, args) {
66636
66641
  return formatTaskEvidenceMarkdown(evidenceData);
66637
66642
  }
66638
66643
  async function handleEvidenceSummaryCommand(directory) {
66639
- const { buildEvidenceSummary } = await import("./evidence-summary-service-6wh823gt.js");
66644
+ const { buildEvidenceSummary } = await import("./evidence-summary-service-dnr5a5pk.js");
66640
66645
  const artifact = await buildEvidenceSummary(directory);
66641
66646
  if (!artifact) {
66642
66647
  return "No plan found. Run `/swarm plan` to check plan status.";
@@ -90969,7 +90974,7 @@ function createCuratorLLMDelegate(directory, mode = "init", sessionId) {
90969
90974
  }
90970
90975
  const sdkOpts = signal ? { signal } : {};
90971
90976
  try {
90972
- const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-4e30e36r.js");
90977
+ const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-rqtdtzv6.js");
90973
90978
  const createResult = await client.session.create({
90974
90979
  ...sessionId ? {
90975
90980
  body: {
@@ -93306,7 +93311,7 @@ async function cancelPrFeedbackLoopUnlocked(directory, sessionID, reason) {
93306
93311
  clearedEvents: []
93307
93312
  };
93308
93313
  try {
93309
- const { cancelPrFeedbackPublication: cancelPrFeedbackPublication2 } = await import("./pr-workflow-gate-5e8zq79d.js");
93314
+ const { cancelPrFeedbackPublication: cancelPrFeedbackPublication2 } = await import("./pr-workflow-gate-szwc4bd9.js");
93310
93315
  await cancelPrFeedbackPublication2(directory, sessionID, reason);
93311
93316
  } catch (err) {
93312
93317
  warn(`[pr-feedback-loop] cancelPrFeedbackPublication failed (fail-open): ${err instanceof Error ? err.message : String(err)}`);
@@ -95267,18 +95272,21 @@ async function runResolvedLint(command, mode, directory, abortSignal) {
95267
95272
  return buildExecutionError(mode, displayCommand, command.linter, runResult);
95268
95273
  }
95269
95274
  const exitCode = runResult.exitCode ?? 0;
95275
+ const combinedOutput = combineOutput(runResult);
95270
95276
  const result = {
95271
95277
  success: true,
95272
95278
  mode,
95273
95279
  linter: command.linter,
95274
95280
  command: displayCommand,
95275
95281
  exitCode,
95276
- output: combineOutput(runResult)
95282
+ output: combinedOutput
95277
95283
  };
95278
95284
  if (exitCode === 0) {
95279
95285
  result.message = `${command.linter} ${mode} completed successfully with no issues`;
95280
95286
  } else if (mode === "fix") {
95281
95287
  result.message = `${command.linter} fix completed with exit code ${exitCode}. Run check mode to see remaining issues.`;
95288
+ } else if (command.linter === "biome" && combinedOutput.includes("No files were processed")) {
95289
+ result.message = `${command.linter} check processed no files (all specified paths ignored by biome configuration)`;
95282
95290
  } else {
95283
95291
  result.message = `${command.linter} check found issues (exit code ${exitCode}).`;
95284
95292
  }
@@ -95553,6 +95561,11 @@ var DEFAULT_EXCLUDE_EXTENSIONS = new Set([
95553
95561
  ".log",
95554
95562
  ".md"
95555
95563
  ]);
95564
+ var DOCS_SAFE_EXCLUDE_EXTENSIONS = new Set([
95565
+ ".md",
95566
+ ".markdown",
95567
+ ".mdx"
95568
+ ]);
95556
95569
  var SECRET_PATTERNS2 = [
95557
95570
  {
95558
95571
  type: "aws_access_key",
@@ -96367,6 +96380,8 @@ var secretscan = createSwarmTool({
96367
96380
  count: allFindings.length,
96368
96381
  files_scanned: filesScanned,
96369
96382
  skipped_files: skippedFiles + stats.fileErrors + stats.symlinkSkipped,
96383
+ policy_skipped_files: 0,
96384
+ requested_files: 0,
96370
96385
  incomplete_files: incompleteFiles,
96371
96386
  incomplete_paths: discovery.incompletePaths
96372
96387
  };
@@ -96423,11 +96438,13 @@ async function runSecretscan(directory) {
96423
96438
  return errorResult;
96424
96439
  }
96425
96440
  }
96426
- async function runSecretscanOnFiles(files, directory) {
96441
+ async function runSecretscanOnFiles(files, directory, rawRequestedFiles) {
96427
96442
  try {
96428
96443
  const findings = [];
96429
96444
  let filesScanned = 0;
96430
96445
  let skippedFiles = 0;
96446
+ let policySkippedFiles = 0;
96447
+ const requestedFiles = Math.max(0, rawRequestedFiles ?? files.length);
96431
96448
  const incompletePaths = [];
96432
96449
  const rawRoot = path130.resolve(directory);
96433
96450
  const canonicalRoot = (() => {
@@ -96478,6 +96495,8 @@ async function runSecretscanOnFiles(files, directory) {
96478
96495
  const file = filesToScan[index];
96479
96496
  if (typeof file !== "string") {
96480
96497
  skippedFiles++;
96498
+ incompleteFiles++;
96499
+ recordIncompletePath(incompletePaths, canonicalRoot, canonicalRoot, "invalid_entry");
96481
96500
  continue;
96482
96501
  }
96483
96502
  const resolvedPath = path130.isAbsolute(file) ? path130.resolve(file) : path130.resolve(rawRoot, file);
@@ -96494,6 +96513,8 @@ async function runSecretscanOnFiles(files, directory) {
96494
96513
  const err = error2;
96495
96514
  if (err.code === "ENOENT") {
96496
96515
  skippedFiles++;
96516
+ incompleteFiles++;
96517
+ recordIncompletePath(incompletePaths, canonicalRoot, resolvedPath, "missing");
96497
96518
  continue;
96498
96519
  }
96499
96520
  skippedFiles++;
@@ -96516,15 +96537,20 @@ async function runSecretscanOnFiles(files, directory) {
96516
96537
  const ext = path130.extname(resolvedPath).toLowerCase();
96517
96538
  if (DEFAULT_EXCLUDE_EXTENSIONS.has(ext)) {
96518
96539
  skippedFiles++;
96540
+ if (DOCS_SAFE_EXCLUDE_EXTENSIONS.has(ext)) {
96541
+ policySkippedFiles++;
96542
+ }
96519
96543
  continue;
96520
96544
  }
96521
96545
  let scanPath = resolvedPath;
96522
96546
  try {
96523
- scanPath = fs66.realpathSync(resolvedPath);
96547
+ scanPath = _internals108.realpathSync(resolvedPath);
96524
96548
  } catch (error2) {
96525
96549
  const err = error2;
96526
96550
  if (err.code === "ENOENT") {
96527
96551
  skippedFiles++;
96552
+ incompleteFiles++;
96553
+ recordIncompletePath(incompletePaths, canonicalRoot, resolvedPath, "missing");
96528
96554
  continue;
96529
96555
  }
96530
96556
  skippedFiles++;
@@ -96574,6 +96600,8 @@ async function runSecretscanOnFiles(files, directory) {
96574
96600
  count: findings.length,
96575
96601
  files_scanned: filesScanned,
96576
96602
  skipped_files: skippedFiles,
96603
+ policy_skipped_files: policySkippedFiles,
96604
+ requested_files: requestedFiles,
96577
96605
  incomplete_files: incompleteFiles,
96578
96606
  incomplete_paths: incompletePaths
96579
96607
  };
@@ -96600,6 +96628,7 @@ var _internals108 = {
96600
96628
  readFileChunk: fs66.readSync,
96601
96629
  closeFile: fs66.closeSync,
96602
96630
  lstatFile: (path131) => fs66.lstatSync(path131, { bigint: true }),
96631
+ realpathSync: (path131) => fs66.realpathSync(path131),
96603
96632
  closeDirectory: (directory) => directory.closeSync()
96604
96633
  };
96605
96634
 
@@ -109561,7 +109590,7 @@ function buildDetailedHelp(commandName, entry) {
109561
109590
  async function handleHelpCommand(ctx) {
109562
109591
  const targetCommand = ctx.args.join(" ");
109563
109592
  if (!targetCommand) {
109564
- const { buildHelpText } = await import("./index-p32em2st.js");
109593
+ const { buildHelpText } = await import("./index-xhqzrh7e.js");
109565
109594
  return buildHelpText();
109566
109595
  }
109567
109596
  const tokens = targetCommand.split(/\s+/);
@@ -109575,7 +109604,7 @@ async function handleHelpCommand(ctx) {
109575
109604
  > Note: \`/swarm ${resolved.key}\` is a deprecated alias for \`/swarm ${aliasTarget}\`.` : detailed;
109576
109605
  }
109577
109606
  const similar = _internals27.findSimilarCommands(targetCommand);
109578
- const { buildHelpText: fullHelp } = await import("./index-p32em2st.js");
109607
+ const { buildHelpText: fullHelp } = await import("./index-xhqzrh7e.js");
109579
109608
  if (similar.length > 0) {
109580
109609
  return `Command '/swarm ${targetCommand}' not found.
109581
109610
 
@@ -109903,7 +109932,7 @@ var COMMAND_REGISTRY = {
109903
109932
  },
109904
109933
  "guardrail explain": {
109905
109934
  handler: async (ctx) => {
109906
- const { handleGuardrailExplain } = await import("./guardrail-explain-keqn86wf.js");
109935
+ const { handleGuardrailExplain } = await import("./guardrail-explain-e1v8k0wp.js");
109907
109936
  return handleGuardrailExplain(ctx.directory, ctx.args);
109908
109937
  },
109909
109938
  description: "Dry-run: show what the guardrails would do to a command or write target (executes nothing)",
@@ -109913,7 +109942,7 @@ var COMMAND_REGISTRY = {
109913
109942
  },
109914
109943
  "guardrail reset": {
109915
109944
  handler: async (ctx) => {
109916
- const { handleGuardrailReset } = await import("./guardrail-reset-7w1mrxsv.js");
109945
+ const { handleGuardrailReset } = await import("./guardrail-reset-457d9p0v.js");
109917
109946
  return handleGuardrailReset(ctx.args, ctx.sessionID);
109918
109947
  },
109919
109948
  description: "Reset one exact active invocation/action circuit after repair",
@@ -109934,7 +109963,7 @@ var COMMAND_REGISTRY = {
109934
109963
  },
109935
109964
  "guardrail-log": {
109936
109965
  handler: async (ctx) => {
109937
- const { handleGuardrailLog } = await import("./guardrail-log-nyfsyafa.js");
109966
+ const { handleGuardrailLog } = await import("./guardrail-log-cxxmstms.js");
109938
109967
  return handleGuardrailLog(ctx.directory, ctx.args);
109939
109968
  },
109940
109969
  description: "Read the guardrail decision log (use --blocks-only for blocks)",
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  autoCommitDirty,
4
4
  cleanUntrackedFiles
5
- } from "./index-38v2kw2f.js";
5
+ } from "./index-2nvwnfhp.js";
6
6
  import {
7
7
  isSpawnCwdMissing,
8
8
  isSpawnCwdUnreadable
@@ -3,7 +3,7 @@ import {
3
3
  queryHistoricalOutcomes,
4
4
  readKnowledgeEvents,
5
5
  recordKnowledgeEvent
6
- } from "./index-czsmzgsv.js";
6
+ } from "./index-422vhxgk.js";
7
7
  import {
8
8
  jaccardBigram,
9
9
  readKnowledge,
@@ -11,7 +11,7 @@ import {
11
11
  resolveSwarmKnowledgePath,
12
12
  transactKnowledge,
13
13
  wordBigrams
14
- } from "./index-qvk6eh90.js";
14
+ } from "./index-pg9v3yc1.js";
15
15
  import {
16
16
  init_knowledge_types,
17
17
  isActiveStatus
@@ -224,11 +224,11 @@ async function maybeQuarantineOnContradiction(directory, entryId, threshold, win
224
224
  alreadyInactive: true
225
225
  };
226
226
  }
227
- const { quarantineEntry } = await import("./knowledge-validator-r7p1h4gk.js");
227
+ const { quarantineEntry } = await import("./knowledge-validator-jkhcf22k.js");
228
228
  let policyConfig;
229
229
  try {
230
- const { KnowledgeConfigSchema } = await import("./schema-txnvj734.js");
231
- const { loadPluginConfigWithMeta } = await import("./index-v4dmx9nm.js");
230
+ const { KnowledgeConfigSchema } = await import("./schema-3x47j05d.js");
231
+ const { loadPluginConfigWithMeta } = await import("./index-zsvy6hyj.js");
232
232
  const { config: loadedConfig } = loadPluginConfigWithMeta(directory);
233
233
  policyConfig = KnowledgeConfigSchema.parse(loadedConfig.knowledge ?? {});
234
234
  } catch {
@@ -4,7 +4,7 @@ import {
4
4
  readShellAuditTail,
5
5
  redactPath,
6
6
  redactShellCommand
7
- } from "./index-scx7ap3m.js";
7
+ } from "./index-1835td25.js";
8
8
 
9
9
  // src/services/guardrail-log-service.ts
10
10
  var BLOCK_TYPES = new Set([
@@ -21,7 +21,7 @@ var package_default;
21
21
  var init_package = __esm(() => {
22
22
  package_default = {
23
23
  name: "opencode-swarm",
24
- version: "7.186.5",
24
+ version: "7.186.6",
25
25
  description: "Architect-centric agentic swarm plugin for OpenCode - hub-and-spoke orchestration with SME consultation, code generation, and QA review",
26
26
  main: "dist/index.js",
27
27
  types: "dist/index.d.ts",