opencode-swarm 7.200.4 → 7.200.5

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 (73) 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/{attest-task-dch4wwmn.js → attest-task-0k72fh70.js} +26 -26
  4. package/dist/cli/{auto-checkpoint-7ef4x67m.js → auto-checkpoint-8g004dar.js} +4 -4
  5. package/dist/cli/{checkpoint-3a7rgjs9.js → checkpoint-18wx2473.js} +9 -9
  6. package/dist/cli/{coder-settlement-5mgxjwz9.js → coder-settlement-r2q6pkxc.js} +4 -4
  7. package/dist/cli/{config-doctor-pes681a5.js → config-doctor-h071vxsj.js} +7 -7
  8. package/dist/cli/{core-fxxnawnv.js → core-6767154r.js} +1 -1
  9. package/dist/cli/{curator-drift-jtqr5rwe.js → curator-drift-gd7tckag.js} +5 -5
  10. package/dist/cli/{curator-llm-factory-fp9gzt41.js → curator-llm-factory-mf701qb7.js} +26 -26
  11. package/dist/cli/{curator-tncdqrcf.js → curator-pf0edk2z.js} +26 -26
  12. package/dist/cli/{doctor-knowledge-receipt-phase-id-6wan4z5n.js → doctor-knowledge-receipt-phase-id-zz0tz3pt.js} +5 -4
  13. package/dist/cli/{evidence-summary-service-cnvgae1a.js → evidence-summary-service-awjxt2am.js} +10 -10
  14. package/dist/cli/{gate-evidence-hmdnb430.js → gate-evidence-tvkhkqwy.js} +2 -2
  15. package/dist/cli/{guardrail-explain-7g0y6ahb.js → guardrail-explain-m70anx1g.js} +27 -27
  16. package/dist/cli/{guardrail-log-wpm6srkg.js → guardrail-log-3sf6n33b.js} +4 -4
  17. package/dist/cli/{guardrail-reset-henzpvh4.js → guardrail-reset-t94jbv1q.js} +26 -26
  18. package/dist/cli/{hive-promoter-zr4xnyxn.js → hive-promoter-60h9tqgs.js} +26 -26
  19. package/dist/cli/{index-3vwfpqaj.js → index-10myvh2k.js} +1 -1
  20. package/dist/cli/{index-2xdsmkev.js → index-1akazdbj.js} +1 -1
  21. package/dist/cli/{index-zbxahqb0.js → index-1asbb0r4.js} +1 -1
  22. package/dist/cli/{index-ss8wnczy.js → index-1by2qd8n.js} +4 -4
  23. package/dist/cli/{index-6rxm153v.js → index-3x8mz39c.js} +1 -1
  24. package/dist/cli/{index-ddf3f3k8.js → index-4mjfdpte.js} +6 -6
  25. package/dist/cli/{index-70ctksz3.js → index-5qajesjq.js} +3 -3
  26. package/dist/cli/{index-1qc3fhnv.js → index-687c2ze1.js} +3 -3
  27. package/dist/cli/{index-5fm37ceh.js → index-74n7sz4s.js} +1 -1
  28. package/dist/cli/{index-2s3wgvj8.js → index-826kptfe.js} +3 -3
  29. package/dist/cli/{index-66c8xae5.js → index-8c51asrp.js} +2019 -1887
  30. package/dist/cli/{index-q8456mrf.js → index-b4amh1n3.js} +3 -3
  31. package/dist/cli/{index-43djb5h6.js → index-cy2gbs5b.js} +1 -1
  32. package/dist/cli/{index-fz5qbpbw.js → index-dsqavehz.js} +1 -1
  33. package/dist/cli/{index-yp5p6kpf.js → index-ee59rzwk.js} +2 -2
  34. package/dist/cli/{index-5dkwdfh9.js → index-g1b5xxzc.js} +5 -3
  35. package/dist/cli/{index-52arsav6.js → index-h8419k5d.js} +4 -4
  36. package/dist/cli/{index-snft68y9.js → index-hfnj4s6r.js} +26 -26
  37. package/dist/cli/{index-vqzsp93p.js → index-k01n01sc.js} +3 -3
  38. package/dist/cli/{index-8jbvmffw.js → index-phz90w3t.js} +1 -1
  39. package/dist/cli/{index-gs4gnndf.js → index-pvj101jx.js} +3 -3
  40. package/dist/cli/{index-hmndq4hk.js → index-ryrg48c7.js} +5 -5
  41. package/dist/cli/{index-08h39kf4.js → index-se501ytb.js} +1 -1
  42. package/dist/cli/{index-81b69x1b.js → index-twwdx79t.js} +1 -1
  43. package/dist/cli/{index-5y245xwk.js → index-vxbj42j0.js} +2 -2
  44. package/dist/cli/{index-fs6t820n.js → index-vz1fh1v3.js} +3 -3
  45. package/dist/cli/{index-zystaewy.js → index-wyfag7r7.js} +38 -4
  46. package/dist/cli/{index-0swbpe4d.js → index-xdk3cxs9.js} +28 -28
  47. package/dist/cli/{index-xd5jn7nr.js → index-xh861gf3.js} +2 -2
  48. package/dist/cli/{index-qgzg1vac.js → index-yamz6830.js} +1 -1
  49. package/dist/cli/index.js +27 -27
  50. package/dist/cli/{knowledge-escalator-a9mkynzv.js → knowledge-escalator-3096yt7j.js} +8 -7
  51. package/dist/cli/{knowledge-events-r720tzeq.js → knowledge-events-st3j22za.js} +6 -5
  52. package/dist/cli/{knowledge-store-4gktt30d.js → knowledge-store-9q8jvd0p.js} +1 -1
  53. package/dist/cli/{knowledge-validator-fv4qgn0x.js → knowledge-validator-fak1fvdm.js} +2 -2
  54. package/dist/cli/{mcp-tx4qjmr1.js → mcp-shvt5c9b.js} +1 -1
  55. package/dist/cli/{model-preflight-4pexdgrc.js → model-preflight-cxhdzc9c.js} +26 -26
  56. package/dist/cli/{pending-delegations-9sbf3na8.js → pending-delegations-tjj8nhmm.js} +2 -2
  57. package/dist/cli/{pr-subscriptions-db26rzak.js → pr-subscriptions-xtnbfg8m.js} +1 -1
  58. package/dist/cli/{pr-workflow-gate-t8kewb9h.js → pr-workflow-gate-24ytg64p.js} +26 -26
  59. package/dist/cli/{scan-cursor-53s9zt38.js → scan-cursor-drax4dt3.js} +2 -2
  60. package/dist/cli/{schema-eaq24w9q.js → schema-epr5xxb0.js} +1 -1
  61. package/dist/cli/{scope-persistence-erxj8vq6.js → scope-persistence-pyn9vb4r.js} +6 -6
  62. package/dist/cli/{server-95fz00er.js → server-c5b651kg.js} +26 -26
  63. package/dist/cli/{skill-generator-kt8j40ev.js → skill-generator-r8kvvbh2.js} +9 -8
  64. package/dist/cli/{snapshot-coordination-init-b08vm3ye.js → snapshot-coordination-init-wnt85258.js} +26 -26
  65. package/dist/cli/{speckit-checkoff-3g3bfv0y.js → speckit-checkoff-64p4d5hf.js} +3 -3
  66. package/dist/cli/{worktree-collision-ownership-sf7vbj8n.js → worktree-collision-ownership-eej2phhm.js} +2 -2
  67. package/dist/cli/{worktree-isolation-5eh9bgcm.js → worktree-isolation-xsc0k2n3.js} +26 -26
  68. package/dist/hooks/guardrails/tool-before.d.ts +35 -4
  69. package/dist/hooks/knowledge-receipt-ledger.d.ts +19 -4
  70. package/dist/hooks/phase-complete-directive-gate.d.ts +13 -1
  71. package/dist/hooks/shell-write-detect.d.ts +12 -0
  72. package/dist/index.js +62 -62
  73. package/package.json +1 -1
@@ -5,18 +5,18 @@ import {
5
5
  import {
6
6
  effectiveRetrievalOutcomes,
7
7
  readAuthoritativeKnowledgeCounterRollups
8
- } from "./index-yp5p6kpf.js";
8
+ } from "./index-ee59rzwk.js";
9
9
  import {
10
10
  ALLOWED_SKILL_PATH_PREFIXES,
11
11
  validateSkillPath
12
- } from "./index-3vwfpqaj.js";
12
+ } from "./index-10myvh2k.js";
13
13
  import {
14
14
  computeOutcomeSignal,
15
15
  readKnowledge,
16
16
  resolveHiveKnowledgePath,
17
17
  resolveSwarmKnowledgePath,
18
18
  transactKnowledge
19
- } from "./index-52arsav6.js";
19
+ } from "./index-h8419k5d.js";
20
20
  import {
21
21
  appendCappedJsonl,
22
22
  resolveRetentionCap
@@ -12,7 +12,7 @@ import {
12
12
  readTaskEvidence,
13
13
  readTaskEvidenceRaw,
14
14
  sanitizeTaskId
15
- } from "./index-2xdsmkev.js";
15
+ } from "./index-1akazdbj.js";
16
16
  import {
17
17
  readSwarmFileAsync,
18
18
  validateSwarmPath
@@ -16,7 +16,7 @@ import {
16
16
  init_schema,
17
17
  resolveExternalSkillsConfig,
18
18
  retiredEpicKeyReplacement
19
- } from "./index-08h39kf4.js";
19
+ } from "./index-se501ytb.js";
20
20
  import {
21
21
  DangerousMergeKeyError,
22
22
  MAX_MERGE_DEPTH,
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  queryHistoricalOutcomes
4
- } from "./index-zystaewy.js";
4
+ } from "./index-wyfag7r7.js";
5
5
  import {
6
6
  resolveHiveEventsPath
7
7
  } from "./index-ae75rja9.js";
@@ -708,7 +708,7 @@ async function applyKnowledgeVerdictFeedback(directory, options) {
708
708
  }
709
709
  let bumps = 0;
710
710
  if (deltas.length > 0) {
711
- const { bumpKnowledgeConfidenceBatch } = await import("./knowledge-store-4gktt30d.js");
711
+ const { bumpKnowledgeConfidenceBatch } = await import("./knowledge-store-9q8jvd0p.js");
712
712
  bumps = await bumpKnowledgeConfidenceBatch(directory, deltas, options?.floorOptions);
713
713
  }
714
714
  return {
@@ -14,19 +14,21 @@ import {
14
14
  detectPosixWrites,
15
15
  detectWindowsWrites,
16
16
  getSharedClassifierGuardrailBlock,
17
+ isEmptyDirectoryRemovalWithinWorkspace,
18
+ isPosixRmdirExecutor,
17
19
  isPowerShellReadOnlyPipeline,
18
20
  isPowerShellShaped,
19
21
  mergeWriteAnalyses,
20
22
  resolveWindowsWriteAuthority,
21
23
  resolveWriteTargets
22
- } from "./index-66c8xae5.js";
24
+ } from "./index-8c51asrp.js";
23
25
  import {
24
26
  checkFileAuthority,
25
27
  classifyFile,
26
28
  isInDeclaredScope,
27
29
  redactPath,
28
30
  redactShellCommand
29
- } from "./index-ss8wnczy.js";
31
+ } from "./index-1by2qd8n.js";
30
32
 
31
33
  // src/services/guardrail-explain-service.ts
32
34
  import path from "path";
@@ -385,7 +387,7 @@ async function handleGuardrailExplain(directory, args) {
385
387
  for (const write of resolvedWrites) {
386
388
  if (write.resolvedPath) {
387
389
  if (agent !== "architect") {
388
- const inScope = isInDeclaredScope(write.resolvedPath, scopeEntries, directory);
390
+ const inScope = isInDeclaredScope(write.resolvedPath, scopeEntries, directory) || write.original.emptyDirectoryRemoval === true && isPosixRmdirExecutor("shell", authority, detectionCommand) && isEmptyDirectoryRemovalWithinWorkspace(write.resolvedPath, directory);
389
391
  if (!inScope) {
390
392
  decision = "block";
391
393
  firingRule = `scope_violation: write outside declared scope: ${redactPath(write.resolvedPath)}`;
@@ -739,7 +739,7 @@ async function applyConfidenceFloorAction(directory, touched, options) {
739
739
  const {
740
740
  readAuthoritativeKnowledgeCounterRollups,
741
741
  effectiveRetrievalOutcomes
742
- } = await import("./knowledge-events-r720tzeq.js");
742
+ } = await import("./knowledge-events-st3j22za.js");
743
743
  const rollups = await readAuthoritativeKnowledgeCounterRollups(directory);
744
744
  const flagIds = new Set;
745
745
  for (const e of atFloor) {
@@ -806,11 +806,11 @@ async function applyConfidenceFloorAction(directory, touched, options) {
806
806
  });
807
807
  }
808
808
  if (action === "quarantine" && toQuarantine.length > 0) {
809
- const { quarantineEntry } = await import("./knowledge-validator-fv4qgn0x.js");
810
- const { KnowledgeConfigSchema } = await import("./schema-eaq24w9q.js");
809
+ const { quarantineEntry } = await import("./knowledge-validator-fak1fvdm.js");
810
+ const { KnowledgeConfigSchema } = await import("./schema-epr5xxb0.js");
811
811
  let config;
812
812
  try {
813
- const { loadPluginConfigWithMeta } = await import("./index-fs6t820n.js");
813
+ const { loadPluginConfigWithMeta } = await import("./index-vz1fh1v3.js");
814
814
  const { config: loadedConfig } = loadPluginConfigWithMeta(directory);
815
815
  config = KnowledgeConfigSchema.parse(loadedConfig.knowledge ?? {});
816
816
  } catch {
@@ -23,62 +23,62 @@ import {
23
23
  resolveFallbackModel,
24
24
  resolvePrimaryAgentNames,
25
25
  stripSwarmPrefix
26
- } from "./index-66c8xae5.js";
26
+ } from "./index-8c51asrp.js";
27
27
  import"./index-p2dst45x.js";
28
- import"./index-ss8wnczy.js";
29
- import"./index-vqzsp93p.js";
30
- import"./index-43djb5h6.js";
28
+ import"./index-1by2qd8n.js";
29
+ import"./index-k01n01sc.js";
30
+ import"./index-cy2gbs5b.js";
31
31
  import"./index-4ph7ad0b.js";
32
32
  import"./index-axqyjreb.js";
33
33
  import"./index-txdagbh7.js";
34
- import"./index-ddf3f3k8.js";
35
- import"./index-6rxm153v.js";
34
+ import"./index-4mjfdpte.js";
35
+ import"./index-3x8mz39c.js";
36
36
  import {
37
37
  createExplorerAgent
38
38
  } from "./index-rdec0y3z.js";
39
- import"./index-5fm37ceh.js";
40
- import"./index-2s3wgvj8.js";
41
- import"./index-q8456mrf.js";
39
+ import"./index-74n7sz4s.js";
40
+ import"./index-826kptfe.js";
41
+ import"./index-b4amh1n3.js";
42
42
  import"./index-bk8r4m9j.js";
43
43
  import"./index-tecp3a77.js";
44
44
  import"./index-x5jwegqw.js";
45
45
  import"./index-7h22y3ew.js";
46
- import"./index-gs4gnndf.js";
46
+ import"./index-pvj101jx.js";
47
47
  import"./index-pt7h91zc.js";
48
48
  import"./index-q7sjgr1y.js";
49
- import"./index-1qc3fhnv.js";
50
- import"./index-hmndq4hk.js";
49
+ import"./index-687c2ze1.js";
50
+ import"./index-ryrg48c7.js";
51
51
  import"./index-6b295cas.js";
52
52
  import"./index-9nyqt3kb.js";
53
- import"./index-70ctksz3.js";
53
+ import"./index-5qajesjq.js";
54
54
  import"./index-697mg68b.js";
55
55
  import"./index-8mrentmw.js";
56
- import"./index-8jbvmffw.js";
57
- import"./index-2xdsmkev.js";
58
- import"./index-81b69x1b.js";
56
+ import"./index-phz90w3t.js";
57
+ import"./index-1akazdbj.js";
58
+ import"./index-twwdx79t.js";
59
59
  import"./index-spggmr30.js";
60
- import"./index-yp5p6kpf.js";
61
- import"./index-zystaewy.js";
60
+ import"./index-ee59rzwk.js";
61
+ import"./index-wyfag7r7.js";
62
62
  import"./index-m9zzj4ee.js";
63
63
  import"./index-4krkevgc.js";
64
- import"./index-3vwfpqaj.js";
64
+ import"./index-10myvh2k.js";
65
65
  import"./index-mhd6kdzr.js";
66
66
  import"./index-rtry5xyf.js";
67
- import"./index-xd5jn7nr.js";
67
+ import"./index-xh861gf3.js";
68
68
  import"./index-g22dps7x.js";
69
69
  import"./index-0725jpp7.js";
70
- import"./index-zbxahqb0.js";
70
+ import"./index-1asbb0r4.js";
71
71
  import"./index-v839c9mv.js";
72
- import"./index-5y245xwk.js";
72
+ import"./index-vxbj42j0.js";
73
73
  import"./index-2x015vjy.js";
74
74
  import"./index-y7c4hqcj.js";
75
75
  import"./index-ry16d01s.js";
76
76
  import"./index-rdm3px0g.js";
77
77
  import"./index-vtpt8yns.js";
78
78
  import"./index-7pmbnjvj.js";
79
- import"./index-9rwhas09.js";
80
79
  import"./index-8srvdpw6.js";
81
- import"./index-52arsav6.js";
80
+ import"./index-9rwhas09.js";
81
+ import"./index-h8419k5d.js";
82
82
  import"./index-vzm6zre7.js";
83
83
  import"./index-ae75rja9.js";
84
84
  import"./index-4fkxdnc7.js";
@@ -91,11 +91,11 @@ import"./index-ejhxgyvm.js";
91
91
  import"./index-7g4c7s5r.js";
92
92
  import"./index-mn75z39t.js";
93
93
  import"./index-3t46mez1.js";
94
- import"./index-fz5qbpbw.js";
94
+ import"./index-dsqavehz.js";
95
95
  import"./index-sp2cxpaq.js";
96
96
  import"./index-qbxk2rn6.js";
97
97
  import"./index-zgwm4ryv.js";
98
- import"./index-08h39kf4.js";
98
+ import"./index-se501ytb.js";
99
99
  import"./index-xfzkq1k4.js";
100
100
  import"./index-bk5tah7q.js";
101
101
  import"./index-gknz3bv1.js";
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  loadPlanJsonOnly
4
- } from "./index-hmndq4hk.js";
4
+ } from "./index-ryrg48c7.js";
5
5
  import {
6
6
  isCanonicalPathWithinRoot
7
7
  } from "./index-6b295cas.js";
@@ -14,7 +14,7 @@ import {
14
14
  legacyEpicIssuePath,
15
15
  migrateLegacyEpicConfig,
16
16
  resolveEpicConfig
17
- } from "./index-fz5qbpbw.js";
17
+ } from "./index-dsqavehz.js";
18
18
  import {
19
19
  log
20
20
  } from "./index-zgwm4ryv.js";
@@ -28,7 +28,7 @@ import {
28
28
  init_schema,
29
29
  retiredEpicKeyReplacement,
30
30
  stripKnownSwarmPrefix
31
- } from "./index-08h39kf4.js";
31
+ } from "./index-se501ytb.js";
32
32
  import {
33
33
  ALL_AGENT_NAMES,
34
34
  TOOL_NAME_SET,
@@ -9,7 +9,7 @@ import {
9
9
  import {
10
10
  init_loader,
11
11
  loadPluginConfig
12
- } from "./index-fz5qbpbw.js";
12
+ } from "./index-dsqavehz.js";
13
13
  import {
14
14
  init_logger,
15
15
  log,
@@ -543,7 +543,7 @@ async function importLegacyPrWorkflowGateStateIfNeeded(directory, sessionID, all
543
543
  return null;
544
544
  throw error;
545
545
  }
546
- const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-t8kewb9h.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
546
+ const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-24ytg64p.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
547
547
  if (!legacy)
548
548
  return null;
549
549
  const namespace = workflowGateStateCoordinationNamespace(sessionID);
@@ -677,7 +677,7 @@ async function deleteStateWhileLocked(directory, sessionID, options = {}) {
677
677
  let recoveryState = null;
678
678
  if (!currentAuthoritative) {
679
679
  if (options.allowSalvagedRead) {
680
- const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-t8kewb9h.js");
680
+ const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-24ytg64p.js");
681
681
  recoveryState = (await readPrWorkflowGateStateForRecovery(directory, normalizedSessionID))?.state ?? null;
682
682
  }
683
683
  if (!recoveryState) {
@@ -6266,7 +6266,7 @@ async function reconcileLegacyCoderSettlements(directory, maxRecords, onReconcil
6266
6266
  const candidates = readDelegations(directory).filter((record) => record.normalizedAgent === "coder" && Boolean(record.legacyCoderSettlementTransfer) && Boolean(record.terminalResult)).slice(0, maxRecords);
6267
6267
  if (candidates.length === 0)
6268
6268
  return 0;
6269
- const { transferCoderSettlementToBackground } = await import("./coder-settlement-5mgxjwz9.js");
6269
+ const { transferCoderSettlementToBackground } = await import("./coder-settlement-r2q6pkxc.js");
6270
6270
  let transferred = 0;
6271
6271
  for (const record of candidates) {
6272
6272
  try {
@@ -4,7 +4,7 @@ import {
4
4
  } from "./index-6b295cas.js";
5
5
  import {
6
6
  readEffectiveSpecSync
7
- } from "./index-70ctksz3.js";
7
+ } from "./index-5qajesjq.js";
8
8
  import {
9
9
  _internals,
10
10
  clearWorktreeMergeStatus,
@@ -39,7 +39,7 @@ import {
39
39
  replayFromLedgerWithStatus,
40
40
  takeSnapshotEvent,
41
41
  takeSnapshotWithRetry
42
- } from "./index-5y245xwk.js";
42
+ } from "./index-vxbj42j0.js";
43
43
  import {
44
44
  deleteCoordinationStateWithinTransaction,
45
45
  getCoordinationStateRaw,
@@ -89,7 +89,7 @@ import {
89
89
  init_loader,
90
90
  isEpicModeConfigEnabled,
91
91
  loadPluginConfigWithMeta
92
- } from "./index-fz5qbpbw.js";
92
+ } from "./index-dsqavehz.js";
93
93
  import {
94
94
  bunHash,
95
95
  bunWrite,
@@ -2670,7 +2670,7 @@ ${markdown}`;
2670
2670
  }
2671
2671
  }
2672
2672
  async function defaultMaybeSaveAutoCheckpoint(directory, plan) {
2673
- const { maybeSaveAutoCheckpoint } = await import("./auto-checkpoint-7ef4x67m.js");
2673
+ const { maybeSaveAutoCheckpoint } = await import("./auto-checkpoint-8g004dar.js");
2674
2674
  return maybeSaveAutoCheckpoint(directory, plan);
2675
2675
  }
2676
2676
  async function updateTaskStatus(directory, taskId, status, options) {
@@ -2746,7 +2746,7 @@ async function updateTaskStatus(directory, taskId, status, options) {
2746
2746
  if (status === "completed") {
2747
2747
  try {
2748
2748
  const completedTask = updatedPlan.phases.flatMap((phase) => phase.tasks).find((candidate) => candidate.id === taskId);
2749
- const { maybePropagateSpeckitCheckoff } = await import("./speckit-checkoff-3g3bfv0y.js");
2749
+ const { maybePropagateSpeckitCheckoff } = await import("./speckit-checkoff-64p4d5hf.js");
2750
2750
  await maybePropagateSpeckitCheckoff(directory, {
2751
2751
  taskId,
2752
2752
  frRefs: completedTask?.fr_refs ?? [],
@@ -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.200.4",
24
+ version: "7.200.5",
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",
@@ -244,7 +244,7 @@ var _internals2 = {
244
244
  symlinkSync: fs2.symlinkSync
245
245
  },
246
246
  writeScopeToDisk: async (directory, taskId, files) => {
247
- const { writeScopeToDisk: realWrite } = await import("./scope-persistence-erxj8vq6.js");
247
+ const { writeScopeToDisk: realWrite } = await import("./scope-persistence-pyn9vb4r.js");
248
248
  return realWrite(directory, taskId, files);
249
249
  },
250
250
  writeLaneProfileToDisk: async (_worktreePath, _laneIndex, _envOverrides) => {
@@ -27,7 +27,7 @@ import {
27
27
  import {
28
28
  init_loader,
29
29
  loadPluginConfig
30
- } from "./index-fz5qbpbw.js";
30
+ } from "./index-dsqavehz.js";
31
31
  import {
32
32
  criticalWarn,
33
33
  init_logger,
@@ -36,7 +36,7 @@ import {
36
36
  import {
37
37
  init_package,
38
38
  package_default
39
- } from "./index-08h39kf4.js";
39
+ } from "./index-se501ytb.js";
40
40
 
41
41
  // src/plan/planning-profile.ts
42
42
  init_loader();
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  _internals,
4
4
  resolveWorktreeIsolationConfig
5
- } from "./index-xd5jn7nr.js";
5
+ } from "./index-xh861gf3.js";
6
6
  import {
7
7
  ApprovalEvidenceSchema,
8
8
  BaseEvidenceSchema,
@@ -46,7 +46,7 @@ import {
46
46
  loadPluginConfigWithMeta,
47
47
  loadPluginConfigWithMetaAsync,
48
48
  resetConfigAdvisoryDedup
49
- } from "./index-fz5qbpbw.js";
49
+ } from "./index-dsqavehz.js";
50
50
  import"./index-sp2cxpaq.js";
51
51
  import"./index-qbxk2rn6.js";
52
52
  import"./index-zgwm4ryv.js";
@@ -74,7 +74,7 @@ import {
74
74
  TurboConfigSchema,
75
75
  WorktreeIsolationConfigSchema,
76
76
  resolveAutoReviewConfig
77
- } from "./index-08h39kf4.js";
77
+ } from "./index-se501ytb.js";
78
78
  import {
79
79
  ALL_AGENT_NAMES,
80
80
  ALL_SUBAGENT_NAMES,
@@ -8,6 +8,10 @@ import {
8
8
  import {
9
9
  observeReceiptTransition
10
10
  } from "./index-8srvdpw6.js";
11
+ import {
12
+ init_path_identity,
13
+ sanitizeDiagnosticText
14
+ } from "./index-9rwhas09.js";
11
15
  import {
12
16
  assertProjectRoot
13
17
  } from "./index-t7hmqgjy.js";
@@ -19,11 +23,11 @@ import {
19
23
  } from "./index-3t46mez1.js";
20
24
  import {
21
25
  loadPluginConfigWithMeta
22
- } from "./index-fz5qbpbw.js";
26
+ } from "./index-dsqavehz.js";
23
27
  import {
24
28
  KnowledgeConfigSchema,
25
29
  init_schema
26
- } from "./index-08h39kf4.js";
30
+ } from "./index-se501ytb.js";
27
31
 
28
32
  // src/utils/context-decisions.ts
29
33
  function extractContextDecisions(content) {
@@ -73,6 +77,7 @@ function extractContextDecisions(content) {
73
77
  import { createHash as createHash2, randomUUID as randomUUID2 } from "crypto";
74
78
  import { existsSync as existsSync2 } from "fs";
75
79
  init_schema();
80
+ init_path_identity();
76
81
 
77
82
  // src/hooks/extractors.ts
78
83
  function extractCurrentPhase(planContent) {
@@ -704,6 +709,15 @@ var MAX_REPAIR_QUARANTINE_RECORDS = 8;
704
709
  var DEFAULT_RECEIPT_GRACE_DAYS = 7;
705
710
  var keyOf = (traceId, entryId) => `${traceId.length}:${traceId}${entryId}`;
706
711
  var emptyKeyOf = (traceId, sessionId) => `${traceId.length}:${traceId}${sessionId}`;
712
+ var MAX_CONFLICT_ID_CHARS = 40;
713
+ var MAX_CONFLICT_FIELD_CHARS = 64;
714
+ var truncateCodePoints = (value, max) => {
715
+ const codePoints = Array.from(value);
716
+ return codePoints.length > max ? `${codePoints.slice(0, max).join("")}\u2026` : value;
717
+ };
718
+ var doubleSingleQuotes = (value) => value.split("'").join("''");
719
+ var renderConflictValue = (value) => value === undefined ? "omitted" : `'${doubleSingleQuotes(sanitizeDiagnosticText(truncateCodePoints(value, MAX_CONFLICT_FIELD_CHARS)))}'`;
720
+ var renderConflictId = (value) => sanitizeDiagnosticText(truncateCodePoints(value, MAX_CONFLICT_ID_CHARS));
707
721
  var phaseLifecycleKey = (phase, sessionId, taskId) => `${sessionId.length}:${sessionId}${phase.length}:${phase}${taskId === undefined ? "u:" : `s:${taskId.length}:${taskId}`}`;
708
722
  var repairUncertaintyKey = (phase, sessionId) => `${sessionId.length}:${sessionId}${phase.length}:${phase}`;
709
723
  function membershipMatchesPhaseIdentity(membership, phase, phaseId) {
@@ -2030,11 +2044,26 @@ async function commitDisplayedMembership(directory, input) {
2030
2044
  });
2031
2045
  }
2032
2046
  async function commitEmptyRetrieval(directory, input) {
2033
- return runLocked(directory, input.grace_days, async (paths, state, graceDays) => {
2047
+ const outcome = await runLocked(directory, input.grace_days, async (paths, state, graceDays) => {
2034
2048
  const existing = state.emptyTraces.get(emptyKeyOf(input.trace_id, input.session_id));
2035
2049
  if (existing) {
2036
2050
  if (existing.phase !== input.phase || existing.task_id !== input.task_id || existing.grace_days !== graceDays) {
2037
- throw new ReceiptStoreError("store_unavailable", `conflicting immutable empty retrieval for ${input.trace_id}/${input.session_id}`);
2051
+ const axis = existing.task_id !== input.task_id ? {
2052
+ code: "wrong_task",
2053
+ detail: `recorded task ${renderConflictValue(existing.task_id)} differs from filed ${renderConflictValue(input.task_id)}`
2054
+ } : existing.phase !== input.phase ? {
2055
+ code: "wrong_phase",
2056
+ detail: `recorded phase ${renderConflictValue(existing.phase)} differs from filed ${renderConflictValue(input.phase)}`
2057
+ } : {
2058
+ code: "duplicate_conflicting_terminal",
2059
+ detail: `recorded grace_days ${existing.grace_days} differs from resolved ${graceDays}`
2060
+ };
2061
+ return {
2062
+ conflict: {
2063
+ code: axis.code,
2064
+ detail: `conflicting immutable empty retrieval for ${renderConflictId(input.trace_id)}/${renderConflictId(input.session_id)}: ${axis.detail}`
2065
+ }
2066
+ };
2038
2067
  }
2039
2068
  if (!existing.terminal_event_id) {
2040
2069
  const terminal = makeRecord(state, "terminal_committed", {
@@ -2071,6 +2100,11 @@ async function commitEmptyRetrieval(directory, input) {
2071
2100
  });
2072
2101
  return { event_id: eventId, terminal_event_id: terminalEventId };
2073
2102
  });
2103
+ if (!outcome.ok)
2104
+ return outcome;
2105
+ if ("conflict" in outcome)
2106
+ return { ok: false, ...outcome.conflict };
2107
+ return outcome;
2074
2108
  }
2075
2109
  async function commitApplicationMarkerBatch(directory, input) {
2076
2110
  return runLocked(directory, undefined, async (paths, state) => {
@@ -1,10 +1,10 @@
1
1
  // @bun
2
2
  import {
3
3
  handleGuardrailExplain
4
- } from "./index-5dkwdfh9.js";
4
+ } from "./index-g1b5xxzc.js";
5
5
  import {
6
6
  handleGuardrailLog
7
- } from "./index-qgzg1vac.js";
7
+ } from "./index-yamz6830.js";
8
8
  import {
9
9
  COMMAND_REGISTRY,
10
10
  DEFAULT_CI_DEADLINE_MS,
@@ -98,60 +98,60 @@ import {
98
98
  handleWriteRetroCommand,
99
99
  normalizeSwarmCommandInput,
100
100
  resolveCommand
101
- } from "./index-66c8xae5.js";
101
+ } from "./index-8c51asrp.js";
102
102
  import"./index-p2dst45x.js";
103
- import"./index-ss8wnczy.js";
104
- import"./index-vqzsp93p.js";
105
- import"./index-43djb5h6.js";
103
+ import"./index-1by2qd8n.js";
104
+ import"./index-k01n01sc.js";
105
+ import"./index-cy2gbs5b.js";
106
106
  import"./index-4ph7ad0b.js";
107
107
  import"./index-axqyjreb.js";
108
108
  import"./index-txdagbh7.js";
109
- import"./index-ddf3f3k8.js";
110
- import"./index-6rxm153v.js";
109
+ import"./index-4mjfdpte.js";
110
+ import"./index-3x8mz39c.js";
111
111
  import"./index-rdec0y3z.js";
112
- import"./index-5fm37ceh.js";
113
- import"./index-2s3wgvj8.js";
114
- import"./index-q8456mrf.js";
112
+ import"./index-74n7sz4s.js";
113
+ import"./index-826kptfe.js";
114
+ import"./index-b4amh1n3.js";
115
115
  import"./index-bk8r4m9j.js";
116
116
  import"./index-tecp3a77.js";
117
117
  import"./index-x5jwegqw.js";
118
118
  import"./index-7h22y3ew.js";
119
- import"./index-gs4gnndf.js";
119
+ import"./index-pvj101jx.js";
120
120
  import"./index-pt7h91zc.js";
121
121
  import"./index-q7sjgr1y.js";
122
- import"./index-1qc3fhnv.js";
123
- import"./index-hmndq4hk.js";
122
+ import"./index-687c2ze1.js";
123
+ import"./index-ryrg48c7.js";
124
124
  import"./index-6b295cas.js";
125
125
  import"./index-9nyqt3kb.js";
126
- import"./index-70ctksz3.js";
126
+ import"./index-5qajesjq.js";
127
127
  import"./index-697mg68b.js";
128
128
  import"./index-8mrentmw.js";
129
- import"./index-8jbvmffw.js";
130
- import"./index-2xdsmkev.js";
131
- import"./index-81b69x1b.js";
129
+ import"./index-phz90w3t.js";
130
+ import"./index-1akazdbj.js";
131
+ import"./index-twwdx79t.js";
132
132
  import"./index-spggmr30.js";
133
- import"./index-yp5p6kpf.js";
134
- import"./index-zystaewy.js";
133
+ import"./index-ee59rzwk.js";
134
+ import"./index-wyfag7r7.js";
135
135
  import"./index-m9zzj4ee.js";
136
136
  import"./index-4krkevgc.js";
137
- import"./index-3vwfpqaj.js";
137
+ import"./index-10myvh2k.js";
138
138
  import"./index-mhd6kdzr.js";
139
139
  import"./index-rtry5xyf.js";
140
- import"./index-xd5jn7nr.js";
140
+ import"./index-xh861gf3.js";
141
141
  import"./index-g22dps7x.js";
142
142
  import"./index-0725jpp7.js";
143
- import"./index-zbxahqb0.js";
143
+ import"./index-1asbb0r4.js";
144
144
  import"./index-v839c9mv.js";
145
- import"./index-5y245xwk.js";
145
+ import"./index-vxbj42j0.js";
146
146
  import"./index-2x015vjy.js";
147
147
  import"./index-y7c4hqcj.js";
148
148
  import"./index-ry16d01s.js";
149
149
  import"./index-rdm3px0g.js";
150
150
  import"./index-vtpt8yns.js";
151
151
  import"./index-7pmbnjvj.js";
152
- import"./index-9rwhas09.js";
153
152
  import"./index-8srvdpw6.js";
154
- import"./index-52arsav6.js";
153
+ import"./index-9rwhas09.js";
154
+ import"./index-h8419k5d.js";
155
155
  import"./index-vzm6zre7.js";
156
156
  import"./index-ae75rja9.js";
157
157
  import"./index-4fkxdnc7.js";
@@ -164,14 +164,14 @@ import"./index-ejhxgyvm.js";
164
164
  import"./index-7g4c7s5r.js";
165
165
  import"./index-mn75z39t.js";
166
166
  import"./index-3t46mez1.js";
167
- import"./index-fz5qbpbw.js";
167
+ import"./index-dsqavehz.js";
168
168
  import"./index-sp2cxpaq.js";
169
169
  import"./index-qbxk2rn6.js";
170
170
  import"./index-zgwm4ryv.js";
171
171
  import {
172
172
  init_schema,
173
173
  stripKnownSwarmPrefix
174
- } from "./index-08h39kf4.js";
174
+ } from "./index-se501ytb.js";
175
175
  import {
176
176
  AGENT_TOOL_MAP,
177
177
  ORCHESTRATOR_NAME,
@@ -2,10 +2,10 @@
2
2
  import {
3
3
  init_loader,
4
4
  loadPluginConfigWithMeta
5
- } from "./index-fz5qbpbw.js";
5
+ } from "./index-dsqavehz.js";
6
6
  import {
7
7
  init_schema
8
- } from "./index-08h39kf4.js";
8
+ } from "./index-se501ytb.js";
9
9
  import {
10
10
  DEFAULT_WORKTREE_ISOLATION_CONFIG,
11
11
  init_constants
@@ -4,7 +4,7 @@ import {
4
4
  readShellAuditTail,
5
5
  redactPath,
6
6
  redactShellCommand
7
- } from "./index-ss8wnczy.js";
7
+ } from "./index-1by2qd8n.js";
8
8
 
9
9
  // src/services/guardrail-log-service.ts
10
10
  var BLOCK_TYPES = new Set([