opencode-swarm 7.177.1 → 7.178.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 (125) 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/agents/architect.d.ts +8 -0
  4. package/dist/cli/{capability-probe-pdwwz8gs.js → capability-probe-8k8ebeyp.js} +2 -2
  5. package/dist/cli/{coder-settlement-c0kysest.js → coder-settlement-m03dfyec.js} +13 -13
  6. package/dist/cli/{config-doctor-bqwse4pd.js → config-doctor-x8b260sh.js} +4 -4
  7. package/dist/cli/{core-e6vtme4x.js → core-2d0xcyby.js} +4 -4
  8. package/dist/cli/{curation-policy-d8s9w1z8.js → curation-policy-7am15ht9.js} +5 -5
  9. package/dist/cli/{curator-2xb1d80j.js → curator-5kfkqzc9.js} +41 -41
  10. package/dist/cli/{curator-drift-4m984tvy.js → curator-drift-d93pwt8h.js} +5 -5
  11. package/dist/cli/curator-llm-factory-rgdb2ee5.js +72 -0
  12. package/dist/cli/{evidence-summary-service-9yxm6jkq.js → evidence-summary-service-959pwbwb.js} +20 -20
  13. package/dist/cli/{gate-evidence-43bnst3v.js → gate-evidence-66kjx6zj.js} +8 -8
  14. package/dist/cli/guardrail-explain-rre9ntq3.js +73 -0
  15. package/dist/cli/{guardrail-log-j7cj3rjy.js → guardrail-log-t0ydqz5s.js} +9 -9
  16. package/dist/cli/{guardrail-reset-jcsyfvf4.js → guardrail-reset-6gad352a.js} +41 -41
  17. package/dist/cli/hive-promoter-zgnagx67.js +87 -0
  18. package/dist/cli/{index-tbswvz8s.js → index-0pmh1kks.js} +2 -2
  19. package/dist/cli/{index-fnq5ac3f.js → index-1hgqs8j8.js} +5 -5
  20. package/dist/cli/{index-bc4x76z7.js → index-1jcy4gc6.js} +41 -41
  21. package/dist/cli/{index-epsy1rh1.js → index-1qnykdaw.js} +43 -43
  22. package/dist/cli/{index-7c24bb1r.js → index-1zrrerev.js} +2 -2
  23. package/dist/cli/{index-5d2avnj9.js → index-2b0ktpbf.js} +2 -2
  24. package/dist/cli/{index-67amf4my.js → index-2e6txjp7.js} +3 -3
  25. package/dist/cli/{index-634pjhe4.js → index-2pyba37z.js} +7 -7
  26. package/dist/cli/{index-7nsvszwn.js → index-3pzwsesm.js} +2 -2
  27. package/dist/cli/{index-bqmxxbrw.js → index-4e4zsj2g.js} +7 -7
  28. package/dist/cli/{index-fpbcxykc.js → index-6b295cas.js} +87 -1
  29. package/dist/cli/{index-1042jnb9.js → index-6e8fpjdg.js} +7 -3
  30. package/dist/cli/{index-822hhbkc.js → index-7kty6f59.js} +9 -9
  31. package/dist/cli/{index-k6bjkqw8.js → index-7n4dtzk4.js} +1 -1
  32. package/dist/cli/{index-yzjaj53h.js → index-9rwhas09.js} +1 -1
  33. package/dist/cli/{index-yrs4wwfq.js → index-b50qevsm.js} +4 -4
  34. package/dist/cli/{index-v2he8xfj.js → index-bb148vht.js} +2 -2
  35. package/dist/cli/{index-hp5eet6g.js → index-byfrearz.js} +4 -4
  36. package/dist/cli/{index-fnw6zfh0.js → index-eq1n57tg.js} +1 -1
  37. package/dist/cli/{index-4ygb35m1.js → index-h0kyy9rd.js} +95 -229
  38. package/dist/cli/{index-eefz8ghz.js → index-h4nh6s8b.js} +1 -1
  39. package/dist/cli/{index-j82xdrqp.js → index-j7w16s92.js} +4 -4
  40. package/dist/cli/{index-t6q73twc.js → index-kj599831.js} +2 -2
  41. package/dist/cli/{index-drgt81xf.js → index-ksq6cqg0.js} +14 -7
  42. package/dist/cli/{index-tj0sdxg9.js → index-kz9pcqn9.js} +2 -2
  43. package/dist/cli/{index-n7nzwz0q.js → index-m2n1rhgv.js} +8 -0
  44. package/dist/cli/{index-yhaxn5r7.js → index-ne9zamcs.js} +9 -9
  45. package/dist/cli/{index-vfp9hjgv.js → index-nrfjjqm4.js} +1 -1
  46. package/dist/cli/{index-xnednxvm.js → index-nzekzzs2.js} +4 -4
  47. package/dist/cli/{index-2jtmevrr.js → index-pk97v7b8.js} +6 -6
  48. package/dist/cli/{index-7ntcak58.js → index-pyxs697r.js} +34 -9
  49. package/dist/cli/{index-m0cdjvtv.js → index-qbs49vge.js} +30 -2
  50. package/dist/cli/{index-qgf5xexz.js → index-r78kphsr.js} +4 -4
  51. package/dist/cli/{index-exhm2ztr.js → index-s4bkey0q.js} +1 -1
  52. package/dist/cli/{index-en0p0hqp.js → index-t8dqe4ns.js} +1 -1
  53. package/dist/cli/{index-t2nf57mv.js → index-w1b5qqnp.js} +2 -2
  54. package/dist/cli/{index-yepxmq4f.js → index-wajcx84s.js} +3418 -2893
  55. package/dist/cli/{index-1bq6hkw5.js → index-whjrhatw.js} +1 -1
  56. package/dist/cli/{index-76qm2c2y.js → index-wvghb3x6.js} +4 -4
  57. package/dist/cli/{index-fgv6qp10.js → index-x1m1nnry.js} +37 -6
  58. package/dist/cli/{index-k330631a.js → index-x54339yd.js} +5 -5
  59. package/dist/cli/{index-cv191ybt.js → index-xr3eye3f.js} +8 -8
  60. package/dist/cli/{index-wemtrnch.js → index-xr9n0vjv.js} +2 -2
  61. package/dist/cli/{index-eya03h5m.js → index-yew23624.js} +7 -7
  62. package/dist/cli/{index-e48h8m73.js → index-zv3j0v08.js} +9 -5
  63. package/dist/cli/index.js +42 -42
  64. package/dist/cli/{knowledge-escalator-j4jcpver.js → knowledge-escalator-5r6mww64.js} +13 -13
  65. package/dist/cli/{knowledge-events-fcpzfp2m.js → knowledge-events-typjw0sd.js} +11 -11
  66. package/dist/cli/{knowledge-link-9z3fha35.js → knowledge-link-mvykydxg.js} +4 -4
  67. package/dist/cli/{knowledge-store-6evy197p.js → knowledge-store-9qcf3emn.js} +5 -5
  68. package/dist/cli/{knowledge-validator-s28b1ddg.js → knowledge-validator-k6ydsxzy.js} +7 -7
  69. package/dist/cli/{mcp-9kqsnehc.js → mcp-tedxsgey.js} +48 -7
  70. package/dist/cli/mcp.d.ts +9 -0
  71. package/dist/cli/{model-preflight-1pp1a4yf.js → model-preflight-kh9dwts2.js} +1 -1
  72. package/dist/cli/{pending-delegations-e15f26e0.js → pending-delegations-d20fnrzv.js} +12 -12
  73. package/dist/cli/{pr-subscriptions-mqv51zvm.js → pr-subscriptions-awwhg139.js} +12 -12
  74. package/dist/cli/{pr-workflow-gate-fj31btdv.js → pr-workflow-gate-ke79bb9c.js} +41 -41
  75. package/dist/cli/{runner-yhfmejzb.js → runner-y3sydwtj.js} +5 -5
  76. package/dist/cli/{scan-cursor-tpnq7e56.js → scan-cursor-16s6dp7f.js} +6 -6
  77. package/dist/cli/{schema-1wwcyaxp.js → schema-nqjp43vq.js} +4 -2
  78. package/dist/cli/{scope-persistence-332nvn9b.js → scope-persistence-8z1hwdr2.js} +21 -17
  79. package/dist/cli/{server-19bpfaps.js → server-x16hp9aq.js} +2062 -741
  80. package/dist/cli/{skill-generator-gn1k4yxj.js → skill-generator-xadg43ph.js} +15 -15
  81. package/dist/cli/{snapshot-coordination-init-6ztt4v99.js → snapshot-coordination-init-3yyzb2c4.js} +41 -41
  82. package/dist/cli/{telemetry-w774xb8g.js → telemetry-c9wv2cfw.js} +1 -1
  83. package/dist/cli/{workspace-snapshot-9gqna7gq.js → workspace-snapshot-rfnn80dg.js} +3 -3
  84. package/dist/cli/{worktree-collision-ownership-q2ydb0ph.js → worktree-collision-ownership-drqhmmtd.js} +13 -13
  85. package/dist/cli/{worktree-isolation-fsqe1qdv.js → worktree-isolation-aebdyb1m.js} +41 -41
  86. package/dist/commands/dashboard.d.ts +15 -0
  87. package/dist/commands/registry.d.ts +7 -0
  88. package/dist/config/plan-schema.d.ts +23 -0
  89. package/dist/config/schema.d.ts +16 -0
  90. package/dist/dashboard/assets.d.ts +12 -0
  91. package/dist/dashboard/index.d.ts +74 -0
  92. package/dist/dashboard/server.d.ts +94 -0
  93. package/dist/dashboard/views.d.ts +131 -0
  94. package/dist/evidence/phase-participation.d.ts +3 -2
  95. package/dist/hooks/delegation-gate.d.ts +1 -1
  96. package/dist/hooks/extractors.d.ts +5 -1
  97. package/dist/hooks/index.d.ts +1 -1
  98. package/dist/hooks/tool-summarizer.d.ts +7 -2
  99. package/dist/index.js +676 -513
  100. package/dist/mcp/adapters/knowledge-add.d.ts +19 -0
  101. package/dist/mcp/adapters/receipt-status.d.ts +3 -0
  102. package/dist/mcp/adapters/scope-validation.d.ts +3 -0
  103. package/dist/mcp/registry.d.ts +26 -14
  104. package/dist/mcp/server.d.ts +5 -0
  105. package/dist/mcp/write-receipts.d.ts +168 -0
  106. package/dist/memory/index.d.ts +1 -0
  107. package/dist/memory/memory-family-migration.d.ts +35 -3
  108. package/dist/plan/ledger.d.ts +14 -0
  109. package/dist/plan/manager.d.ts +0 -2
  110. package/dist/plan/parallel-verdict.d.ts +28 -14
  111. package/dist/scope/scope-persistence.d.ts +41 -0
  112. package/dist/summaries/index.d.ts +1 -1
  113. package/dist/summaries/manager.d.ts +27 -1
  114. package/dist/tools/index.d.ts +2 -0
  115. package/dist/tools/knowledge-receipt-status.d.ts +8 -0
  116. package/dist/tools/manifest.d.ts +2 -0
  117. package/dist/tools/plan-conflict-check.d.ts +7 -6
  118. package/dist/tools/scope-validate.d.ts +55 -0
  119. package/dist/tools/tool-metadata.d.ts +8 -0
  120. package/dist/utils/path-security.d.ts +21 -0
  121. package/opencode-swarm.schema.json +14 -0
  122. package/package.json +1 -1
  123. package/dist/cli/curator-llm-factory-fywmb8jh.js +0 -72
  124. package/dist/cli/guardrail-explain-gm69b76w.js +0 -73
  125. package/dist/cli/hive-promoter-hc0r0z9h.js +0 -87
@@ -163,6 +163,92 @@ function isCanonicalPathWithinRoot(targetPath, rootPath) {
163
163
  }
164
164
  return false;
165
165
  }
166
+ function createCanonicalPathWithinRootChecker(rootPath) {
167
+ const resolvedRoot = path.resolve(rootPath);
168
+ const canonicalRoot = canonicalExistingFilesystemPath(rootPath);
169
+ const rootPrefix = canonicalRoot ? canonicalRoot.endsWith("/") ? canonicalRoot : `${canonicalRoot}/` : null;
170
+ const entryCache = new Map;
171
+ const maxCacheEntries = 32768;
172
+ const isWithinCanonicalRoot = (candidate) => {
173
+ return canonicalRoot !== null && (candidate === canonicalRoot || candidate.startsWith(rootPrefix ?? ""));
174
+ };
175
+ const readEntry = (entryPath) => {
176
+ const cached = entryCache.get(entryPath);
177
+ if (cached)
178
+ return cached;
179
+ let entry;
180
+ try {
181
+ const stat = fs.lstatSync(entryPath);
182
+ const isSymbolicLink = stat.isSymbolicLink();
183
+ entry = {
184
+ inaccessible: false,
185
+ isSymbolicLink,
186
+ canonicalPath: isSymbolicLink ? canonicalExistingFilesystemPath(entryPath) : null
187
+ };
188
+ } catch (error) {
189
+ const code = error && typeof error === "object" && "code" in error ? String(error.code) : undefined;
190
+ entry = {
191
+ inaccessible: code !== "ENOENT" && code !== "ENOTDIR",
192
+ isSymbolicLink: false,
193
+ canonicalPath: null
194
+ };
195
+ }
196
+ if (entryCache.size >= maxCacheEntries)
197
+ entryCache.clear();
198
+ entryCache.set(entryPath, entry);
199
+ return entry;
200
+ };
201
+ return (targetPath) => {
202
+ if (canonicalRoot === null)
203
+ return false;
204
+ const resolvedTarget = path.resolve(targetPath);
205
+ const relative2 = path.relative(resolvedRoot, resolvedTarget);
206
+ if (relative2.startsWith("..") || path.isAbsolute(relative2))
207
+ return false;
208
+ let probe = resolvedTarget;
209
+ for (let depth = 0;depth < 4096; depth++) {
210
+ const entry = readEntry(probe);
211
+ if (entry.inaccessible)
212
+ return false;
213
+ if (entry.isSymbolicLink) {
214
+ return entry.canonicalPath !== null && isWithinCanonicalRoot(entry.canonicalPath);
215
+ }
216
+ if (probe === resolvedRoot)
217
+ return true;
218
+ const parent = path.dirname(probe);
219
+ if (parent === probe)
220
+ return false;
221
+ probe = parent;
222
+ }
223
+ return false;
224
+ };
225
+ }
226
+ function createTargetWithinRootValidator(root) {
227
+ const isCanonicalWithinRoot = createCanonicalPathWithinRootChecker(root);
228
+ return (filePath) => {
229
+ if (!filePath || filePath.trim() === "") {
230
+ return "Empty path";
231
+ }
232
+ if (path.isAbsolute(filePath) || /^[A-Za-z]:[/\\]/.test(filePath)) {
233
+ return `Absolute path rejected: ${filePath}`;
234
+ }
235
+ if (containsPathTraversal(filePath)) {
236
+ return `Path traversal detected: ${filePath}`;
237
+ }
238
+ if (containsControlChars(filePath)) {
239
+ return `Control characters detected in path: ${filePath}`;
240
+ }
241
+ const resolved = path.resolve(root, filePath);
242
+ const relative2 = path.relative(root, resolved);
243
+ if (relative2.startsWith("..") || path.isAbsolute(relative2)) {
244
+ return `Path escapes root: ${filePath}`;
245
+ }
246
+ if (!isCanonicalWithinRoot(resolved)) {
247
+ return `Path escapes root via symlink/junction: ${filePath}`;
248
+ }
249
+ return null;
250
+ };
251
+ }
166
252
  function validateTargetWithinRoot(filePath, root) {
167
253
  if (!filePath || filePath.trim() === "") {
168
254
  return "Empty path";
@@ -197,4 +283,4 @@ var _internals = {
197
283
  validateTargetWithinRoot
198
284
  };
199
285
 
200
- export { containsPathTraversal, containsControlChars, validateWorkspaceRoot, validateProjectDirectory, validateSymlinkBoundary, isCanonicalPathWithinRoot, validateTargetWithinRoot };
286
+ export { containsPathTraversal, containsControlChars, validateWorkspaceRoot, validateProjectDirectory, validateSymlinkBoundary, isCanonicalPathWithinRoot, createTargetWithinRootValidator, validateTargetWithinRoot };
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  isCanonicalPathWithinRoot
4
- } from "./index-fpbcxykc.js";
4
+ } from "./index-6b295cas.js";
5
5
  import {
6
6
  sameExistingFilesystemPath
7
7
  } from "./index-ry16d01s.js";
@@ -12,13 +12,13 @@ import {
12
12
  PluginConfigSchema,
13
13
  init_schema,
14
14
  stripKnownSwarmPrefix
15
- } from "./index-e48h8m73.js";
15
+ } from "./index-zv3j0v08.js";
16
16
  import {
17
17
  ALL_AGENT_NAMES,
18
18
  TOOL_NAME_SET,
19
19
  init_constants,
20
20
  init_tool_metadata
21
- } from "./index-n7nzwz0q.js";
21
+ } from "./index-m2n1rhgv.js";
22
22
  import {
23
23
  log
24
24
  } from "./index-zgwm4ryv.js";
@@ -1343,6 +1343,10 @@ function validateConfigKey(path2, value) {
1343
1343
  emitObjectTypeMismatch("skill_opt", value, findings);
1344
1344
  break;
1345
1345
  }
1346
+ case "dashboard": {
1347
+ emitObjectTypeMismatch("dashboard", value, findings);
1348
+ break;
1349
+ }
1346
1350
  default: {
1347
1351
  const topLevel = path2.split(".")[0];
1348
1352
  if (KNOWN_TOP_LEVEL_KEYS.has(topLevel)) {
@@ -2,10 +2,10 @@
2
2
  import {
3
3
  captureWorkspaceSnapshotAsync,
4
4
  changedFilesSinceSnapshotAsync
5
- } from "./index-5d2avnj9.js";
5
+ } from "./index-2b0ktpbf.js";
6
6
  import {
7
7
  removeWorktreeProvisioningOwner
8
- } from "./index-7nsvszwn.js";
8
+ } from "./index-3pzwsesm.js";
9
9
  import {
10
10
  SOURCE_WORKTREE_GONE_STAGE,
11
11
  ensureTaskGateRequirementsReceiptForSettledTransition,
@@ -14,16 +14,16 @@ import {
14
14
  reconcileLandedMerge,
15
15
  withTaskEvidenceTransaction,
16
16
  writeWorkflowWalFile
17
- } from "./index-fnq5ac3f.js";
17
+ } from "./index-1hgqs8j8.js";
18
18
  import {
19
19
  validateSwarmPath
20
- } from "./index-exhm2ztr.js";
20
+ } from "./index-s4bkey0q.js";
21
21
  import {
22
22
  appendCoreEventSync
23
- } from "./index-t2nf57mv.js";
23
+ } from "./index-w1b5qqnp.js";
24
24
  import {
25
25
  tryAcquireLock
26
- } from "./index-tj0sdxg9.js";
26
+ } from "./index-kz9pcqn9.js";
27
27
  import {
28
28
  canonicalRootKeyFresh
29
29
  } from "./index-1xnse449.js";
@@ -38,7 +38,7 @@ import {
38
38
  import {
39
39
  init_path_identity,
40
40
  isPathWithinDeclaredScope
41
- } from "./index-yzjaj53h.js";
41
+ } from "./index-9rwhas09.js";
42
42
  import {
43
43
  criticalWarn,
44
44
  init_logger
@@ -501,7 +501,7 @@ async function cleanupRecoveredWorktree(directory, descriptor, options) {
501
501
  awaitingMergeByCallID,
502
502
  cleanupStandardWorktreeForCallId,
503
503
  standardWorktreeByCallID
504
- } = await import("./worktree-isolation-fsqe1qdv.js");
504
+ } = await import("./worktree-isolation-aebdyb1m.js");
505
505
  standardWorktreeByCallID.delete(descriptor.callID);
506
506
  if (hasResidue)
507
507
  awaitingMergeByCallID.set(descriptor.callID, {
@@ -633,7 +633,7 @@ async function recoverCoderSettlement(directory, taskId) {
633
633
  awaitingMergeByCallID,
634
634
  finishStandardWorktreeDispatch,
635
635
  standardWorktreeByCallID
636
- } = await import("./worktree-isolation-fsqe1qdv.js");
636
+ } = await import("./worktree-isolation-aebdyb1m.js");
637
637
  const descriptor = wal.worktree;
638
638
  const reconstructedDispatch = {
639
639
  callID: descriptor.callID,
@@ -11,7 +11,7 @@ import {
11
11
  assertProjectRoot,
12
12
  atomicWriteFile,
13
13
  withEvidenceLock
14
- } from "./index-tj0sdxg9.js";
14
+ } from "./index-kz9pcqn9.js";
15
15
  import {
16
16
  exports_external,
17
17
  init_zod
@@ -66,4 +66,4 @@ var init_path_identity = __esm(() => {
66
66
  BIDI_CONTROL_CHARACTERS = /[\u061c\u200e\u200f\u202a-\u202e\u2066-\u2069]/u;
67
67
  });
68
68
 
69
- export { getPathFlavor, pathIdentitiesEqual, isPathIdentityWithin, isPathWithinDeclaredScope, isOnDifferentPathRoot, unsafePathTextReason, sanitizeDiagnosticText, init_path_identity };
69
+ export { getPathFlavor, normalizePathIdentity, pathIdentitiesEqual, isPathIdentityWithin, isPathWithinDeclaredScope, isOnDifferentPathRoot, unsafePathTextReason, sanitizeDiagnosticText, init_path_identity };
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  authorizeCuration
4
- } from "./index-wemtrnch.js";
4
+ } from "./index-xr9n0vjv.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-634pjhe4.js";
12
+ } from "./index-2pyba37z.js";
13
13
  import {
14
14
  resolveKnowledgeStoreDir
15
- } from "./index-en0p0hqp.js";
15
+ } from "./index-t8dqe4ns.js";
16
16
  import {
17
17
  atomicWriteFile
18
- } from "./index-tj0sdxg9.js";
18
+ } from "./index-kz9pcqn9.js";
19
19
  import {
20
20
  require_proper_lockfile
21
21
  } from "./index-7g4c7s5r.js";
@@ -2,13 +2,13 @@
2
2
  import {
3
3
  derivePlanId,
4
4
  derivePlanIdentityHash
5
- } from "./index-1bq6hkw5.js";
5
+ } from "./index-whjrhatw.js";
6
6
  import {
7
7
  DURABILITY_CLASSES,
8
8
  getProjectDb,
9
9
  projectDbExists,
10
10
  withImmediateTransaction
11
- } from "./index-xnednxvm.js";
11
+ } from "./index-nzekzzs2.js";
12
12
  import {
13
13
  init_logger,
14
14
  warn
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  _internals,
4
4
  resolveWorktreeIsolationConfig
5
- } from "./index-67amf4my.js";
5
+ } from "./index-2e6txjp7.js";
6
6
  import {
7
7
  ApprovalEvidenceSchema,
8
8
  BaseEvidenceSchema,
@@ -44,7 +44,7 @@ import {
44
44
  loadPluginConfigWithMeta,
45
45
  loadPluginConfigWithMetaAsync,
46
46
  resetConfigAdvisoryDedup
47
- } from "./index-m0cdjvtv.js";
47
+ } from "./index-qbs49vge.js";
48
48
  import"./index-zz7gzw57.js";
49
49
  import"./index-4ddpvd5c.js";
50
50
  import {
@@ -71,7 +71,7 @@ import {
71
71
  TurboConfigSchema,
72
72
  WorktreeIsolationConfigSchema,
73
73
  resolveAutoReviewConfig
74
- } from "./index-e48h8m73.js";
74
+ } from "./index-zv3j0v08.js";
75
75
  import {
76
76
  ALL_AGENT_NAMES,
77
77
  ALL_SUBAGENT_NAMES,
@@ -81,7 +81,7 @@ import {
81
81
  QA_AGENTS,
82
82
  isQAAgent,
83
83
  isSubagent
84
- } from "./index-n7nzwz0q.js";
84
+ } from "./index-m2n1rhgv.js";
85
85
  import"./index-bk5tah7q.js";
86
86
  import"./index-gknz3bv1.js";
87
87
  import"./index-zpsr8rpc.js";
@@ -4,7 +4,7 @@ import {
4
4
  readShellAuditTail,
5
5
  redactPath,
6
6
  redactShellCommand
7
- } from "./index-fgv6qp10.js";
7
+ } from "./index-x1m1nnry.js";
8
8
 
9
9
  // src/services/guardrail-log-service.ts
10
10
  var BLOCK_TYPES = new Set([