opencode-swarm 7.192.1 → 7.192.3

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 (116) hide show
  1. package/.opencode/skills/critic-gate/SKILL.md +2 -1
  2. package/.opencode/skills/execute/SKILL.md +1 -1
  3. package/README.md +5 -3
  4. package/binaries/win32-arm64/swarm-sandbox-runner.exe +0 -0
  5. package/binaries/win32-x64/swarm-sandbox-runner.exe +0 -0
  6. package/dist/agents/critic.d.ts +2 -2
  7. package/dist/cli/{auto-checkpoint-kkakqktp.js → auto-checkpoint-8c7hpz0z.js} +8 -8
  8. package/dist/cli/{capability-probe-3mgxcfr9.js → capability-probe-rty1315z.js} +1 -1
  9. package/dist/cli/{checkpoint-cefw75xe.js → checkpoint-98h7ftn4.js} +16 -16
  10. package/dist/cli/{coder-settlement-tgdjczyp.js → coder-settlement-0nhsjfh1.js} +12 -12
  11. package/dist/cli/{config-doctor-sns7gbj2.js → config-doctor-ah661gsm.js} +15 -15
  12. package/dist/cli/{core-q8xvp8bw.js → core-eyk369jx.js} +3 -3
  13. package/dist/cli/{curation-policy-2q5xs0xg.js → curation-policy-yzdznz4z.js} +6 -6
  14. package/dist/cli/{curator-drift-1n3akmda.js → curator-drift-k6f7mnj5.js} +8 -8
  15. package/dist/cli/curator-llm-factory-9g9p90jz.js +82 -0
  16. package/dist/cli/{curator-mgdsxrpv.js → curator-t9cwtz64.js} +43 -43
  17. package/dist/cli/{doctor-knowledge-receipt-phase-id-33bp8fcs.js → doctor-knowledge-receipt-phase-id-dwygxv2m.js} +8 -8
  18. package/dist/cli/{evidence-summary-service-sb888pg8.js → evidence-summary-service-b9xq092m.js} +19 -19
  19. package/dist/cli/{gate-evidence-rmk87c6m.js → gate-evidence-g3qpsr62.js} +7 -7
  20. package/dist/cli/guardrail-explain-784a2m4p.js +83 -0
  21. package/dist/cli/{guardrail-log-d18dcweh.js → guardrail-log-b862hykr.js} +7 -7
  22. package/dist/cli/{guardrail-reset-1xeeetk7.js → guardrail-reset-avehjarw.js} +43 -43
  23. package/dist/cli/{hive-promoter-44grgbq4.js → hive-promoter-0zv095rz.js} +43 -43
  24. package/dist/cli/{index-cje7tt58.js → index-043r3t12.js} +1 -1
  25. package/dist/cli/{index-b79a8pc2.js → index-04knttpn.js} +2 -2
  26. package/dist/cli/{index-xjqa26fs.js → index-0e1nxkte.js} +1 -1
  27. package/dist/cli/{index-63v3gmgr.js → index-1n7sf9gz.js} +2 -2
  28. package/dist/cli/{index-km4x7yfb.js → index-31bd6hrm.js} +11 -11
  29. package/dist/cli/{index-95hc7xn4.js → index-3bst6f3c.js} +3 -3
  30. package/dist/cli/{index-edk2sgse.js → index-4bpnf2eg.js} +2 -2
  31. package/dist/cli/{index-w52xyp9v.js → index-4e8xcgkx.js} +2 -2
  32. package/dist/cli/{index-advcaree.js → index-4g39c948.js} +4 -4
  33. package/dist/cli/{index-k6h66zm3.js → index-4twjbsfw.js} +2 -2
  34. package/dist/cli/{index-xw19x0t7.js → index-5dws7eyb.js} +1 -1
  35. package/dist/cli/{index-t0se5zwe.js → index-5gy5dc2n.js} +2 -2
  36. package/dist/cli/{index-vt8hk0pt.js → index-5m64x65w.js} +244 -106
  37. package/dist/cli/{index-af3nmk6c.js → index-5mrvx2vm.js} +7 -7
  38. package/dist/cli/{index-v3bmeqqh.js → index-6a4t4p4p.js} +12 -7
  39. package/dist/cli/{index-f32hs2vt.js → index-83swjsyd.js} +4 -4
  40. package/dist/cli/{index-nb1c3342.js → index-8z8cj2rz.js} +7 -7
  41. package/dist/cli/{index-ga1pcs49.js → index-8zj647hc.js} +1 -1
  42. package/dist/cli/{index-d4cjbm4p.js → index-a9m7h5v0.js} +2 -2
  43. package/dist/cli/{index-fsm9gv1p.js → index-aqvsxjwn.js} +43 -43
  44. package/dist/cli/{index-pkgbrrn7.js → index-azr0092e.js} +1 -1
  45. package/dist/cli/{index-ysazjncb.js → index-b67200rm.js} +6 -6
  46. package/dist/cli/{index-ajp4dabz.js → index-b7nb6c0p.js} +5 -5
  47. package/dist/cli/{index-6shk3n43.js → index-bccf3c0h.js} +2 -2
  48. package/dist/cli/{index-kvtwwj8b.js → index-bgzpw6ge.js} +1 -1
  49. package/dist/cli/{index-vf6pqke0.js → index-bxtyg46p.js} +45 -45
  50. package/dist/cli/{index-sgxbqba0.js → index-bzfn85kq.js} +119 -55
  51. package/dist/cli/{index-r3gphy10.js → index-cme96pja.js} +5 -5
  52. package/dist/cli/{index-4cm1p2kj.js → index-dt4cjxbz.js} +1 -1
  53. package/dist/cli/{index-f6e44xh2.js → index-dtet46e6.js} +7 -7
  54. package/dist/cli/{index-8bx6vhzk.js → index-e8k0v19e.js} +1 -1
  55. package/dist/cli/{index-mhqh2dc9.js → index-eaess7dm.js} +1 -1
  56. package/dist/cli/{index-yfmgbhwz.js → index-ef0tgsgj.js} +20 -6
  57. package/dist/cli/{index-0yrsvwdf.js → index-f6am4ypq.js} +6 -6
  58. package/dist/cli/{index-ejfmgkt0.js → index-fayfa263.js} +3 -3
  59. package/dist/cli/{index-bwh9196c.js → index-fzcr2s01.js} +7 -7
  60. package/dist/cli/{index-t433r606.js → index-fzqn2kk8.js} +2 -2
  61. package/dist/cli/{index-jdw63xyd.js → index-g7vd2azv.js} +2 -2
  62. package/dist/cli/{index-28zgn6sm.js → index-g8jd3h4r.js} +2 -2
  63. package/dist/cli/{index-2wps5fec.js → index-hmgx2bsy.js} +3 -3
  64. package/dist/cli/{index-9b6bxe9b.js → index-mbn4vn3z.js} +1 -1
  65. package/dist/cli/{index-7vnr5cmp.js → index-mtqwyjrg.js} +1 -1
  66. package/dist/cli/{index-867d9dhf.js → index-nd4kkbjw.js} +3 -3
  67. package/dist/cli/{index-025wg2re.js → index-nwswxes7.js} +3 -3
  68. package/dist/cli/{index-s81tvz98.js → index-pq5962z7.js} +3 -3
  69. package/dist/cli/{index-ney8qpg3.js → index-rhjzq6kw.js} +1 -1
  70. package/dist/cli/{index-3txrbsa1.js → index-yc8v81ab.js} +4 -4
  71. package/dist/cli/{index-50b8f6qz.js → index-zdt5m9n2.js} +4 -4
  72. package/dist/cli/index.d.ts +2 -2
  73. package/dist/cli/index.js +60 -54
  74. package/dist/cli/{knowledge-escalator-naq700x5.js → knowledge-escalator-y879xx4c.js} +14 -14
  75. package/dist/cli/{knowledge-events-mmh5cya6.js → knowledge-events-07vpvmmr.js} +12 -12
  76. package/dist/cli/{knowledge-link-76egdqc9.js → knowledge-link-a5tvjqdt.js} +5 -5
  77. package/dist/cli/{knowledge-store-9dxr9jb9.js → knowledge-store-wae6s3ef.js} +6 -6
  78. package/dist/cli/{knowledge-validator-eze3s6fn.js → knowledge-validator-v13cjze1.js} +8 -8
  79. package/dist/cli/{mcp-1x2tpk71.js → mcp-5ns32ees.js} +1 -1
  80. package/dist/cli/{model-preflight-hgb7kf5d.js → model-preflight-06jexzsa.js} +43 -43
  81. package/dist/cli/{pending-delegations-zg4q1k5q.js → pending-delegations-8g7nne79.js} +12 -12
  82. package/dist/cli/{pr-subscriptions-zw8aev5s.js → pr-subscriptions-yp71fzeb.js} +12 -12
  83. package/dist/cli/{pr-workflow-gate-dcbpd451.js → pr-workflow-gate-rcfwt8jd.js} +43 -43
  84. package/dist/cli/{runner-y529qa4d.js → runner-8qybgy4n.js} +6 -6
  85. package/dist/cli/{scan-cursor-pdxmndd0.js → scan-cursor-9xqrqgbs.js} +7 -7
  86. package/dist/cli/{schema-hzz32642.js → schema-qxgn4xzy.js} +1 -1
  87. package/dist/cli/{scope-persistence-h4b6p951.js → scope-persistence-9dscq6a2.js} +15 -15
  88. package/dist/cli/{server-7gd7tqt5.js → server-v1s76pa3.js} +43 -43
  89. package/dist/cli/{skill-generator-7g7sca90.js → skill-generator-yjeam2kn.js} +16 -16
  90. package/dist/cli/{snapshot-coordination-init-4q5ykq22.js → snapshot-coordination-init-jqkew1cw.js} +43 -43
  91. package/dist/cli/{speckit-checkoff-5bfxs8r7.js → speckit-checkoff-atm1ftz7.js} +4 -4
  92. package/dist/cli/{telemetry-9szfdfqv.js → telemetry-qaymh4gg.js} +1 -1
  93. package/dist/cli/{workspace-snapshot-nre732xt.js → workspace-snapshot-vfpnxjsp.js} +3 -3
  94. package/dist/cli/{worktree-collision-ownership-327d06qw.js → worktree-collision-ownership-ftg1bnx6.js} +13 -13
  95. package/dist/cli/{worktree-isolation-zqzs3wkk.js → worktree-isolation-ttqkatgg.js} +49 -43
  96. package/dist/commands/turbo.d.ts +4 -3
  97. package/dist/config/constants.d.ts +2 -2
  98. package/dist/config/plan-schema.d.ts +16 -0
  99. package/dist/epic/phase-readiness.d.ts +4 -2
  100. package/dist/evaluation/ephemeral-agent-dispatcher.d.ts +11 -0
  101. package/dist/failures/provider-message-error.d.ts +32 -0
  102. package/dist/hooks/delegation-gate/worktree-isolation.d.ts +40 -0
  103. package/dist/hooks/delegation-gate.d.ts +13 -0
  104. package/dist/hooks/extractors.d.ts +2 -0
  105. package/dist/hooks/guardrails/index.d.ts +2 -0
  106. package/dist/hooks/guardrails/parallel-gate-attribution.d.ts +10 -0
  107. package/dist/index.js +415 -412
  108. package/dist/plan/ledger.d.ts +21 -3
  109. package/dist/sandbox/linux/bubblewrap-executor.d.ts +24 -0
  110. package/dist/services/skill-optimizer/store.d.ts +2 -2
  111. package/dist/tools/phase-complete.d.ts +4 -0
  112. package/dist/turbo/lean/runner.d.ts +2 -0
  113. package/opencode-swarm.schema.json +1 -1
  114. package/package.json +1 -1
  115. package/dist/cli/curator-llm-factory-tfn0cp68.js +0 -82
  116. package/dist/cli/guardrail-explain-n9ndp99q.js +0 -83
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  _internals,
4
4
  resolveWorktreeIsolationConfig
5
- } from "./index-6shk3n43.js";
5
+ } from "./index-bccf3c0h.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-ney8qpg3.js";
49
+ } from "./index-rhjzq6kw.js";
50
50
  import"./index-zxdawwc7.js";
51
51
  import {
52
52
  AUTO_REVIEW_V8_BURN_IN_DECISION,
@@ -72,7 +72,7 @@ import {
72
72
  TurboConfigSchema,
73
73
  WorktreeIsolationConfigSchema,
74
74
  resolveAutoReviewConfig
75
- } from "./index-b79a8pc2.js";
75
+ } from "./index-04knttpn.js";
76
76
  import {
77
77
  ALL_AGENT_NAMES,
78
78
  ALL_SUBAGENT_NAMES,
@@ -15,7 +15,7 @@ import {
15
15
  init_schema,
16
16
  resolveExternalSkillsConfig,
17
17
  retiredEpicKeyReplacement
18
- } from "./index-b79a8pc2.js";
18
+ } from "./index-04knttpn.js";
19
19
  import {
20
20
  DangerousMergeKeyError,
21
21
  MAX_MERGE_DEPTH,
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  authorizeCuration
4
- } from "./index-xw19x0t7.js";
4
+ } from "./index-5dws7eyb.js";
5
5
  import {
6
6
  findNearDuplicate,
7
7
  inferTags,
@@ -9,13 +9,13 @@ import {
9
9
  resolveSwarmKnowledgePath,
10
10
  resolveSwarmRejectedPath,
11
11
  transactKnowledge
12
- } from "./index-af3nmk6c.js";
12
+ } from "./index-5mrvx2vm.js";
13
13
  import {
14
14
  resolveKnowledgeStoreDir
15
- } from "./index-kvtwwj8b.js";
15
+ } from "./index-bgzpw6ge.js";
16
16
  import {
17
17
  atomicWriteFile
18
- } from "./index-63v3gmgr.js";
18
+ } from "./index-1n7sf9gz.js";
19
19
  import {
20
20
  require_proper_lockfile
21
21
  } from "./index-7g4c7s5r.js";
@@ -5,18 +5,18 @@ import {
5
5
  import {
6
6
  effectiveRetrievalOutcomes,
7
7
  readAuthoritativeKnowledgeCounterRollups
8
- } from "./index-advcaree.js";
8
+ } from "./index-4g39c948.js";
9
9
  import {
10
10
  ALLOWED_SKILL_PATH_PREFIXES,
11
11
  validateSkillPath
12
- } from "./index-3txrbsa1.js";
12
+ } from "./index-yc8v81ab.js";
13
13
  import {
14
14
  computeOutcomeSignal,
15
15
  readKnowledge,
16
16
  resolveHiveKnowledgePath,
17
17
  resolveSwarmKnowledgePath,
18
18
  transactKnowledge
19
- } from "./index-af3nmk6c.js";
19
+ } from "./index-5mrvx2vm.js";
20
20
  import {
21
21
  appendCappedJsonl,
22
22
  resolveRetentionCap
@@ -27,7 +27,7 @@ import {
27
27
  import {
28
28
  atomicWriteFileAnyRoot,
29
29
  atomicWriteSwarmFile
30
- } from "./index-025wg2re.js";
30
+ } from "./index-nwswxes7.js";
31
31
  import {
32
32
  advisoryWarn,
33
33
  init_warning_buffer
@@ -29,7 +29,7 @@ export declare function isSafeLockFilePath(p: string): boolean;
29
29
  * Defense in depth:
30
30
  * 1. Canonicalize via safeRealpathSync (realpathSync with ENOENT→fallback)
31
31
  * so the path a symlinked leaf actually resolves to is what we validate.
32
- * 2. Refuse root, home, or shorter-than-home paths.
32
+ * 2. Refuse the filesystem root, home, or any ancestor of home.
33
33
  * 3. Require ≥ 3 non-empty segments (rejects pathological
34
34
  * XDG_CONFIG_HOME='/' which yields '/opencode/opencode-swarm', 2 segments).
35
35
  * 4. Require basename === 'opencode-swarm'. With no explicit configured
@@ -48,7 +48,7 @@ export declare function isSafePromptsDir(p: string, configuredDir?: string): boo
48
48
  * `opencode-swarm` directory — hence a dedicated guard.
49
49
  *
50
50
  * Defense in depth: canonicalize via safeRealpathSync; refuse root/home/
51
- * shorter-than-home; require basename === 'opencode-swarm.json'. With no
51
+ * home ancestors; require basename === 'opencode-swarm.json'. With no
52
52
  * explicit configured root, the parent directory's basename must equal the
53
53
  * config dir's basename. Cleanup callers otherwise bind the canonical parent
54
54
  * to their exact configured root.
package/dist/cli/index.js CHANGED
@@ -14,77 +14,77 @@ import {
14
14
  readCachePackageVersion,
15
15
  resolveCommand,
16
16
  safeRealpathSync
17
- } from "./index-vt8hk0pt.js";
18
- import"./index-867d9dhf.js";
19
- import"./index-95hc7xn4.js";
20
- import"./index-ajp4dabz.js";
17
+ } from "./index-5m64x65w.js";
18
+ import"./index-nd4kkbjw.js";
19
+ import"./index-3bst6f3c.js";
20
+ import"./index-b7nb6c0p.js";
21
21
  import"./index-j2vv0h13.js";
22
- import"./index-xjqa26fs.js";
23
- import"./index-t0se5zwe.js";
22
+ import"./index-0e1nxkte.js";
23
+ import"./index-5gy5dc2n.js";
24
24
  import"./index-txdagbh7.js";
25
- import"./index-w52xyp9v.js";
25
+ import"./index-4e8xcgkx.js";
26
26
  import"./index-rdec0y3z.js";
27
- import"./index-2wps5fec.js";
28
- import"./index-nb1c3342.js";
29
- import"./index-50b8f6qz.js";
30
- import"./index-0yrsvwdf.js";
31
- import"./index-t433r606.js";
32
- import"./index-f6e44xh2.js";
27
+ import"./index-hmgx2bsy.js";
28
+ import"./index-8z8cj2rz.js";
29
+ import"./index-zdt5m9n2.js";
30
+ import"./index-f6am4ypq.js";
31
+ import"./index-fzqn2kk8.js";
32
+ import"./index-dtet46e6.js";
33
33
  import"./index-cjapb4hy.js";
34
- import"./index-28zgn6sm.js";
34
+ import"./index-g8jd3h4r.js";
35
35
  import"./index-pt7h91zc.js";
36
36
  import"./index-q7sjgr1y.js";
37
- import"./index-ysazjncb.js";
38
- import"./index-km4x7yfb.js";
37
+ import"./index-b67200rm.js";
38
+ import"./index-31bd6hrm.js";
39
39
  import"./index-6b295cas.js";
40
40
  import"./index-9nyqt3kb.js";
41
- import"./index-pkgbrrn7.js";
41
+ import"./index-azr0092e.js";
42
42
  import"./index-v3bmwmqw.js";
43
- import"./index-jdw63xyd.js";
44
- import"./index-f32hs2vt.js";
45
- import"./index-ejfmgkt0.js";
43
+ import"./index-g7vd2azv.js";
44
+ import"./index-83swjsyd.js";
45
+ import"./index-fayfa263.js";
46
46
  import"./index-g4fs6z4e.js";
47
- import"./index-bwh9196c.js";
48
- import"./index-advcaree.js";
49
- import"./index-v3bmeqqh.js";
47
+ import"./index-fzcr2s01.js";
48
+ import"./index-4g39c948.js";
49
+ import"./index-6a4t4p4p.js";
50
50
  import"./index-m9zzj4ee.js";
51
- import"./index-mhqh2dc9.js";
51
+ import"./index-eaess7dm.js";
52
52
  import"./index-2s7dvzff.js";
53
- import"./index-3txrbsa1.js";
54
- import"./index-xw19x0t7.js";
53
+ import"./index-yc8v81ab.js";
54
+ import"./index-5dws7eyb.js";
55
55
  import"./index-rtry5xyf.js";
56
- import"./index-6shk3n43.js";
56
+ import"./index-bccf3c0h.js";
57
57
  import"./index-g22dps7x.js";
58
58
  import"./index-0725jpp7.js";
59
- import"./index-r3gphy10.js";
60
- import"./index-yfmgbhwz.js";
61
- import"./index-d4cjbm4p.js";
62
- import"./index-4cm1p2kj.js";
63
- import"./index-9b6bxe9b.js";
64
- import"./index-ga1pcs49.js";
59
+ import"./index-cme96pja.js";
60
+ import"./index-ef0tgsgj.js";
61
+ import"./index-a9m7h5v0.js";
62
+ import"./index-dt4cjxbz.js";
63
+ import"./index-mbn4vn3z.js";
64
+ import"./index-8zj647hc.js";
65
65
  import"./index-ry16d01s.js";
66
66
  import"./index-rdm3px0g.js";
67
67
  import"./index-7pmbnjvj.js";
68
- import"./index-k6h66zm3.js";
69
- import"./index-af3nmk6c.js";
68
+ import"./index-4twjbsfw.js";
69
+ import"./index-5mrvx2vm.js";
70
70
  import"./index-vzm6zre7.js";
71
71
  import"./index-ae75rja9.js";
72
- import"./index-kvtwwj8b.js";
73
- import"./index-63v3gmgr.js";
74
- import"./index-8bx6vhzk.js";
72
+ import"./index-bgzpw6ge.js";
73
+ import"./index-1n7sf9gz.js";
74
+ import"./index-e8k0v19e.js";
75
75
  import"./index-t7hmqgjy.js";
76
- import"./index-7vnr5cmp.js";
76
+ import"./index-mtqwyjrg.js";
77
77
  import"./index-fzpt2djt.js";
78
78
  import"./index-ejhxgyvm.js";
79
79
  import"./index-7g4c7s5r.js";
80
- import"./index-025wg2re.js";
80
+ import"./index-nwswxes7.js";
81
81
  import"./index-gx2vp8gx.js";
82
- import"./index-ney8qpg3.js";
82
+ import"./index-rhjzq6kw.js";
83
83
  import"./index-zxdawwc7.js";
84
84
  import {
85
85
  init_package,
86
86
  package_default
87
- } from "./index-b79a8pc2.js";
87
+ } from "./index-04knttpn.js";
88
88
  import {
89
89
  DEFAULT_AGENT_CONFIGS,
90
90
  init_constants
@@ -92,7 +92,7 @@ import {
92
92
  import"./index-bk5tah7q.js";
93
93
  import"./index-gknz3bv1.js";
94
94
  import"./index-zpsr8rpc.js";
95
- import"./index-sgxbqba0.js";
95
+ import"./index-bzfn85kq.js";
96
96
  import"./index-9rwhas09.js";
97
97
  import"./index-zgwm4ryv.js";
98
98
  import {
@@ -129,6 +129,17 @@ function normalizePathForComparison(value) {
129
129
  const normalized = path.normalize(path.resolve(value));
130
130
  return process.platform === "win32" ? normalized.toLowerCase() : normalized;
131
131
  }
132
+ function isFilesystemRootOrHomeAncestor(resolved) {
133
+ const target = normalizePathForComparison(resolved);
134
+ if (target === normalizePathForComparison(path.parse(target).root)) {
135
+ return true;
136
+ }
137
+ const home = normalizePathForComparison(os.homedir());
138
+ if (target === home)
139
+ return true;
140
+ const prefix = target.endsWith(path.sep) ? target : `${target}${path.sep}`;
141
+ return home.startsWith(prefix);
142
+ }
132
143
  function isExactConfiguredConfigChild(canonicalTarget, configuredDir) {
133
144
  const canonicalConfigDir = safeRealpathSync(configuredDir, configuredDir);
134
145
  const canonicalParent = safeRealpathSync(path.dirname(canonicalTarget), path.dirname(canonicalTarget));
@@ -145,8 +156,7 @@ function hasSafeConfigArtifactParent(resolved, configuredDir) {
145
156
  }
146
157
  function isSafeCachePath(p) {
147
158
  const resolved = path.resolve(p);
148
- const home = path.resolve(os.homedir());
149
- if (resolved === "/" || resolved === home || resolved.length <= home.length) {
159
+ if (isFilesystemRootOrHomeAncestor(resolved)) {
150
160
  return false;
151
161
  }
152
162
  if (segmentDepthBelowRoot(resolved) < 4) {
@@ -168,8 +178,7 @@ function isSafeCachePath(p) {
168
178
  }
169
179
  function isSafeLockFilePath(p) {
170
180
  const resolved = path.resolve(p);
171
- const home = path.resolve(os.homedir());
172
- if (resolved === "/" || resolved === home || resolved.length <= home.length) {
181
+ if (isFilesystemRootOrHomeAncestor(resolved)) {
173
182
  return false;
174
183
  }
175
184
  if (segmentDepthBelowRoot(resolved) < 4) {
@@ -195,8 +204,7 @@ function isSafePromptsDir(p, configuredDir) {
195
204
  return false;
196
205
  }
197
206
  const resolved = path.resolve(canonical);
198
- const home = path.resolve(os.homedir());
199
- if (resolved === "/" || resolved === home || resolved.length <= home.length) {
207
+ if (isFilesystemRootOrHomeAncestor(resolved)) {
200
208
  return false;
201
209
  }
202
210
  if (segmentDepthBelowRoot(resolved) < 3) {
@@ -216,8 +224,7 @@ function isSafePluginConfigPath(p, configuredDir) {
216
224
  return false;
217
225
  }
218
226
  const resolved = path.resolve(canonical);
219
- const home = path.resolve(os.homedir());
220
- if (resolved === "/" || resolved === home || resolved.length <= home.length) {
227
+ if (isFilesystemRootOrHomeAncestor(resolved)) {
221
228
  return false;
222
229
  }
223
230
  if (segmentDepthBelowRoot(resolved) < 3) {
@@ -237,8 +244,7 @@ function isSafeInstallBackupPath(p, configuredDir) {
237
244
  return false;
238
245
  }
239
246
  const resolved = path.resolve(canonical);
240
- const home = path.resolve(os.homedir());
241
- if (resolved === "/" || resolved === home || resolved.length <= home.length) {
247
+ if (isFilesystemRootOrHomeAncestor(resolved)) {
242
248
  return false;
243
249
  }
244
250
  if (segmentDepthBelowRoot(resolved) < 3) {
@@ -910,7 +916,7 @@ async function main() {
910
916
  const exitCode = await run(["ci", ...args.slice(1)]);
911
917
  process.exit(exitCode);
912
918
  } else if (command === "mcp") {
913
- const { handleMcpCommand } = await import("./mcp-1x2tpk71.js");
919
+ const { handleMcpCommand } = await import("./mcp-5ns32ees.js");
914
920
  const exitCode = await handleMcpCommand(args.slice(1));
915
921
  process.exit(exitCode);
916
922
  } else {
@@ -9,32 +9,32 @@ import {
9
9
  maybeEscalateOnViolation,
10
10
  maybeQuarantineOnContradiction,
11
11
  readRecentEscalations
12
- } from "./index-0yrsvwdf.js";
13
- import"./index-advcaree.js";
14
- import"./index-v3bmeqqh.js";
12
+ } from "./index-f6am4ypq.js";
13
+ import"./index-4g39c948.js";
14
+ import"./index-6a4t4p4p.js";
15
15
  import"./index-m9zzj4ee.js";
16
- import"./index-mhqh2dc9.js";
16
+ import"./index-eaess7dm.js";
17
17
  import"./index-2s7dvzff.js";
18
- import"./index-6shk3n43.js";
18
+ import"./index-bccf3c0h.js";
19
19
  import"./index-g22dps7x.js";
20
20
  import"./index-0725jpp7.js";
21
- import"./index-k6h66zm3.js";
22
- import"./index-af3nmk6c.js";
21
+ import"./index-4twjbsfw.js";
22
+ import"./index-5mrvx2vm.js";
23
23
  import"./index-vzm6zre7.js";
24
24
  import"./index-ae75rja9.js";
25
- import"./index-kvtwwj8b.js";
26
- import"./index-63v3gmgr.js";
27
- import"./index-8bx6vhzk.js";
25
+ import"./index-bgzpw6ge.js";
26
+ import"./index-1n7sf9gz.js";
27
+ import"./index-e8k0v19e.js";
28
28
  import"./index-t7hmqgjy.js";
29
- import"./index-7vnr5cmp.js";
29
+ import"./index-mtqwyjrg.js";
30
30
  import"./index-fzpt2djt.js";
31
31
  import"./index-ejhxgyvm.js";
32
32
  import"./index-7g4c7s5r.js";
33
- import"./index-025wg2re.js";
33
+ import"./index-nwswxes7.js";
34
34
  import"./index-gx2vp8gx.js";
35
- import"./index-ney8qpg3.js";
35
+ import"./index-rhjzq6kw.js";
36
36
  import"./index-zxdawwc7.js";
37
- import"./index-b79a8pc2.js";
37
+ import"./index-04knttpn.js";
38
38
  import"./index-py8wpe81.js";
39
39
  import"./index-bk5tah7q.js";
40
40
  import"./index-gknz3bv1.js";
@@ -29,29 +29,29 @@ import {
29
29
  resolveKnowledgeCounterBaselinePath,
30
30
  resolveKnowledgeEventsPath,
31
31
  resolveLegacyApplicationLogPath
32
- } from "./index-advcaree.js";
33
- import"./index-v3bmeqqh.js";
32
+ } from "./index-4g39c948.js";
33
+ import"./index-6a4t4p4p.js";
34
34
  import"./index-m9zzj4ee.js";
35
- import"./index-mhqh2dc9.js";
35
+ import"./index-eaess7dm.js";
36
36
  import"./index-2s7dvzff.js";
37
- import"./index-6shk3n43.js";
37
+ import"./index-bccf3c0h.js";
38
38
  import"./index-g22dps7x.js";
39
39
  import"./index-0725jpp7.js";
40
- import"./index-k6h66zm3.js";
40
+ import"./index-4twjbsfw.js";
41
41
  import"./index-ae75rja9.js";
42
- import"./index-kvtwwj8b.js";
43
- import"./index-63v3gmgr.js";
44
- import"./index-8bx6vhzk.js";
42
+ import"./index-bgzpw6ge.js";
43
+ import"./index-1n7sf9gz.js";
44
+ import"./index-e8k0v19e.js";
45
45
  import"./index-t7hmqgjy.js";
46
- import"./index-7vnr5cmp.js";
46
+ import"./index-mtqwyjrg.js";
47
47
  import"./index-fzpt2djt.js";
48
48
  import"./index-ejhxgyvm.js";
49
49
  import"./index-7g4c7s5r.js";
50
- import"./index-025wg2re.js";
50
+ import"./index-nwswxes7.js";
51
51
  import"./index-gx2vp8gx.js";
52
- import"./index-ney8qpg3.js";
52
+ import"./index-rhjzq6kw.js";
53
53
  import"./index-zxdawwc7.js";
54
- import"./index-b79a8pc2.js";
54
+ import"./index-04knttpn.js";
55
55
  import"./index-py8wpe81.js";
56
56
  import"./index-bk5tah7q.js";
57
57
  import"./index-gknz3bv1.js";
@@ -12,15 +12,15 @@ import {
12
12
  resolveLinkDir,
13
13
  sanitizeLinkId,
14
14
  writeLinkPointer
15
- } from "./index-kvtwwj8b.js";
16
- import"./index-63v3gmgr.js";
17
- import"./index-8bx6vhzk.js";
15
+ } from "./index-bgzpw6ge.js";
16
+ import"./index-1n7sf9gz.js";
17
+ import"./index-e8k0v19e.js";
18
18
  import"./index-t7hmqgjy.js";
19
- import"./index-7vnr5cmp.js";
19
+ import"./index-mtqwyjrg.js";
20
20
  import"./index-fzpt2djt.js";
21
21
  import"./index-ejhxgyvm.js";
22
22
  import"./index-7g4c7s5r.js";
23
- import"./index-025wg2re.js";
23
+ import"./index-nwswxes7.js";
24
24
  import"./index-gknz3bv1.js";
25
25
  import"./index-zpsr8rpc.js";
26
26
  import"./index-zgwm4ryv.js";
@@ -43,20 +43,20 @@ import {
43
43
  transactKnowledge,
44
44
  transactKnowledgeWithCas,
45
45
  wordBigrams
46
- } from "./index-af3nmk6c.js";
46
+ } from "./index-5mrvx2vm.js";
47
47
  import"./index-vzm6zre7.js";
48
48
  import {
49
49
  resolveHiveDataDir
50
50
  } from "./index-ae75rja9.js";
51
- import"./index-kvtwwj8b.js";
52
- import"./index-63v3gmgr.js";
53
- import"./index-8bx6vhzk.js";
51
+ import"./index-bgzpw6ge.js";
52
+ import"./index-1n7sf9gz.js";
53
+ import"./index-e8k0v19e.js";
54
54
  import"./index-t7hmqgjy.js";
55
- import"./index-7vnr5cmp.js";
55
+ import"./index-mtqwyjrg.js";
56
56
  import"./index-fzpt2djt.js";
57
57
  import"./index-ejhxgyvm.js";
58
58
  import"./index-7g4c7s5r.js";
59
- import"./index-025wg2re.js";
59
+ import"./index-nwswxes7.js";
60
60
  import"./index-bk5tah7q.js";
61
61
  import"./index-gknz3bv1.js";
62
62
  import"./index-zpsr8rpc.js";
@@ -23,21 +23,21 @@ import {
23
23
  validateLesson,
24
24
  validateSkillCandidatePath,
25
25
  validateSkillPath
26
- } from "./index-3txrbsa1.js";
27
- import"./index-xw19x0t7.js";
26
+ } from "./index-yc8v81ab.js";
27
+ import"./index-5dws7eyb.js";
28
28
  import"./index-rtry5xyf.js";
29
- import"./index-af3nmk6c.js";
29
+ import"./index-5mrvx2vm.js";
30
30
  import"./index-vzm6zre7.js";
31
31
  import"./index-ae75rja9.js";
32
- import"./index-kvtwwj8b.js";
33
- import"./index-63v3gmgr.js";
34
- import"./index-8bx6vhzk.js";
32
+ import"./index-bgzpw6ge.js";
33
+ import"./index-1n7sf9gz.js";
34
+ import"./index-e8k0v19e.js";
35
35
  import"./index-t7hmqgjy.js";
36
- import"./index-7vnr5cmp.js";
36
+ import"./index-mtqwyjrg.js";
37
37
  import"./index-fzpt2djt.js";
38
38
  import"./index-ejhxgyvm.js";
39
39
  import"./index-7g4c7s5r.js";
40
- import"./index-025wg2re.js";
40
+ import"./index-nwswxes7.js";
41
41
  import"./index-bk5tah7q.js";
42
42
  import"./index-gknz3bv1.js";
43
43
  import"./index-zpsr8rpc.js";
@@ -95,7 +95,7 @@ function resolveMcpRoot(input) {
95
95
  }
96
96
  var _internals = {
97
97
  runMcpServer: async (options) => {
98
- const { runMcpServer } = await import("./server-7gd7tqt5.js");
98
+ const { runMcpServer } = await import("./server-v1s76pa3.js");
99
99
  return runMcpServer(options);
100
100
  }
101
101
  };
@@ -4,77 +4,77 @@ import {
4
4
  resolveEffectiveAgentOverride,
5
5
  resolvePrimaryAgentNames,
6
6
  resolveRegisteredAgentModel
7
- } from "./index-vt8hk0pt.js";
8
- import"./index-867d9dhf.js";
9
- import"./index-95hc7xn4.js";
10
- import"./index-ajp4dabz.js";
7
+ } from "./index-5m64x65w.js";
8
+ import"./index-nd4kkbjw.js";
9
+ import"./index-3bst6f3c.js";
10
+ import"./index-b7nb6c0p.js";
11
11
  import"./index-j2vv0h13.js";
12
- import"./index-xjqa26fs.js";
13
- import"./index-t0se5zwe.js";
12
+ import"./index-0e1nxkte.js";
13
+ import"./index-5gy5dc2n.js";
14
14
  import"./index-txdagbh7.js";
15
- import"./index-w52xyp9v.js";
15
+ import"./index-4e8xcgkx.js";
16
16
  import"./index-rdec0y3z.js";
17
- import"./index-2wps5fec.js";
18
- import"./index-nb1c3342.js";
19
- import"./index-50b8f6qz.js";
20
- import"./index-0yrsvwdf.js";
21
- import"./index-t433r606.js";
22
- import"./index-f6e44xh2.js";
17
+ import"./index-hmgx2bsy.js";
18
+ import"./index-8z8cj2rz.js";
19
+ import"./index-zdt5m9n2.js";
20
+ import"./index-f6am4ypq.js";
21
+ import"./index-fzqn2kk8.js";
22
+ import"./index-dtet46e6.js";
23
23
  import"./index-cjapb4hy.js";
24
- import"./index-28zgn6sm.js";
24
+ import"./index-g8jd3h4r.js";
25
25
  import"./index-pt7h91zc.js";
26
26
  import"./index-q7sjgr1y.js";
27
- import"./index-ysazjncb.js";
28
- import"./index-km4x7yfb.js";
27
+ import"./index-b67200rm.js";
28
+ import"./index-31bd6hrm.js";
29
29
  import"./index-6b295cas.js";
30
30
  import"./index-9nyqt3kb.js";
31
- import"./index-pkgbrrn7.js";
31
+ import"./index-azr0092e.js";
32
32
  import"./index-v3bmwmqw.js";
33
- import"./index-jdw63xyd.js";
34
- import"./index-f32hs2vt.js";
35
- import"./index-ejfmgkt0.js";
33
+ import"./index-g7vd2azv.js";
34
+ import"./index-83swjsyd.js";
35
+ import"./index-fayfa263.js";
36
36
  import"./index-g4fs6z4e.js";
37
- import"./index-bwh9196c.js";
38
- import"./index-advcaree.js";
39
- import"./index-v3bmeqqh.js";
37
+ import"./index-fzcr2s01.js";
38
+ import"./index-4g39c948.js";
39
+ import"./index-6a4t4p4p.js";
40
40
  import"./index-m9zzj4ee.js";
41
- import"./index-mhqh2dc9.js";
41
+ import"./index-eaess7dm.js";
42
42
  import"./index-2s7dvzff.js";
43
- import"./index-3txrbsa1.js";
44
- import"./index-xw19x0t7.js";
43
+ import"./index-yc8v81ab.js";
44
+ import"./index-5dws7eyb.js";
45
45
  import"./index-rtry5xyf.js";
46
- import"./index-6shk3n43.js";
46
+ import"./index-bccf3c0h.js";
47
47
  import"./index-g22dps7x.js";
48
48
  import"./index-0725jpp7.js";
49
- import"./index-r3gphy10.js";
50
- import"./index-yfmgbhwz.js";
51
- import"./index-d4cjbm4p.js";
52
- import"./index-4cm1p2kj.js";
53
- import"./index-9b6bxe9b.js";
54
- import"./index-ga1pcs49.js";
49
+ import"./index-cme96pja.js";
50
+ import"./index-ef0tgsgj.js";
51
+ import"./index-a9m7h5v0.js";
52
+ import"./index-dt4cjxbz.js";
53
+ import"./index-mbn4vn3z.js";
54
+ import"./index-8zj647hc.js";
55
55
  import"./index-ry16d01s.js";
56
56
  import"./index-rdm3px0g.js";
57
57
  import"./index-7pmbnjvj.js";
58
- import"./index-k6h66zm3.js";
59
- import"./index-af3nmk6c.js";
58
+ import"./index-4twjbsfw.js";
59
+ import"./index-5mrvx2vm.js";
60
60
  import"./index-vzm6zre7.js";
61
61
  import"./index-ae75rja9.js";
62
- import"./index-kvtwwj8b.js";
63
- import"./index-63v3gmgr.js";
64
- import"./index-8bx6vhzk.js";
62
+ import"./index-bgzpw6ge.js";
63
+ import"./index-1n7sf9gz.js";
64
+ import"./index-e8k0v19e.js";
65
65
  import"./index-t7hmqgjy.js";
66
- import"./index-7vnr5cmp.js";
66
+ import"./index-mtqwyjrg.js";
67
67
  import"./index-fzpt2djt.js";
68
68
  import"./index-ejhxgyvm.js";
69
69
  import"./index-7g4c7s5r.js";
70
- import"./index-025wg2re.js";
70
+ import"./index-nwswxes7.js";
71
71
  import"./index-gx2vp8gx.js";
72
- import"./index-ney8qpg3.js";
72
+ import"./index-rhjzq6kw.js";
73
73
  import"./index-zxdawwc7.js";
74
74
  import {
75
75
  init_schema,
76
76
  stripKnownSwarmPrefix
77
- } from "./index-b79a8pc2.js";
77
+ } from "./index-04knttpn.js";
78
78
  import {
79
79
  ALL_AGENT_NAMES,
80
80
  DEFAULT_MODELS,
@@ -83,7 +83,7 @@ import {
83
83
  import"./index-bk5tah7q.js";
84
84
  import"./index-gknz3bv1.js";
85
85
  import"./index-zpsr8rpc.js";
86
- import"./index-sgxbqba0.js";
86
+ import"./index-bzfn85kq.js";
87
87
  import"./index-9rwhas09.js";
88
88
  import"./index-zgwm4ryv.js";
89
89
  import"./index-a76rekgs.js";