opencode-swarm 7.186.7 → 7.187.0

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 (121) hide show
  1. package/.opencode/skills/swarm-pr-review/SKILL.md +3 -3
  2. package/.opencode/skills/swarm-pr-review/references/lane-output-recoverability.md +4 -3
  3. package/binaries/win32-arm64/swarm-sandbox-runner.exe +0 -0
  4. package/binaries/win32-x64/swarm-sandbox-runner.exe +0 -0
  5. package/dist/agents/architect.d.ts +1 -1
  6. package/dist/background/pending-delegations.d.ts +4 -1
  7. package/dist/cli/{auto-checkpoint-2wez0vzz.js → auto-checkpoint-r69e82bh.js} +10 -11
  8. package/dist/cli/{checkpoint-ywqsp7d7.js → checkpoint-1sqwbgra.js} +18 -19
  9. package/dist/cli/{coder-settlement-nfzcjeda.js → coder-settlement-b9qx0732.js} +14 -15
  10. package/dist/cli/{config-doctor-1fjsn7zq.js → config-doctor-s4fr5qwr.js} +34 -4
  11. package/dist/cli/{core-xs68b2jw.js → core-bezezjy9.js} +5 -6
  12. package/dist/cli/{curation-policy-3dvythny.js → curation-policy-2x2w3b57.js} +7 -8
  13. package/dist/cli/{curator-drift-cz65fcz0.js → curator-drift-785xnxdv.js} +10 -11
  14. package/dist/cli/curator-llm-factory-p0wwyswg.js +80 -0
  15. package/dist/cli/{curator-nejfgxfm.js → curator-w4hp7a10.js} +44 -45
  16. package/dist/cli/{dispatch-0ejzwb45.js → dispatch-qvcztbpf.js} +222 -48
  17. package/dist/cli/{evidence-summary-service-0jt68dq5.js → evidence-summary-service-33qcm9xc.js} +21 -22
  18. package/dist/cli/{gate-evidence-ypmdcgrt.js → gate-evidence-9ehj968e.js} +9 -10
  19. package/dist/cli/guardrail-explain-5715fdzv.js +81 -0
  20. package/dist/cli/guardrail-log-k1dfzfzm.js +22 -0
  21. package/dist/cli/{guardrail-reset-cpw83epe.js → guardrail-reset-nt88n9dm.js} +44 -45
  22. package/dist/cli/hive-promoter-c8fjn186.js +95 -0
  23. package/dist/cli/{index-mr86ywsj.js → index-0yj79yk1.js} +1 -1
  24. package/dist/cli/{index-9qgncxbv.js → index-1vvr69ka.js} +1 -1
  25. package/dist/cli/{index-q93b3xdh.js → index-2s8wdagg.js} +44 -45
  26. package/dist/cli/{index-2rkw7nft.js → index-2wgvjwpr.js} +5 -5
  27. package/dist/cli/{index-gaf95msf.js → index-469xmpd6.js} +1 -1
  28. package/dist/cli/{index-9n1va1c4.js → index-4g6sw4eq.js} +1 -1
  29. package/dist/cli/{index-gmwzspch.js → index-5m56c5r6.js} +6 -6
  30. package/dist/cli/{index-yan163x1.js → index-6ersmqjd.js} +9 -9
  31. package/dist/cli/{index-mdxqv3r9.js → index-9hag235h.js} +2 -2
  32. package/dist/cli/{index-zyx7p0kb.js → index-a8gvszr2.js} +2 -2
  33. package/dist/cli/{index-63e62vkg.js → index-akt0arnt.js} +2745 -2596
  34. package/dist/cli/{index-qwd1qpmg.js → index-b2je0z0t.js} +4 -4
  35. package/dist/cli/{index-rsrsv4c6.js → index-bbqxt1p5.js} +28 -11
  36. package/dist/cli/{index-j2m9q6w1.js → index-bejxkee0.js} +2 -2
  37. package/dist/cli/{index-8y9p665v.js → index-c8ffgcvz.js} +3 -3
  38. package/dist/cli/{index-gvch83kc.js → index-cc1vzq4m.js} +1 -1
  39. package/dist/cli/{index-qy60v48q.js → index-cppqxjw9.js} +2 -2
  40. package/dist/cli/{index-93mgmhe5.js → index-cx4s7cak.js} +46 -47
  41. package/dist/cli/{index-059dnh78.js → index-d6kvatwp.js} +12 -12
  42. package/dist/cli/{index-8jhpedx9.js → index-df2p0k0s.js} +2 -2
  43. package/dist/cli/{index-h9gkgwn6.js → index-dypmvvga.js} +1 -1
  44. package/dist/cli/{index-vtbehfx1.js → index-ectvhv8e.js} +5 -5
  45. package/dist/cli/{index-e27aph2j.js → index-en7vzpeq.js} +4 -4
  46. package/dist/cli/{index-v3w5y2zp.js → index-evy5yrsw.js} +4 -4
  47. package/dist/cli/{index-mc72pk74.js → index-fzpt2djt.js} +32 -1
  48. package/dist/cli/{index-w4q83wf9.js → index-hvr82s1t.js} +565 -76
  49. package/dist/cli/{index-xdjwefa5.js → index-jtncfvhe.js} +1 -1
  50. package/dist/cli/{index-d7sxckqj.js → index-knbjtqwt.js} +5 -5
  51. package/dist/cli/{index-5z3qzesd.js → index-krqq8kbq.js} +7 -7
  52. package/dist/cli/{index-q4vf9k47.js → index-m1qy7f1e.js} +1 -1
  53. package/dist/cli/{index-5z1xrkaa.js → index-mf19yqss.js} +3 -3
  54. package/dist/cli/{index-j0j82th1.js → index-pfpnzf6w.js} +1 -1
  55. package/dist/cli/{index-fzah4ctw.js → index-pts38j6x.js} +5 -5
  56. package/dist/cli/{index-8t5z1yxt.js → index-pymr99as.js} +8 -8
  57. package/dist/cli/{index-qc8r1gy4.js → index-qzgfheb4.js} +3 -3
  58. package/dist/cli/{index-g319bdeh.js → index-r6e8syr3.js} +2 -2
  59. package/dist/cli/{index-emjnn90k.js → index-r7gt2w1b.js} +4 -4
  60. package/dist/cli/{index-m9xhje7p.js → index-rm676s0p.js} +2 -2
  61. package/dist/cli/{index-mpvvgktj.js → index-sztx0vyt.js} +5 -5
  62. package/dist/cli/{index-4dkmehar.js → index-t3hcd6zz.js} +2 -2
  63. package/dist/cli/{index-4c4s8yww.js → index-ta48pe8j.js} +3 -3
  64. package/dist/cli/{index-kb30szp0.js → index-v08ksq0b.js} +2 -2
  65. package/dist/cli/{index-7bxssqaf.js → index-vx8a8w3b.js} +142 -2
  66. package/dist/cli/{index-743kwz1r.js → index-ww8payq9.js} +2 -2
  67. package/dist/cli/{index-xadre3f0.js → index-xs96nry2.js} +24 -13
  68. package/dist/cli/{index-tq8f6ar8.js → index-ycz8z2db.js} +8 -8
  69. package/dist/cli/{index-671k5bzj.js → index-yf0cc6c5.js} +2 -2
  70. package/dist/cli/{index-48jvqqfa.js → index-yw1g78v9.js} +7 -3
  71. package/dist/cli/{index-qs706r9x.js → index-zzxnssy3.js} +4 -4
  72. package/dist/cli/index.js +45 -46
  73. package/dist/cli/{knowledge-escalator-1g4ewbtd.js → knowledge-escalator-qttydcx2.js} +15 -16
  74. package/dist/cli/{knowledge-events-t4axcrwt.js → knowledge-events-4vf0vj82.js} +13 -14
  75. package/dist/cli/{knowledge-link-xwn2ww1d.js → knowledge-link-p2c8agc8.js} +6 -7
  76. package/dist/cli/{knowledge-store-dfdktsc9.js → knowledge-store-bw1dk2eb.js} +7 -8
  77. package/dist/cli/{knowledge-validator-kraghq1k.js → knowledge-validator-gefcc36h.js} +9 -10
  78. package/dist/cli/{mcp-gv7qrj3a.js → mcp-d5p0k3p1.js} +1 -1
  79. package/dist/cli/{model-preflight-gztv8xqx.js → model-preflight-fmx49pwy.js} +44 -45
  80. package/dist/cli/{pending-delegations-rxyjgkrw.js → pending-delegations-8333cb3y.js} +13 -14
  81. package/dist/cli/{pr-subscriptions-csr7n0mx.js → pr-subscriptions-p42ny2sn.js} +13 -14
  82. package/dist/cli/{pr-workflow-gate-3nrrg0je.js → pr-workflow-gate-csy32z8w.js} +44 -45
  83. package/dist/cli/{runner-mfxyvzv5.js → runner-cbpr45cs.js} +7 -8
  84. package/dist/cli/{scan-cursor-0v2a2kya.js → scan-cursor-14mwymtz.js} +8 -9
  85. package/dist/cli/{schema-zzz1ddnv.js → schema-6426g0gw.js} +2 -2
  86. package/dist/cli/{scope-persistence-5p4kkrgt.js → scope-persistence-avkv3s4m.js} +17 -18
  87. package/dist/cli/{server-96a0yyge.js → server-d9rk2zeb.js} +45 -47
  88. package/dist/cli/{skill-generator-v5q1vkxk.js → skill-generator-epdvdsh5.js} +17 -18
  89. package/dist/cli/{snapshot-coordination-init-7cr259p8.js → snapshot-coordination-init-35f7wrqb.js} +44 -45
  90. package/dist/cli/{speckit-checkoff-j9skdc02.js → speckit-checkoff-erwa7fbj.js} +5 -5
  91. package/dist/cli/{telemetry-rb8hrvbx.js → telemetry-2vwb3n42.js} +2 -3
  92. package/dist/cli/{workspace-snapshot-hcgztg7w.js → workspace-snapshot-y60ay5eq.js} +4 -5
  93. package/dist/cli/{worktree-collision-ownership-k5kcnw6t.js → worktree-collision-ownership-3tqkw81h.js} +14 -15
  94. package/dist/cli/{worktree-isolation-p0p13n1e.js → worktree-isolation-0rrjqypt.js} +44 -45
  95. package/dist/commands/registry.d.ts +4 -4
  96. package/dist/commands/reset-backup.d.ts +20 -5
  97. package/dist/commands/rollback-gate.d.ts +73 -0
  98. package/dist/hooks/pr-workflow-gate.d.ts +1 -1
  99. package/dist/index.js +618 -603
  100. package/dist/lang/backends/java.d.ts +76 -0
  101. package/dist/lang/java-extraction.d.ts +88 -0
  102. package/dist/pr-review/circuit.d.ts +1 -1
  103. package/dist/pr-review/completion.d.ts +1 -0
  104. package/dist/pr-review/reducer.d.ts +2 -1
  105. package/dist/pr-review/types.d.ts +2 -1
  106. package/dist/services/config-doctor.d.ts +19 -1
  107. package/dist/services/preflight-integration.d.ts +8 -1
  108. package/dist/state.d.ts +13 -0
  109. package/dist/tools/cancel-lane-batch.d.ts +38 -0
  110. package/dist/tools/dispatch-lanes.d.ts +19 -0
  111. package/dist/tools/index.d.ts +1 -0
  112. package/dist/tools/manifest.d.ts +1 -0
  113. package/dist/tools/symbols.d.ts +18 -0
  114. package/dist/tools/tool-metadata.d.ts +4 -0
  115. package/opencode-swarm.schema.json +1 -1
  116. package/package.json +1 -1
  117. package/dist/cli/curator-llm-factory-p9r4sb0v.js +0 -81
  118. package/dist/cli/guardrail-explain-c42va9fp.js +0 -82
  119. package/dist/cli/guardrail-log-1hv4awyg.js +0 -23
  120. package/dist/cli/hive-promoter-y1f7zsrj.js +0 -96
  121. package/dist/cli/index-c1ggtmpm.js +0 -33
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  sameProjectRoot
4
- } from "./index-mc72pk74.js";
4
+ } from "./index-fzpt2djt.js";
5
5
  import {
6
6
  exports_external,
7
7
  init_zod
@@ -3,7 +3,7 @@ import {
3
3
  queryHistoricalOutcomes,
4
4
  readKnowledgeEvents,
5
5
  recordKnowledgeEvent
6
- } from "./index-yan163x1.js";
6
+ } from "./index-6ersmqjd.js";
7
7
  import {
8
8
  jaccardBigram,
9
9
  readKnowledge,
@@ -11,7 +11,7 @@ import {
11
11
  resolveSwarmKnowledgePath,
12
12
  transactKnowledge,
13
13
  wordBigrams
14
- } from "./index-5z3qzesd.js";
14
+ } from "./index-krqq8kbq.js";
15
15
  import {
16
16
  init_knowledge_types,
17
17
  isActiveStatus
@@ -224,11 +224,11 @@ async function maybeQuarantineOnContradiction(directory, entryId, threshold, win
224
224
  alreadyInactive: true
225
225
  };
226
226
  }
227
- const { quarantineEntry } = await import("./knowledge-validator-kraghq1k.js");
227
+ const { quarantineEntry } = await import("./knowledge-validator-gefcc36h.js");
228
228
  let policyConfig;
229
229
  try {
230
- const { KnowledgeConfigSchema } = await import("./schema-zzz1ddnv.js");
231
- const { loadPluginConfigWithMeta } = await import("./index-e27aph2j.js");
230
+ const { KnowledgeConfigSchema } = await import("./schema-6426g0gw.js");
231
+ const { loadPluginConfigWithMeta } = await import("./index-en7vzpeq.js");
232
232
  const { config: loadedConfig } = loadPluginConfigWithMeta(directory);
233
233
  policyConfig = KnowledgeConfigSchema.parse(loadedConfig.knowledge ?? {});
234
234
  } catch {
@@ -11,16 +11,16 @@ import {
11
11
  } from "./index-ae75rja9.js";
12
12
  import {
13
13
  resolveKnowledgeStoreDir
14
- } from "./index-m9xhje7p.js";
14
+ } from "./index-rm676s0p.js";
15
15
  import {
16
16
  atomicWriteFile
17
- } from "./index-4dkmehar.js";
17
+ } from "./index-t3hcd6zz.js";
18
18
  import {
19
19
  require_proper_lockfile
20
20
  } from "./index-7g4c7s5r.js";
21
21
  import {
22
22
  readCachedParsedFile
23
- } from "./index-g319bdeh.js";
23
+ } from "./index-r6e8syr3.js";
24
24
  import {
25
25
  init_knowledge_types,
26
26
  isActiveStatus
@@ -739,7 +739,7 @@ async function applyConfidenceFloorAction(directory, touched, options) {
739
739
  const {
740
740
  readAuthoritativeKnowledgeCounterRollups,
741
741
  effectiveRetrievalOutcomes
742
- } = await import("./knowledge-events-t4axcrwt.js");
742
+ } = await import("./knowledge-events-4vf0vj82.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-kraghq1k.js");
810
- const { KnowledgeConfigSchema } = await import("./schema-zzz1ddnv.js");
809
+ const { quarantineEntry } = await import("./knowledge-validator-gefcc36h.js");
810
+ const { KnowledgeConfigSchema } = await import("./schema-6426g0gw.js");
811
811
  let config;
812
812
  try {
813
- const { loadPluginConfigWithMeta } = await import("./index-e27aph2j.js");
813
+ const { loadPluginConfigWithMeta } = await import("./index-en7vzpeq.js");
814
814
  const { config: loadedConfig } = loadPluginConfigWithMeta(directory);
815
815
  config = KnowledgeConfigSchema.parse(loadedConfig.knowledge ?? {});
816
816
  } catch {
@@ -4,7 +4,7 @@ import {
4
4
  getProjectDb,
5
5
  projectDbExists,
6
6
  withImmediateTransaction
7
- } from "./index-mdxqv3r9.js";
7
+ } from "./index-9hag235h.js";
8
8
  import {
9
9
  derivePlanId,
10
10
  derivePlanIdentityHash
@@ -1,17 +1,17 @@
1
1
  // @bun
2
2
  import {
3
3
  validateSwarmPath
4
- } from "./index-j2m9q6w1.js";
4
+ } from "./index-bejxkee0.js";
5
5
  import {
6
6
  bunSpawn
7
7
  } from "./index-2s7dvzff.js";
8
8
  import {
9
9
  canonicalRootKey,
10
10
  sameProjectRoot
11
- } from "./index-mc72pk74.js";
11
+ } from "./index-fzpt2djt.js";
12
12
  import {
13
13
  atomicWriteSwarmFile
14
- } from "./index-g319bdeh.js";
14
+ } from "./index-r6e8syr3.js";
15
15
  import {
16
16
  init_git_executable,
17
17
  resolveGitExecutable
@@ -11,7 +11,7 @@ import {
11
11
  readLinkPointer,
12
12
  resolveKnowledgeStoreDir,
13
13
  resolveLinkDir
14
- } from "./index-m9xhje7p.js";
14
+ } from "./index-rm676s0p.js";
15
15
 
16
16
  // src/knowledge/curation-policy.ts
17
17
  import { readFile as readFile2 } from "fs/promises";
@@ -1,16 +1,16 @@
1
1
  // @bun
2
2
  import {
3
3
  validateSwarmPath
4
- } from "./index-j2m9q6w1.js";
4
+ } from "./index-bejxkee0.js";
5
5
  import {
6
6
  bunSpawn
7
7
  } from "./index-2s7dvzff.js";
8
8
  import {
9
9
  canonicalRootKeyFresh
10
- } from "./index-mc72pk74.js";
10
+ } from "./index-fzpt2djt.js";
11
11
  import {
12
12
  atomicWriteSwarmFileSync
13
- } from "./index-g319bdeh.js";
13
+ } from "./index-r6e8syr3.js";
14
14
  import {
15
15
  advisoryWarn,
16
16
  init_git_executable,
@@ -20,7 +20,7 @@ import {
20
20
  import {
21
21
  SWARM_WORKTREE_DIR_NAME,
22
22
  init_constants
23
- } from "./index-48jvqqfa.js";
23
+ } from "./index-yw1g78v9.js";
24
24
  import {
25
25
  init_logger,
26
26
  log
@@ -242,7 +242,7 @@ var _internals2 = {
242
242
  symlinkSync: fs2.symlinkSync
243
243
  },
244
244
  writeScopeToDisk: async (directory, taskId, files) => {
245
- const { writeScopeToDisk: realWrite } = await import("./scope-persistence-5p4kkrgt.js");
245
+ const { writeScopeToDisk: realWrite } = await import("./scope-persistence-avkv3s4m.js");
246
246
  return realWrite(directory, taskId, files);
247
247
  },
248
248
  writeLaneProfileToDisk: async (_worktreePath, _laneIndex, _envOverrides) => {
@@ -2,10 +2,10 @@
2
2
  import {
3
3
  captureWorkspaceSnapshotAsync,
4
4
  changedFilesSinceSnapshotAsync
5
- } from "./index-5z1xrkaa.js";
5
+ } from "./index-mf19yqss.js";
6
6
  import {
7
7
  removeWorktreeProvisioningOwner
8
- } from "./index-zyx7p0kb.js";
8
+ } from "./index-a8gvszr2.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-v3w5y2zp.js";
17
+ } from "./index-evy5yrsw.js";
18
18
  import {
19
19
  validateSwarmPath
20
- } from "./index-j2m9q6w1.js";
20
+ } from "./index-bejxkee0.js";
21
21
  import {
22
22
  appendCoreEventSync
23
- } from "./index-743kwz1r.js";
23
+ } from "./index-ww8payq9.js";
24
24
  import {
25
25
  canonicalRootKeyFresh
26
- } from "./index-mc72pk74.js";
26
+ } from "./index-fzpt2djt.js";
27
27
  import {
28
28
  tryAcquireLock
29
29
  } from "./index-ejhxgyvm.js";
@@ -512,7 +512,7 @@ async function cleanupRecoveredWorktree(directory, descriptor, options) {
512
512
  awaitingMergeByCallID,
513
513
  cleanupStandardWorktreeForCallId,
514
514
  standardWorktreeByCallID
515
- } = await import("./worktree-isolation-p0p13n1e.js");
515
+ } = await import("./worktree-isolation-0rrjqypt.js");
516
516
  standardWorktreeByCallID.delete(descriptor.callID);
517
517
  if (hasResidue)
518
518
  awaitingMergeByCallID.set(descriptor.callID, {
@@ -648,7 +648,7 @@ async function recoverCoderSettlement(directory, taskId) {
648
648
  awaitingMergeByCallID,
649
649
  finishStandardWorktreeDispatch,
650
650
  standardWorktreeByCallID
651
- } = await import("./worktree-isolation-p0p13n1e.js");
651
+ } = await import("./worktree-isolation-0rrjqypt.js");
652
652
  const descriptor = wal.worktree;
653
653
  const reconstructedDispatch = {
654
654
  callID: descriptor.callID,
@@ -3,7 +3,7 @@ import {
3
3
  ALL_AGENT_NAMES,
4
4
  SUMMARIZER_EXEMPT_TOOL_NAMES,
5
5
  init_constants
6
- } from "./index-48jvqqfa.js";
6
+ } from "./index-yw1g78v9.js";
7
7
  import {
8
8
  OUTCOME_BLOCK_THRESHOLD,
9
9
  init_knowledge_types
@@ -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.186.7",
24
+ version: "7.187.0",
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",
@@ -1871,7 +1871,7 @@ var init_schema = __esm(() => {
1871
1871
  parallelization: ParallelizationConfigSchema.optional().describe("Parallelization (PR 1 dark foundation) \u2014 disabled by default; no production code path branches on enabled=true yet."),
1872
1872
  worktree: WorktreeIsolationConfigSchema.optional().describe("Worktree isolation policy for parallel coder dispatch lanes (general surface; Lean Turbo keeps its legacy per-mode fields)."),
1873
1873
  turbo: TurboConfigSchema.optional().describe("Turbo execution strategy block (Phase 1). Absent means current behavior unchanged."),
1874
- turbo_mode: exports_external.boolean().default(false).optional().describe("Bypass reviewer/test gates for rapid iteration (v6.40)."),
1874
+ turbo_mode: exports_external.boolean().default(false).optional().describe("Bypass reviewer/test gates for rapid iteration (v6.40). When true, new sessions start with turbo mode on (session default); /swarm turbo still toggles per session. Directory-less constructions default off."),
1875
1875
  quiet: exports_external.boolean().default(true).optional().describe("Suppress non-critical startup warnings (default true keeps the TUI clean). Set false to restore verbose warnings for debugging."),
1876
1876
  version_check: exports_external.boolean().default(true).optional().describe("Background staleness check against npm, throttled to once per 24h (issue #675). Set false to fully disable the network call."),
1877
1877
  full_auto: exports_external.object({
@@ -286,7 +286,7 @@ var SWARM_TEMP_GRAMMARS = [
286
286
  "src/tools/spec-write.ts:98",
287
287
  "src/sdd/effective-spec.ts:1377",
288
288
  "src/background/lane-output-store.ts:353",
289
- "src/background/pending-delegations.ts:1507",
289
+ "src/background/pending-delegations.ts:1520",
290
290
  "src/background/delegation-health.ts:391",
291
291
  "src/tools/submit-phase-council-verdicts.ts:458",
292
292
  "src/summaries/store.ts (pre-#2035; migrated-to=src/summaries/store.ts:writeRawSidecar)",
@@ -410,7 +410,7 @@ var SWARM_TEMP_GRAMMARS = [
410
410
  quarantineEligible: false,
411
411
  parsesTarget: false,
412
412
  producers: [
413
- "src/tools/checkpoint.ts:195",
413
+ "src/tools/checkpoint.ts:205",
414
414
  "src/full-auto/state.ts:636",
415
415
  "src/context-map/persistence.ts:119",
416
416
  "src/context-map/capsule-persistence.ts:111",
@@ -1,10 +1,10 @@
1
1
  // @bun
2
2
  import {
3
3
  readEffectiveSpecSync
4
- } from "./index-9qgncxbv.js";
4
+ } from "./index-1vvr69ka.js";
5
5
  import {
6
6
  readSwarmFileAsync
7
- } from "./index-j2m9q6w1.js";
7
+ } from "./index-bejxkee0.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-mdxqv3r9.js";
16
+ } from "./index-9hag235h.js";
17
17
  import {
18
18
  _internals,
19
19
  canonicalRootKeyFresh
20
- } from "./index-mc72pk74.js";
20
+ } from "./index-fzpt2djt.js";
21
21
  import {
22
22
  init_logger,
23
23
  log,
@@ -1,10 +1,10 @@
1
1
  // @bun
2
2
  import {
3
3
  atomicWriteFile
4
- } from "./index-4dkmehar.js";
4
+ } from "./index-t3hcd6zz.js";
5
5
  import {
6
6
  canonicalRootKeyFresh
7
- } from "./index-mc72pk74.js";
7
+ } from "./index-fzpt2djt.js";
8
8
  import {
9
9
  init_logger,
10
10
  warn
@@ -3,7 +3,7 @@ import {
3
3
  EvaluationRunV1Schema,
4
4
  GateAuditResultV1Schema,
5
5
  getProtectedEvaluationRunIds
6
- } from "./index-8jhpedx9.js";
6
+ } from "./index-df2p0k0s.js";
7
7
  import {
8
8
  TASK_WORKFLOW_SCHEMA_MARKER,
9
9
  deriveApplicableGateSet,
@@ -12,11 +12,11 @@ import {
12
12
  readTaskEvidence,
13
13
  readTaskEvidenceRaw,
14
14
  sanitizeTaskId
15
- } from "./index-v3w5y2zp.js";
15
+ } from "./index-evy5yrsw.js";
16
16
  import {
17
17
  readSwarmFileAsync,
18
18
  validateSwarmPath
19
- } from "./index-j2m9q6w1.js";
19
+ } from "./index-bejxkee0.js";
20
20
  import {
21
21
  bunWrite
22
22
  } from "./index-2s7dvzff.js";
@@ -27,13 +27,13 @@ import {
27
27
  } from "./index-kbkk7vnh.js";
28
28
  import {
29
29
  withEvidenceLock
30
- } from "./index-mr86ywsj.js";
30
+ } from "./index-0yj79yk1.js";
31
31
  import {
32
32
  assertProjectRoot
33
33
  } from "./index-t7hmqgjy.js";
34
34
  import {
35
35
  invalidateCachedArtifact
36
- } from "./index-g319bdeh.js";
36
+ } from "./index-r6e8syr3.js";
37
37
  import {
38
38
  ZodError,
39
39
  init_zod
@@ -1,10 +1,10 @@
1
1
  // @bun
2
2
  import {
3
3
  withEvidenceLock
4
- } from "./index-mr86ywsj.js";
4
+ } from "./index-0yj79yk1.js";
5
5
  import {
6
6
  atomicWriteFileAnyRoot
7
- } from "./index-g319bdeh.js";
7
+ } from "./index-r6e8syr3.js";
8
8
 
9
9
  // src/evidence/task-file.ts
10
10
  import * as path from "path";
@@ -2,14 +2,14 @@
2
2
  import {
3
3
  init_loader,
4
4
  loadPluginConfigWithMeta
5
- } from "./index-gaf95msf.js";
5
+ } from "./index-469xmpd6.js";
6
6
  import {
7
7
  init_schema
8
- } from "./index-qc8r1gy4.js";
8
+ } from "./index-qzgfheb4.js";
9
9
  import {
10
10
  DEFAULT_WORKTREE_ISOLATION_CONFIG,
11
11
  init_constants
12
- } from "./index-48jvqqfa.js";
12
+ } from "./index-yw1g78v9.js";
13
13
 
14
14
  // src/config/index.ts
15
15
  init_constants();
@@ -2,10 +2,10 @@
2
2
  import {
3
3
  readKnowledge,
4
4
  transactKnowledge
5
- } from "./index-5z3qzesd.js";
5
+ } from "./index-krqq8kbq.js";
6
6
  import {
7
7
  resolveKnowledgeStoreDir
8
- } from "./index-m9xhje7p.js";
8
+ } from "./index-rm676s0p.js";
9
9
  import {
10
10
  init_git_executable,
11
11
  resolveGitExecutableAsync
@@ -7,7 +7,7 @@ import {
7
7
  } from "./index-2s7dvzff.js";
8
8
  import {
9
9
  simpleGlobToRegex
10
- } from "./index-c1ggtmpm.js";
10
+ } from "./index-fzpt2djt.js";
11
11
  import {
12
12
  warn
13
13
  } from "./index-zgwm4ryv.js";
@@ -2673,4 +2673,144 @@ function buildPythonBackend() {
2673
2673
  }
2674
2674
  var _internals3 = { extractImports: extractImports2 };
2675
2675
 
2676
- export { LANGUAGE_REGISTRY, getProfileForFile, detectProjectLanguages, tokenizeCommand, resolveLocalNodeTool, isCommandAvailable, defaultSelectTestFramework, defaultBuildTestCommand, buildNativeTargetCommand, defaultParseTestOutput, defaultSelectBuildCommand, defaultTestFilesFor, defaultBackendFor, buildGoBackend, _internals2 as _internals, buildPythonBackend, _internals3 as _internals1 };
2676
+ // src/lang/java-extraction.ts
2677
+ function parseJavaImports(rawContent) {
2678
+ const imports = [];
2679
+ const content = maskCommentsAndLiterals(rawContent);
2680
+ const re = /^[ \t]*import[ \t]+(static[ \t]+)?([A-Za-z_][\w.]*(?:\.\*)?)[ \t]*;?[ \t]*\r?$/gm;
2681
+ for (let m = re.exec(content);m !== null; m = re.exec(content)) {
2682
+ const isStatic = Boolean(m[1]);
2683
+ const raw = m[2];
2684
+ if (raw.endsWith(".*")) {
2685
+ imports.push({ specifier: raw, importType: "namespace", bindings: [] });
2686
+ continue;
2687
+ }
2688
+ const imported = finalDottedSegment(raw);
2689
+ const specifier = isStatic ? raw.split(".").slice(0, -1).join(".") : raw;
2690
+ imports.push({
2691
+ specifier,
2692
+ importType: "named",
2693
+ bindings: [{ imported, local: imported }]
2694
+ });
2695
+ }
2696
+ return imports;
2697
+ }
2698
+ function maskCommentsAndLiterals(content) {
2699
+ let out = "";
2700
+ let i = 0;
2701
+ const n = content.length;
2702
+ while (i < n) {
2703
+ const ch = content[i];
2704
+ const next = i + 1 < n ? content[i + 1] : "";
2705
+ const next2 = i + 2 < n ? content[i + 2] : "";
2706
+ if (ch === '"' && next === '"' && next2 === '"') {
2707
+ out += " ";
2708
+ i += 3;
2709
+ while (i < n) {
2710
+ if (content[i] === '"' && content[i + 1] === '"' && content[i + 2] === '"') {
2711
+ out += " ";
2712
+ i += 3;
2713
+ break;
2714
+ }
2715
+ out += content[i] === `
2716
+ ` ? `
2717
+ ` : " ";
2718
+ i++;
2719
+ }
2720
+ continue;
2721
+ }
2722
+ if (ch === "/" && next === "/") {
2723
+ while (i < n && content[i] !== `
2724
+ `) {
2725
+ out += " ";
2726
+ i++;
2727
+ }
2728
+ continue;
2729
+ }
2730
+ if (ch === "/" && next === "*") {
2731
+ out += " ";
2732
+ i += 2;
2733
+ while (i < n) {
2734
+ if (content[i] === "*" && content[i + 1] === "/") {
2735
+ out += " ";
2736
+ i += 2;
2737
+ break;
2738
+ }
2739
+ out += content[i] === `
2740
+ ` ? `
2741
+ ` : " ";
2742
+ i++;
2743
+ }
2744
+ continue;
2745
+ }
2746
+ if (ch === '"' || ch === "'") {
2747
+ const quote = ch;
2748
+ out += ch;
2749
+ i++;
2750
+ while (i < n) {
2751
+ const c = content[i];
2752
+ if (c === "\\") {
2753
+ out += " ";
2754
+ i++;
2755
+ if (i < n) {
2756
+ out += content[i] === `
2757
+ ` ? content[i] : " ";
2758
+ i++;
2759
+ }
2760
+ continue;
2761
+ }
2762
+ if (c === `
2763
+ `) {
2764
+ break;
2765
+ }
2766
+ if (c === quote) {
2767
+ out += c;
2768
+ i++;
2769
+ break;
2770
+ }
2771
+ out += " ";
2772
+ i++;
2773
+ }
2774
+ continue;
2775
+ }
2776
+ out += ch;
2777
+ i++;
2778
+ }
2779
+ return out;
2780
+ }
2781
+ function finalDottedSegment(path6) {
2782
+ const lastDot = path6.lastIndexOf(".");
2783
+ return lastDot === -1 ? path6 : path6.slice(lastDot + 1);
2784
+ }
2785
+ var JAVA_SYMBOL_GRAMMAR = {
2786
+ defs: `
2787
+ (method_declaration
2788
+ (identifier) @func.name
2789
+ ) @func.def
2790
+ (constructor_declaration
2791
+ (identifier) @ctor.name
2792
+ ) @ctor.def
2793
+ (class_declaration
2794
+ (identifier) @class.name
2795
+ ) @class.def
2796
+ (interface_declaration
2797
+ (identifier) @interface.name
2798
+ ) @interface.def
2799
+ (enum_declaration
2800
+ (identifier) @enum.name
2801
+ ) @enum.def
2802
+ (record_declaration
2803
+ (identifier) @record.name
2804
+ ) @record.def
2805
+ `,
2806
+ imports: `
2807
+ (import_declaration) @import
2808
+ `,
2809
+ refs: `
2810
+ (identifier) @ref.identifier
2811
+ (type_identifier) @ref.identifier
2812
+ `,
2813
+ exports: ``
2814
+ };
2815
+
2816
+ export { LANGUAGE_REGISTRY, getProfileForFile, detectProjectLanguages, tokenizeCommand, resolveLocalNodeTool, isCommandAvailable, parseJavaImports, maskCommentsAndLiterals, JAVA_SYMBOL_GRAMMAR, defaultSelectTestFramework, defaultBuildTestCommand, buildNativeTargetCommand, defaultParseTestOutput, defaultSelectBuildCommand, defaultTestFilesFor, defaultBackendFor, buildGoBackend, _internals2 as _internals, buildPythonBackend, _internals3 as _internals1 };
@@ -1,10 +1,10 @@
1
1
  // @bun
2
2
  import {
3
3
  observeStoreHealth
4
- } from "./index-8y9p665v.js";
4
+ } from "./index-c8ffgcvz.js";
5
5
  import {
6
6
  telemetry
7
- } from "./index-xdjwefa5.js";
7
+ } from "./index-jtncfvhe.js";
8
8
  import {
9
9
  init_logger,
10
10
  warn
@@ -1,7 +1,7 @@
1
1
  // @bun
2
2
  import {
3
3
  validateSwarmPath
4
- } from "./index-j2m9q6w1.js";
4
+ } from "./index-bejxkee0.js";
5
5
  import {
6
6
  bunWrite
7
7
  } from "./index-2s7dvzff.js";
@@ -18,25 +18,25 @@ import {
18
18
  releaseCoordinationLease,
19
19
  transitionCoordinationState,
20
20
  withCoordinationTransaction
21
- } from "./index-gvch83kc.js";
21
+ } from "./index-cc1vzq4m.js";
22
22
  import {
23
23
  getProjectDb,
24
24
  projectDbExists
25
- } from "./index-mdxqv3r9.js";
25
+ } from "./index-9hag235h.js";
26
26
  import {
27
27
  observeDelegationLedgerPressure
28
- } from "./index-8y9p665v.js";
28
+ } from "./index-c8ffgcvz.js";
29
29
  import {
30
30
  EvidenceLockTimeoutError,
31
31
  withEvidenceLock
32
- } from "./index-mr86ywsj.js";
32
+ } from "./index-0yj79yk1.js";
33
33
  import {
34
34
  telemetry
35
- } from "./index-xdjwefa5.js";
35
+ } from "./index-jtncfvhe.js";
36
36
  import {
37
37
  canonicalRootKeyFresh,
38
38
  sameProjectRoot
39
- } from "./index-mc72pk74.js";
39
+ } from "./index-fzpt2djt.js";
40
40
  import {
41
41
  exports_external,
42
42
  init_zod
@@ -1161,7 +1161,13 @@ var ResultSchema = exports_external.object({
1161
1161
  transcriptIncomplete: exports_external.boolean().optional(),
1162
1162
  messageCount: exports_external.number().optional(),
1163
1163
  prReviewResultReceipt: PrReviewResultReceiptSchema.optional(),
1164
- workflowLaneFailureClass: exports_external.enum(["contract", "resource", "liveness", "deadline"]).optional(),
1164
+ workflowLaneFailureClass: exports_external.enum([
1165
+ "contract",
1166
+ "resource",
1167
+ "liveness",
1168
+ "operator_cancelled",
1169
+ "deadline"
1170
+ ]).optional(),
1165
1171
  terminalErrorClass: exports_external.object({
1166
1172
  kind: exports_external.enum(["provider", "aborted", "output_length", "unknown"]),
1167
1173
  category: exports_external.string().min(1).max(128),
@@ -3858,13 +3864,14 @@ function sweepStaleLocked(directory, timeoutMs, now, statuses = DEFAULT_SWEEPABL
3858
3864
  continue;
3859
3865
  if (now - record.updatedAt <= timeoutMs)
3860
3866
  continue;
3861
- const staleReason = `lane presumed stale after ${timeoutMs}ms without a terminal event`;
3862
- const livenessResult = record.result ? { ...record.result, workflowLaneFailureClass: "liveness" } : {
3867
+ const staleReason = limits.reasonPrefix ? `${limits.reasonPrefix} (lane finalized after ${timeoutMs}ms without a terminal event)` : `lane presumed stale after ${timeoutMs}ms without a terminal event`;
3868
+ const failureClass = limits.failureClass ?? "liveness";
3869
+ const livenessResult = record.result ? { ...record.result, workflowLaneFailureClass: failureClass } : {
3863
3870
  error: staleReason,
3864
3871
  chars: staleReason.length,
3865
3872
  truncated: false,
3866
3873
  digest: createHash3("sha256").update(staleReason).digest("hex"),
3867
- workflowLaneFailureClass: "liveness"
3874
+ workflowLaneFailureClass: failureClass
3868
3875
  };
3869
3876
  const staleTerminal = buildTypedDelegationTerminal(record, "stale", livenessResult, now);
3870
3877
  appendRecord(directory, {
@@ -3893,8 +3900,12 @@ async function sweepStaleDelegations(directory, timeoutMs, options = {}) {
3893
3900
  excludeCorrelationIds: options.excludeCorrelationIds,
3894
3901
  includeCorrelationIds: options.includeCorrelationIds
3895
3902
  };
3903
+ const limits = {
3904
+ ...options.failureClass ? { failureClass: options.failureClass } : {},
3905
+ ...options.reasonPrefix ? { reasonPrefix: options.reasonPrefix } : {}
3906
+ };
3896
3907
  try {
3897
- return await withEvidenceLock(directory, BACKGROUND_DELEGATIONS_FILE, STORE_LOCK_AGENT, STORE_LOCK_TASK, async () => sweepStaleLocked(directory, timeoutMs, Date.now(), statuses, filters));
3908
+ return await withEvidenceLock(directory, BACKGROUND_DELEGATIONS_FILE, STORE_LOCK_AGENT, STORE_LOCK_TASK, async () => sweepStaleLocked(directory, timeoutMs, Date.now(), statuses, filters, limits));
3898
3909
  } catch (err) {
3899
3910
  warn(`[background] sweepStaleDelegations failed: ${err instanceof Error ? err.message : String(err)}`);
3900
3911
  return 0;
@@ -4724,7 +4735,7 @@ async function reconcileLegacyCoderSettlements(directory, maxRecords, onReconcil
4724
4735
  const candidates = readDelegations(directory).filter((record) => record.normalizedAgent === "coder" && Boolean(record.legacyCoderSettlementTransfer) && Boolean(record.terminalResult)).slice(0, maxRecords);
4725
4736
  if (candidates.length === 0)
4726
4737
  return 0;
4727
- const { transferCoderSettlementToBackground } = await import("./coder-settlement-nfzcjeda.js");
4738
+ const { transferCoderSettlementToBackground } = await import("./coder-settlement-b9qx0732.js");
4728
4739
  let transferred = 0;
4729
4740
  for (const record of candidates) {
4730
4741
  try {