opencode-swarm 7.184.0 → 7.184.1

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 (112) 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/background/delegation-health.d.ts +1 -1
  4. package/dist/background/index.d.ts +1 -0
  5. package/dist/background/pr-event-delivery.d.ts +29 -14
  6. package/dist/background/pr-event-subscribers.d.ts +6 -5
  7. package/dist/background/pr-feedback-event-queue.d.ts +19 -2
  8. package/dist/background/pr-feedback-loop-runtime.d.ts +75 -0
  9. package/dist/background/pr-feedback-loop.d.ts +47 -12
  10. package/dist/cli/{coder-settlement-vrc5zxvv.js → coder-settlement-yvpewr52.js} +15 -12
  11. package/dist/cli/{config-doctor-y0bpap07.js → config-doctor-qgwpvrbz.js} +2 -2
  12. package/dist/cli/{core-7f955h2f.js → core-9qt388hq.js} +4 -4
  13. package/dist/cli/{curation-policy-fa2h82c4.js → curation-policy-49f8jx48.js} +7 -6
  14. package/dist/cli/{curator-drift-48x02n2m.js → curator-drift-wf0sm2te.js} +9 -9
  15. package/dist/cli/{curator-m7enwwz2.js → curator-ffz5pxgc.js} +40 -39
  16. package/dist/cli/curator-llm-factory-drs36v1q.js +75 -0
  17. package/dist/cli/{dispatch-p5zjg5e6.js → dispatch-cv89p2y1.js} +1 -1
  18. package/dist/cli/{evidence-summary-service-k8a5vkfk.js → evidence-summary-service-8dfzjnxe.js} +21 -20
  19. package/dist/cli/{gate-evidence-nktrs0w2.js → gate-evidence-aa5q30f4.js} +14 -7
  20. package/dist/cli/guardrail-explain-9g5y2gjm.js +76 -0
  21. package/dist/cli/{guardrail-log-dppv6tgn.js → guardrail-log-0g51p94w.js} +8 -8
  22. package/dist/cli/{guardrail-reset-btzq4ses.js → guardrail-reset-dcbmt2wr.js} +40 -39
  23. package/dist/cli/{hive-promoter-yp1baj9z.js → hive-promoter-2g8nga0y.js} +40 -39
  24. package/dist/cli/{index-r30xs0wp.js → index-046psajf.js} +1 -1
  25. package/dist/cli/{index-ysr6n4ca.js → index-0874kghs.js} +1 -1
  26. package/dist/cli/{index-6h81yvyc.js → index-131ay7x1.js} +3 -3
  27. package/dist/cli/{index-4gr9pj67.js → index-2c91cxdv.js} +4 -4
  28. package/dist/cli/{index-pq6vr26z.js → index-32vszgv0.js} +3 -3
  29. package/dist/cli/{index-0bpr8vag.js → index-3n5zsp31.js} +2 -2
  30. package/dist/cli/{index-152b9c6m.js → index-3skvygca.js} +5 -5
  31. package/dist/cli/{index-w81jmdkt.js → index-456awy1p.js} +2 -2
  32. package/dist/cli/{index-74x26wyj.js → index-475bkab8.js} +2 -2
  33. package/dist/cli/{index-t1swv35d.js → index-49ptc9xx.js} +1 -1
  34. package/dist/cli/{index-nm8ma9xb.js → index-57swfxyp.js} +8 -8
  35. package/dist/cli/{index-me39468k.js → index-5ppx86w1.js} +38 -18
  36. package/dist/cli/{index-njf5pbkm.js → index-6b427dy8.js} +6 -6
  37. package/dist/cli/{index-edrgc139.js → index-6cvdk98y.js} +2 -2
  38. package/dist/cli/{index-4t0wd9sv.js → index-6g664sy8.js} +1 -1
  39. package/dist/cli/{index-t26gj2fh.js → index-76abqm8d.js} +2 -2
  40. package/dist/cli/{index-nvm6mxep.js → index-7hvy33gc.js} +271 -80
  41. package/dist/cli/{index-6b4vkz6q.js → index-7p4ym4q3.js} +1 -1
  42. package/dist/cli/{index-rwfmx7vn.js → index-aghd9kcx.js} +2 -2
  43. package/dist/cli/{index-e90m050y.js → index-ar2gsn6b.js} +8 -8
  44. package/dist/cli/{index-fs9y88h1.js → index-dbshccrr.js} +3 -3
  45. package/dist/cli/{index-ad3yskxy.js → index-depfky1j.js} +158 -27
  46. package/dist/cli/{index-v3hpsxvd.js → index-earq3mda.js} +1 -1
  47. package/dist/cli/{index-b5mkznms.js → index-ejb7ejhd.js} +1 -1
  48. package/dist/cli/{index-3rb5gs4w.js → index-f0nj3d8z.js} +1 -1
  49. package/dist/cli/{index-5wk0etp8.js → index-gsgy1psq.js} +4 -4
  50. package/dist/cli/{index-qyx53xrz.js → index-jc8pcf0r.js} +7 -7
  51. package/dist/cli/{index-3fhg7pqf.js → index-jkxef52n.js} +2 -2
  52. package/dist/cli/{index-mn5zzmqx.js → index-jvk95e6y.js} +2 -2
  53. package/dist/cli/{index-5cve9g2b.js → index-k53a69vb.js} +6 -6
  54. package/dist/cli/{index-1xnse449.js → index-mc72pk74.js} +1 -1
  55. package/dist/cli/{index-bf1726rj.js → index-mz4zz59c.js} +42 -41
  56. package/dist/cli/{index-j40czc9v.js → index-n107956q.js} +5 -5
  57. package/dist/cli/{index-z3b157ew.js → index-qczxr0wh.js} +12 -10
  58. package/dist/cli/{index-9yvjwfay.js → index-s7bseqza.js} +3156 -1887
  59. package/dist/cli/{index-01wt209s.js → index-t7hmqgjy.js} +90 -141
  60. package/dist/cli/{index-08x7gsnf.js → index-w9hxzcz4.js} +2 -2
  61. package/dist/cli/{index-51xtrf7g.js → index-wfdx7yw2.js} +39 -15
  62. package/dist/cli/{index-079xzcxb.js → index-wsb0wbw6.js} +40 -39
  63. package/dist/cli/{index-nmh0s6dg.js → index-wy3zpwjy.js} +1 -1
  64. package/dist/cli/{index-fbhtb6f5.js → index-x1gyqgze.js} +7 -7
  65. package/dist/cli/index-xf69xty9.js +105 -0
  66. package/dist/cli/{index-z8smhv7k.js → index-ya32wfkp.js} +4 -2
  67. package/dist/cli/{index-46z4c89b.js → index-yk0r42nr.js} +4 -4
  68. package/dist/cli/{index-1d6ssjcj.js → index-zzvxj02e.js} +3 -3
  69. package/dist/cli/index.js +41 -40
  70. package/dist/cli/{knowledge-escalator-4296y1h2.js → knowledge-escalator-pt21q3eh.js} +14 -13
  71. package/dist/cli/{knowledge-events-31nga9yt.js → knowledge-events-hp96b55k.js} +12 -11
  72. package/dist/cli/{knowledge-link-ydpvzam8.js → knowledge-link-ap2274vm.js} +6 -5
  73. package/dist/cli/{knowledge-store-0qz3zmq3.js → knowledge-store-rnw1e7zp.js} +7 -6
  74. package/dist/cli/{knowledge-validator-vndnwdj6.js → knowledge-validator-xy7r6eyx.js} +9 -8
  75. package/dist/cli/{mcp-taace90a.js → mcp-3nd85kww.js} +15 -1
  76. package/dist/cli/mcp.d.ts +1 -0
  77. package/dist/cli/{model-preflight-bv8nvjjx.js → model-preflight-xe0chjad.js} +40 -39
  78. package/dist/cli/{pending-delegations-kwdk8j9d.js → pending-delegations-2pdngdzq.js} +13 -12
  79. package/dist/cli/{pr-subscriptions-w2fwdpkk.js → pr-subscriptions-hxxwszyr.js} +13 -12
  80. package/dist/cli/{pr-workflow-gate-sqjc6jmd.js → pr-workflow-gate-m37ynr6h.js} +40 -39
  81. package/dist/cli/{runner-r6gxq7m1.js → runner-yz3ysehf.js} +7 -6
  82. package/dist/cli/{scan-cursor-f74b9b4k.js → scan-cursor-be9hbq1v.js} +8 -7
  83. package/dist/cli/{schema-cyet68tw.js → schema-j17hv98z.js} +1 -1
  84. package/dist/cli/{scope-persistence-rg8v0r8q.js → scope-persistence-rmt56rma.js} +16 -15
  85. package/dist/cli/{server-765s4stz.js → server-wzrb59mh.js} +40 -39
  86. package/dist/cli/{skill-generator-qg5m18k7.js → skill-generator-vsfya55z.js} +16 -15
  87. package/dist/cli/{snapshot-coordination-init-zzs4bkmj.js → snapshot-coordination-init-pc8ykvh8.js} +40 -39
  88. package/dist/cli/{speckit-checkoff-2bsm6p0c.js → speckit-checkoff-j407j8ew.js} +4 -4
  89. package/dist/cli/{telemetry-rzvcp2n9.js → telemetry-39zmx4fp.js} +2 -2
  90. package/dist/cli/{workspace-snapshot-t22m6gbd.js → workspace-snapshot-0q1n1xq5.js} +4 -4
  91. package/dist/cli/{worktree-collision-ownership-qf2shp2n.js → worktree-collision-ownership-je4fb407.js} +14 -13
  92. package/dist/cli/{worktree-isolation-0b0jy6dt.js → worktree-isolation-27rt584e.js} +40 -39
  93. package/dist/db/qa-gate-session-override.d.ts +12 -12
  94. package/dist/gate-evidence.d.ts +43 -1
  95. package/dist/hooks/guardrails/index.d.ts +13 -7
  96. package/dist/index.js +507 -503
  97. package/dist/plan/ledger.d.ts +20 -4
  98. package/dist/plan/manager.d.ts +20 -2
  99. package/dist/session/hydration-ownership.d.ts +39 -12
  100. package/dist/session/snapshot-coordination-init.d.ts +11 -4
  101. package/dist/session/snapshot-reader.d.ts +9 -4
  102. package/dist/session/snapshot-writer.d.ts +2 -3
  103. package/dist/state.d.ts +35 -5
  104. package/dist/tools/phase-complete.d.ts +1 -0
  105. package/dist/tools/update-task-status.d.ts +1 -1
  106. package/dist/utils/project-boundary.d.ts +32 -1
  107. package/dist/workflow/coder-settlement.d.ts +8 -0
  108. package/dist/workflow/task-terminal.d.ts +2 -1
  109. package/dist/workflow/workflow-wal-schema.d.ts +2 -0
  110. package/package.json +1 -1
  111. package/dist/cli/curator-llm-factory-g6at4hn6.js +0 -74
  112. package/dist/cli/guardrail-explain-1ccchxdr.js +0 -75
@@ -0,0 +1,105 @@
1
+ // @bun
2
+ import {
3
+ assertProjectRoot
4
+ } from "./index-t7hmqgjy.js";
5
+ import {
6
+ emit
7
+ } from "./index-x1gyqgze.js";
8
+ import {
9
+ tryAcquireLock
10
+ } from "./index-ejhxgyvm.js";
11
+ import {
12
+ atomicWriteFileAnyRoot
13
+ } from "./index-k53a69vb.js";
14
+
15
+ // src/evidence/lock.ts
16
+ class EvidenceLockTimeoutError extends Error {
17
+ directory;
18
+ evidencePath;
19
+ agent;
20
+ taskId;
21
+ constructor(directory, evidencePath, agent, taskId, timeoutMs) {
22
+ super(`Evidence lock timeout after ${timeoutMs}ms for ${evidencePath} (agent=${agent}, task=${taskId})`);
23
+ this.name = "EvidenceLockTimeoutError";
24
+ this.directory = directory;
25
+ this.evidencePath = evidencePath;
26
+ this.agent = agent;
27
+ this.taskId = taskId;
28
+ }
29
+ }
30
+ var BACKOFF_START_MS = 50;
31
+ var BACKOFF_MAX_MS = 2000;
32
+ var BACKOFF_JITTER_RATIO = 0.25;
33
+ function backoffMs(attempt) {
34
+ const base = Math.min(BACKOFF_START_MS * 2 ** attempt, BACKOFF_MAX_MS);
35
+ const jitter = base * BACKOFF_JITTER_RATIO * (Math.random() * 2 - 1);
36
+ return Math.max(1, Math.round(base + jitter));
37
+ }
38
+ async function withEvidenceLock(directory, evidencePath, agent, taskId, fn, timeoutMs = 60000) {
39
+ assertProjectRoot(directory);
40
+ const deadline = Date.now() + timeoutMs;
41
+ let attempt = 0;
42
+ while (true) {
43
+ const result = await tryAcquireLock(directory, evidencePath, agent, taskId);
44
+ if (result.acquired) {
45
+ const lock = result.lock;
46
+ if (attempt > 0) {
47
+ emit("evidence_lock_stale_recovered", {
48
+ directory,
49
+ evidencePath,
50
+ agent,
51
+ taskId,
52
+ attempt
53
+ });
54
+ }
55
+ emit("evidence_lock_acquired", {
56
+ directory,
57
+ evidencePath,
58
+ agent,
59
+ taskId,
60
+ attempt
61
+ });
62
+ try {
63
+ return await fn();
64
+ } finally {
65
+ if (lock._release) {
66
+ try {
67
+ await lock._release();
68
+ } catch {}
69
+ }
70
+ }
71
+ }
72
+ if (Date.now() >= deadline) {
73
+ throw new EvidenceLockTimeoutError(directory, evidencePath, agent, taskId, timeoutMs);
74
+ }
75
+ emit("evidence_lock_contended", {
76
+ directory,
77
+ evidencePath,
78
+ agent,
79
+ taskId,
80
+ attempt
81
+ });
82
+ const delay = Math.min(backoffMs(attempt), deadline - Date.now());
83
+ if (delay > 0) {
84
+ await new Promise((resolve) => setTimeout(resolve, delay));
85
+ }
86
+ attempt++;
87
+ }
88
+ }
89
+
90
+ // src/evidence/task-file.ts
91
+ import * as path from "path";
92
+ function taskEvidenceRelPath(taskId) {
93
+ return path.join("evidence", `${taskId}.json`);
94
+ }
95
+ function taskEvidencePath(directory, taskId) {
96
+ return path.join(directory, ".swarm", taskEvidenceRelPath(taskId));
97
+ }
98
+ async function atomicWriteFile(targetPath, content) {
99
+ await atomicWriteFileAnyRoot(targetPath, content);
100
+ }
101
+ function withTaskEvidenceLock(directory, taskId, agent, fn) {
102
+ return withEvidenceLock(directory, taskEvidenceRelPath(taskId), agent, taskId, fn);
103
+ }
104
+
105
+ export { EvidenceLockTimeoutError, withEvidenceLock, taskEvidencePath, atomicWriteFile, withTaskEvidenceLock };
@@ -8,10 +8,12 @@ import {
8
8
  resolveContainedExistingPath
9
9
  } from "./index-txdagbh7.js";
10
10
  import {
11
- assertProjectRoot,
12
11
  atomicWriteFile,
13
12
  withEvidenceLock
14
- } from "./index-01wt209s.js";
13
+ } from "./index-xf69xty9.js";
14
+ import {
15
+ assertProjectRoot
16
+ } from "./index-t7hmqgjy.js";
15
17
  import {
16
18
  exports_external,
17
19
  init_zod
@@ -1,10 +1,10 @@
1
1
  // @bun
2
2
  import {
3
3
  readEffectiveSpecSync
4
- } from "./index-6b4vkz6q.js";
4
+ } from "./index-7p4ym4q3.js";
5
5
  import {
6
6
  readSwarmFileAsync
7
- } from "./index-nmh0s6dg.js";
7
+ } from "./index-wy3zpwjy.js";
8
8
  import {
9
9
  DURABILITY_CLASSES,
10
10
  DbWriteError,
@@ -13,11 +13,11 @@ import {
13
13
  classifyDbWriteError,
14
14
  getProjectDb,
15
15
  projectDbExists
16
- } from "./index-08x7gsnf.js";
16
+ } from "./index-w9hxzcz4.js";
17
17
  import {
18
18
  _internals,
19
19
  canonicalRootKeyFresh
20
- } from "./index-1xnse449.js";
20
+ } from "./index-mc72pk74.js";
21
21
  import {
22
22
  init_logger,
23
23
  log,
@@ -3,13 +3,13 @@ import {
3
3
  pseudonymousRef,
4
4
  resolveLineageSalt,
5
5
  telemetry
6
- } from "./index-fbhtb6f5.js";
6
+ } from "./index-x1gyqgze.js";
7
7
  import {
8
8
  canonicalRootKeyFresh
9
- } from "./index-1xnse449.js";
9
+ } from "./index-mc72pk74.js";
10
10
  import {
11
11
  atomicWriteSwarmFile
12
- } from "./index-5cve9g2b.js";
12
+ } from "./index-k53a69vb.js";
13
13
 
14
14
  // src/health/learning-health.ts
15
15
  import { promises as fs } from "fs";
package/dist/cli/index.js CHANGED
@@ -14,69 +14,70 @@ import {
14
14
  readCachePackageVersion,
15
15
  resolveCommand,
16
16
  safeRealpathSync
17
- } from "./index-9yvjwfay.js";
18
- import"./index-pq6vr26z.js";
17
+ } from "./index-s7bseqza.js";
18
+ import"./index-32vszgv0.js";
19
19
  import"./index-hamqvzqn.js";
20
- import"./index-4t0wd9sv.js";
21
- import"./index-46z4c89b.js";
22
- import"./index-r30xs0wp.js";
23
- import"./index-nvm6mxep.js";
24
- import"./index-z8smhv7k.js";
20
+ import"./index-6g664sy8.js";
21
+ import"./index-yk0r42nr.js";
22
+ import"./index-046psajf.js";
23
+ import"./index-7hvy33gc.js";
24
+ import"./index-ya32wfkp.js";
25
25
  import"./index-txdagbh7.js";
26
- import"./index-6b4vkz6q.js";
26
+ import"./index-7p4ym4q3.js";
27
27
  import"./index-6b295cas.js";
28
- import"./index-j40czc9v.js";
29
- import"./index-152b9c6m.js";
30
- import"./index-3fhg7pqf.js";
28
+ import"./index-n107956q.js";
29
+ import"./index-3skvygca.js";
30
+ import"./index-jkxef52n.js";
31
31
  import"./index-rdec0y3z.js";
32
- import"./index-e90m050y.js";
32
+ import"./index-ar2gsn6b.js";
33
33
  import"./index-cjapb4hy.js";
34
34
  import"./index-zsrtt42s.js";
35
- import"./index-me39468k.js";
36
- import"./index-6h81yvyc.js";
37
- import"./index-0bpr8vag.js";
35
+ import"./index-5ppx86w1.js";
36
+ import"./index-131ay7x1.js";
37
+ import"./index-3n5zsp31.js";
38
38
  import"./index-pt7h91zc.js";
39
39
  import"./index-q7sjgr1y.js";
40
- import"./index-t26gj2fh.js";
41
- import"./index-ad3yskxy.js";
42
- import"./index-4gr9pj67.js";
43
- import"./index-nm8ma9xb.js";
44
- import"./index-z3b157ew.js";
45
- import"./index-nmh0s6dg.js";
40
+ import"./index-76abqm8d.js";
41
+ import"./index-depfky1j.js";
42
+ import"./index-2c91cxdv.js";
43
+ import"./index-57swfxyp.js";
44
+ import"./index-qczxr0wh.js";
45
+ import"./index-wy3zpwjy.js";
46
46
  import"./index-2s7dvzff.js";
47
- import"./index-5wk0etp8.js";
48
- import"./index-v3hpsxvd.js";
47
+ import"./index-gsgy1psq.js";
48
+ import"./index-earq3mda.js";
49
49
  import"./index-rtry5xyf.js";
50
- import"./index-edrgc139.js";
50
+ import"./index-6cvdk98y.js";
51
51
  import"./index-frcemc0b.js";
52
52
  import"./index-0725jpp7.js";
53
- import"./index-njf5pbkm.js";
54
- import"./index-51xtrf7g.js";
55
- import"./index-mn5zzmqx.js";
56
- import"./index-w81jmdkt.js";
57
- import"./index-3rb5gs4w.js";
58
- import"./index-08x7gsnf.js";
53
+ import"./index-6b427dy8.js";
54
+ import"./index-wfdx7yw2.js";
55
+ import"./index-jvk95e6y.js";
56
+ import"./index-456awy1p.js";
57
+ import"./index-f0nj3d8z.js";
58
+ import"./index-w9hxzcz4.js";
59
59
  import"./index-rdm3px0g.js";
60
60
  import"./index-ry16d01s.js";
61
- import"./index-1d6ssjcj.js";
62
- import"./index-qyx53xrz.js";
61
+ import"./index-zzvxj02e.js";
62
+ import"./index-jc8pcf0r.js";
63
63
  import"./index-vzm6zre7.js";
64
64
  import"./index-ae75rja9.js";
65
- import"./index-74x26wyj.js";
66
- import"./index-01wt209s.js";
67
- import"./index-fbhtb6f5.js";
68
- import"./index-1xnse449.js";
65
+ import"./index-475bkab8.js";
66
+ import"./index-xf69xty9.js";
67
+ import"./index-t7hmqgjy.js";
68
+ import"./index-x1gyqgze.js";
69
+ import"./index-mc72pk74.js";
69
70
  import"./index-c1ggtmpm.js";
70
71
  import"./index-ejhxgyvm.js";
71
72
  import"./index-7g4c7s5r.js";
72
- import"./index-5cve9g2b.js";
73
+ import"./index-k53a69vb.js";
73
74
  import"./index-gx2vp8gx.js";
74
- import"./index-t1swv35d.js";
75
+ import"./index-49ptc9xx.js";
75
76
  import"./index-zxdawwc7.js";
76
77
  import {
77
78
  init_package,
78
79
  package_default
79
- } from "./index-ysr6n4ca.js";
80
+ } from "./index-0874kghs.js";
80
81
  import {
81
82
  DEFAULT_AGENT_CONFIGS,
82
83
  init_constants
@@ -644,7 +645,7 @@ async function main() {
644
645
  const exitCode = await run(["ci", ...args.slice(1)]);
645
646
  process.exit(exitCode);
646
647
  } else if (command === "mcp") {
647
- const { handleMcpCommand } = await import("./mcp-taace90a.js");
648
+ const { handleMcpCommand } = await import("./mcp-3nd85kww.js");
648
649
  const exitCode = await handleMcpCommand(args.slice(1));
649
650
  process.exit(exitCode);
650
651
  } else {
@@ -9,29 +9,30 @@ import {
9
9
  maybeEscalateOnViolation,
10
10
  maybeQuarantineOnContradiction,
11
11
  readRecentEscalations
12
- } from "./index-152b9c6m.js";
13
- import"./index-z3b157ew.js";
14
- import"./index-nmh0s6dg.js";
12
+ } from "./index-3skvygca.js";
13
+ import"./index-qczxr0wh.js";
14
+ import"./index-wy3zpwjy.js";
15
15
  import"./index-2s7dvzff.js";
16
- import"./index-edrgc139.js";
16
+ import"./index-6cvdk98y.js";
17
17
  import"./index-frcemc0b.js";
18
18
  import"./index-0725jpp7.js";
19
- import"./index-1d6ssjcj.js";
20
- import"./index-qyx53xrz.js";
19
+ import"./index-zzvxj02e.js";
20
+ import"./index-jc8pcf0r.js";
21
21
  import"./index-vzm6zre7.js";
22
22
  import"./index-ae75rja9.js";
23
- import"./index-74x26wyj.js";
24
- import"./index-01wt209s.js";
25
- import"./index-fbhtb6f5.js";
26
- import"./index-1xnse449.js";
23
+ import"./index-475bkab8.js";
24
+ import"./index-xf69xty9.js";
25
+ import"./index-t7hmqgjy.js";
26
+ import"./index-x1gyqgze.js";
27
+ import"./index-mc72pk74.js";
27
28
  import"./index-c1ggtmpm.js";
28
29
  import"./index-ejhxgyvm.js";
29
30
  import"./index-7g4c7s5r.js";
30
- import"./index-5cve9g2b.js";
31
+ import"./index-k53a69vb.js";
31
32
  import"./index-gx2vp8gx.js";
32
- import"./index-t1swv35d.js";
33
+ import"./index-49ptc9xx.js";
33
34
  import"./index-zxdawwc7.js";
34
- import"./index-ysr6n4ca.js";
35
+ import"./index-0874kghs.js";
35
36
  import"./index-wzec3c4g.js";
36
37
  import"./index-bk5tah7q.js";
37
38
  import"./index-gknz3bv1.js";
@@ -29,26 +29,27 @@ import {
29
29
  resolveKnowledgeCounterBaselinePath,
30
30
  resolveKnowledgeEventsPath,
31
31
  resolveLegacyApplicationLogPath
32
- } from "./index-z3b157ew.js";
33
- import"./index-nmh0s6dg.js";
32
+ } from "./index-qczxr0wh.js";
33
+ import"./index-wy3zpwjy.js";
34
34
  import"./index-2s7dvzff.js";
35
- import"./index-edrgc139.js";
35
+ import"./index-6cvdk98y.js";
36
36
  import"./index-frcemc0b.js";
37
37
  import"./index-0725jpp7.js";
38
- import"./index-1d6ssjcj.js";
38
+ import"./index-zzvxj02e.js";
39
39
  import"./index-ae75rja9.js";
40
- import"./index-74x26wyj.js";
41
- import"./index-01wt209s.js";
42
- import"./index-fbhtb6f5.js";
43
- import"./index-1xnse449.js";
40
+ import"./index-475bkab8.js";
41
+ import"./index-xf69xty9.js";
42
+ import"./index-t7hmqgjy.js";
43
+ import"./index-x1gyqgze.js";
44
+ import"./index-mc72pk74.js";
44
45
  import"./index-c1ggtmpm.js";
45
46
  import"./index-ejhxgyvm.js";
46
47
  import"./index-7g4c7s5r.js";
47
- import"./index-5cve9g2b.js";
48
+ import"./index-k53a69vb.js";
48
49
  import"./index-gx2vp8gx.js";
49
- import"./index-t1swv35d.js";
50
+ import"./index-49ptc9xx.js";
50
51
  import"./index-zxdawwc7.js";
51
- import"./index-ysr6n4ca.js";
52
+ import"./index-0874kghs.js";
52
53
  import"./index-wzec3c4g.js";
53
54
  import"./index-bk5tah7q.js";
54
55
  import"./index-gknz3bv1.js";
@@ -12,14 +12,15 @@ import {
12
12
  resolveLinkDir,
13
13
  sanitizeLinkId,
14
14
  writeLinkPointer
15
- } from "./index-74x26wyj.js";
16
- import"./index-01wt209s.js";
17
- import"./index-fbhtb6f5.js";
18
- import"./index-1xnse449.js";
15
+ } from "./index-475bkab8.js";
16
+ import"./index-xf69xty9.js";
17
+ import"./index-t7hmqgjy.js";
18
+ import"./index-x1gyqgze.js";
19
+ import"./index-mc72pk74.js";
19
20
  import"./index-c1ggtmpm.js";
20
21
  import"./index-ejhxgyvm.js";
21
22
  import"./index-7g4c7s5r.js";
22
- import"./index-5cve9g2b.js";
23
+ import"./index-k53a69vb.js";
23
24
  import"./index-gknz3bv1.js";
24
25
  import"./index-zpsr8rpc.js";
25
26
  import"./index-zgwm4ryv.js";
@@ -43,19 +43,20 @@ import {
43
43
  transactKnowledge,
44
44
  transactKnowledgeWithCas,
45
45
  wordBigrams
46
- } from "./index-qyx53xrz.js";
46
+ } from "./index-jc8pcf0r.js";
47
47
  import"./index-vzm6zre7.js";
48
48
  import {
49
49
  resolveHiveDataDir
50
50
  } from "./index-ae75rja9.js";
51
- import"./index-74x26wyj.js";
52
- import"./index-01wt209s.js";
53
- import"./index-fbhtb6f5.js";
54
- import"./index-1xnse449.js";
51
+ import"./index-475bkab8.js";
52
+ import"./index-xf69xty9.js";
53
+ import"./index-t7hmqgjy.js";
54
+ import"./index-x1gyqgze.js";
55
+ import"./index-mc72pk74.js";
55
56
  import"./index-c1ggtmpm.js";
56
57
  import"./index-ejhxgyvm.js";
57
58
  import"./index-7g4c7s5r.js";
58
- import"./index-5cve9g2b.js";
59
+ import"./index-k53a69vb.js";
59
60
  import"./index-bk5tah7q.js";
60
61
  import"./index-gknz3bv1.js";
61
62
  import"./index-zpsr8rpc.js";
@@ -23,20 +23,21 @@ import {
23
23
  validateLesson,
24
24
  validateSkillCandidatePath,
25
25
  validateSkillPath
26
- } from "./index-5wk0etp8.js";
27
- import"./index-v3hpsxvd.js";
26
+ } from "./index-gsgy1psq.js";
27
+ import"./index-earq3mda.js";
28
28
  import"./index-rtry5xyf.js";
29
- import"./index-qyx53xrz.js";
29
+ import"./index-jc8pcf0r.js";
30
30
  import"./index-vzm6zre7.js";
31
31
  import"./index-ae75rja9.js";
32
- import"./index-74x26wyj.js";
33
- import"./index-01wt209s.js";
34
- import"./index-fbhtb6f5.js";
35
- import"./index-1xnse449.js";
32
+ import"./index-475bkab8.js";
33
+ import"./index-xf69xty9.js";
34
+ import"./index-t7hmqgjy.js";
35
+ import"./index-x1gyqgze.js";
36
+ import"./index-mc72pk74.js";
36
37
  import"./index-c1ggtmpm.js";
37
38
  import"./index-ejhxgyvm.js";
38
39
  import"./index-7g4c7s5r.js";
39
- import"./index-5cve9g2b.js";
40
+ import"./index-k53a69vb.js";
40
41
  import"./index-bk5tah7q.js";
41
42
  import"./index-gknz3bv1.js";
42
43
  import"./index-zpsr8rpc.js";
@@ -3,6 +3,10 @@ import {
3
3
  validateProjectDirectory
4
4
  } from "./index-6b295cas.js";
5
5
  import"./index-ry16d01s.js";
6
+ import {
7
+ resolveProjectRootDecision
8
+ } from "./index-t7hmqgjy.js";
9
+ import"./index-zgwm4ryv.js";
6
10
  import {
7
11
  __require
8
12
  } from "./index-a76rekgs.js";
@@ -77,11 +81,21 @@ function resolveMcpRoot(input) {
77
81
  if (!existsSync(resolved) || !statSync(resolved).isDirectory()) {
78
82
  return { error: `invalid --dir: not an existing directory: ${resolved}` };
79
83
  }
84
+ const decision = resolveProjectRootDecision(resolved);
85
+ if (decision.kind === "fail-closed") {
86
+ return {
87
+ error: `invalid --dir: cannot verify project root for "${resolved}" \u2014 ${decision.reason}`
88
+ };
89
+ }
90
+ if (decision.kind === "redirect") {
91
+ console.error(`[opencode-swarm] mcp serve: --dir "${resolved}" is an ordinary subdirectory \u2014 serving the owning project root "${decision.owningRoot}" (state and config live there).`);
92
+ return { root: decision.owningRoot, redirectedFrom: resolved };
93
+ }
80
94
  return { root: resolved };
81
95
  }
82
96
  var _internals = {
83
97
  runMcpServer: async (options) => {
84
- const { runMcpServer } = await import("./server-765s4stz.js");
98
+ const { runMcpServer } = await import("./server-wzrb59mh.js");
85
99
  return runMcpServer(options);
86
100
  }
87
101
  };
package/dist/cli/mcp.d.ts CHANGED
@@ -24,6 +24,7 @@ export declare function parseMcpServeArgs(argv: string[]): McpServeArgs | {
24
24
  /** Resolve + fail-closed validate the configured project root. */
25
25
  export declare function resolveMcpRoot(input: string): {
26
26
  root: string;
27
+ redirectedFrom?: string;
27
28
  } | {
28
29
  error: string;
29
30
  };
@@ -4,69 +4,70 @@ import {
4
4
  resolveEffectiveAgentOverride,
5
5
  resolvePrimaryAgentNames,
6
6
  resolveRegisteredAgentModel
7
- } from "./index-9yvjwfay.js";
8
- import"./index-pq6vr26z.js";
7
+ } from "./index-s7bseqza.js";
8
+ import"./index-32vszgv0.js";
9
9
  import"./index-hamqvzqn.js";
10
- import"./index-4t0wd9sv.js";
11
- import"./index-46z4c89b.js";
12
- import"./index-r30xs0wp.js";
13
- import"./index-nvm6mxep.js";
14
- import"./index-z8smhv7k.js";
10
+ import"./index-6g664sy8.js";
11
+ import"./index-yk0r42nr.js";
12
+ import"./index-046psajf.js";
13
+ import"./index-7hvy33gc.js";
14
+ import"./index-ya32wfkp.js";
15
15
  import"./index-txdagbh7.js";
16
- import"./index-6b4vkz6q.js";
16
+ import"./index-7p4ym4q3.js";
17
17
  import"./index-6b295cas.js";
18
- import"./index-j40czc9v.js";
19
- import"./index-152b9c6m.js";
20
- import"./index-3fhg7pqf.js";
18
+ import"./index-n107956q.js";
19
+ import"./index-3skvygca.js";
20
+ import"./index-jkxef52n.js";
21
21
  import"./index-rdec0y3z.js";
22
- import"./index-e90m050y.js";
22
+ import"./index-ar2gsn6b.js";
23
23
  import"./index-cjapb4hy.js";
24
24
  import"./index-zsrtt42s.js";
25
- import"./index-me39468k.js";
26
- import"./index-6h81yvyc.js";
27
- import"./index-0bpr8vag.js";
25
+ import"./index-5ppx86w1.js";
26
+ import"./index-131ay7x1.js";
27
+ import"./index-3n5zsp31.js";
28
28
  import"./index-pt7h91zc.js";
29
29
  import"./index-q7sjgr1y.js";
30
- import"./index-t26gj2fh.js";
31
- import"./index-ad3yskxy.js";
32
- import"./index-4gr9pj67.js";
33
- import"./index-nm8ma9xb.js";
34
- import"./index-z3b157ew.js";
35
- import"./index-nmh0s6dg.js";
30
+ import"./index-76abqm8d.js";
31
+ import"./index-depfky1j.js";
32
+ import"./index-2c91cxdv.js";
33
+ import"./index-57swfxyp.js";
34
+ import"./index-qczxr0wh.js";
35
+ import"./index-wy3zpwjy.js";
36
36
  import"./index-2s7dvzff.js";
37
- import"./index-5wk0etp8.js";
38
- import"./index-v3hpsxvd.js";
37
+ import"./index-gsgy1psq.js";
38
+ import"./index-earq3mda.js";
39
39
  import"./index-rtry5xyf.js";
40
- import"./index-edrgc139.js";
40
+ import"./index-6cvdk98y.js";
41
41
  import"./index-frcemc0b.js";
42
42
  import"./index-0725jpp7.js";
43
- import"./index-njf5pbkm.js";
44
- import"./index-51xtrf7g.js";
45
- import"./index-mn5zzmqx.js";
46
- import"./index-w81jmdkt.js";
47
- import"./index-3rb5gs4w.js";
48
- import"./index-08x7gsnf.js";
43
+ import"./index-6b427dy8.js";
44
+ import"./index-wfdx7yw2.js";
45
+ import"./index-jvk95e6y.js";
46
+ import"./index-456awy1p.js";
47
+ import"./index-f0nj3d8z.js";
48
+ import"./index-w9hxzcz4.js";
49
49
  import"./index-rdm3px0g.js";
50
50
  import"./index-ry16d01s.js";
51
- import"./index-1d6ssjcj.js";
52
- import"./index-qyx53xrz.js";
51
+ import"./index-zzvxj02e.js";
52
+ import"./index-jc8pcf0r.js";
53
53
  import"./index-vzm6zre7.js";
54
54
  import"./index-ae75rja9.js";
55
- import"./index-74x26wyj.js";
56
- import"./index-01wt209s.js";
57
- import"./index-fbhtb6f5.js";
58
- import"./index-1xnse449.js";
55
+ import"./index-475bkab8.js";
56
+ import"./index-xf69xty9.js";
57
+ import"./index-t7hmqgjy.js";
58
+ import"./index-x1gyqgze.js";
59
+ import"./index-mc72pk74.js";
59
60
  import"./index-c1ggtmpm.js";
60
61
  import"./index-ejhxgyvm.js";
61
62
  import"./index-7g4c7s5r.js";
62
- import"./index-5cve9g2b.js";
63
+ import"./index-k53a69vb.js";
63
64
  import"./index-gx2vp8gx.js";
64
- import"./index-t1swv35d.js";
65
+ import"./index-49ptc9xx.js";
65
66
  import"./index-zxdawwc7.js";
66
67
  import {
67
68
  init_schema,
68
69
  stripKnownSwarmPrefix
69
- } from "./index-ysr6n4ca.js";
70
+ } from "./index-0874kghs.js";
70
71
  import {
71
72
  ALL_AGENT_NAMES,
72
73
  DEFAULT_MODELS,
@@ -71,26 +71,27 @@ import {
71
71
  sweepStaleDelegations,
72
72
  updateCoderSettlement,
73
73
  writeDelegationFallback
74
- } from "./index-nm8ma9xb.js";
75
- import"./index-nmh0s6dg.js";
74
+ } from "./index-57swfxyp.js";
75
+ import"./index-wy3zpwjy.js";
76
76
  import"./index-2s7dvzff.js";
77
- import"./index-w81jmdkt.js";
78
- import"./index-3rb5gs4w.js";
79
- import"./index-08x7gsnf.js";
77
+ import"./index-456awy1p.js";
78
+ import"./index-f0nj3d8z.js";
79
+ import"./index-w9hxzcz4.js";
80
80
  import"./index-rdm3px0g.js";
81
81
  import"./index-ry16d01s.js";
82
- import"./index-1d6ssjcj.js";
83
- import"./index-qyx53xrz.js";
82
+ import"./index-zzvxj02e.js";
83
+ import"./index-jc8pcf0r.js";
84
84
  import"./index-vzm6zre7.js";
85
85
  import"./index-ae75rja9.js";
86
- import"./index-74x26wyj.js";
87
- import"./index-01wt209s.js";
88
- import"./index-fbhtb6f5.js";
89
- import"./index-1xnse449.js";
86
+ import"./index-475bkab8.js";
87
+ import"./index-xf69xty9.js";
88
+ import"./index-t7hmqgjy.js";
89
+ import"./index-x1gyqgze.js";
90
+ import"./index-mc72pk74.js";
90
91
  import"./index-c1ggtmpm.js";
91
92
  import"./index-ejhxgyvm.js";
92
93
  import"./index-7g4c7s5r.js";
93
- import"./index-5cve9g2b.js";
94
+ import"./index-k53a69vb.js";
94
95
  import"./index-bk5tah7q.js";
95
96
  import"./index-gknz3bv1.js";
96
97
  import"./index-zpsr8rpc.js";