opencode-swarm 7.125.1 → 7.125.2

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 (37) hide show
  1. package/dist/cli/{config-doctor-g3m2q646.js → config-doctor-8df6hk58.js} +2 -2
  2. package/dist/cli/{curation-policy-vgbx8530.js → curation-policy-7pvghg6f.js} +2 -2
  3. package/dist/cli/{curator-xk4g1nx2.js → curator-dw2zb74h.js} +12 -12
  4. package/dist/cli/{curator-llm-factory-7pvqy94w.js → curator-llm-factory-bntt6v8j.js} +12 -12
  5. package/dist/cli/{guardrail-explain-wfk16bpr.js → guardrail-explain-vmr4db9n.js} +13 -13
  6. package/dist/cli/{guardrail-log-5zz9xx6z.js → guardrail-log-8prd6cnc.js} +3 -3
  7. package/dist/cli/{hive-promoter-njwc5rt0.js → hive-promoter-xymt9vf2.js} +12 -12
  8. package/dist/cli/{index-txragda9.js → index-1s7jzcsy.js} +1 -1
  9. package/dist/cli/{index-kws8zn6y.js → index-39p1yyag.js} +1 -1
  10. package/dist/cli/{index-ghteqdy1.js → index-7mtvvt8p.js} +2 -2
  11. package/dist/cli/{index-kvrk3h8p.js → index-7ne6q2a0.js} +1 -1
  12. package/dist/cli/{index-dsf1yv4s.js → index-8ed9rz7y.js} +38 -36
  13. package/dist/cli/{index-z4sc6yxc.js → index-92xyawa7.js} +1 -1
  14. package/dist/cli/{index-mhhmecsw.js → index-em4h33my.js} +2 -2
  15. package/dist/cli/{index-3k8pg467.js → index-j8ptbcxz.js} +1 -1
  16. package/dist/cli/{index-mwdcvh0e.js → index-pgya7cnn.js} +4 -4
  17. package/dist/cli/{index-tn3shyqj.js → index-ptmhxsaf.js} +3 -3
  18. package/dist/cli/{index-8yvqkbw7.js → index-qcrah1jk.js} +3 -1
  19. package/dist/cli/{index-pbjenws7.js → index-sxdh19nk.js} +1 -1
  20. package/dist/cli/{index-83rwq7pb.js → index-tdpct4cz.js} +1 -1
  21. package/dist/cli/{index-93cq8t5b.js → index-v3f7jvm8.js} +5 -5
  22. package/dist/cli/{index-cz6fv84h.js → index-yrk6hfp1.js} +14 -14
  23. package/dist/cli/{index-rpg8qqjs.js → index-zbsxek49.js} +2 -2
  24. package/dist/cli/index.js +12 -12
  25. package/dist/cli/{knowledge-escalator-jtyykzqc.js → knowledge-escalator-47hfstmk.js} +3 -3
  26. package/dist/cli/{knowledge-events-qhr97sy9.js → knowledge-events-j5dpp72w.js} +1 -1
  27. package/dist/cli/{knowledge-store-332x3pjv.js → knowledge-store-58gt7m85.js} +1 -1
  28. package/dist/cli/{knowledge-validator-3t8tgzsz.js → knowledge-validator-jjxw5mwc.js} +4 -4
  29. package/dist/cli/{scan-cursor-q21c9k9q.js → scan-cursor-h8we8dfv.js} +2 -2
  30. package/dist/cli/{schema-y2d7j2jk.js → schema-xpqbhcyp.js} +1 -1
  31. package/dist/cli/{skill-generator-3gkxx98d.js → skill-generator-k8d0vff0.js} +5 -5
  32. package/dist/config/schema.d.ts +4 -0
  33. package/dist/hooks/knowledge-application-gate.d.ts +8 -2
  34. package/dist/hooks/knowledge-application.d.ts +2 -0
  35. package/dist/index.js +6 -6
  36. package/dist/state.d.ts +33 -2
  37. package/package.json +1 -1
@@ -12,8 +12,8 @@ import {
12
12
  shouldRunOnStartup,
13
13
  writeBackupArtifact,
14
14
  writeDoctorArtifact
15
- } from "./index-z4sc6yxc.js";
16
- import"./index-8yvqkbw7.js";
15
+ } from "./index-92xyawa7.js";
16
+ import"./index-qcrah1jk.js";
17
17
  import"./index-bk5tah7q.js";
18
18
  import"./index-z6xqpmqg.js";
19
19
  import"./index-zjygnfay.js";
@@ -4,9 +4,9 @@ import {
4
4
  authorizeCuration,
5
5
  buildConfigFingerprintInput,
6
6
  readCohortConfigFingerprint
7
- } from "./index-kvrk3h8p.js";
7
+ } from "./index-7ne6q2a0.js";
8
8
  import"./index-rtry5xyf.js";
9
- import"./index-83rwq7pb.js";
9
+ import"./index-tdpct4cz.js";
10
10
  import"./index-ae75rja9.js";
11
11
  import"./index-q27bajqb.js";
12
12
  import"./index-zgwm4ryv.js";
@@ -14,31 +14,31 @@ import {
14
14
  runCuratorInit,
15
15
  runCuratorPhase,
16
16
  writeCuratorSummary
17
- } from "./index-dsf1yv4s.js";
18
- import"./index-pbjenws7.js";
19
- import"./index-z4sc6yxc.js";
17
+ } from "./index-8ed9rz7y.js";
18
+ import"./index-sxdh19nk.js";
19
+ import"./index-92xyawa7.js";
20
20
  import"./index-fs02c7tz.js";
21
21
  import"./index-4905hd2m.js";
22
22
  import"./index-134d35c1.js";
23
23
  import"./index-6n2jpz7x.js";
24
- import"./index-tn3shyqj.js";
25
- import"./index-93cq8t5b.js";
26
- import"./index-kws8zn6y.js";
24
+ import"./index-ptmhxsaf.js";
25
+ import"./index-v3f7jvm8.js";
26
+ import"./index-39p1yyag.js";
27
27
  import"./index-vxv732ex.js";
28
28
  import"./index-c8s9a3zh.js";
29
29
  import"./index-s9mj4rb9.js";
30
30
  import"./index-23zsx7dm.js";
31
- import"./index-ghteqdy1.js";
32
- import"./index-kvrk3h8p.js";
31
+ import"./index-7mtvvt8p.js";
32
+ import"./index-7ne6q2a0.js";
33
33
  import"./index-rtry5xyf.js";
34
- import"./index-mwdcvh0e.js";
35
- import"./index-83rwq7pb.js";
34
+ import"./index-pgya7cnn.js";
35
+ import"./index-tdpct4cz.js";
36
36
  import"./index-ae75rja9.js";
37
37
  import"./index-q27bajqb.js";
38
- import"./index-3k8pg467.js";
38
+ import"./index-j8ptbcxz.js";
39
39
  import"./index-k5jrywpr.js";
40
40
  import"./index-n832052r.js";
41
- import"./index-8yvqkbw7.js";
41
+ import"./index-qcrah1jk.js";
42
42
  import"./index-bk5tah7q.js";
43
43
  import"./index-8fwhhayc.js";
44
44
  import"./index-q1exe2b3.js";
@@ -1,31 +1,31 @@
1
1
  // @bun
2
2
  import {
3
3
  createCuratorLLMDelegate
4
- } from "./index-dsf1yv4s.js";
5
- import"./index-pbjenws7.js";
6
- import"./index-z4sc6yxc.js";
4
+ } from "./index-8ed9rz7y.js";
5
+ import"./index-sxdh19nk.js";
6
+ import"./index-92xyawa7.js";
7
7
  import"./index-fs02c7tz.js";
8
8
  import"./index-4905hd2m.js";
9
9
  import"./index-134d35c1.js";
10
10
  import"./index-6n2jpz7x.js";
11
- import"./index-tn3shyqj.js";
12
- import"./index-93cq8t5b.js";
13
- import"./index-kws8zn6y.js";
11
+ import"./index-ptmhxsaf.js";
12
+ import"./index-v3f7jvm8.js";
13
+ import"./index-39p1yyag.js";
14
14
  import"./index-vxv732ex.js";
15
15
  import"./index-c8s9a3zh.js";
16
16
  import"./index-s9mj4rb9.js";
17
17
  import"./index-23zsx7dm.js";
18
- import"./index-ghteqdy1.js";
19
- import"./index-kvrk3h8p.js";
18
+ import"./index-7mtvvt8p.js";
19
+ import"./index-7ne6q2a0.js";
20
20
  import"./index-rtry5xyf.js";
21
- import"./index-mwdcvh0e.js";
22
- import"./index-83rwq7pb.js";
21
+ import"./index-pgya7cnn.js";
22
+ import"./index-tdpct4cz.js";
23
23
  import"./index-ae75rja9.js";
24
24
  import"./index-q27bajqb.js";
25
- import"./index-3k8pg467.js";
25
+ import"./index-j8ptbcxz.js";
26
26
  import"./index-k5jrywpr.js";
27
27
  import"./index-n832052r.js";
28
- import"./index-8yvqkbw7.js";
28
+ import"./index-qcrah1jk.js";
29
29
  import"./index-bk5tah7q.js";
30
30
  import"./index-8fwhhayc.js";
31
31
  import"./index-q1exe2b3.js";
@@ -1,32 +1,32 @@
1
1
  // @bun
2
2
  import {
3
3
  handleGuardrailExplain
4
- } from "./index-mhhmecsw.js";
5
- import"./index-dsf1yv4s.js";
6
- import"./index-pbjenws7.js";
7
- import"./index-z4sc6yxc.js";
4
+ } from "./index-em4h33my.js";
5
+ import"./index-8ed9rz7y.js";
6
+ import"./index-sxdh19nk.js";
7
+ import"./index-92xyawa7.js";
8
8
  import"./index-fs02c7tz.js";
9
9
  import"./index-4905hd2m.js";
10
10
  import"./index-134d35c1.js";
11
11
  import"./index-6n2jpz7x.js";
12
- import"./index-tn3shyqj.js";
13
- import"./index-93cq8t5b.js";
14
- import"./index-kws8zn6y.js";
12
+ import"./index-ptmhxsaf.js";
13
+ import"./index-v3f7jvm8.js";
14
+ import"./index-39p1yyag.js";
15
15
  import"./index-vxv732ex.js";
16
16
  import"./index-c8s9a3zh.js";
17
17
  import"./index-s9mj4rb9.js";
18
18
  import"./index-23zsx7dm.js";
19
- import"./index-ghteqdy1.js";
20
- import"./index-kvrk3h8p.js";
19
+ import"./index-7mtvvt8p.js";
20
+ import"./index-7ne6q2a0.js";
21
21
  import"./index-rtry5xyf.js";
22
- import"./index-mwdcvh0e.js";
23
- import"./index-83rwq7pb.js";
22
+ import"./index-pgya7cnn.js";
23
+ import"./index-tdpct4cz.js";
24
24
  import"./index-ae75rja9.js";
25
25
  import"./index-q27bajqb.js";
26
- import"./index-3k8pg467.js";
26
+ import"./index-j8ptbcxz.js";
27
27
  import"./index-k5jrywpr.js";
28
28
  import"./index-n832052r.js";
29
- import"./index-8yvqkbw7.js";
29
+ import"./index-qcrah1jk.js";
30
30
  import"./index-bk5tah7q.js";
31
31
  import"./index-8fwhhayc.js";
32
32
  import"./index-q1exe2b3.js";
@@ -1,9 +1,9 @@
1
1
  // @bun
2
2
  import {
3
3
  handleGuardrailLog
4
- } from "./index-txragda9.js";
5
- import"./index-pbjenws7.js";
6
- import"./index-8yvqkbw7.js";
4
+ } from "./index-1s7jzcsy.js";
5
+ import"./index-sxdh19nk.js";
6
+ import"./index-qcrah1jk.js";
7
7
  import"./index-bk5tah7q.js";
8
8
  import"./index-z6xqpmqg.js";
9
9
  import"./index-zjygnfay.js";
@@ -7,33 +7,33 @@ import {
7
7
  isHiveEligible,
8
8
  promoteFromSwarm,
9
9
  promoteToHive
10
- } from "./index-dsf1yv4s.js";
11
- import"./index-pbjenws7.js";
12
- import"./index-z4sc6yxc.js";
10
+ } from "./index-8ed9rz7y.js";
11
+ import"./index-sxdh19nk.js";
12
+ import"./index-92xyawa7.js";
13
13
  import"./index-fs02c7tz.js";
14
14
  import"./index-4905hd2m.js";
15
15
  import"./index-134d35c1.js";
16
16
  import"./index-6n2jpz7x.js";
17
- import"./index-tn3shyqj.js";
18
- import"./index-93cq8t5b.js";
19
- import"./index-kws8zn6y.js";
17
+ import"./index-ptmhxsaf.js";
18
+ import"./index-v3f7jvm8.js";
19
+ import"./index-39p1yyag.js";
20
20
  import"./index-vxv732ex.js";
21
21
  import"./index-c8s9a3zh.js";
22
22
  import"./index-s9mj4rb9.js";
23
23
  import"./index-23zsx7dm.js";
24
- import"./index-ghteqdy1.js";
25
- import"./index-kvrk3h8p.js";
24
+ import"./index-7mtvvt8p.js";
25
+ import"./index-7ne6q2a0.js";
26
26
  import"./index-rtry5xyf.js";
27
27
  import {
28
28
  resolveHiveKnowledgePath
29
- } from "./index-mwdcvh0e.js";
30
- import"./index-83rwq7pb.js";
29
+ } from "./index-pgya7cnn.js";
30
+ import"./index-tdpct4cz.js";
31
31
  import"./index-ae75rja9.js";
32
32
  import"./index-q27bajqb.js";
33
- import"./index-3k8pg467.js";
33
+ import"./index-j8ptbcxz.js";
34
34
  import"./index-k5jrywpr.js";
35
35
  import"./index-n832052r.js";
36
- import"./index-8yvqkbw7.js";
36
+ import"./index-qcrah1jk.js";
37
37
  import"./index-bk5tah7q.js";
38
38
  import"./index-8fwhhayc.js";
39
39
  import"./index-q1exe2b3.js";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  redactPath,
4
4
  redactShellCommand
5
- } from "./index-pbjenws7.js";
5
+ } from "./index-sxdh19nk.js";
6
6
 
7
7
  // src/services/guardrail-log-service.ts
8
8
  import * as fs from "fs/promises";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  readKnowledge,
4
4
  transactKnowledge
5
- } from "./index-mwdcvh0e.js";
5
+ } from "./index-pgya7cnn.js";
6
6
  import {
7
7
  resolveKnowledgeStoreDir
8
8
  } from "./index-q27bajqb.js";
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  authorizeCuration
4
- } from "./index-kvrk3h8p.js";
4
+ } from "./index-7ne6q2a0.js";
5
5
  import {
6
6
  findNearDuplicate,
7
7
  inferTags,
@@ -9,7 +9,7 @@ import {
9
9
  resolveSwarmKnowledgePath,
10
10
  resolveSwarmRejectedPath,
11
11
  transactKnowledge
12
- } from "./index-mwdcvh0e.js";
12
+ } from "./index-pgya7cnn.js";
13
13
  import {
14
14
  resolveKnowledgeStoreDir
15
15
  } from "./index-q27bajqb.js";
@@ -4,7 +4,7 @@ import {
4
4
  } from "./index-rtry5xyf.js";
5
5
  import {
6
6
  readKnowledgeEvents
7
- } from "./index-83rwq7pb.js";
7
+ } from "./index-tdpct4cz.js";
8
8
  import {
9
9
  isLinked,
10
10
  readLinkPointer,
@@ -4,7 +4,7 @@ import {
4
4
  readDoctorArtifact,
5
5
  removeStraySwarmDir,
6
6
  runConfigDoctor
7
- } from "./index-z4sc6yxc.js";
7
+ } from "./index-92xyawa7.js";
8
8
  import {
9
9
  EvaluationTaskV1Schema,
10
10
  GateAuditManifestV1Schema,
@@ -94,15 +94,15 @@ import {
94
94
  retireSkill,
95
95
  selectCandidateEntries,
96
96
  syncBundledProjectSkillsIfMissingAsync
97
- } from "./index-tn3shyqj.js";
97
+ } from "./index-ptmhxsaf.js";
98
98
  import {
99
99
  readRecentEscalations
100
- } from "./index-93cq8t5b.js";
100
+ } from "./index-v3f7jvm8.js";
101
101
  import {
102
102
  alreadyCuratedThisGeneration,
103
103
  claimNextScanBatch,
104
104
  resolveCohortId
105
- } from "./index-kws8zn6y.js";
105
+ } from "./index-39p1yyag.js";
106
106
  import {
107
107
  CURATOR_INIT_PROMPT,
108
108
  CURATOR_PHASE_PROMPT,
@@ -135,11 +135,11 @@ import {
135
135
  validateActionability,
136
136
  validateActionableFields,
137
137
  validateLesson
138
- } from "./index-ghteqdy1.js";
138
+ } from "./index-7mtvvt8p.js";
139
139
  import {
140
140
  authorizeCuration,
141
141
  buildConfigFingerprintInput
142
- } from "./index-kvrk3h8p.js";
142
+ } from "./index-7ne6q2a0.js";
143
143
  import {
144
144
  cohortConfigFingerprint
145
145
  } from "./index-rtry5xyf.js";
@@ -169,7 +169,7 @@ import {
169
169
  transactFile,
170
170
  transactKnowledge,
171
171
  wordBigrams
172
- } from "./index-mwdcvh0e.js";
172
+ } from "./index-pgya7cnn.js";
173
173
  import {
174
174
  MAX_EVENT_LOG_ENTRIES,
175
175
  _internals,
@@ -179,7 +179,7 @@ import {
179
179
  recordHiveKnowledgeEvent,
180
180
  recordKnowledgeEvent,
181
181
  resolveKnowledgeEventsPath
182
- } from "./index-83rwq7pb.js";
182
+ } from "./index-tdpct4cz.js";
183
183
  import {
184
184
  resolveHiveDataDir,
185
185
  resolveHiveEventsPath,
@@ -201,7 +201,7 @@ import {
201
201
  init_loader,
202
202
  loadPluginConfig,
203
203
  loadPluginConfigWithMeta
204
- } from "./index-3k8pg467.js";
204
+ } from "./index-j8ptbcxz.js";
205
205
  import {
206
206
  RetrospectiveEvidenceSchema
207
207
  } from "./index-k5jrywpr.js";
@@ -220,7 +220,7 @@ import {
220
220
  init_schema,
221
221
  init_tool_metadata,
222
222
  stripKnownSwarmPrefix
223
- } from "./index-8yvqkbw7.js";
223
+ } from "./index-qcrah1jk.js";
224
224
  import {
225
225
  KNOWLEDGE_SCHEMA_VERSION,
226
226
  OUTCOME_BLOCK_THRESHOLD,
@@ -10815,7 +10815,7 @@ async function runCuratorPhase(directory, phase, agentsDispatched, config, knowl
10815
10815
  }
10816
10816
  if (config.skill_generation_enabled === true && skillCandidates.length > 0) {
10817
10817
  try {
10818
- const skillModule = await import("./skill-generator-3gkxx98d.js");
10818
+ const skillModule = await import("./skill-generator-k8d0vff0.js");
10819
10819
  for (const cand of skillCandidates) {
10820
10820
  if (cand.confidence < (config.min_skill_confidence ?? DEFAULT_SKILL_MIN_CONFIDENCE)) {
10821
10821
  continue;
@@ -11152,7 +11152,7 @@ async function applyCuratorKnowledgeUpdates(directory, recommendations, knowledg
11152
11152
  } catch {}
11153
11153
  }
11154
11154
  if (contradictedEntries.length > 0 && knowledgeConfig.contradiction_threshold_action === "quarantine") {
11155
- const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-jtyykzqc.js");
11155
+ const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-47hfstmk.js");
11156
11156
  for (const { id } of contradictedEntries) {
11157
11157
  try {
11158
11158
  await maybeQuarantineOnContradiction(directory, id, knowledgeConfig.contradiction_quarantine_threshold, knowledgeConfig.contradiction_quarantine_window_days);
@@ -11951,7 +11951,7 @@ async function runCuratorPostMortem(directory, options = {}) {
11951
11951
  warnings.push("Failed to collect knowledge summary.");
11952
11952
  }
11953
11953
  try {
11954
- const { getScanStatus } = await import("./scan-cursor-q21c9k9q.js");
11954
+ const { getScanStatus } = await import("./scan-cursor-h8we8dfv.js");
11955
11955
  const scanStatus = await getScanStatus(directory);
11956
11956
  if (scanStatus.remaining_estimate > 0) {
11957
11957
  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.`);
@@ -12123,9 +12123,9 @@ var _internals15 = {
12123
12123
  verifyPostMortemKnowledgeActions,
12124
12124
  repairPostMortemActions,
12125
12125
  loadDefaultKnowledgeConfig: async (directory) => {
12126
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-y2d7j2jk.js");
12126
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-xpqbhcyp.js");
12127
12127
  try {
12128
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rpg8qqjs.js");
12128
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zbsxek49.js");
12129
12129
  const loaded = loadPluginConfigWithMeta2(directory);
12130
12130
  return KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
12131
12131
  } catch {
@@ -12133,11 +12133,11 @@ var _internals15 = {
12133
12133
  }
12134
12134
  },
12135
12135
  applyCuratorKnowledgeUpdates: async (directory, recommendations, knowledgeConfig, generation) => {
12136
- const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-xk4g1nx2.js");
12136
+ const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-dw2zb74h.js");
12137
12137
  return applyCuratorKnowledgeUpdates2(directory, recommendations, knowledgeConfig, generation);
12138
12138
  },
12139
12139
  checkHivePromotions: async (entries, knowledgeConfig, directory) => {
12140
- const { checkHivePromotions } = await import("./hive-promoter-njwc5rt0.js");
12140
+ const { checkHivePromotions } = await import("./hive-promoter-xymt9vf2.js");
12141
12141
  return checkHivePromotions(entries, knowledgeConfig, directory);
12142
12142
  },
12143
12143
  applyProposalTriage: async (directory, triage) => {
@@ -12146,7 +12146,7 @@ var _internals15 = {
12146
12146
  activateProposal,
12147
12147
  listSkills: listSkills2,
12148
12148
  sanitizeSlug
12149
- } = await import("./skill-generator-3gkxx98d.js");
12149
+ } = await import("./skill-generator-k8d0vff0.js");
12150
12150
  const result = {
12151
12151
  approved: [],
12152
12152
  rejected: [],
@@ -14671,9 +14671,9 @@ function hashContent(content) {
14671
14671
  return createHash7("sha1").update(content).digest("hex");
14672
14672
  }
14673
14673
  async function loadConfigForPolicyCurator(directory) {
14674
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-y2d7j2jk.js");
14674
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-xpqbhcyp.js");
14675
14675
  try {
14676
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rpg8qqjs.js");
14676
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zbsxek49.js");
14677
14677
  const { config: loadedConfig } = loadPluginConfigWithMeta2(directory);
14678
14678
  return KnowledgeConfigSchema2.parse(loadedConfig.knowledge ?? {});
14679
14679
  } catch {
@@ -17834,7 +17834,7 @@ async function runFinalizeStage(ctx) {
17834
17834
  }
17835
17835
  }
17836
17836
  try {
17837
- const { CuratorConfigSchema: CCS } = await import("./schema-y2d7j2jk.js");
17837
+ const { CuratorConfigSchema: CCS } = await import("./schema-xpqbhcyp.js");
17838
17838
  const { config: pmLoadedConfig } = _internals24.loadPluginConfigWithMeta(ctx.directory);
17839
17839
  const curatorCfg = CCS.parse(pmLoadedConfig.curator ?? {});
17840
17840
  if (curatorCfg.enabled && curatorCfg.postmortem_enabled) {
@@ -20003,9 +20003,9 @@ var _internals28 = {
20003
20003
  readSwarmFileAsync,
20004
20004
  loadCuratorDeps: async () => {
20005
20005
  const [{ CuratorConfigSchema }, curator, { createCuratorLLMDelegate: createCuratorLLMDelegate2 }] = await Promise.all([
20006
- import("./schema-y2d7j2jk.js"),
20007
- import("./curator-xk4g1nx2.js"),
20008
- import("./curator-llm-factory-7pvqy94w.js")
20006
+ import("./schema-xpqbhcyp.js"),
20007
+ import("./curator-dw2zb74h.js"),
20008
+ import("./curator-llm-factory-bntt6v8j.js")
20009
20009
  ]);
20010
20010
  return { CuratorConfigSchema, curator, createCuratorLLMDelegate: createCuratorLLMDelegate2 };
20011
20011
  }
@@ -20504,7 +20504,7 @@ import { fileURLToPath } from "url";
20504
20504
  // package.json
20505
20505
  var package_default = {
20506
20506
  name: "opencode-swarm",
20507
- version: "7.125.1",
20507
+ version: "7.125.2",
20508
20508
  description: "Architect-centric agentic swarm plugin for OpenCode - hub-and-spoke orchestration with SME consultation, code generation, and QA review",
20509
20509
  main: "dist/index.js",
20510
20510
  types: "dist/index.d.ts",
@@ -21025,7 +21025,7 @@ async function computeCurationDiagnostics(directory, entries) {
21025
21025
  let scanCompleted = false;
21026
21026
  let scanRemaining = 0;
21027
21027
  try {
21028
- const { getScanStatus } = await import("./scan-cursor-q21c9k9q.js");
21028
+ const { getScanStatus } = await import("./scan-cursor-h8we8dfv.js");
21029
21029
  const status = await getScanStatus(directory);
21030
21030
  scanGeneration = status.generation;
21031
21031
  scanCompleted = status.completed;
@@ -21035,17 +21035,17 @@ async function computeCurationDiagnostics(directory, entries) {
21035
21035
  try {
21036
21036
  const { isLinked: isLinked2 } = await import("./knowledge-link-4yd2z8ev.js");
21037
21037
  if (isLinked2(directory)) {
21038
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-y2d7j2jk.js");
21038
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-xpqbhcyp.js");
21039
21039
  let config;
21040
21040
  try {
21041
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-rpg8qqjs.js");
21041
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zbsxek49.js");
21042
21042
  const loaded = loadPluginConfigWithMeta2(directory);
21043
21043
  config = KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
21044
21044
  } catch {
21045
21045
  config = KnowledgeConfigSchema2.parse({});
21046
21046
  }
21047
21047
  const { cohortConfigFingerprint: cohortConfigFingerprint2 } = await import("./config-fingerprint-v22xh5a2.js");
21048
- const { buildConfigFingerprintInput: buildConfigFingerprintInput2, readCohortConfigFingerprint } = await import("./curation-policy-vgbx8530.js");
21048
+ const { buildConfigFingerprintInput: buildConfigFingerprintInput2, readCohortConfigFingerprint } = await import("./curation-policy-7pvghg6f.js");
21049
21049
  const currentFp = cohortConfigFingerprint2(buildConfigFingerprintInput2(config));
21050
21050
  const cohortFp = await readCohortConfigFingerprint(directory);
21051
21051
  configMatch = cohortFp === null ? null : currentFp === cohortFp;
@@ -22233,7 +22233,7 @@ async function handleDoctorCommand(directory, args) {
22233
22233
  const result = runConfigDoctor(config, directory);
22234
22234
  let output;
22235
22235
  if (enableAutoFix && result.hasAutoFixableIssues) {
22236
- const { runConfigDoctorWithFixes } = await import("./config-doctor-g3m2q646.js");
22236
+ const { runConfigDoctorWithFixes } = await import("./config-doctor-8df6hk58.js");
22237
22237
  const fixResult = await runConfigDoctorWithFixes(directory, config, true);
22238
22238
  output = formatDoctorMarkdown(fixResult.result);
22239
22239
  } else {
@@ -41008,7 +41008,7 @@ function buildDetailedHelp(commandName, entry) {
41008
41008
  async function handleHelpCommand(ctx) {
41009
41009
  const targetCommand = ctx.args.join(" ");
41010
41010
  if (!targetCommand) {
41011
- const { buildHelpText } = await import("./index-cz6fv84h.js");
41011
+ const { buildHelpText } = await import("./index-yrk6hfp1.js");
41012
41012
  return buildHelpText();
41013
41013
  }
41014
41014
  const tokens = targetCommand.split(/\s+/);
@@ -41017,7 +41017,7 @@ async function handleHelpCommand(ctx) {
41017
41017
  return _internals62.buildDetailedHelp(resolved.key, resolved.entry);
41018
41018
  }
41019
41019
  const similar = _internals62.findSimilarCommands(targetCommand);
41020
- const { buildHelpText: fullHelp } = await import("./index-cz6fv84h.js");
41020
+ const { buildHelpText: fullHelp } = await import("./index-yrk6hfp1.js");
41021
41021
  if (similar.length > 0) {
41022
41022
  return `Command '/swarm ${targetCommand}' not found.
41023
41023
 
@@ -41156,7 +41156,7 @@ var COMMAND_REGISTRY = {
41156
41156
  },
41157
41157
  "guardrail explain": {
41158
41158
  handler: async (ctx) => {
41159
- const { handleGuardrailExplain } = await import("./guardrail-explain-wfk16bpr.js");
41159
+ const { handleGuardrailExplain } = await import("./guardrail-explain-vmr4db9n.js");
41160
41160
  return handleGuardrailExplain(ctx.directory, ctx.args);
41161
41161
  },
41162
41162
  description: "Dry-run: show what the guardrails would do to a command or write target (executes nothing)",
@@ -41166,7 +41166,7 @@ var COMMAND_REGISTRY = {
41166
41166
  },
41167
41167
  "guardrail-explain": {
41168
41168
  handler: async (ctx) => {
41169
- const { handleGuardrailExplain } = await import("./guardrail-explain-wfk16bpr.js");
41169
+ const { handleGuardrailExplain } = await import("./guardrail-explain-vmr4db9n.js");
41170
41170
  return handleGuardrailExplain(ctx.directory, ctx.args);
41171
41171
  },
41172
41172
  description: "Dry-run: show what the guardrails would do to a command or write target (executes nothing)",
@@ -41176,7 +41176,7 @@ var COMMAND_REGISTRY = {
41176
41176
  },
41177
41177
  "guardrail-log": {
41178
41178
  handler: async (ctx) => {
41179
- const { handleGuardrailLog } = await import("./guardrail-log-5zz9xx6z.js");
41179
+ const { handleGuardrailLog } = await import("./guardrail-log-8prd6cnc.js");
41180
41180
  return handleGuardrailLog(ctx.directory, ctx.args);
41181
41181
  },
41182
41182
  description: "Read the guardrail decision log (use --blocks-only for blocks)",
@@ -42533,7 +42533,7 @@ For every applicable directive in the block:
42533
42533
  - If a directive references a generated skill via \`skill: file:...\`, you MUST add that path to the SKILLS: field of any matching subagent delegation.
42534
42534
  - If a directive does NOT apply to the current action, record \`KNOWLEDGE_IGNORED: <id> reason=<short reason>\` once in your reply.
42535
42535
  - If runtime evidence shows a directive was violated (reviewer rejection, failing test, scope breach), record \`KNOWLEDGE_VIOLATED: <id> reason=<reason>\` and re-plan.
42536
- - NEVER silently ignore a \`priority: critical\` directive. The knowledge_application gate may run in 'enforce' mode; in that mode an omitted ack on a critical directive blocks the action.
42536
+ - NEVER silently ignore a \`priority: critical\` directive. The knowledge_application gate may run in 'enforce' mode; in that mode an omitted ack on a critical directive blocks the action for a bounded number of retries and time window (\`max_gate_denials\`, \`gate_staleness_ms\`), after which it auto-clears and logs the bypass \u2014 do not attempt out-of-band workarounds (editing .swarm/ state files, restarting sessions) to escape it; retry the ack with a correctly-terminated marker instead.
42537
42537
 
42538
42538
  Chat-text markers (KNOWLEDGE_APPLIED/IGNORED/VIOLATED) are the sole mechanism that satisfies the knowledge-application enforcement gate. The \`knowledge_receipt\` tool records knowledge-usage receipts for audit but does NOT satisfy the gate.
42539
42539
 
@@ -46686,6 +46686,7 @@ var swarmState = {
46686
46686
  specWriterAgentNames: [],
46687
46687
  currentCriticalShownIds: new Map,
46688
46688
  knowledgeAckDedup: new Set,
46689
+ gateDenialCounts: new Map,
46689
46690
  generatedAgentNames: [],
46690
46691
  lastBudgetPct: 0,
46691
46692
  agentSessions: defaultRunContext.agentSessions,
@@ -46714,6 +46715,7 @@ function resetSwarmState() {
46714
46715
  swarmState.specWriterAgentNames = [];
46715
46716
  swarmState.currentCriticalShownIds.clear();
46716
46717
  swarmState.knowledgeAckDedup.clear();
46718
+ swarmState.gateDenialCounts.clear();
46717
46719
  swarmState.generatedAgentNames = [];
46718
46720
  _rehydrationCache = null;
46719
46721
  swarmState.fullAutoEnabledInConfig = false;
@@ -7,7 +7,7 @@ import {
7
7
  init_constants,
8
8
  init_schema,
9
9
  stripKnownSwarmPrefix
10
- } from "./index-8yvqkbw7.js";
10
+ } from "./index-qcrah1jk.js";
11
11
  import {
12
12
  log
13
13
  } from "./index-zgwm4ryv.js";
@@ -12,14 +12,14 @@ import {
12
12
  detectPosixWrites,
13
13
  detectWindowsWrites,
14
14
  resolveWriteTargets
15
- } from "./index-dsf1yv4s.js";
15
+ } from "./index-8ed9rz7y.js";
16
16
  import {
17
17
  checkFileAuthority,
18
18
  classifyFile,
19
19
  isInDeclaredScope,
20
20
  redactPath,
21
21
  redactShellCommand
22
- } from "./index-pbjenws7.js";
22
+ } from "./index-sxdh19nk.js";
23
23
 
24
24
  // src/services/guardrail-explain-service.ts
25
25
  import path from "path";
@@ -8,7 +8,7 @@ import {
8
8
  init_constants,
9
9
  init_schema,
10
10
  resolveExternalSkillsConfig
11
- } from "./index-8yvqkbw7.js";
11
+ } from "./index-qcrah1jk.js";
12
12
  import {
13
13
  advisoryWarn,
14
14
  init_warning_buffer
@@ -650,7 +650,7 @@ async function applyConfidenceFloorAction(directory, touched, options) {
650
650
  const recovered = touched.filter((e) => e.confidence > CONFIDENCE_FLOOR + FLOOR_EPSILON && e.confidence_floor_demoted);
651
651
  if (atFloor.length === 0 && recovered.length === 0)
652
652
  return;
653
- const { readKnowledgeCounterRollups, effectiveRetrievalOutcomes } = await import("./knowledge-events-qhr97sy9.js");
653
+ const { readKnowledgeCounterRollups, effectiveRetrievalOutcomes } = await import("./knowledge-events-j5dpp72w.js");
654
654
  const rollups = await readKnowledgeCounterRollups(directory);
655
655
  const flagIds = new Set;
656
656
  for (const e of atFloor) {
@@ -717,11 +717,11 @@ async function applyConfidenceFloorAction(directory, touched, options) {
717
717
  });
718
718
  }
719
719
  if (action === "quarantine" && toQuarantine.length > 0) {
720
- const { quarantineEntry } = await import("./knowledge-validator-3t8tgzsz.js");
721
- const { KnowledgeConfigSchema } = await import("./schema-y2d7j2jk.js");
720
+ const { quarantineEntry } = await import("./knowledge-validator-jjxw5mwc.js");
721
+ const { KnowledgeConfigSchema } = await import("./schema-xpqbhcyp.js");
722
722
  let config;
723
723
  try {
724
- const { loadPluginConfigWithMeta } = await import("./index-rpg8qqjs.js");
724
+ const { loadPluginConfigWithMeta } = await import("./index-zbsxek49.js");
725
725
  const { config: loadedConfig } = loadPluginConfigWithMeta(directory);
726
726
  config = KnowledgeConfigSchema.parse(loadedConfig.knowledge ?? {});
727
727
  } catch {
@@ -2,18 +2,18 @@
2
2
  import {
3
3
  ALLOWED_SKILL_PATH_PREFIXES,
4
4
  validateSkillPath
5
- } from "./index-ghteqdy1.js";
5
+ } from "./index-7mtvvt8p.js";
6
6
  import {
7
7
  computeOutcomeSignal,
8
8
  readKnowledge,
9
9
  resolveHiveKnowledgePath,
10
10
  resolveSwarmKnowledgePath,
11
11
  transactKnowledge
12
- } from "./index-mwdcvh0e.js";
12
+ } from "./index-pgya7cnn.js";
13
13
  import {
14
14
  effectiveRetrievalOutcomes,
15
15
  readKnowledgeCounterRollups
16
- } from "./index-83rwq7pb.js";
16
+ } from "./index-tdpct4cz.js";
17
17
  import {
18
18
  init_knowledge_types,
19
19
  isActiveStatus
@@ -1944,7 +1944,9 @@ var init_schema = __esm(() => {
1944
1944
  "phase_complete",
1945
1945
  "task",
1946
1946
  "Task"
1947
- ])
1947
+ ]),
1948
+ max_gate_denials: exports_external.number().int().min(1).max(100).default(5),
1949
+ gate_staleness_ms: exports_external.number().int().min(1e4).max(3600000).default(600000)
1948
1950
  });
1949
1951
  SkillPropagationAudienceSchema = exports_external.string().max(64).refine((value) => value !== "swarm-plugin", {
1950
1952
  message: "swarm-plugin is reserved for plugin-internal skill routing"