opencode-swarm 7.197.3 → 7.198.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 (108) hide show
  1. package/.opencode/skills/swarm-pr-review/SKILL.md +10 -11
  2. package/.opencode/skills/swarm-pr-review/references/lane-output-recoverability.md +4 -2
  3. package/.opencode/skills/swarm-pr-review/references/parser-dry-run.md +5 -2
  4. package/.opencode/skills/swarm-pr-review/references/prompt-templates.md +57 -42
  5. package/binaries/win32-arm64/swarm-sandbox-runner.exe +0 -0
  6. package/binaries/win32-x64/swarm-sandbox-runner.exe +0 -0
  7. package/dist/agents/critic.d.ts +1 -1
  8. package/dist/cli/{auto-checkpoint-e6t09fc1.js → auto-checkpoint-26ds5st2.js} +8 -8
  9. package/dist/cli/{capability-probe-rty1315z.js → capability-probe-dwqn2609.js} +1 -1
  10. package/dist/cli/{checkpoint-5j752d1a.js → checkpoint-5e7hxsr9.js} +16 -16
  11. package/dist/cli/{coder-settlement-8t3yznbq.js → coder-settlement-temmr2pk.js} +12 -12
  12. package/dist/cli/{config-doctor-8pdsjzsw.js → config-doctor-raqmkf8g.js} +15 -15
  13. package/dist/cli/{core-1dty31az.js → core-f5pxzgmz.js} +3 -3
  14. package/dist/cli/{curation-policy-5hm6328s.js → curation-policy-m8ng2vm5.js} +6 -6
  15. package/dist/cli/{curator-9gwwtyjt.js → curator-5d6aaffq.js} +43 -43
  16. package/dist/cli/{curator-drift-7htrxbht.js → curator-drift-sw8bst80.js} +8 -8
  17. package/dist/cli/curator-llm-factory-20scw8ny.js +82 -0
  18. package/dist/cli/{doctor-knowledge-receipt-phase-id-y2v12h2y.js → doctor-knowledge-receipt-phase-id-6dvt55rx.js} +8 -8
  19. package/dist/cli/{evidence-summary-service-gthqb26q.js → evidence-summary-service-jj18ewdg.js} +19 -19
  20. package/dist/cli/{gate-evidence-xv1228n3.js → gate-evidence-rg41defg.js} +7 -7
  21. package/dist/cli/guardrail-explain-7ssdemv6.js +83 -0
  22. package/dist/cli/{guardrail-log-6f55sa60.js → guardrail-log-6xscgfvv.js} +7 -7
  23. package/dist/cli/{guardrail-reset-j9bk61er.js → guardrail-reset-1hkaxa2j.js} +43 -43
  24. package/dist/cli/{hive-promoter-6y24tdbf.js → hive-promoter-r06x96bw.js} +43 -43
  25. package/dist/cli/{index-2fwsd357.js → index-1s678rvg.js} +11 -11
  26. package/dist/cli/{index-pwgb4ysh.js → index-2z095p01.js} +4 -4
  27. package/dist/cli/{index-pd98xk00.js → index-4rgmr1v6.js} +45 -45
  28. package/dist/cli/{index-7rtq2t5n.js → index-4s3770gs.js} +3 -3
  29. package/dist/cli/{index-fws15qp0.js → index-6f0f4f29.js} +4 -4
  30. package/dist/cli/{index-c5xvm318.js → index-76mg98ac.js} +1 -1
  31. package/dist/cli/{index-tf3y0x41.js → index-7rnw65rv.js} +3 -3
  32. package/dist/cli/{index-dfrcc46h.js → index-84r9rydf.js} +2 -2
  33. package/dist/cli/{index-xmbtwtgw.js → index-89j5h1j9.js} +1 -1
  34. package/dist/cli/{index-bzfn85kq.js → index-8mrentmw.js} +8 -5
  35. package/dist/cli/{index-j8bgrxc8.js → index-8v6tps7r.js} +5 -5
  36. package/dist/cli/{index-z250fgd9.js → index-9t65hk8b.js} +2 -2
  37. package/dist/cli/{index-a4jwt70q.js → index-b3c63rv1.js} +72 -8
  38. package/dist/cli/{index-7m5cf6nb.js → index-by8tygxp.js} +7 -7
  39. package/dist/cli/{index-9exby7at.js → index-c23zrf6q.js} +5 -5
  40. package/dist/cli/{index-p0ha6zyg.js → index-c7tfbr1f.js} +4 -4
  41. package/dist/cli/{index-mpc3z3ky.js → index-cvvambjz.js} +3 -3
  42. package/dist/cli/{index-hy2fqapm.js → index-d31b2zvf.js} +1 -1
  43. package/dist/cli/{index-2jd8sark.js → index-d7vjc89k.js} +2 -2
  44. package/dist/cli/{index-6183at3v.js → index-e4hj8r57.js} +2 -2
  45. package/dist/cli/{index-1pek46cc.js → index-eabp3432.js} +177 -123
  46. package/dist/cli/{index-4b64v1kx.js → index-eqz96aes.js} +8 -3
  47. package/dist/cli/{index-yg2qwadj.js → index-ga0wqrrt.js} +2 -2
  48. package/dist/cli/{index-t7egd710.js → index-h67khmza.js} +1 -1
  49. package/dist/cli/{index-c602bgyp.js → index-j433hcvy.js} +5 -5
  50. package/dist/cli/{index-6dz5venm.js → index-je5bcka1.js} +3 -3
  51. package/dist/cli/{index-f87r78zb.js → index-jsstyk9q.js} +5 -5
  52. package/dist/cli/{index-z75fz6x3.js → index-m16yf21g.js} +4 -4
  53. package/dist/cli/{index-4gmxdkcd.js → index-mjmsq8t7.js} +2 -2
  54. package/dist/cli/{index-s67cbrd1.js → index-msns3h2f.js} +7 -7
  55. package/dist/cli/{index-aynf8fgp.js → index-nk6x7683.js} +13 -3
  56. package/dist/cli/{index-yf2z4j7s.js → index-p4xmq6aa.js} +1 -1
  57. package/dist/cli/{index-04xgdmps.js → index-q4mm1bt9.js} +17 -10
  58. package/dist/cli/{index-ypkfhqbc.js → index-qg6qn99c.js} +7 -7
  59. package/dist/cli/{index-crz772sx.js → index-rqxwv4q5.js} +1 -1
  60. package/dist/cli/{index-ax7n55cd.js → index-sdw5yhpt.js} +6 -6
  61. package/dist/cli/{index-mqk09xcm.js → index-sr8xjwzb.js} +6 -6
  62. package/dist/cli/{index-necqa5bj.js → index-t7qgt5yk.js} +2 -2
  63. package/dist/cli/{index-gc0aeth5.js → index-tdpfecs3.js} +2 -2
  64. package/dist/cli/{index-841jrejq.js → index-tzr2ne1t.js} +3 -3
  65. package/dist/cli/{index-ghckhk16.js → index-v30zmakk.js} +2 -2
  66. package/dist/cli/{index-svmhj9x2.js → index-vn7aqfwf.js} +43 -43
  67. package/dist/cli/{index-app2rmxv.js → index-wrn4khfb.js} +1 -1
  68. package/dist/cli/{index-yed14yth.js → index-x2htr95w.js} +53 -11
  69. package/dist/cli/{index-kphy4we7.js → index-xez06sc1.js} +1 -1
  70. package/dist/cli/{index-rpa47vzb.js → index-xp812shj.js} +2 -2
  71. package/dist/cli/{index-j8t1g5qd.js → index-xt4q610f.js} +1 -1
  72. package/dist/cli/{index-ry5g9s8d.js → index-yk1vnpzx.js} +1 -1
  73. package/dist/cli/index.js +44 -44
  74. package/dist/cli/{knowledge-escalator-xvkfez9d.js → knowledge-escalator-zhf9tdty.js} +14 -14
  75. package/dist/cli/{knowledge-events-t4enxfp7.js → knowledge-events-e7qvrkd6.js} +12 -12
  76. package/dist/cli/{knowledge-link-8bn2b7vr.js → knowledge-link-5qt3pe5v.js} +5 -5
  77. package/dist/cli/{knowledge-store-tdqx1z7e.js → knowledge-store-qjb8z6jp.js} +6 -6
  78. package/dist/cli/{knowledge-validator-3n52kff9.js → knowledge-validator-ahs75wc4.js} +8 -8
  79. package/dist/cli/{mcp-yqfahteb.js → mcp-g8r6nyw8.js} +1 -1
  80. package/dist/cli/{model-preflight-s3s7t38g.js → model-preflight-1z56pgg3.js} +43 -43
  81. package/dist/cli/{pending-delegations-j89ak26j.js → pending-delegations-8y45faem.js} +12 -12
  82. package/dist/cli/{pr-subscriptions-r5q1035f.js → pr-subscriptions-b0ty3vn8.js} +12 -12
  83. package/dist/cli/{pr-workflow-gate-dahpc06k.js → pr-workflow-gate-pf0f47jn.js} +45 -43
  84. package/dist/cli/{runner-rt2smh14.js → runner-rwya5yhg.js} +6 -6
  85. package/dist/cli/{scan-cursor-yjk3czah.js → scan-cursor-1xmy9d70.js} +7 -7
  86. package/dist/cli/{schema-1bs31fpf.js → schema-vdnqek4x.js} +5 -1
  87. package/dist/cli/{scope-persistence-0mpbc1ht.js → scope-persistence-vpge2pc2.js} +15 -15
  88. package/dist/cli/{server-8swemw8w.js → server-3rat1sk6.js} +43 -43
  89. package/dist/cli/{skill-generator-mx125j7w.js → skill-generator-0gwpqkd5.js} +16 -16
  90. package/dist/cli/{snapshot-coordination-init-sayvd15t.js → snapshot-coordination-init-a0dyeaqa.js} +43 -43
  91. package/dist/cli/{speckit-checkoff-76j7h7qt.js → speckit-checkoff-s9gvmcry.js} +4 -4
  92. package/dist/cli/{telemetry-vapc5q4p.js → telemetry-t3425cht.js} +1 -1
  93. package/dist/cli/{workspace-snapshot-e3kw9kpg.js → workspace-snapshot-bst64vey.js} +3 -3
  94. package/dist/cli/{worktree-collision-ownership-8f8c9bcr.js → worktree-collision-ownership-kp0tcg7f.js} +13 -13
  95. package/dist/cli/{worktree-isolation-kgfk5aj8.js → worktree-isolation-v2wf2ka9.js} +43 -43
  96. package/dist/config/loader.d.ts +31 -1
  97. package/dist/config/schema.d.ts +17 -0
  98. package/dist/hooks/guardrails/tool-before.d.ts +5 -2
  99. package/dist/hooks/pr-workflow-gate.d.ts +9 -0
  100. package/dist/index.js +54 -42
  101. package/dist/pr-review/legacy-transcript-adapter.d.ts +18 -0
  102. package/dist/sandbox/capability-probe.d.ts +1 -1
  103. package/dist/sdd/effective-spec.d.ts +48 -5
  104. package/dist/tools/dispatch-lanes.d.ts +18 -0
  105. package/opencode-swarm.schema.json +14 -0
  106. package/package.json +1 -1
  107. package/dist/cli/curator-llm-factory-ew2h0zed.js +0 -82
  108. package/dist/cli/guardrail-explain-h41yf31c.js +0 -83
@@ -8,14 +8,14 @@ import {
8
8
  protectedRoots,
9
9
  redactDecisionLineForArchive,
10
10
  stableCanonicalStringify
11
- } from "./index-tf3y0x41.js";
11
+ } from "./index-7rnw65rv.js";
12
12
  import {
13
13
  detectStraySwarmDirs,
14
14
  readDoctorArtifact,
15
15
  removeStraySwarmDir,
16
16
  resolvePlanParallelizationFlag,
17
17
  runConfigDoctor
18
- } from "./index-aynf8fgp.js";
18
+ } from "./index-nk6x7683.js";
19
19
  import {
20
20
  archiveEvidence,
21
21
  checkRequirementCoverage,
@@ -27,7 +27,7 @@ import {
27
27
  sanitizeTaskId,
28
28
  saveEvidence,
29
29
  validateProjectRoot
30
- } from "./index-c602bgyp.js";
30
+ } from "./index-j433hcvy.js";
31
31
  import {
32
32
  JAVA_SYMBOL_GRAMMAR,
33
33
  LANGUAGE_REGISTRY,
@@ -56,7 +56,7 @@ import {
56
56
  runEvaluation,
57
57
  runExternalTool,
58
58
  withDisposableWorktree
59
- } from "./index-c5xvm318.js";
59
+ } from "./index-76mg98ac.js";
60
60
  import {
61
61
  EvaluationTaskV1Schema,
62
62
  GateAuditManifestV1Schema,
@@ -73,7 +73,7 @@ import {
73
73
  saveGateAuditResult,
74
74
  savePromotionDecision,
75
75
  saveTaskSetSnapshot
76
- } from "./index-necqa5bj.js";
76
+ } from "./index-t7qgt5yk.js";
77
77
  import {
78
78
  canonicalHash,
79
79
  canonicalJson,
@@ -89,7 +89,7 @@ import {
89
89
  alreadyCuratedThisGeneration,
90
90
  claimNextScanBatch,
91
91
  resolveCohortId
92
- } from "./index-yg2qwadj.js";
92
+ } from "./index-ga0wqrrt.js";
93
93
  import {
94
94
  CURATOR_CONSOLIDATION_PROMPT,
95
95
  CURATOR_INIT_PROMPT,
@@ -108,13 +108,13 @@ import {
108
108
  getGroupCommitWriter,
109
109
  importLegacyJsonl,
110
110
  readPriorDriftReports
111
- } from "./index-841jrejq.js";
111
+ } from "./index-tzr2ne1t.js";
112
112
  import {
113
113
  assertNoUnsettledCoderDispatch,
114
114
  listCoderSettlementWalStates,
115
115
  recoverCoderSettlement,
116
116
  recoverStaleCoderSettlements
117
- } from "./index-s67cbrd1.js";
117
+ } from "./index-msns3h2f.js";
118
118
  import {
119
119
  BUNDLED_PROJECT_SKILL_ROOT,
120
120
  DEFAULT_SKILL_MIN_CONFIDENCE,
@@ -137,11 +137,11 @@ import {
137
137
  skillContractDigest,
138
138
  splitSkillFrontmatter,
139
139
  syncBundledProjectSkillsIfMissingAsync
140
- } from "./index-z75fz6x3.js";
140
+ } from "./index-m16yf21g.js";
141
141
  import {
142
142
  buildEscalationBriefing,
143
143
  readRecentEscalations
144
- } from "./index-mqk09xcm.js";
144
+ } from "./index-sr8xjwzb.js";
145
145
  import {
146
146
  parsePorcelainV2Snapshot,
147
147
  resolveCommitCountSince,
@@ -169,7 +169,7 @@ import {
169
169
  resolveRemoteUrlIdentity,
170
170
  resolveRemoteUrlIdentityAsync,
171
171
  switchPrFeedbackTrackingCandidateAsync
172
- } from "./index-ghckhk16.js";
172
+ } from "./index-v30zmakk.js";
173
173
  import {
174
174
  buildCorrelationId,
175
175
  buildIssueUrl,
@@ -190,13 +190,13 @@ import {
190
190
  sweepStale,
191
191
  unsubscribe,
192
192
  updateSnapshot
193
- } from "./index-ypkfhqbc.js";
193
+ } from "./index-qg6qn99c.js";
194
194
  import {
195
195
  WORKTREE_LIFECYCLE_LOCK_FILE,
196
196
  recordWorktreeProvisioningOwner,
197
197
  removeWorktreeProvisioningOwner,
198
198
  scanWorktreeProvisioningOwnersForRecovery
199
- } from "./index-dfrcc46h.js";
199
+ } from "./index-84r9rydf.js";
200
200
  import {
201
201
  getLanguageForExtension
202
202
  } from "./index-pt7h91zc.js";
@@ -225,7 +225,7 @@ import {
225
225
  swarmOverwriteCandidates,
226
226
  trackedDirtyCandidates,
227
227
  transientBackoff
228
- } from "./index-ax7n55cd.js";
228
+ } from "./index-sdw5yhpt.js";
229
229
  import {
230
230
  EPIC_MODE_CONFIG_DISABLED_MESSAGE,
231
231
  PlanRecoverySupersededError,
@@ -257,7 +257,7 @@ import {
257
257
  updateEpicRecord,
258
258
  updateTaskStatus,
259
259
  withPlanLifecycleLock
260
- } from "./index-2fwsd357.js";
260
+ } from "./index-1s678rvg.js";
261
261
  import {
262
262
  containsControlChars,
263
263
  containsPathTraversal,
@@ -270,10 +270,11 @@ import {
270
270
  detectSpeckit,
271
271
  loadSddStatusSync,
272
272
  readEffectiveSpecSync,
273
+ resolveSddSourceSelection,
273
274
  resolveSpeckitProjection,
274
275
  validateSpeckit,
275
276
  writeProjectedSpecSync
276
- } from "./index-a4jwt70q.js";
277
+ } from "./index-b3c63rv1.js";
277
278
  import {
278
279
  clearWorktreeMergeStatus,
279
280
  getAllWorktreeMergeFailures,
@@ -305,7 +306,7 @@ import {
305
306
  transitionTaskWorkflowEvidenceWithStatus,
306
307
  withTaskEvidenceTransaction,
307
308
  writeWorkflowWalFile
308
- } from "./index-p0ha6zyg.js";
309
+ } from "./index-c7tfbr1f.js";
309
310
  import {
310
311
  isPathUnderSwarmWorktreeBase,
311
312
  listLiveLaneOwners,
@@ -314,7 +315,7 @@ import {
314
315
  recordLiveLaneOwner,
315
316
  removeWorktree,
316
317
  resolveWorktreeBaseDir
317
- } from "./index-6dz5venm.js";
318
+ } from "./index-je5bcka1.js";
318
319
  import {
319
320
  GitBinaryMissingError,
320
321
  GitSpawnCwdError,
@@ -334,6 +335,7 @@ import {
334
335
  PR_REVIEW_HANDOFF_MAX_BYTES,
335
336
  PR_REVIEW_RISK_IMPACTS,
336
337
  PR_REVIEW_RISK_TAGS,
338
+ PR_REVIEW_VERDICT_ROW_DESCRIPTORS,
337
339
  PrReviewCriticVerdictFieldsSchema,
338
340
  PrReviewLaneResultEnvelopeSchema,
339
341
  PrReviewResultReceiptSchema,
@@ -356,7 +358,7 @@ import {
356
358
  scanBackgroundCoderReservationsForAdmission,
357
359
  scanDelegationsForRecovery,
358
360
  sweepStaleDelegations
359
- } from "./index-04xgdmps.js";
361
+ } from "./index-q4mm1bt9.js";
360
362
  import {
361
363
  MAX_EVENT_LOG_ENTRIES,
362
364
  _internals,
@@ -368,7 +370,7 @@ import {
368
370
  recordHiveKnowledgeEvent,
369
371
  recordKnowledgeEvent,
370
372
  resolveKnowledgeEventsPath
371
- } from "./index-fws15qp0.js";
373
+ } from "./index-6f0f4f29.js";
372
374
  import {
373
375
  commitDisplayedMembership,
374
376
  commitEmptyRetrieval,
@@ -381,7 +383,7 @@ import {
381
383
  queryLiveMemberships,
382
384
  reconcilePhaseClose,
383
385
  recordPhaseCloseIntent
384
- } from "./index-j8bgrxc8.js";
386
+ } from "./index-8v6tps7r.js";
385
387
  import {
386
388
  sanitizeContextText
387
389
  } from "./index-m9zzj4ee.js";
@@ -392,7 +394,7 @@ import {
392
394
  readSwarmFileAsync,
393
395
  safeHook,
394
396
  validateSwarmPath
395
- } from "./index-kphy4we7.js";
397
+ } from "./index-xez06sc1.js";
396
398
  import {
397
399
  bunFile,
398
400
  bunSpawn,
@@ -412,18 +414,18 @@ import {
412
414
  validateActionableFields,
413
415
  validateLesson,
414
416
  validateSkillPath
415
- } from "./index-pwgb4ysh.js";
417
+ } from "./index-2z095p01.js";
416
418
  import {
417
419
  MAX_CURATION_PROPOSALS,
418
420
  authorizeCuration,
419
421
  buildConfigFingerprintInput
420
- } from "./index-hy2fqapm.js";
422
+ } from "./index-d31b2zvf.js";
421
423
  import {
422
424
  cohortConfigFingerprint
423
425
  } from "./index-rtry5xyf.js";
424
426
  import {
425
427
  resolveWorktreeIsolationConfig
426
- } from "./index-z250fgd9.js";
428
+ } from "./index-9t65hk8b.js";
427
429
  import {
428
430
  RetrospectiveEvidenceSchema
429
431
  } from "./index-g22dps7x.js";
@@ -435,7 +437,7 @@ import {
435
437
  clearScopeBindings,
436
438
  readAuthoritativeScopeBindingSet,
437
439
  readDeclaredScopeFilesFromBindings
438
- } from "./index-9exby7at.js";
440
+ } from "./index-c23zrf6q.js";
439
441
  import {
440
442
  approvedSnapshotCoversPlan,
441
443
  clearPlanLedgerForReset,
@@ -452,7 +454,7 @@ import {
452
454
  replayFromLedgerWithStatus,
453
455
  resolvePlanningProfile,
454
456
  takeSnapshotEvent
455
- } from "./index-f87r78zb.js";
457
+ } from "./index-jsstyk9q.js";
456
458
  import {
457
459
  CORE_EVENT_LOCKED,
458
460
  appendCoreEventSync,
@@ -462,7 +464,7 @@ import {
462
464
  hasSpecDriftAuditEvent,
463
465
  hasTaskRepairAuditEvent,
464
466
  readCoreEvents
465
- } from "./index-6183at3v.js";
467
+ } from "./index-e4hj8r57.js";
466
468
  import {
467
469
  DEFAULT_QA_GATES,
468
470
  computeProfileHash,
@@ -470,7 +472,7 @@ import {
470
472
  getEffectiveGates,
471
473
  getProfileLookupForIdentity,
472
474
  setGatesForIdentity
473
- } from "./index-j8t1g5qd.js";
475
+ } from "./index-xt4q610f.js";
474
476
  import {
475
477
  MAX_COORDINATION_STATE_LIST_ROWS,
476
478
  deleteCoordinationImports,
@@ -481,7 +483,7 @@ import {
481
483
  listCoordinationStates,
482
484
  transitionCoordinationState,
483
485
  withCoordinationTransaction
484
- } from "./index-crz772sx.js";
486
+ } from "./index-rqxwv4q5.js";
485
487
  import {
486
488
  DURABILITY_CLASSES,
487
489
  closeAllProjectDbs,
@@ -490,7 +492,7 @@ import {
490
492
  projectDbExists,
491
493
  projectDbPath,
492
494
  withImmediateTransaction
493
- } from "./index-app2rmxv.js";
495
+ } from "./index-wrn4khfb.js";
494
496
  import {
495
497
  canonicalExistingFilesystemPath,
496
498
  canonicalPathForFutureIo,
@@ -510,7 +512,7 @@ import {
510
512
  observeModelLimitResolution,
511
513
  observeStoreHealth,
512
514
  readLearningHealth
513
- } from "./index-gc0aeth5.js";
515
+ } from "./index-tdpfecs3.js";
514
516
  import {
515
517
  appendKnowledge,
516
518
  appendRejectedLesson,
@@ -541,7 +543,7 @@ import {
541
543
  transactFile,
542
544
  transactKnowledge,
543
545
  wordBigrams
544
- } from "./index-7m5cf6nb.js";
546
+ } from "./index-by8tygxp.js";
545
547
  import {
546
548
  readTailJsonl,
547
549
  readTailJsonlDetailed,
@@ -562,13 +564,13 @@ import {
562
564
  resolveLinkDir,
563
565
  sanitizeLinkId,
564
566
  writeLinkPointer
565
- } from "./index-ry5g9s8d.js";
567
+ } from "./index-yk1vnpzx.js";
566
568
  import {
567
569
  atomicWriteFile
568
- } from "./index-4gmxdkcd.js";
570
+ } from "./index-mjmsq8t7.js";
569
571
  import {
570
572
  withEvidenceLock
571
- } from "./index-xmbtwtgw.js";
573
+ } from "./index-89j5h1j9.js";
572
574
  import {
573
575
  assertProjectRoot
574
576
  } from "./index-t7hmqgjy.js";
@@ -582,7 +584,7 @@ import {
582
584
  pseudonymousRef,
583
585
  resolveLineageSalt,
584
586
  telemetry
585
- } from "./index-7rtq2t5n.js";
587
+ } from "./index-4s3770gs.js";
586
588
  import {
587
589
  SESSION_KEY_SEPARATOR,
588
590
  canonicalRootKey,
@@ -608,7 +610,7 @@ import {
608
610
  matchTempGrammar,
609
611
  parseTargetBasename,
610
612
  resetSwarmArtifactCache
611
- } from "./index-yf2z4j7s.js";
613
+ } from "./index-p4xmq6aa.js";
612
614
  import {
613
615
  PlanSchema,
614
616
  TaskStatusSchema,
@@ -626,7 +628,7 @@ import {
626
628
  loadPluginConfig,
627
629
  loadPluginConfigWithMeta,
628
630
  resolveEpicConfig
629
- } from "./index-yed14yth.js";
631
+ } from "./index-x2htr95w.js";
630
632
  import {
631
633
  GIT_BINARY_ENV_VAR,
632
634
  addDeferredWarning,
@@ -659,7 +661,7 @@ import {
659
661
  resolveContextWindow,
660
662
  resolveGeneratedAgentRole,
661
663
  stripKnownSwarmPrefix
662
- } from "./index-4b64v1kx.js";
664
+ } from "./index-eqz96aes.js";
663
665
  import {
664
666
  AGENT_TOOL_MAP,
665
667
  ALL_AGENT_NAMES,
@@ -703,7 +705,7 @@ import {
703
705
  init_executor,
704
706
  isUntrustedEnvKey,
705
707
  isValidEnvKey
706
- } from "./index-bzfn85kq.js";
708
+ } from "./index-8mrentmw.js";
707
709
  import {
708
710
  init_path_identity,
709
711
  sanitizeDiagnosticText,
@@ -3461,7 +3463,7 @@ async function importLegacyPrWorkflowGateStateIfNeeded(directory, sessionID, all
3461
3463
  return null;
3462
3464
  throw error2;
3463
3465
  }
3464
- const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-dahpc06k.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
3466
+ const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-pf0f47jn.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
3465
3467
  if (!legacy)
3466
3468
  return null;
3467
3469
  const namespace = workflowGateStateCoordinationNamespace(sessionID);
@@ -3595,7 +3597,7 @@ async function deleteStateWhileLocked(directory, sessionID, options = {}) {
3595
3597
  let recoveryState = null;
3596
3598
  if (!currentAuthoritative) {
3597
3599
  if (options.allowSalvagedRead) {
3598
- const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-dahpc06k.js");
3600
+ const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-pf0f47jn.js");
3599
3601
  recoveryState = (await readPrWorkflowGateStateForRecovery(directory, normalizedSessionID))?.state ?? null;
3600
3602
  }
3601
3603
  if (!recoveryState) {
@@ -4938,7 +4940,14 @@ function composePrReviewPhaseVerdicts(directory, state, phase, ctx, exhaustive =
4938
4940
  continue;
4939
4941
  }
4940
4942
  const declaredItems = qualified.expectedLane.reviewItemIds ?? [];
4941
- const { markerRows, parsed } = parsePrReviewVerdictRows(artifact.text, declaredItems, phase, reviewerClaims);
4943
+ const { markerRows, parsed, quarantined } = parsePrReviewVerdictRows(artifact.text, declaredItems, phase, reviewerClaims);
4944
+ if (quarantined.length > 0) {
4945
+ const arities = [
4946
+ ...new Set(quarantined.map((stray) => stray.arity))
4947
+ ].sort((a, b) => a - b);
4948
+ const ids = quarantined.map((stray) => redactSecrets(stray.itemId).slice(0, 64)).filter((value, index, all) => all.indexOf(value) === index).slice(0, 8);
4949
+ appendCompositionDiagnostic(diagnostics, `${phase} lane "${qualified.expectedLane.laneId}" quarantined ${quarantined.length} illegal-arity ${quarantined[0]?.marker ?? "verdict"} row(s) (arities ${arities.join(", ")}; item ids ${ids.map((id) => `"${id}"`).join(", ")}); quarantined rows carry no verdict`);
4950
+ }
4942
4951
  if (!verdictRowsContainOnlyAssignedIds(markerRows, declaredItems)) {
4943
4952
  appendCompositionDiagnostic(diagnostics, `${phase} lane "${qualified.expectedLane.laneId}" contains an unassigned verdict row; it contributes no claims`);
4944
4953
  continue;
@@ -5034,11 +5043,21 @@ function indexVerdictRows(text, marker) {
5034
5043
  const markerRows = [];
5035
5044
  const rowsByItemId = new Map;
5036
5045
  const recoveries = [];
5046
+ const quarantined = [];
5047
+ const legalArity = PR_REVIEW_VERDICT_ROW_DESCRIPTORS[marker === "[REVIEWED]" ? "reviewer" : "critic"].fieldCount;
5037
5048
  for (const line of text.split(/\r?\n/)) {
5038
5049
  const row = parsePrReviewVerdictRow(line, marker === "[REVIEWED]" ? "reviewer" : "critic");
5039
5050
  if (!row)
5040
5051
  continue;
5041
5052
  const fields = row.fields;
5053
+ if (fields.length !== legalArity) {
5054
+ quarantined.push({
5055
+ marker,
5056
+ itemId: fields[1] ?? "(missing)",
5057
+ arity: fields.length
5058
+ });
5059
+ continue;
5060
+ }
5042
5061
  if (row.recoveredOverflow) {
5043
5062
  const recovery = row.overflowClass;
5044
5063
  const itemId2 = fields[1] ?? "(missing)";
@@ -5063,7 +5082,7 @@ function indexVerdictRows(text, marker) {
5063
5082
  else
5064
5083
  rowsByItemId.set(itemId, [fields]);
5065
5084
  }
5066
- return { markerRows, rowsByItemId, recoveries };
5085
+ return { markerRows, rowsByItemId, recoveries, quarantined };
5067
5086
  }
5068
5087
  function validateReviewerVerdictFields(fields) {
5069
5088
  const parsed = PrReviewReviewerVerdictFieldsSchema.safeParse(fields);
@@ -5078,7 +5097,7 @@ function parseLaneItemVerdicts(text, itemIds, phase, reviewerClaims) {
5078
5097
  function parsePrReviewVerdictRows(text, itemIds, phase, reviewerClaims) {
5079
5098
  const parsed = new Map;
5080
5099
  const marker = phase === "reviewer" ? "[REVIEWED]" : "[CRITIC]";
5081
- const { markerRows, rowsByItemId, recoveries } = indexVerdictRows(text, marker);
5100
+ const { markerRows, rowsByItemId, recoveries, quarantined } = indexVerdictRows(text, marker);
5082
5101
  for (const itemId of itemIds) {
5083
5102
  if (itemId === PR_REVIEW_DISCARDED_EXAMPLE_ITEM_ID)
5084
5103
  continue;
@@ -5105,12 +5124,12 @@ function parsePrReviewVerdictRows(text, itemIds, phase, reviewerClaims) {
5105
5124
  severity: verdict.severity
5106
5125
  });
5107
5126
  }
5108
- return { markerRows, parsed, recoveries };
5127
+ return { markerRows, parsed, recoveries, quarantined };
5109
5128
  }
5110
5129
  function analyzePrReviewVerdictRowContract(text, itemIds, phase, reviewerClaims) {
5111
5130
  const marker = phase === "reviewer" ? "[REVIEWED]" : "[CRITIC]";
5112
5131
  const assigned = new Set(itemIds);
5113
- const { markerRows, parsed, recoveries } = parsePrReviewVerdictRows(text, itemIds, phase, reviewerClaims);
5132
+ const { markerRows, parsed, recoveries, quarantined } = parsePrReviewVerdictRows(text, itemIds, phase, reviewerClaims);
5114
5133
  const observedIds = markerRows.map((fields) => fields[1] || "(missing)");
5115
5134
  const unexpectedIds = [
5116
5135
  ...new Set(observedIds.filter((itemId) => !assigned.has(itemId)))
@@ -5123,9 +5142,11 @@ function analyzePrReviewVerdictRowContract(text, itemIds, phase, reviewerClaims)
5123
5142
  rowCount: markerRows.length,
5124
5143
  observedIds,
5125
5144
  invalidOrMissingIds,
5126
- unexpectedIds
5145
+ unexpectedIds,
5146
+ quarantinedArities: quarantined.map((stray) => stray.arity)
5127
5147
  }),
5128
- recoveries
5148
+ recoveries,
5149
+ quarantined
5129
5150
  };
5130
5151
  }
5131
5152
  function verdictRowIdsMatchExactly(markerRows, itemIds) {
@@ -11369,7 +11390,7 @@ function isLaneOwnedByCurrentSession(branchName, expectedSessionId) {
11369
11390
  return extracted === expectedSessionId;
11370
11391
  }
11371
11392
  async function inspectStandardWorktreeCollisionOwnership(identity) {
11372
- const collisionOwnership = await import("./worktree-collision-ownership-8f8c9bcr.js");
11393
+ const collisionOwnership = await import("./worktree-collision-ownership-kp0tcg7f.js");
11373
11394
  return collisionOwnership.inspectStandardWorktreeCollisionOwnership(identity);
11374
11395
  }
11375
11396
  async function runRecoveryGit(directory, args, timeoutMs = 15000) {
@@ -11797,7 +11818,7 @@ async function precreateStandardWorktreeSession(args) {
11797
11818
  const laneProfile = computeLaneRuntimeProfile(worktreeConfig.runtime_isolation, laneIndex, handle.worktreePath);
11798
11819
  if (laneProfile) {
11799
11820
  try {
11800
- const { writeLaneProfileToDiskReal } = await import("./core-1dty31az.js");
11821
+ const { writeLaneProfileToDiskReal } = await import("./core-f5pxzgmz.js");
11801
11822
  await writeLaneProfileToDiskReal(handle.worktreePath, laneProfile.laneIndex, laneProfile.envOverrides);
11802
11823
  } catch {}
11803
11824
  }
@@ -12791,7 +12812,7 @@ async function finishStandardWorktreeDispatch(directory, dispatch, config, callI
12791
12812
  }
12792
12813
  clearWorktreeMergeStatus(statusKey);
12793
12814
  try {
12794
- const { removeLaneProfileFromDiskReal } = await import("./core-1dty31az.js");
12815
+ const { removeLaneProfileFromDiskReal } = await import("./core-f5pxzgmz.js");
12795
12816
  await removeLaneProfileFromDiskReal(dispatch.handle.worktreePath, dispatch.laneIndex);
12796
12817
  } catch {}
12797
12818
  const state = serializationStateBySessionID.get(dispatch.parentSessionID);
@@ -26475,7 +26496,7 @@ function tokenizeCmdArguments(command) {
26475
26496
  function detectCmdRedirects(command) {
26476
26497
  const results = [];
26477
26498
  let inDoubleQuote = false;
26478
- const isTokenBoundary = (character) => character === undefined || /[\s&|()]/.test(character);
26499
+ const isTokenBoundary = (character) => character === undefined || /[;\s&|()]/.test(character);
26479
26500
  for (let index = 0;index < command.length; index++) {
26480
26501
  const character = command[index];
26481
26502
  if (character === "^" && !inDoubleQuote) {
@@ -27110,7 +27131,7 @@ var GUARDED_TOOLS = new Set([
27110
27131
  var selfDevelopmentWorkspaces = new Map;
27111
27132
 
27112
27133
  // src/hooks/guardrails/tool-before.ts
27113
- function resolveWindowsWriteAuthority(tool, command, detectedShellType, shaped) {
27134
+ function resolveWindowsWriteAuthority(tool, command, detectedShellType, shaped, platform = process.platform) {
27114
27135
  const cmdWrapper = CMD_WRAPPER_DECLARATION.test(command);
27115
27136
  const psWrapper = declaresWindowsWrapperLoose(command);
27116
27137
  const inheritedWindows = detectedShellType === "powershell" || detectedShellType === "cmd";
@@ -27118,7 +27139,8 @@ function resolveWindowsWriteAuthority(tool, command, detectedShellType, shaped)
27118
27139
  return "cmd";
27119
27140
  if (psWrapper || shaped)
27120
27141
  return "powershell";
27121
- if (inheritedWindows && tool !== "bash") {
27142
+ const posixShellTool = tool === "bash" || tool === "shell" && platform !== "win32";
27143
+ if (inheritedWindows && !posixShellTool) {
27122
27144
  return detectedShellType;
27123
27145
  }
27124
27146
  return null;
@@ -29224,7 +29246,7 @@ function clearCriticalShownIds(sessionID) {
29224
29246
  async function rehydratePrSubscriptions(sessionID, directory) {
29225
29247
  const map = new Map;
29226
29248
  try {
29227
- const { listActive: listActive2 } = await import("./pr-subscriptions-r5q1035f.js");
29249
+ const { listActive: listActive2 } = await import("./pr-subscriptions-b0ty3vn8.js");
29228
29250
  const records = await listActive2(directory);
29229
29251
  for (const record of records) {
29230
29252
  if (record.sessionID !== sessionID)
@@ -36804,6 +36826,16 @@ async function derivePrReviewOrderUnstableItems(directory, sessionID) {
36804
36826
  return [...new Set(stamped)].sort();
36805
36827
  return [...composition.claims.entries()].filter(([, claim]) => claim.orderAgreement === "disagree").map(([itemId]) => itemId).sort();
36806
36828
  }
36829
+ async function derivePrReviewReviewerSeverities(directory, sessionID) {
36830
+ const state = await requireBoundState2(directory, sessionID, "PR_REVIEW");
36831
+ const ctx = await createPrReviewGateContext2(directory, state);
36832
+ const composition = composePrReviewPhaseVerdicts(directory, state, "reviewer", ctx);
36833
+ const severities = new Map;
36834
+ for (const [itemId, claim] of composition.claims) {
36835
+ severities.set(itemId, claim.severity);
36836
+ }
36837
+ return severities;
36838
+ }
36807
36839
  async function readAuthoritativePrReviewOrderAgreement(directory, sessionID) {
36808
36840
  const state = await requireBoundState2(directory, sessionID, "PR_REVIEW");
36809
36841
  const ctx = await createPrReviewGateContext2(directory, state);
@@ -46250,9 +46282,9 @@ function hashContent(content) {
46250
46282
  return createHash29("sha1").update(content).digest("hex");
46251
46283
  }
46252
46284
  async function loadConfigForPolicyCurator(directory) {
46253
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-1bs31fpf.js");
46285
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-vdnqek4x.js");
46254
46286
  try {
46255
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-mpc3z3ky.js");
46287
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-cvvambjz.js");
46256
46288
  const { config: loadedConfig } = loadPluginConfigWithMeta2(directory);
46257
46289
  return KnowledgeConfigSchema2.parse(loadedConfig.knowledge ?? {});
46258
46290
  } catch {
@@ -49310,7 +49342,7 @@ async function resolveCuratorLLMDelegate(directory, mode, sessionId) {
49310
49342
  const seam = _internals50.createCuratorLLMDelegate;
49311
49343
  if (seam)
49312
49344
  return seam(directory, mode, sessionId);
49313
- const { createCuratorLLMDelegate } = await import("./curator-llm-factory-ew2h0zed.js");
49345
+ const { createCuratorLLMDelegate } = await import("./curator-llm-factory-20scw8ny.js");
49314
49346
  return createCuratorLLMDelegate(directory, mode, sessionId);
49315
49347
  }
49316
49348
  async function reconcileCloseTerminalStateForPlan(directory, targetPlan, options) {
@@ -49705,7 +49737,7 @@ async function runFinalizeStage(ctx) {
49705
49737
  }
49706
49738
  }
49707
49739
  try {
49708
- const { CuratorConfigSchema: CCS } = await import("./schema-1bs31fpf.js");
49740
+ const { CuratorConfigSchema: CCS } = await import("./schema-vdnqek4x.js");
49709
49741
  const { config: pmLoadedConfig } = _internals50.loadPluginConfigWithMeta(ctx.directory);
49710
49742
  const curatorCfg = CCS.parse(pmLoadedConfig.curator ?? {});
49711
49743
  if (curatorCfg.enabled && curatorCfg.postmortem_enabled) {
@@ -53738,7 +53770,7 @@ function serializeAgentSession(s) {
53738
53770
  }
53739
53771
  async function writeSnapshot(directory, state) {
53740
53772
  try {
53741
- const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-sayvd15t.js");
53773
+ const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-a0dyeaqa.js");
53742
53774
  await ensureSnapshotCoordinationReady(directory);
53743
53775
  const snapshot = {
53744
53776
  version: 3,
@@ -56794,7 +56826,7 @@ function planMerges(active, threshold, maxComparisons, maxMerges) {
56794
56826
  };
56795
56827
  }
56796
56828
  async function sweepActiveNearDuplicates(directory, options = {}) {
56797
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-mpc3z3ky.js");
56829
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-cvvambjz.js");
56798
56830
  const { config } = loadPluginConfigWithMeta2(directory);
56799
56831
  const sweepConfig = config.learning?.dedup_sweep;
56800
56832
  if (sweepConfig?.enabled === false)
@@ -57918,7 +57950,7 @@ async function runCuratorPhase(directory, phase, agentsDispatched, config, knowl
57918
57950
  }
57919
57951
  if (config.skill_generation_enabled === true && skillCandidates.length > 0) {
57920
57952
  try {
57921
- const skillModule = await import("./skill-generator-mx125j7w.js");
57953
+ const skillModule = await import("./skill-generator-0gwpqkd5.js");
57922
57954
  for (const cand of skillCandidates) {
57923
57955
  if (cand.confidence < (config.min_skill_confidence ?? DEFAULT_SKILL_MIN_CONFIDENCE)) {
57924
57956
  continue;
@@ -58390,7 +58422,7 @@ async function applyCuratorKnowledgeUpdates(directory, recommendations, knowledg
58390
58422
  } catch {}
58391
58423
  }
58392
58424
  if (contradictedEntries.length > 0 && knowledgeConfig.contradiction_threshold_action === "quarantine") {
58393
- const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-xvkfez9d.js");
58425
+ const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-zhf9tdty.js");
58394
58426
  for (const { id } of contradictedEntries) {
58395
58427
  try {
58396
58428
  await maybeQuarantineOnContradiction(directory, id, knowledgeConfig.contradiction_quarantine_threshold, knowledgeConfig.contradiction_quarantine_window_days);
@@ -59222,7 +59254,7 @@ async function runCuratorPostMortem(directory, options = {}) {
59222
59254
  warnings.push("Failed to collect knowledge summary.");
59223
59255
  }
59224
59256
  try {
59225
- const { getScanStatus } = await import("./scan-cursor-yjk3czah.js");
59257
+ const { getScanStatus } = await import("./scan-cursor-1xmy9d70.js");
59226
59258
  const scanStatus = await getScanStatus(directory);
59227
59259
  if (scanStatus.remaining_estimate > 0) {
59228
59260
  warnings.push(`Fair scan: reviewed ${knowledgeSummary.length} entries this sweep (generation ${scanStatus.generation}); ${scanStatus.remaining_estimate} more eligible entries will be visited in future curation sweeps.`);
@@ -59394,9 +59426,9 @@ var _internals72 = {
59394
59426
  verifyPostMortemKnowledgeActions,
59395
59427
  repairPostMortemActions,
59396
59428
  loadDefaultKnowledgeConfig: async (directory) => {
59397
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-1bs31fpf.js");
59429
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-vdnqek4x.js");
59398
59430
  try {
59399
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-mpc3z3ky.js");
59431
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-cvvambjz.js");
59400
59432
  const loaded = loadPluginConfigWithMeta2(directory);
59401
59433
  return KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
59402
59434
  } catch {
@@ -59404,11 +59436,11 @@ var _internals72 = {
59404
59436
  }
59405
59437
  },
59406
59438
  applyCuratorKnowledgeUpdates: async (directory, recommendations, knowledgeConfig, generation) => {
59407
- const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-9gwwtyjt.js");
59439
+ const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-5d6aaffq.js");
59408
59440
  return applyCuratorKnowledgeUpdates2(directory, recommendations, knowledgeConfig, generation);
59409
59441
  },
59410
59442
  checkHivePromotions: async (entries2, knowledgeConfig, directory) => {
59411
- const { checkHivePromotions } = await import("./hive-promoter-6y24tdbf.js");
59443
+ const { checkHivePromotions } = await import("./hive-promoter-r06x96bw.js");
59412
59444
  return checkHivePromotions(entries2, knowledgeConfig, directory);
59413
59445
  },
59414
59446
  applyProposalTriage: async (directory, triage) => {
@@ -59417,7 +59449,7 @@ var _internals72 = {
59417
59449
  activateProposal,
59418
59450
  listSkills: listSkills2,
59419
59451
  sanitizeSlug
59420
- } = await import("./skill-generator-mx125j7w.js");
59452
+ } = await import("./skill-generator-0gwpqkd5.js");
59421
59453
  const result = {
59422
59454
  approved: [],
59423
59455
  rejected: [],
@@ -59459,7 +59491,7 @@ var _internals72 = {
59459
59491
  return result;
59460
59492
  },
59461
59493
  readPriorDriftReports: async (directory) => {
59462
- const { readPriorDriftReports: readPriorDriftReports2 } = await import("./curator-drift-7htrxbht.js");
59494
+ const { readPriorDriftReports: readPriorDriftReports2 } = await import("./curator-drift-sw8bst80.js");
59463
59495
  return readPriorDriftReports2(directory);
59464
59496
  },
59465
59497
  readSwarmKnowledge: (directory) => readKnowledge(resolveSwarmKnowledgePath(directory))
@@ -67903,7 +67935,7 @@ function wireCloseInternals() {
67903
67935
  archiveEvidence,
67904
67936
  endAgentSession,
67905
67937
  flushAndDrainTelemetry: async () => {
67906
- const { flushAndDrainTelemetry } = await import("./telemetry-vapc5q4p.js");
67938
+ const { flushAndDrainTelemetry } = await import("./telemetry-t3425cht.js");
67907
67939
  return flushAndDrainTelemetry();
67908
67940
  },
67909
67941
  finalizeContextTelemetry,
@@ -69729,9 +69761,9 @@ var _internals80 = {
69729
69761
  loadPluginConfigWithMeta,
69730
69762
  loadCuratorDeps: async () => {
69731
69763
  const [{ CuratorConfigSchema }, curator, { createCuratorLLMDelegate }] = await Promise.all([
69732
- import("./schema-1bs31fpf.js"),
69733
- import("./curator-9gwwtyjt.js"),
69734
- import("./curator-llm-factory-ew2h0zed.js")
69764
+ import("./schema-vdnqek4x.js"),
69765
+ import("./curator-5d6aaffq.js"),
69766
+ import("./curator-llm-factory-20scw8ny.js")
69735
69767
  ]);
69736
69768
  return { CuratorConfigSchema, curator, createCuratorLLMDelegate };
69737
69769
  }
@@ -72181,7 +72213,7 @@ async function computeCurationDiagnostics(directory, entries2) {
72181
72213
  let scanCompleted = false;
72182
72214
  let scanRemaining = 0;
72183
72215
  try {
72184
- const { getScanStatus } = await import("./scan-cursor-yjk3czah.js");
72216
+ const { getScanStatus } = await import("./scan-cursor-1xmy9d70.js");
72185
72217
  const status = await getScanStatus(directory);
72186
72218
  scanGeneration = status.generation;
72187
72219
  scanCompleted = status.completed;
@@ -72189,19 +72221,19 @@ async function computeCurationDiagnostics(directory, entries2) {
72189
72221
  } catch {}
72190
72222
  let configMatch = null;
72191
72223
  try {
72192
- const { isLinked: isLinked2 } = await import("./knowledge-link-8bn2b7vr.js");
72224
+ const { isLinked: isLinked2 } = await import("./knowledge-link-5qt3pe5v.js");
72193
72225
  if (isLinked2(directory)) {
72194
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-1bs31fpf.js");
72226
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-vdnqek4x.js");
72195
72227
  let config;
72196
72228
  try {
72197
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-mpc3z3ky.js");
72229
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-cvvambjz.js");
72198
72230
  const loaded = loadPluginConfigWithMeta2(directory);
72199
72231
  config = KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
72200
72232
  } catch {
72201
72233
  config = KnowledgeConfigSchema2.parse({});
72202
72234
  }
72203
72235
  const { cohortConfigFingerprint: cohortConfigFingerprint2 } = await import("./config-fingerprint-v22xh5a2.js");
72204
- const { buildConfigFingerprintInput: buildConfigFingerprintInput2, readCohortConfigFingerprint } = await import("./curation-policy-5hm6328s.js");
72236
+ const { buildConfigFingerprintInput: buildConfigFingerprintInput2, readCohortConfigFingerprint } = await import("./curation-policy-m8ng2vm5.js");
72205
72237
  const currentFp = cohortConfigFingerprint2(buildConfigFingerprintInput2(config));
72206
72238
  const cohortFp = await readCohortConfigFingerprint(directory);
72207
72239
  configMatch = cohortFp === null ? null : currentFp === cohortFp;
@@ -73650,7 +73682,7 @@ async function handleDoctorCommand(directory, args) {
73650
73682
  const result = runConfigDoctor(config, directory, planParallelizationEnabled);
73651
73683
  let output;
73652
73684
  if (enableAutoFix && result.hasAutoFixableIssues) {
73653
- const { runConfigDoctorWithFixes } = await import("./config-doctor-8pdsjzsw.js");
73685
+ const { runConfigDoctorWithFixes } = await import("./config-doctor-raqmkf8g.js");
73654
73686
  const fixResult = await runConfigDoctorWithFixes(directory, config, true, {
73655
73687
  applyLossy: true
73656
73688
  });
@@ -73688,7 +73720,7 @@ async function handleDoctorCommand(directory, args) {
73688
73720
  `;
73689
73721
  }
73690
73722
  try {
73691
- const { runModelPreflight } = await import("./model-preflight-s3s7t38g.js");
73723
+ const { runModelPreflight } = await import("./model-preflight-1z56pgg3.js");
73692
73724
  const preflight = await runModelPreflight(config, swarmState.opencodeClient, { generatedAgentNames: swarmState.generatedAgentNames });
73693
73725
  const missingSelection = preflight.resolutions.filter((resolution) => resolution.status === "missing-selection");
73694
73726
  const unresolved = preflight.catalogAvailable ? preflight.resolutions.filter((resolution) => resolution.status === "unresolved") : [];
@@ -73722,7 +73754,7 @@ async function handleDoctorCommand(directory, args) {
73722
73754
  }
73723
73755
  } catch {}
73724
73756
  try {
73725
- const { renderKnowledgeReceiptPhaseIdSection } = await import("./doctor-knowledge-receipt-phase-id-y2v12h2y.js");
73757
+ const { renderKnowledgeReceiptPhaseIdSection } = await import("./doctor-knowledge-receipt-phase-id-6dvt55rx.js");
73726
73758
  output += await renderKnowledgeReceiptPhaseIdSection(directory, enableAutoFix);
73727
73759
  } catch {}
73728
73760
  const strayDirs = detectStraySwarmDirs(directory);
@@ -75739,7 +75771,7 @@ async function handleEvidenceCommand(directory, args) {
75739
75771
  return formatTaskEvidenceMarkdown(evidenceData);
75740
75772
  }
75741
75773
  async function handleEvidenceSummaryCommand(directory) {
75742
- const { buildEvidenceSummary } = await import("./evidence-summary-service-gthqb26q.js");
75774
+ const { buildEvidenceSummary } = await import("./evidence-summary-service-jj18ewdg.js");
75743
75775
  const artifact = await buildEvidenceSummary(directory);
75744
75776
  if (!artifact) {
75745
75777
  return "No plan found. Run `/swarm plan` to check plan status.";
@@ -75991,9 +76023,12 @@ ANALYZE RULES:
75991
76023
  - Report the highest-severity findings first within each section.
75992
76024
  - If both spec.md and plan.md are present but empty, report CLEAN with a note that both files are empty.
75993
76025
  `;
76026
+ var PR_REVIEW_LANE_OVERRIDE = `PR-REVIEW LANE OVERRIDE (#3310): when a CONTROLLER-BOUND PR WORKFLOW CONTRACT block is present in your prompt, the default output structure above is suspended for that lane: do not begin with PLAN REVIEW and do not call get_approved_plan \u2014 emit only the [CRITIC] verdict rows that contract specifies, exactly one per assigned item id, and nothing else.`;
75994
76027
  var PLAN_CRITIC_PROMPT = `${PLAN_CRITIC_PROMPT_BASE}
75995
76028
 
75996
- ${GRAPH_FIRST_CRITIC_GUIDANCE}`;
76029
+ ${GRAPH_FIRST_CRITIC_GUIDANCE}
76030
+
76031
+ ${PR_REVIEW_LANE_OVERRIDE}`;
75997
76032
  var SOUNDING_BOARD_PROMPT_BASE = `## PRESSURE IMMUNITY
75998
76033
 
75999
76034
  You have unlimited time. There is no attempt limit. There is no deadline.
@@ -100205,7 +100240,7 @@ function createCuratorLLMDelegate(directory, mode = "init", sessionId) {
100205
100240
  }
100206
100241
  const sdkOpts = signal ? { signal } : {};
100207
100242
  try {
100208
- const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-svmhj9x2.js");
100243
+ const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-vn7aqfwf.js");
100209
100244
  const createResult = await client.session.create({
100210
100245
  ...sessionId ? {
100211
100246
  body: {
@@ -102303,7 +102338,7 @@ async function cancelPrFeedbackLoopUnlocked(directory, sessionID, reason) {
102303
102338
  clearedEvents: []
102304
102339
  };
102305
102340
  try {
102306
- const { cancelPrFeedbackPublication: cancelPrFeedbackPublication2 } = await import("./pr-workflow-gate-dahpc06k.js");
102341
+ const { cancelPrFeedbackPublication: cancelPrFeedbackPublication2 } = await import("./pr-workflow-gate-pf0f47jn.js");
102307
102342
  await cancelPrFeedbackPublication2(directory, sessionID, reason);
102308
102343
  } catch (err) {
102309
102344
  warn(`[pr-feedback-loop] cancelPrFeedbackPublication failed (fail-open): ${err instanceof Error ? err.message : String(err)}`);
@@ -114765,6 +114800,9 @@ var USAGE17 = `Usage:
114765
114800
 
114766
114801
  Source options (required when both openspec and speckit are detected):
114767
114802
  --source <swarm|openspec|speckit> select the SDD provider explicitly
114803
+ (overrides SWARM_SDD_SOURCE and sdd.source)
114804
+ SWARM_SDD_SOURCE=<provider> environment variable; selects the provider when no --source
114805
+ sdd.source in .opencode/opencode-swarm.json declarative provider (see docs/configuration.md)
114768
114806
  --feature <id> Spec-Kit feature directory name to project (one feature)
114769
114807
  --feature all project ALL detected Spec-Kit features (project only;
114770
114808
  the no-flag default with multiple features does the same)
@@ -114780,7 +114818,7 @@ Spec-Kit SDD support:
114780
114818
  when multiple features exist; --feature <id> selects one (bare FR-### ids, v1 form)
114781
114819
  - optional tasks.md check-off write-back on task completion: enable speckit_checkoff.enabled
114782
114820
  in the plugin config (off by default; see docs/planning.md)
114783
- - use --source speckit or --source openspec to disambiguate when both are present`;
114821
+ - use --source speckit or --source openspec (or SWARM_SDD_SOURCE / sdd.source) to disambiguate when both are present`;
114784
114822
  function allowedMutationsFor(source) {
114785
114823
  return source === "swarm" ? ["create", "refine", "archive"] : ["none (read-only input; refine in the source tool)"];
114786
114824
  }
@@ -114843,6 +114881,15 @@ function parseArgs11(args) {
114843
114881
  }
114844
114882
  return parsed;
114845
114883
  }
114884
+ function resolveCommandSource(directory, parsed) {
114885
+ const selection = parsed.source ? undefined : resolveSddSourceSelection(directory);
114886
+ return { source: parsed.source ?? selection?.source, selection };
114887
+ }
114888
+ function featureSourceError(selection) {
114889
+ return `Error: --feature is only valid with --source speckit${selection ? ` (the selected source is ${selection.label})` : ""}
114890
+
114891
+ ${USAGE17}`;
114892
+ }
114846
114893
  function formatList(items) {
114847
114894
  return items.length > 0 ? items.map((item) => `- ${item}`).join(`
114848
114895
  `) : "- none";
@@ -114873,31 +114920,39 @@ async function handleSddStatusCommand(directory, args) {
114873
114920
  return `Error: ${parsed.error}
114874
114921
 
114875
114922
  ${USAGE17}`;
114876
- if (parsed.feature && parsed.source && parsed.source !== "speckit") {
114877
- return `Error: --feature is only valid with --source speckit
114878
-
114879
- ${USAGE17}`;
114923
+ const { source, selection } = resolveCommandSource(directory, parsed);
114924
+ if (parsed.feature && source && source !== "speckit") {
114925
+ return featureSourceError(selection);
114880
114926
  }
114881
114927
  const speckitDetection = detectSpeckit(directory);
114882
114928
  const speckitPresent = speckitDetection.features.length > 0;
114883
114929
  const nativeSpecExists = fs85.existsSync(path152.join(directory, SWARM_SPEC_REL));
114884
- if (speckitPresent && !parsed.source && !nativeSpecExists) {
114930
+ if (speckitPresent && !source && !nativeSpecExists) {
114885
114931
  const openspecProjection = buildOpenSpecProjectionSync(directory);
114886
114932
  if (openspecProjection !== null) {
114887
114933
  const errLines = [
114888
114934
  "Error: Multiple SDD sources detected (openspec, speckit).",
114889
- "Pass --source openspec or --source speckit to select a provider."
114935
+ "Pass --source openspec or --source speckit (or set SWARM_SDD_SOURCE / sdd.source) to select a provider."
114890
114936
  ];
114891
114937
  return parsed.json ? JSON.stringify({ error: errLines.join(" "), sources: ["openspec", "speckit"] }, null, 2) : errLines.join(`
114892
114938
  `);
114893
114939
  }
114894
114940
  }
114895
114941
  const status = loadSddStatusSync(directory, {
114896
- source: parsed.source,
114942
+ source,
114897
114943
  feature: parsed.feature
114898
114944
  });
114899
114945
  if (parsed.json) {
114900
- return JSON.stringify({ ...status, speckit: speckitDetection }, null, 2);
114946
+ return JSON.stringify({
114947
+ ...status,
114948
+ speckit: speckitDetection,
114949
+ ...selection ? {
114950
+ sourceSelection: {
114951
+ source: selection.source,
114952
+ via: selection.label
114953
+ }
114954
+ } : {}
114955
+ }, null, 2);
114901
114956
  }
114902
114957
  const changes = status.changes.map((change) => `${change.id} (${change.specs.length} spec file${change.specs.length === 1 ? "" : "s"}, proposal=${change.proposal}, design=${change.design}, tasks=${change.tasks})`);
114903
114958
  const speckitLines = [
@@ -114912,6 +114967,7 @@ ${speckitDetection.features.map((f) => `- ${f.featureId}`).join(`
114912
114967
  "## SDD Status",
114913
114968
  "",
114914
114969
  `Provider: ${status.provider}`,
114970
+ ...selection ? [`Source selection: ${selection.label}`] : [],
114915
114971
  `Swarm spec: ${status.swSpecExists ? "present" : "missing"}`,
114916
114972
  `OpenSpec root: ${status.openSpecExists ? "present" : "missing"}`,
114917
114973
  `Current OpenSpec specs: ${status.currentSpecs.length}`,
@@ -114945,23 +115001,22 @@ async function handleSddValidateCommand(directory, args) {
114945
115001
  return `Error: ${parsed.error}
114946
115002
 
114947
115003
  ${USAGE17}`;
114948
- if (parsed.feature && parsed.source && parsed.source !== "speckit") {
114949
- return `Error: --feature is only valid with --source speckit
114950
-
114951
- ${USAGE17}`;
115004
+ const { source, selection } = resolveCommandSource(directory, parsed);
115005
+ if (parsed.feature && source && source !== "speckit") {
115006
+ return featureSourceError(selection);
114952
115007
  }
114953
115008
  let useSpeckit = false;
114954
115009
  const nativeSpecExists = fs85.existsSync(path152.join(directory, SWARM_SPEC_REL));
114955
- if (parsed.source === "speckit") {
115010
+ if (source === "speckit") {
114956
115011
  useSpeckit = true;
114957
- } else if (!parsed.source && !nativeSpecExists) {
115012
+ } else if (!source && !nativeSpecExists) {
114958
115013
  const speckitDetection = detectSpeckit(directory);
114959
115014
  if (speckitDetection.features.length > 0) {
114960
115015
  const openspecProjection = buildOpenSpecProjectionSync(directory);
114961
115016
  if (openspecProjection !== null) {
114962
115017
  const errLines = [
114963
115018
  "Error: Multiple SDD sources detected (openspec, speckit).",
114964
- "Pass --source openspec or --source speckit to select a provider."
115019
+ "Pass --source openspec or --source speckit (or set SWARM_SDD_SOURCE / sdd.source) to select a provider."
114965
115020
  ];
114966
115021
  return parsed.json ? JSON.stringify({
114967
115022
  valid: false,
@@ -115015,7 +115070,7 @@ ${formatList(result2.warnings)}` : ""
115015
115070
  ].join(`
115016
115071
  `);
115017
115072
  }
115018
- if (parsed.source === "swarm") {
115073
+ if (source === "swarm") {
115019
115074
  const status2 = loadSddStatusSync(directory, {
115020
115075
  source: "swarm",
115021
115076
  feature: parsed.feature
@@ -115050,7 +115105,7 @@ ${formatList(result2.warnings)}` : ""
115050
115105
  `);
115051
115106
  }
115052
115107
  const status = loadSddStatusSync(directory, {
115053
- source: parsed.source,
115108
+ source,
115054
115109
  feature: parsed.feature
115055
115110
  });
115056
115111
  const projection = buildOpenSpecProjectionSync(directory, {
@@ -115094,13 +115149,12 @@ async function handleSddProjectCommand(directory, args) {
115094
115149
  return `Error: ${parsed.error}
115095
115150
 
115096
115151
  ${USAGE17}`;
115097
- if (parsed.feature && parsed.source && parsed.source !== "speckit") {
115098
- return `Error: --feature is only valid with --source speckit
115099
-
115100
- ${USAGE17}`;
115152
+ const { source, selection } = resolveCommandSource(directory, parsed);
115153
+ if (parsed.feature && source && source !== "speckit") {
115154
+ return featureSourceError(selection);
115101
115155
  }
115102
- if (parsed.source === "swarm") {
115103
- return `Error: --source swarm selects the native .swarm/spec.md and does not generate a projection. Use --source openspec or --source speckit.
115156
+ if (source === "swarm") {
115157
+ return `Error: ${selection ? `SDD source "swarm" (selected via ${selection.label})` : "--source swarm"} selects the native .swarm/spec.md and does not generate a projection. Use --source openspec or --source speckit.
115104
115158
 
115105
115159
  ${USAGE17}`;
115106
115160
  }
@@ -115119,16 +115173,16 @@ ${USAGE17}`;
115119
115173
  }
115120
115174
  }
115121
115175
  let useSpeckit = false;
115122
- if (parsed.source === "speckit") {
115176
+ if (source === "speckit") {
115123
115177
  useSpeckit = true;
115124
- } else if (!parsed.source) {
115178
+ } else if (!source) {
115125
115179
  const speckitDetection = detectSpeckit(directory);
115126
115180
  if (speckitDetection.features.length > 0) {
115127
115181
  const openspecProjection = buildOpenSpecProjectionSync(directory);
115128
115182
  if (openspecProjection !== null) {
115129
115183
  return [
115130
115184
  "Error: Multiple SDD sources detected (openspec, speckit).",
115131
- "Pass --source openspec or --source speckit to select a provider."
115185
+ "Pass --source openspec or --source speckit (or set SWARM_SDD_SOURCE / sdd.source) to select a provider."
115132
115186
  ].join(`
115133
115187
  `);
115134
115188
  }
@@ -116176,7 +116230,7 @@ async function runValidationWithTransientRetry(input, candidateContent, baseline
116176
116230
  if (!input.dispatcher) {
116177
116231
  throw new Error("no evaluation dispatcher available (cannot run validation)");
116178
116232
  }
116179
- const { createModelEvaluationExecutor: createModelEvaluationExecutor2 } = await import("./runner-rt2smh14.js");
116233
+ const { createModelEvaluationExecutor: createModelEvaluationExecutor2 } = await import("./runner-rwya5yhg.js");
116180
116234
  const executor = createModelEvaluationExecutor2(input.dispatcher, input.sessionId);
116181
116235
  const result = await withProtectedSetIntegrity([evalInputRoot, ...protectedRoots(input.directory)], () => _internals144.evaluateCandidateV1({
116182
116236
  projectRoot: input.directory,
@@ -118769,7 +118823,7 @@ function buildDetailedHelp(commandName, entry) {
118769
118823
  async function handleHelpCommand(ctx) {
118770
118824
  const targetCommand = ctx.args.join(" ");
118771
118825
  if (!targetCommand) {
118772
- const { buildHelpText } = await import("./index-pd98xk00.js");
118826
+ const { buildHelpText } = await import("./index-4rgmr1v6.js");
118773
118827
  return buildHelpText();
118774
118828
  }
118775
118829
  const tokens = targetCommand.split(/\s+/);
@@ -118783,7 +118837,7 @@ async function handleHelpCommand(ctx) {
118783
118837
  > Note: \`/swarm ${resolved.key}\` is a deprecated alias for \`/swarm ${aliasTarget}\`.` : detailed;
118784
118838
  }
118785
118839
  const similar = _internals39.findSimilarCommands(targetCommand);
118786
- const { buildHelpText: fullHelp } = await import("./index-pd98xk00.js");
118840
+ const { buildHelpText: fullHelp } = await import("./index-4rgmr1v6.js");
118787
118841
  if (similar.length > 0) {
118788
118842
  return `Command '/swarm ${targetCommand}' not found.
118789
118843
 
@@ -119111,7 +119165,7 @@ var COMMAND_REGISTRY = {
119111
119165
  },
119112
119166
  "guardrail explain": {
119113
119167
  handler: async (ctx) => {
119114
- const { handleGuardrailExplain } = await import("./guardrail-explain-h41yf31c.js");
119168
+ const { handleGuardrailExplain } = await import("./guardrail-explain-7ssdemv6.js");
119115
119169
  return handleGuardrailExplain(ctx.directory, ctx.args);
119116
119170
  },
119117
119171
  description: "Dry-run: show what the guardrails would do to a command or write target (executes nothing)",
@@ -119121,7 +119175,7 @@ var COMMAND_REGISTRY = {
119121
119175
  },
119122
119176
  "guardrail reset": {
119123
119177
  handler: async (ctx) => {
119124
- const { handleGuardrailReset } = await import("./guardrail-reset-j9bk61er.js");
119178
+ const { handleGuardrailReset } = await import("./guardrail-reset-1hkaxa2j.js");
119125
119179
  return handleGuardrailReset(ctx.args, ctx.sessionID);
119126
119180
  },
119127
119181
  description: "Reset one exact active invocation/action circuit after repair",
@@ -119142,7 +119196,7 @@ var COMMAND_REGISTRY = {
119142
119196
  },
119143
119197
  "guardrail-log": {
119144
119198
  handler: async (ctx) => {
119145
- const { handleGuardrailLog } = await import("./guardrail-log-6f55sa60.js");
119199
+ const { handleGuardrailLog } = await import("./guardrail-log-6xscgfvv.js");
119146
119200
  return handleGuardrailLog(ctx.directory, ctx.args);
119147
119201
  },
119148
119202
  description: "Read the guardrail decision log (use --blocks-only for blocks)",
@@ -123245,7 +123299,7 @@ Example (multi-task set-dispatch):
123245
123299
  [REVIEWED] | task-2.1 | APPROVED | No issues found in src/foo.ts
123246
123300
  [REVIEWED] | task-2.2 | REJECTED | Missing null check in bar() at line 42
123247
123301
 
123248
- Never omit this line. The task ID must match the TASK field exactly.
123302
+ Never omit this line. The task ID must match the TASK field exactly. Exception (#3310): when a CONTROLLER-BOUND PR WORKFLOW CONTRACT block is present in your prompt (PR-review lanes), this Stage-B task row is suspended for that lane \u2014 follow that contract's live row format for your assigned item ids instead.
123249
123303
 
123250
123304
  ## OUTPUT ORDER FOR SKILL COMPLIANCE (when applicable)
123251
123305
  When SKILLS_USED_BY_CODER is provided, output TASK: immediately followed by SKILL_COMPLIANCE to ensure proper attribution:
@@ -124466,4 +124520,4 @@ function getAgentConfigs(config, directory, sessionId, projectContext) {
124466
124520
  return result;
124467
124521
  }
124468
124522
 
124469
- export { resetActionCircuitExternally, getBlockingActionCircuit, resolveConfiguredAgentModel, resolveRegisteredAgentModel, resolveEffectiveAgentOverride, MAX_PARALLEL_VERDICT_TASKS, computeParallelVerdict, declaresWindowsWrapperLoose, dcNormalizeCommand, dcUnwrapWrappers, dcSplitSegments, dcExtractRecursiveRmTargets, dcEvaluateRecursiveDeleteTargets, dcCheckJunctionCreation, dcExtractWindowsCmdTargets, dcExtractPowerShellTargets, getSharedClassifierGuardrailBlock, classifyCommand, resetArchitectPromptBudgetAdvisories, createArchitectAgent, createCoderAgent, GENERALIST_COUNCIL_PROMPT, SKEPTIC_COUNCIL_PROMPT, DOMAIN_EXPERT_COUNCIL_PROMPT, createCriticAgent, createCuratorAgent, createDesignerAgent, createDocsAgent, createResearcherAgent, SECURITY_CATEGORIES, createReviewerAgent, createSMEAgent, createTestEngineerAgent, _internals147 as _internals, stripSwarmPrefix, extractSwarmIdFromAgentName, resolveFallbackModel, getSwarmAgents, createAgents, resolvePrimaryAgentNames, getAgentConfigs, SWARM_COMMAND_TOOL_COMMANDS, SWARM_COMMAND_TOOL_ALLOWLIST, HUMAN_ONLY_SWARM_COMMANDS, classifySwarmCommandToolUse, classifySwarmCommandChatFallbackUse, mergeWriteAnalyses, isPowerShellShaped, isPowerShellReadOnlyPipeline, detectPosixWrites, detectWindowsWrites, resolveWriteTargets, resolveWindowsWriteAuthority, getAgentSession, parseLeanLaneIndex, computeLaneRuntimeProfile, MAX_TRACKED_STANDARD_WORKTREE_CALLS, awaitingMergeByCallID, standardWorktreeByCallID, standardWorktreeSerializationSessions, laneChildSessionAgents, recordLaneChildSession, assertTaskIdNotForeignLaneSession, getStandardWorktreeDegradationReason, resetStandardWorktreeIsolationState, checkStandardWorktreeSerializationRelease, sanitizeWorktreeTaskId, preProvisionCollisionCheck, isLaneOwnedByCurrentSession, precreateStandardWorktreeSession, preserveBackgroundWorktreeOwnershipForCallId, preserveDirtyWorktreeForCallId, preserveDirtyWorktreeAtPath, cleanupStandardWorktreeForCallId, abortStandardWorktreeDispatch, runSerializedWithMergeBacks, finishStandardWorktreeDispatch, readLaneEnvFileFromDisk, _internals24 as _internals1, redactSecrets, prWorkflowSessionFileStem, ensurePrWorkflowSafeParentDirectory, writePrWorkflowAtomicJson, PrWorkflowCheckoutMutationTimeoutError, withPrWorkflowCheckoutMutationLock, PR_REVIEW_REPORT_VERDICTS, allowedPrReviewReportVerdicts, normalizePrReviewPartialBaseCoverageRecord, rollbackPrReviewPartialBaseCoverageAdmission, readPrReviewTerminalCoverageForReport, PR_REVIEW_REQUIRED_MICRO_LANE_IDS, PR_REVIEW_DEPTH_TIER_THRESHOLDS, PR_REVIEW_BASE_LANE_FLOORS, PR_REVIEW_TIER_L_CONSOLIDATED_LANE_FLOOR, PR_REVIEW_MICRO_LANE_FLOORS, computePrReviewDepthTier, MAX_PR_REVIEW_SUBMIT_REJECTIONS, MAX_PR_REVIEW_VERDICT_REJECTIONS, MAX_PR_FEEDBACK_INVENTORY_AMENDMENTS, activatePrWorkflow, appendPrWorkflowSkillContractAdvisories, readPrWorkflowGateState, recordPrReviewSubmitRejection, latestPrReviewSubmitRejectionMessage, recordPrReviewVerdictRejection, latestPrReviewVerdictRejectionForLane, submitPrReviewResult, withPrWorkflowCheckoutPreparationLock, withInactivePrWorkflowCheckoutRestoreLock, clearPrWorkflowGateState, terminalizePrWorkflowGateForSession2 as terminalizePrWorkflowGateForSession, PR_WORKFLOW_PROBE_SKIPPED_NO_BUDGET_REASON, collectPrWorkflowPendingLaneLiveness, settlePresumedStalePrWorkflowLanes, abortPrWorkflow, recoverArmedPrWorkflow, bindPrWorkflowHead, rebindPrFeedbackHead, bindPrReviewBase, assertCurrentCheckoutHead, assertPrReviewCleanCheckout, enforcePrWorkflowDispatchLanesAsync, PrReviewResilienceCircuitOpenError, PrReviewResilienceRetryExhaustedError, enforcePrReviewBaseDimensions, rollbackPrReviewBaseAdmissionIfUnlaunched, admitPrReviewPartialBaseCoverage2 as admitPrReviewPartialBaseCoverage, assertPrReviewBaseCoverageSettled2 as assertPrReviewBaseCoverageSettled, recordPrReviewMicroFamilyDispatch, recordPrReviewValidationBatch, assertPrReviewValidationSettled, declarePrFeedbackInventory, enforcePrFeedbackVerificationOwnership, assertPrFeedbackVerificationSettled, recordPrFeedbackStageA, recordPrFeedbackGateBatch, assertPrFeedbackGatePhaseSettled, assertPrFeedbackReadyToPublish, invalidatePrFeedbackPublication, describePrWorkflowPublicationSection, findDanglingLivePublicationGeneration, recordPrFeedbackPushAttemptResult, cancelPrFeedbackPublication, resolvePrReviewWriterRunId, markPrReviewTriggerEvaluationComplete, bindPrReviewTriggerLedger, assertPrReviewArtifactBoundary, assertPrReviewArtifactRecordsMatchAuthoritativeVerdicts, markPrReviewArtifactBoundary, markPrReviewHandoffComplete, readAuthoritativeFindingPolicy, readPrReviewFinalFindingPolicyForReport, transitionPrReviewToFeedback, declarePrFeedbackScope, resolvePrFeedbackScopeDeclaration, consumePrFeedbackScopeDeclaration, validatePrFeedbackScopeBinding, enforcePrWorkflowToolBefore, readPrReviewReentryBindingContext, hasActivePrReviewReentryAuthorization, reserveActivePrReviewReentryAuthorization, completePrWorkflow, _test_exports2 as _test_exports, normalizePrWorkflowShellCommand, describePrWorkflowRevisionDigestFailure, derivePrReviewCandidateInventoryForStatus, readPrReviewVerdictSettlementReceiptItems, readPrReviewVerdictSettlementEffectiveIds, readAuthoritativePrReviewCriticSettlements, readAuthoritativePrReviewCriticVerdicts, derivePrReviewPresentationOrder, derivePrReviewOrderUnstableItems, readAuthoritativePrReviewOrderAgreement, formatPrReviewLaneValidationFailure, validateExactStructuredReceiptCoverage2 as validateExactStructuredReceiptCoverage, validatePrReviewDiscoveryLaneCompletion2 as validatePrReviewDiscoveryLaneCompletion, validatePrWorkflowTransportRecovery, prReviewDiscoveryArtifactCoversLane, MAX_SALVAGED_SCHEMA_ERROR_CHARS, readPrWorkflowGateStateForRecovery, handleAcknowledgeSpecDriftCommand, handleAgentsCommand, handleAnalyzeCommand, handleApproveWriteCommand, handleArchiveCommand, handleAutoProceedCommand, handleBenchmarkCommand, handleBrainstormCommand, handleCheckpointCommand, DEFAULT_CI_DEADLINE_MS2 as DEFAULT_CI_DEADLINE_MS, createSignalCancellation, handleCiCommand, handleCiSimulateCommand, handleClarifyCommand, safeRealpathSync, createCuratorLLMDelegate, getCoChangePairs, startSnapshotCoordinationInitialization, ensureSnapshotCoordinationReady, retrySnapshotCoordinationInitialization, getSnapshotCoordinationStatus, beginSnapshotCoordinationReset, closeSnapshotCoordinationInitialization, markSnapshotCoordinationClosing, _snapshotCoordinationInternals, handleCloseCommand, _internals71 as _internals2, normalizeRecommendationEntryIdToken, parseKnowledgeRecommendations, parseKnowledgeRecommendationsWithDiagnostics, parseStructuredCuratorBlocks, readCuratorSummary, writeCuratorSummary, appendCuratorRecommendation, mergeCuratorPhaseSummary, filterPhaseEvents, checkPhaseCompliance, runCuratorInit, runCuratorPhase, applyCuratorKnowledgeUpdates, isHiveEligible, countDistinctProjects, checkHivePromotions, _internals75 as _internals3, createHivePromoterHook, promoteToHive, promoteFromSwarm, createMemoryGateway, handleCodebaseReviewCommand, handleConcurrencyCommand, handleConfigCommand, handleConsolidateCommand, handleCostsCommand, handleCouncilCommand, handleCurateCommand, handleDarkMatterCommand, handleDeepDiveCommand, handleDeepResearchCommand, getHostConfigDir, getPluginCachePaths, getPluginLockFilePaths, VERSION_PINNED_LEAF, discoverVersionPinnedCachePaths, readCachePackageVersion, handleDiagnoseCommand, handleDoctorCommand, handleEvidenceCommand, handleEvidenceSummaryCommand, handleExportCommand, handleFullAutoCommand, computeQualityBudget, computeSastScan, handleGateAuditCommand, handleGateStatsCommand, handleHandoffCommand, handleBlueprintValidateCommand, handleBlueprintCurrentCommand, handleBlueprintHistoryCommand, handleBlueprintDiffCommand, handleBlueprintExportCommand, handleHarnessCandidateValidateCommand, handleHarnessCandidateShowCommand, handleHarnessCandidateDiffCommand, handleHistoryCommand, handleKnowledgeQuarantineCommand, handleKnowledgeRestoreCommand, handleKnowledgeMigrateCommand, handleKnowledgeListCommand, handleKnowledgeUnactionableCommand, handleKnowledgeRetryHardeningCommand, handleLearningCommand, handleLinkCommand, searchKnowledge, symbols, handleMemoryCommand, handleMemoryStatusCommand, handleMemoryValueLogCommand, handleMemoryMigrateCommand, handleMemoryImportCommand, handleMemoryExportCommand, handlePlanCommand, handlePreflightCommand, handlePromoteCommand, handleQaGatesCommand, handleRecoverCommand, handleResetCommand, handleResetSessionCommand, handleRetrieveCommand, handleReviewCommand, handleRollbackCommand, handleSddStatusCommand, handleSddValidateCommand, handleSddProjectCommand, handleSddCommand, handleSimulateCommand, handleSpecifyCommand, handleStatusCommand, handleSyncPlanCommand, handleTurboCommand, handleUnlinkCommand, handleWriteRetroCommand, handleHelpCommand, isCommandFailure, COMMAND_REGISTRY, VALID_COMMANDS, _internals39 as _internals4, resolveCommand, normalizeSwarmCommandInput, canonicalCommandKey, formatCommandNotFound, executeSwarmCommand };
124523
+ export { resetActionCircuitExternally, getBlockingActionCircuit, resolveConfiguredAgentModel, resolveRegisteredAgentModel, resolveEffectiveAgentOverride, MAX_PARALLEL_VERDICT_TASKS, computeParallelVerdict, declaresWindowsWrapperLoose, dcNormalizeCommand, dcUnwrapWrappers, dcSplitSegments, dcExtractRecursiveRmTargets, dcEvaluateRecursiveDeleteTargets, dcCheckJunctionCreation, dcExtractWindowsCmdTargets, dcExtractPowerShellTargets, getSharedClassifierGuardrailBlock, classifyCommand, resetArchitectPromptBudgetAdvisories, createArchitectAgent, createCoderAgent, GENERALIST_COUNCIL_PROMPT, SKEPTIC_COUNCIL_PROMPT, DOMAIN_EXPERT_COUNCIL_PROMPT, createCriticAgent, createCuratorAgent, createDesignerAgent, createDocsAgent, createResearcherAgent, SECURITY_CATEGORIES, createReviewerAgent, createSMEAgent, createTestEngineerAgent, _internals147 as _internals, stripSwarmPrefix, extractSwarmIdFromAgentName, resolveFallbackModel, getSwarmAgents, createAgents, resolvePrimaryAgentNames, getAgentConfigs, SWARM_COMMAND_TOOL_COMMANDS, SWARM_COMMAND_TOOL_ALLOWLIST, HUMAN_ONLY_SWARM_COMMANDS, classifySwarmCommandToolUse, classifySwarmCommandChatFallbackUse, mergeWriteAnalyses, isPowerShellShaped, isPowerShellReadOnlyPipeline, detectPosixWrites, detectWindowsWrites, resolveWriteTargets, resolveWindowsWriteAuthority, getAgentSession, parseLeanLaneIndex, computeLaneRuntimeProfile, MAX_TRACKED_STANDARD_WORKTREE_CALLS, awaitingMergeByCallID, standardWorktreeByCallID, standardWorktreeSerializationSessions, laneChildSessionAgents, recordLaneChildSession, assertTaskIdNotForeignLaneSession, getStandardWorktreeDegradationReason, resetStandardWorktreeIsolationState, checkStandardWorktreeSerializationRelease, sanitizeWorktreeTaskId, preProvisionCollisionCheck, isLaneOwnedByCurrentSession, precreateStandardWorktreeSession, preserveBackgroundWorktreeOwnershipForCallId, preserveDirtyWorktreeForCallId, preserveDirtyWorktreeAtPath, cleanupStandardWorktreeForCallId, abortStandardWorktreeDispatch, runSerializedWithMergeBacks, finishStandardWorktreeDispatch, readLaneEnvFileFromDisk, _internals24 as _internals1, redactSecrets, prWorkflowSessionFileStem, ensurePrWorkflowSafeParentDirectory, writePrWorkflowAtomicJson, PrWorkflowCheckoutMutationTimeoutError, withPrWorkflowCheckoutMutationLock, PR_REVIEW_REPORT_VERDICTS, allowedPrReviewReportVerdicts, normalizePrReviewPartialBaseCoverageRecord, rollbackPrReviewPartialBaseCoverageAdmission, readPrReviewTerminalCoverageForReport, PR_REVIEW_REQUIRED_MICRO_LANE_IDS, PR_REVIEW_DEPTH_TIER_THRESHOLDS, PR_REVIEW_BASE_LANE_FLOORS, PR_REVIEW_TIER_L_CONSOLIDATED_LANE_FLOOR, PR_REVIEW_MICRO_LANE_FLOORS, computePrReviewDepthTier, MAX_PR_REVIEW_SUBMIT_REJECTIONS, MAX_PR_REVIEW_VERDICT_REJECTIONS, MAX_PR_FEEDBACK_INVENTORY_AMENDMENTS, activatePrWorkflow, appendPrWorkflowSkillContractAdvisories, readPrWorkflowGateState, recordPrReviewSubmitRejection, latestPrReviewSubmitRejectionMessage, recordPrReviewVerdictRejection, latestPrReviewVerdictRejectionForLane, submitPrReviewResult, withPrWorkflowCheckoutPreparationLock, withInactivePrWorkflowCheckoutRestoreLock, clearPrWorkflowGateState, terminalizePrWorkflowGateForSession2 as terminalizePrWorkflowGateForSession, PR_WORKFLOW_PROBE_SKIPPED_NO_BUDGET_REASON, collectPrWorkflowPendingLaneLiveness, settlePresumedStalePrWorkflowLanes, abortPrWorkflow, recoverArmedPrWorkflow, bindPrWorkflowHead, rebindPrFeedbackHead, bindPrReviewBase, assertCurrentCheckoutHead, assertPrReviewCleanCheckout, enforcePrWorkflowDispatchLanesAsync, PrReviewResilienceCircuitOpenError, PrReviewResilienceRetryExhaustedError, enforcePrReviewBaseDimensions, rollbackPrReviewBaseAdmissionIfUnlaunched, admitPrReviewPartialBaseCoverage2 as admitPrReviewPartialBaseCoverage, assertPrReviewBaseCoverageSettled2 as assertPrReviewBaseCoverageSettled, recordPrReviewMicroFamilyDispatch, recordPrReviewValidationBatch, assertPrReviewValidationSettled, declarePrFeedbackInventory, enforcePrFeedbackVerificationOwnership, assertPrFeedbackVerificationSettled, recordPrFeedbackStageA, recordPrFeedbackGateBatch, assertPrFeedbackGatePhaseSettled, assertPrFeedbackReadyToPublish, invalidatePrFeedbackPublication, describePrWorkflowPublicationSection, findDanglingLivePublicationGeneration, recordPrFeedbackPushAttemptResult, cancelPrFeedbackPublication, resolvePrReviewWriterRunId, markPrReviewTriggerEvaluationComplete, bindPrReviewTriggerLedger, assertPrReviewArtifactBoundary, assertPrReviewArtifactRecordsMatchAuthoritativeVerdicts, markPrReviewArtifactBoundary, markPrReviewHandoffComplete, readAuthoritativeFindingPolicy, readPrReviewFinalFindingPolicyForReport, transitionPrReviewToFeedback, declarePrFeedbackScope, resolvePrFeedbackScopeDeclaration, consumePrFeedbackScopeDeclaration, validatePrFeedbackScopeBinding, enforcePrWorkflowToolBefore, readPrReviewReentryBindingContext, hasActivePrReviewReentryAuthorization, reserveActivePrReviewReentryAuthorization, completePrWorkflow, _test_exports2 as _test_exports, normalizePrWorkflowShellCommand, describePrWorkflowRevisionDigestFailure, derivePrReviewCandidateInventoryForStatus, readPrReviewVerdictSettlementReceiptItems, readPrReviewVerdictSettlementEffectiveIds, readAuthoritativePrReviewCriticSettlements, readAuthoritativePrReviewCriticVerdicts, derivePrReviewPresentationOrder, derivePrReviewOrderUnstableItems, derivePrReviewReviewerSeverities, readAuthoritativePrReviewOrderAgreement, formatPrReviewLaneValidationFailure, validateExactStructuredReceiptCoverage2 as validateExactStructuredReceiptCoverage, validatePrReviewDiscoveryLaneCompletion2 as validatePrReviewDiscoveryLaneCompletion, validatePrWorkflowTransportRecovery, prReviewDiscoveryArtifactCoversLane, MAX_SALVAGED_SCHEMA_ERROR_CHARS, readPrWorkflowGateStateForRecovery, handleAcknowledgeSpecDriftCommand, handleAgentsCommand, handleAnalyzeCommand, handleApproveWriteCommand, handleArchiveCommand, handleAutoProceedCommand, handleBenchmarkCommand, handleBrainstormCommand, handleCheckpointCommand, DEFAULT_CI_DEADLINE_MS2 as DEFAULT_CI_DEADLINE_MS, createSignalCancellation, handleCiCommand, handleCiSimulateCommand, handleClarifyCommand, safeRealpathSync, createCuratorLLMDelegate, getCoChangePairs, startSnapshotCoordinationInitialization, ensureSnapshotCoordinationReady, retrySnapshotCoordinationInitialization, getSnapshotCoordinationStatus, beginSnapshotCoordinationReset, closeSnapshotCoordinationInitialization, markSnapshotCoordinationClosing, _snapshotCoordinationInternals, handleCloseCommand, _internals71 as _internals2, normalizeRecommendationEntryIdToken, parseKnowledgeRecommendations, parseKnowledgeRecommendationsWithDiagnostics, parseStructuredCuratorBlocks, readCuratorSummary, writeCuratorSummary, appendCuratorRecommendation, mergeCuratorPhaseSummary, filterPhaseEvents, checkPhaseCompliance, runCuratorInit, runCuratorPhase, applyCuratorKnowledgeUpdates, isHiveEligible, countDistinctProjects, checkHivePromotions, _internals75 as _internals3, createHivePromoterHook, promoteToHive, promoteFromSwarm, createMemoryGateway, handleCodebaseReviewCommand, handleConcurrencyCommand, handleConfigCommand, handleConsolidateCommand, handleCostsCommand, handleCouncilCommand, handleCurateCommand, handleDarkMatterCommand, handleDeepDiveCommand, handleDeepResearchCommand, getHostConfigDir, getPluginCachePaths, getPluginLockFilePaths, VERSION_PINNED_LEAF, discoverVersionPinnedCachePaths, readCachePackageVersion, handleDiagnoseCommand, handleDoctorCommand, handleEvidenceCommand, handleEvidenceSummaryCommand, handleExportCommand, handleFullAutoCommand, computeQualityBudget, computeSastScan, handleGateAuditCommand, handleGateStatsCommand, handleHandoffCommand, handleBlueprintValidateCommand, handleBlueprintCurrentCommand, handleBlueprintHistoryCommand, handleBlueprintDiffCommand, handleBlueprintExportCommand, handleHarnessCandidateValidateCommand, handleHarnessCandidateShowCommand, handleHarnessCandidateDiffCommand, handleHistoryCommand, handleKnowledgeQuarantineCommand, handleKnowledgeRestoreCommand, handleKnowledgeMigrateCommand, handleKnowledgeListCommand, handleKnowledgeUnactionableCommand, handleKnowledgeRetryHardeningCommand, handleLearningCommand, handleLinkCommand, searchKnowledge, symbols, handleMemoryCommand, handleMemoryStatusCommand, handleMemoryValueLogCommand, handleMemoryMigrateCommand, handleMemoryImportCommand, handleMemoryExportCommand, handlePlanCommand, handlePreflightCommand, handlePromoteCommand, handleQaGatesCommand, handleRecoverCommand, handleResetCommand, handleResetSessionCommand, handleRetrieveCommand, handleReviewCommand, handleRollbackCommand, handleSddStatusCommand, handleSddValidateCommand, handleSddProjectCommand, handleSddCommand, handleSimulateCommand, handleSpecifyCommand, handleStatusCommand, handleSyncPlanCommand, handleTurboCommand, handleUnlinkCommand, handleWriteRetroCommand, handleHelpCommand, isCommandFailure, COMMAND_REGISTRY, VALID_COMMANDS, _internals39 as _internals4, resolveCommand, normalizeSwarmCommandInput, canonicalCommandKey, formatCommandNotFound, executeSwarmCommand };