opencode-swarm 7.197.2 → 7.198.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 (107) 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-6qp3jn7f.js → auto-checkpoint-3mmvyd3g.js} +8 -8
  9. package/dist/cli/{capability-probe-rty1315z.js → capability-probe-dwqn2609.js} +1 -1
  10. package/dist/cli/{checkpoint-qe10m65d.js → checkpoint-e43t6f2b.js} +16 -16
  11. package/dist/cli/{coder-settlement-ry7zxj9v.js → coder-settlement-kb2827hb.js} +12 -12
  12. package/dist/cli/{config-doctor-vcjcdf3f.js → config-doctor-06jwks34.js} +15 -15
  13. package/dist/cli/{core-czytse6q.js → core-sqqs0k1q.js} +3 -3
  14. package/dist/cli/{curation-policy-5hm6328s.js → curation-policy-m8ng2vm5.js} +6 -6
  15. package/dist/cli/{curator-0wa5gjc8.js → curator-dm4nm95q.js} +43 -43
  16. package/dist/cli/{curator-drift-vf2egpr8.js → curator-drift-0502msxm.js} +8 -8
  17. package/dist/cli/curator-llm-factory-54v33gz2.js +82 -0
  18. package/dist/cli/{doctor-knowledge-receipt-phase-id-tkjsgcp6.js → doctor-knowledge-receipt-phase-id-zm56sg6v.js} +8 -8
  19. package/dist/cli/{evidence-summary-service-p9wx1m45.js → evidence-summary-service-ejmywz5a.js} +19 -19
  20. package/dist/cli/{gate-evidence-bfmc23yw.js → gate-evidence-rqev8f8q.js} +7 -7
  21. package/dist/cli/guardrail-explain-0z5cyah2.js +83 -0
  22. package/dist/cli/{guardrail-log-dtkzgxz8.js → guardrail-log-yjbyf5sc.js} +7 -7
  23. package/dist/cli/{guardrail-reset-pbcfymhq.js → guardrail-reset-4zrb40d3.js} +43 -43
  24. package/dist/cli/{hive-promoter-g2sngbc0.js → hive-promoter-swgaebae.js} +43 -43
  25. package/dist/cli/{index-xa7ak8ss.js → index-006b796n.js} +5 -5
  26. package/dist/cli/{index-n0ghdmvx.js → index-0caf038s.js} +7 -7
  27. package/dist/cli/{index-7rtq2t5n.js → index-4s3770gs.js} +3 -3
  28. package/dist/cli/{index-evpq5mqt.js → index-715d35v8.js} +2 -2
  29. package/dist/cli/{index-q267bpej.js → index-730ajx2g.js} +2 -2
  30. package/dist/cli/{index-c5xvm318.js → index-76mg98ac.js} +1 -1
  31. package/dist/cli/{index-dfrcc46h.js → index-84r9rydf.js} +2 -2
  32. package/dist/cli/{index-xmbtwtgw.js → index-89j5h1j9.js} +1 -1
  33. package/dist/cli/{index-bzfn85kq.js → index-8mrentmw.js} +8 -5
  34. package/dist/cli/{index-ptxtqhwv.js → index-9628q121.js} +72 -8
  35. package/dist/cli/{index-6ayj4y71.js → index-9fdddqtn.js} +4 -4
  36. package/dist/cli/{index-zh1dmz46.js → index-a71vh07f.js} +3 -3
  37. package/dist/cli/{index-fz45trs6.js → index-c4fkfbfz.js} +3 -3
  38. package/dist/cli/{index-hy2fqapm.js → index-d31b2zvf.js} +1 -1
  39. package/dist/cli/{index-6183at3v.js → index-e4hj8r57.js} +2 -2
  40. package/dist/cli/{index-xg9t03dg.js → index-f0hpw2f8.js} +43 -43
  41. package/dist/cli/{index-2vtr85p8.js → index-fd105270.js} +5 -5
  42. package/dist/cli/{index-pnbcknzr.js → index-fv6eab1b.js} +8 -3
  43. package/dist/cli/{index-ztchs2p8.js → index-gp9rhg5m.js} +1 -1
  44. package/dist/cli/{index-mk15vyfe.js → index-gyz3kvvm.js} +6 -6
  45. package/dist/cli/{index-n06vxt1k.js → index-hh0at0tt.js} +13 -3
  46. package/dist/cli/{index-nhz85frs.js → index-jj9kzye7.js} +3 -3
  47. package/dist/cli/{index-h5g0nyy8.js → index-kpngvt4q.js} +4 -4
  48. package/dist/cli/{index-4gmxdkcd.js → index-mjmsq8t7.js} +2 -2
  49. package/dist/cli/{index-gw7nkn2q.js → index-ndvnxxbm.js} +5 -5
  50. package/dist/cli/{index-rbevpmff.js → index-p44wgqhb.js} +173 -120
  51. package/dist/cli/{index-yf2z4j7s.js → index-p4xmq6aa.js} +1 -1
  52. package/dist/cli/{index-15j2cze3.js → index-pfwhq6p5.js} +45 -45
  53. package/dist/cli/{index-afrdvad3.js → index-pkdyys9n.js} +53 -11
  54. package/dist/cli/{index-5fzc5krd.js → index-pn6xqhp2.js} +2 -2
  55. package/dist/cli/{index-z7zk3enh.js → index-q9zg0ckd.js} +5 -5
  56. package/dist/cli/{index-ypkfhqbc.js → index-qg6qn99c.js} +7 -7
  57. package/dist/cli/{index-xq0w60za.js → index-qnkk509y.js} +6 -6
  58. package/dist/cli/{index-sx4brx0w.js → index-r5f6q2v4.js} +4 -4
  59. package/dist/cli/{index-23kb8srf.js → index-rj4a1206.js} +7 -7
  60. package/dist/cli/{index-e21b8sjj.js → index-rjcxke49.js} +3 -3
  61. package/dist/cli/{index-crz772sx.js → index-rqxwv4q5.js} +1 -1
  62. package/dist/cli/{index-ntr6263n.js → index-rvn7wbj9.js} +2 -2
  63. package/dist/cli/{index-necqa5bj.js → index-t7qgt5yk.js} +2 -2
  64. package/dist/cli/{index-gc0aeth5.js → index-tdpfecs3.js} +2 -2
  65. package/dist/cli/{index-ghckhk16.js → index-v30zmakk.js} +2 -2
  66. package/dist/cli/{index-1x9ybm51.js → index-vhcgtmpg.js} +11 -11
  67. package/dist/cli/{index-tbm7q03h.js → index-wemkaxc2.js} +17 -10
  68. package/dist/cli/{index-app2rmxv.js → index-wrn4khfb.js} +1 -1
  69. package/dist/cli/{index-kphy4we7.js → index-xez06sc1.js} +1 -1
  70. package/dist/cli/{index-j8t1g5qd.js → index-xt4q610f.js} +1 -1
  71. package/dist/cli/{index-ry5g9s8d.js → index-yk1vnpzx.js} +1 -1
  72. package/dist/cli/{index-65n2ccy2.js → index-z127nfqd.js} +4 -4
  73. package/dist/cli/index.js +44 -44
  74. package/dist/cli/{knowledge-escalator-pad570yc.js → knowledge-escalator-rjcg7k03.js} +14 -14
  75. package/dist/cli/{knowledge-events-gx3x4wfs.js → knowledge-events-rnf6kgdn.js} +12 -12
  76. package/dist/cli/{knowledge-link-8bn2b7vr.js → knowledge-link-5qt3pe5v.js} +5 -5
  77. package/dist/cli/{knowledge-store-me6bx879.js → knowledge-store-gm8j7krw.js} +6 -6
  78. package/dist/cli/{knowledge-validator-qykag9de.js → knowledge-validator-98456296.js} +8 -8
  79. package/dist/cli/{mcp-bn8qx2m6.js → mcp-ngs269rj.js} +1 -1
  80. package/dist/cli/{model-preflight-5pjf9jd2.js → model-preflight-g7yhtdrp.js} +43 -43
  81. package/dist/cli/{pending-delegations-5w5f18wt.js → pending-delegations-dv9j31c3.js} +12 -12
  82. package/dist/cli/{pr-subscriptions-psecfgcz.js → pr-subscriptions-ya88xjph.js} +12 -12
  83. package/dist/cli/{pr-workflow-gate-g8q09z1c.js → pr-workflow-gate-wzatxzej.js} +45 -43
  84. package/dist/cli/{runner-rt2smh14.js → runner-rwya5yhg.js} +6 -6
  85. package/dist/cli/{scan-cursor-w0w1axgk.js → scan-cursor-aygzmf34.js} +7 -7
  86. package/dist/cli/{schema-yav9fk87.js → schema-eppnz9vx.js} +5 -1
  87. package/dist/cli/{scope-persistence-4wakfabk.js → scope-persistence-v5bs3jqt.js} +15 -15
  88. package/dist/cli/{server-y8c23gcg.js → server-t5vtzm9e.js} +43 -43
  89. package/dist/cli/{skill-generator-ddrq8e52.js → skill-generator-mvm55q78.js} +16 -16
  90. package/dist/cli/{snapshot-coordination-init-ckz8tz0b.js → snapshot-coordination-init-ne7q5x7q.js} +43 -43
  91. package/dist/cli/{speckit-checkoff-789etrtx.js → speckit-checkoff-pctc95h1.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-yv7y35wq.js → worktree-collision-ownership-cgvdsx3n.js} +13 -13
  95. package/dist/cli/{worktree-isolation-5tebr6z1.js → worktree-isolation-afq0jh6n.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/pr-workflow-gate.d.ts +9 -0
  99. package/dist/index.js +52 -40
  100. package/dist/pr-review/legacy-transcript-adapter.d.ts +18 -0
  101. package/dist/sandbox/capability-probe.d.ts +1 -1
  102. package/dist/sdd/effective-spec.d.ts +48 -5
  103. package/dist/tools/dispatch-lanes.d.ts +18 -0
  104. package/opencode-swarm.schema.json +14 -0
  105. package/package.json +1 -1
  106. package/dist/cli/curator-llm-factory-k4f4c61r.js +0 -82
  107. package/dist/cli/guardrail-explain-vv4c5b39.js +0 -83
@@ -8,14 +8,14 @@ import {
8
8
  protectedRoots,
9
9
  redactDecisionLineForArchive,
10
10
  stableCanonicalStringify
11
- } from "./index-nhz85frs.js";
11
+ } from "./index-jj9kzye7.js";
12
12
  import {
13
13
  detectStraySwarmDirs,
14
14
  readDoctorArtifact,
15
15
  removeStraySwarmDir,
16
16
  resolvePlanParallelizationFlag,
17
17
  runConfigDoctor
18
- } from "./index-n06vxt1k.js";
18
+ } from "./index-hh0at0tt.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-xa7ak8ss.js";
30
+ } from "./index-006b796n.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-5fzc5krd.js";
92
+ } from "./index-pn6xqhp2.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-fz45trs6.js";
111
+ } from "./index-c4fkfbfz.js";
112
112
  import {
113
113
  assertNoUnsettledCoderDispatch,
114
114
  listCoderSettlementWalStates,
115
115
  recoverCoderSettlement,
116
116
  recoverStaleCoderSettlements
117
- } from "./index-23kb8srf.js";
117
+ } from "./index-rj4a1206.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-6ayj4y71.js";
140
+ } from "./index-9fdddqtn.js";
141
141
  import {
142
142
  buildEscalationBriefing,
143
143
  readRecentEscalations
144
- } from "./index-mk15vyfe.js";
144
+ } from "./index-gyz3kvvm.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-xq0w60za.js";
228
+ } from "./index-qnkk509y.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-1x9ybm51.js";
260
+ } from "./index-vhcgtmpg.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-ptxtqhwv.js";
277
+ } from "./index-9628q121.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-65n2ccy2.js";
309
+ } from "./index-z127nfqd.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-e21b8sjj.js";
318
+ } from "./index-rjcxke49.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-tbm7q03h.js";
361
+ } from "./index-wemkaxc2.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-h5g0nyy8.js";
373
+ } from "./index-kpngvt4q.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-2vtr85p8.js";
386
+ } from "./index-fd105270.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-sx4brx0w.js";
417
+ } from "./index-r5f6q2v4.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-q267bpej.js";
428
+ } from "./index-730ajx2g.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-z7zk3enh.js";
440
+ } from "./index-q9zg0ckd.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-gw7nkn2q.js";
457
+ } from "./index-ndvnxxbm.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-n0ghdmvx.js";
546
+ } from "./index-0caf038s.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-afrdvad3.js";
631
+ } from "./index-pkdyys9n.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-pnbcknzr.js";
664
+ } from "./index-fv6eab1b.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-g8q09z1c.js")).readPrWorkflowGateStateForRecovery(directory, sessionID))?.state ?? null : await readPrWorkflowGateStateFileFromDisk(filePath, sessionID);
3466
+ const legacy = allowSalvagedImport ? (await (await import("./pr-workflow-gate-wzatxzej.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-g8q09z1c.js");
3600
+ const { readPrWorkflowGateStateForRecovery } = await import("./pr-workflow-gate-wzatxzej.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-yv7y35wq.js");
11393
+ const collisionOwnership = await import("./worktree-collision-ownership-cgvdsx3n.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-czytse6q.js");
11821
+ const { writeLaneProfileToDiskReal } = await import("./core-sqqs0k1q.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-czytse6q.js");
12815
+ const { removeLaneProfileFromDiskReal } = await import("./core-sqqs0k1q.js");
12795
12816
  await removeLaneProfileFromDiskReal(dispatch.handle.worktreePath, dispatch.laneIndex);
12796
12817
  } catch {}
12797
12818
  const state = serializationStateBySessionID.get(dispatch.parentSessionID);
@@ -29224,7 +29245,7 @@ function clearCriticalShownIds(sessionID) {
29224
29245
  async function rehydratePrSubscriptions(sessionID, directory) {
29225
29246
  const map = new Map;
29226
29247
  try {
29227
- const { listActive: listActive2 } = await import("./pr-subscriptions-psecfgcz.js");
29248
+ const { listActive: listActive2 } = await import("./pr-subscriptions-ya88xjph.js");
29228
29249
  const records = await listActive2(directory);
29229
29250
  for (const record of records) {
29230
29251
  if (record.sessionID !== sessionID)
@@ -36804,6 +36825,16 @@ async function derivePrReviewOrderUnstableItems(directory, sessionID) {
36804
36825
  return [...new Set(stamped)].sort();
36805
36826
  return [...composition.claims.entries()].filter(([, claim]) => claim.orderAgreement === "disagree").map(([itemId]) => itemId).sort();
36806
36827
  }
36828
+ async function derivePrReviewReviewerSeverities(directory, sessionID) {
36829
+ const state = await requireBoundState2(directory, sessionID, "PR_REVIEW");
36830
+ const ctx = await createPrReviewGateContext2(directory, state);
36831
+ const composition = composePrReviewPhaseVerdicts(directory, state, "reviewer", ctx);
36832
+ const severities = new Map;
36833
+ for (const [itemId, claim] of composition.claims) {
36834
+ severities.set(itemId, claim.severity);
36835
+ }
36836
+ return severities;
36837
+ }
36807
36838
  async function readAuthoritativePrReviewOrderAgreement(directory, sessionID) {
36808
36839
  const state = await requireBoundState2(directory, sessionID, "PR_REVIEW");
36809
36840
  const ctx = await createPrReviewGateContext2(directory, state);
@@ -46250,9 +46281,9 @@ function hashContent(content) {
46250
46281
  return createHash29("sha1").update(content).digest("hex");
46251
46282
  }
46252
46283
  async function loadConfigForPolicyCurator(directory) {
46253
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-yav9fk87.js");
46284
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-eppnz9vx.js");
46254
46285
  try {
46255
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zh1dmz46.js");
46286
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-a71vh07f.js");
46256
46287
  const { config: loadedConfig } = loadPluginConfigWithMeta2(directory);
46257
46288
  return KnowledgeConfigSchema2.parse(loadedConfig.knowledge ?? {});
46258
46289
  } catch {
@@ -49310,7 +49341,7 @@ async function resolveCuratorLLMDelegate(directory, mode, sessionId) {
49310
49341
  const seam = _internals50.createCuratorLLMDelegate;
49311
49342
  if (seam)
49312
49343
  return seam(directory, mode, sessionId);
49313
- const { createCuratorLLMDelegate } = await import("./curator-llm-factory-k4f4c61r.js");
49344
+ const { createCuratorLLMDelegate } = await import("./curator-llm-factory-54v33gz2.js");
49314
49345
  return createCuratorLLMDelegate(directory, mode, sessionId);
49315
49346
  }
49316
49347
  async function reconcileCloseTerminalStateForPlan(directory, targetPlan, options) {
@@ -49705,7 +49736,7 @@ async function runFinalizeStage(ctx) {
49705
49736
  }
49706
49737
  }
49707
49738
  try {
49708
- const { CuratorConfigSchema: CCS } = await import("./schema-yav9fk87.js");
49739
+ const { CuratorConfigSchema: CCS } = await import("./schema-eppnz9vx.js");
49709
49740
  const { config: pmLoadedConfig } = _internals50.loadPluginConfigWithMeta(ctx.directory);
49710
49741
  const curatorCfg = CCS.parse(pmLoadedConfig.curator ?? {});
49711
49742
  if (curatorCfg.enabled && curatorCfg.postmortem_enabled) {
@@ -53738,7 +53769,7 @@ function serializeAgentSession(s) {
53738
53769
  }
53739
53770
  async function writeSnapshot(directory, state) {
53740
53771
  try {
53741
- const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-ckz8tz0b.js");
53772
+ const { ensureSnapshotCoordinationReady } = await import("./snapshot-coordination-init-ne7q5x7q.js");
53742
53773
  await ensureSnapshotCoordinationReady(directory);
53743
53774
  const snapshot = {
53744
53775
  version: 3,
@@ -56794,7 +56825,7 @@ function planMerges(active, threshold, maxComparisons, maxMerges) {
56794
56825
  };
56795
56826
  }
56796
56827
  async function sweepActiveNearDuplicates(directory, options = {}) {
56797
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zh1dmz46.js");
56828
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-a71vh07f.js");
56798
56829
  const { config } = loadPluginConfigWithMeta2(directory);
56799
56830
  const sweepConfig = config.learning?.dedup_sweep;
56800
56831
  if (sweepConfig?.enabled === false)
@@ -57918,7 +57949,7 @@ async function runCuratorPhase(directory, phase, agentsDispatched, config, knowl
57918
57949
  }
57919
57950
  if (config.skill_generation_enabled === true && skillCandidates.length > 0) {
57920
57951
  try {
57921
- const skillModule = await import("./skill-generator-ddrq8e52.js");
57952
+ const skillModule = await import("./skill-generator-mvm55q78.js");
57922
57953
  for (const cand of skillCandidates) {
57923
57954
  if (cand.confidence < (config.min_skill_confidence ?? DEFAULT_SKILL_MIN_CONFIDENCE)) {
57924
57955
  continue;
@@ -58390,7 +58421,7 @@ async function applyCuratorKnowledgeUpdates(directory, recommendations, knowledg
58390
58421
  } catch {}
58391
58422
  }
58392
58423
  if (contradictedEntries.length > 0 && knowledgeConfig.contradiction_threshold_action === "quarantine") {
58393
- const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-pad570yc.js");
58424
+ const { maybeQuarantineOnContradiction } = await import("./knowledge-escalator-rjcg7k03.js");
58394
58425
  for (const { id } of contradictedEntries) {
58395
58426
  try {
58396
58427
  await maybeQuarantineOnContradiction(directory, id, knowledgeConfig.contradiction_quarantine_threshold, knowledgeConfig.contradiction_quarantine_window_days);
@@ -59222,7 +59253,7 @@ async function runCuratorPostMortem(directory, options = {}) {
59222
59253
  warnings.push("Failed to collect knowledge summary.");
59223
59254
  }
59224
59255
  try {
59225
- const { getScanStatus } = await import("./scan-cursor-w0w1axgk.js");
59256
+ const { getScanStatus } = await import("./scan-cursor-aygzmf34.js");
59226
59257
  const scanStatus = await getScanStatus(directory);
59227
59258
  if (scanStatus.remaining_estimate > 0) {
59228
59259
  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 +59425,9 @@ var _internals72 = {
59394
59425
  verifyPostMortemKnowledgeActions,
59395
59426
  repairPostMortemActions,
59396
59427
  loadDefaultKnowledgeConfig: async (directory) => {
59397
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-yav9fk87.js");
59428
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-eppnz9vx.js");
59398
59429
  try {
59399
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zh1dmz46.js");
59430
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-a71vh07f.js");
59400
59431
  const loaded = loadPluginConfigWithMeta2(directory);
59401
59432
  return KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
59402
59433
  } catch {
@@ -59404,11 +59435,11 @@ var _internals72 = {
59404
59435
  }
59405
59436
  },
59406
59437
  applyCuratorKnowledgeUpdates: async (directory, recommendations, knowledgeConfig, generation) => {
59407
- const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-0wa5gjc8.js");
59438
+ const { applyCuratorKnowledgeUpdates: applyCuratorKnowledgeUpdates2 } = await import("./curator-dm4nm95q.js");
59408
59439
  return applyCuratorKnowledgeUpdates2(directory, recommendations, knowledgeConfig, generation);
59409
59440
  },
59410
59441
  checkHivePromotions: async (entries2, knowledgeConfig, directory) => {
59411
- const { checkHivePromotions } = await import("./hive-promoter-g2sngbc0.js");
59442
+ const { checkHivePromotions } = await import("./hive-promoter-swgaebae.js");
59412
59443
  return checkHivePromotions(entries2, knowledgeConfig, directory);
59413
59444
  },
59414
59445
  applyProposalTriage: async (directory, triage) => {
@@ -59417,7 +59448,7 @@ var _internals72 = {
59417
59448
  activateProposal,
59418
59449
  listSkills: listSkills2,
59419
59450
  sanitizeSlug
59420
- } = await import("./skill-generator-ddrq8e52.js");
59451
+ } = await import("./skill-generator-mvm55q78.js");
59421
59452
  const result = {
59422
59453
  approved: [],
59423
59454
  rejected: [],
@@ -59459,7 +59490,7 @@ var _internals72 = {
59459
59490
  return result;
59460
59491
  },
59461
59492
  readPriorDriftReports: async (directory) => {
59462
- const { readPriorDriftReports: readPriorDriftReports2 } = await import("./curator-drift-vf2egpr8.js");
59493
+ const { readPriorDriftReports: readPriorDriftReports2 } = await import("./curator-drift-0502msxm.js");
59463
59494
  return readPriorDriftReports2(directory);
59464
59495
  },
59465
59496
  readSwarmKnowledge: (directory) => readKnowledge(resolveSwarmKnowledgePath(directory))
@@ -67903,7 +67934,7 @@ function wireCloseInternals() {
67903
67934
  archiveEvidence,
67904
67935
  endAgentSession,
67905
67936
  flushAndDrainTelemetry: async () => {
67906
- const { flushAndDrainTelemetry } = await import("./telemetry-vapc5q4p.js");
67937
+ const { flushAndDrainTelemetry } = await import("./telemetry-t3425cht.js");
67907
67938
  return flushAndDrainTelemetry();
67908
67939
  },
67909
67940
  finalizeContextTelemetry,
@@ -69729,9 +69760,9 @@ var _internals80 = {
69729
69760
  loadPluginConfigWithMeta,
69730
69761
  loadCuratorDeps: async () => {
69731
69762
  const [{ CuratorConfigSchema }, curator, { createCuratorLLMDelegate }] = await Promise.all([
69732
- import("./schema-yav9fk87.js"),
69733
- import("./curator-0wa5gjc8.js"),
69734
- import("./curator-llm-factory-k4f4c61r.js")
69763
+ import("./schema-eppnz9vx.js"),
69764
+ import("./curator-dm4nm95q.js"),
69765
+ import("./curator-llm-factory-54v33gz2.js")
69735
69766
  ]);
69736
69767
  return { CuratorConfigSchema, curator, createCuratorLLMDelegate };
69737
69768
  }
@@ -72181,7 +72212,7 @@ async function computeCurationDiagnostics(directory, entries2) {
72181
72212
  let scanCompleted = false;
72182
72213
  let scanRemaining = 0;
72183
72214
  try {
72184
- const { getScanStatus } = await import("./scan-cursor-w0w1axgk.js");
72215
+ const { getScanStatus } = await import("./scan-cursor-aygzmf34.js");
72185
72216
  const status = await getScanStatus(directory);
72186
72217
  scanGeneration = status.generation;
72187
72218
  scanCompleted = status.completed;
@@ -72189,19 +72220,19 @@ async function computeCurationDiagnostics(directory, entries2) {
72189
72220
  } catch {}
72190
72221
  let configMatch = null;
72191
72222
  try {
72192
- const { isLinked: isLinked2 } = await import("./knowledge-link-8bn2b7vr.js");
72223
+ const { isLinked: isLinked2 } = await import("./knowledge-link-5qt3pe5v.js");
72193
72224
  if (isLinked2(directory)) {
72194
- const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-yav9fk87.js");
72225
+ const { KnowledgeConfigSchema: KnowledgeConfigSchema2 } = await import("./schema-eppnz9vx.js");
72195
72226
  let config;
72196
72227
  try {
72197
- const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-zh1dmz46.js");
72228
+ const { loadPluginConfigWithMeta: loadPluginConfigWithMeta2 } = await import("./index-a71vh07f.js");
72198
72229
  const loaded = loadPluginConfigWithMeta2(directory);
72199
72230
  config = KnowledgeConfigSchema2.parse(loaded.config.knowledge ?? {});
72200
72231
  } catch {
72201
72232
  config = KnowledgeConfigSchema2.parse({});
72202
72233
  }
72203
72234
  const { cohortConfigFingerprint: cohortConfigFingerprint2 } = await import("./config-fingerprint-v22xh5a2.js");
72204
- const { buildConfigFingerprintInput: buildConfigFingerprintInput2, readCohortConfigFingerprint } = await import("./curation-policy-5hm6328s.js");
72235
+ const { buildConfigFingerprintInput: buildConfigFingerprintInput2, readCohortConfigFingerprint } = await import("./curation-policy-m8ng2vm5.js");
72205
72236
  const currentFp = cohortConfigFingerprint2(buildConfigFingerprintInput2(config));
72206
72237
  const cohortFp = await readCohortConfigFingerprint(directory);
72207
72238
  configMatch = cohortFp === null ? null : currentFp === cohortFp;
@@ -73650,7 +73681,7 @@ async function handleDoctorCommand(directory, args) {
73650
73681
  const result = runConfigDoctor(config, directory, planParallelizationEnabled);
73651
73682
  let output;
73652
73683
  if (enableAutoFix && result.hasAutoFixableIssues) {
73653
- const { runConfigDoctorWithFixes } = await import("./config-doctor-vcjcdf3f.js");
73684
+ const { runConfigDoctorWithFixes } = await import("./config-doctor-06jwks34.js");
73654
73685
  const fixResult = await runConfigDoctorWithFixes(directory, config, true, {
73655
73686
  applyLossy: true
73656
73687
  });
@@ -73688,7 +73719,7 @@ async function handleDoctorCommand(directory, args) {
73688
73719
  `;
73689
73720
  }
73690
73721
  try {
73691
- const { runModelPreflight } = await import("./model-preflight-5pjf9jd2.js");
73722
+ const { runModelPreflight } = await import("./model-preflight-g7yhtdrp.js");
73692
73723
  const preflight = await runModelPreflight(config, swarmState.opencodeClient, { generatedAgentNames: swarmState.generatedAgentNames });
73693
73724
  const missingSelection = preflight.resolutions.filter((resolution) => resolution.status === "missing-selection");
73694
73725
  const unresolved = preflight.catalogAvailable ? preflight.resolutions.filter((resolution) => resolution.status === "unresolved") : [];
@@ -73722,7 +73753,7 @@ async function handleDoctorCommand(directory, args) {
73722
73753
  }
73723
73754
  } catch {}
73724
73755
  try {
73725
- const { renderKnowledgeReceiptPhaseIdSection } = await import("./doctor-knowledge-receipt-phase-id-tkjsgcp6.js");
73756
+ const { renderKnowledgeReceiptPhaseIdSection } = await import("./doctor-knowledge-receipt-phase-id-zm56sg6v.js");
73726
73757
  output += await renderKnowledgeReceiptPhaseIdSection(directory, enableAutoFix);
73727
73758
  } catch {}
73728
73759
  const strayDirs = detectStraySwarmDirs(directory);
@@ -75739,7 +75770,7 @@ async function handleEvidenceCommand(directory, args) {
75739
75770
  return formatTaskEvidenceMarkdown(evidenceData);
75740
75771
  }
75741
75772
  async function handleEvidenceSummaryCommand(directory) {
75742
- const { buildEvidenceSummary } = await import("./evidence-summary-service-p9wx1m45.js");
75773
+ const { buildEvidenceSummary } = await import("./evidence-summary-service-ejmywz5a.js");
75743
75774
  const artifact = await buildEvidenceSummary(directory);
75744
75775
  if (!artifact) {
75745
75776
  return "No plan found. Run `/swarm plan` to check plan status.";
@@ -75991,9 +76022,12 @@ ANALYZE RULES:
75991
76022
  - Report the highest-severity findings first within each section.
75992
76023
  - If both spec.md and plan.md are present but empty, report CLEAN with a note that both files are empty.
75993
76024
  `;
76025
+ 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
76026
  var PLAN_CRITIC_PROMPT = `${PLAN_CRITIC_PROMPT_BASE}
75995
76027
 
75996
- ${GRAPH_FIRST_CRITIC_GUIDANCE}`;
76028
+ ${GRAPH_FIRST_CRITIC_GUIDANCE}
76029
+
76030
+ ${PR_REVIEW_LANE_OVERRIDE}`;
75997
76031
  var SOUNDING_BOARD_PROMPT_BASE = `## PRESSURE IMMUNITY
75998
76032
 
75999
76033
  You have unlimited time. There is no attempt limit. There is no deadline.
@@ -100205,7 +100239,7 @@ function createCuratorLLMDelegate(directory, mode = "init", sessionId) {
100205
100239
  }
100206
100240
  const sdkOpts = signal ? { signal } : {};
100207
100241
  try {
100208
- const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-xg9t03dg.js");
100242
+ const { getSwarmAgents: getSwarmAgents2, resolveFallbackModel: resolveFallbackModel2 } = await import("./index-f0hpw2f8.js");
100209
100243
  const createResult = await client.session.create({
100210
100244
  ...sessionId ? {
100211
100245
  body: {
@@ -102303,7 +102337,7 @@ async function cancelPrFeedbackLoopUnlocked(directory, sessionID, reason) {
102303
102337
  clearedEvents: []
102304
102338
  };
102305
102339
  try {
102306
- const { cancelPrFeedbackPublication: cancelPrFeedbackPublication2 } = await import("./pr-workflow-gate-g8q09z1c.js");
102340
+ const { cancelPrFeedbackPublication: cancelPrFeedbackPublication2 } = await import("./pr-workflow-gate-wzatxzej.js");
102307
102341
  await cancelPrFeedbackPublication2(directory, sessionID, reason);
102308
102342
  } catch (err) {
102309
102343
  warn(`[pr-feedback-loop] cancelPrFeedbackPublication failed (fail-open): ${err instanceof Error ? err.message : String(err)}`);
@@ -114765,6 +114799,9 @@ var USAGE17 = `Usage:
114765
114799
 
114766
114800
  Source options (required when both openspec and speckit are detected):
114767
114801
  --source <swarm|openspec|speckit> select the SDD provider explicitly
114802
+ (overrides SWARM_SDD_SOURCE and sdd.source)
114803
+ SWARM_SDD_SOURCE=<provider> environment variable; selects the provider when no --source
114804
+ sdd.source in .opencode/opencode-swarm.json declarative provider (see docs/configuration.md)
114768
114805
  --feature <id> Spec-Kit feature directory name to project (one feature)
114769
114806
  --feature all project ALL detected Spec-Kit features (project only;
114770
114807
  the no-flag default with multiple features does the same)
@@ -114780,7 +114817,7 @@ Spec-Kit SDD support:
114780
114817
  when multiple features exist; --feature <id> selects one (bare FR-### ids, v1 form)
114781
114818
  - optional tasks.md check-off write-back on task completion: enable speckit_checkoff.enabled
114782
114819
  in the plugin config (off by default; see docs/planning.md)
114783
- - use --source speckit or --source openspec to disambiguate when both are present`;
114820
+ - use --source speckit or --source openspec (or SWARM_SDD_SOURCE / sdd.source) to disambiguate when both are present`;
114784
114821
  function allowedMutationsFor(source) {
114785
114822
  return source === "swarm" ? ["create", "refine", "archive"] : ["none (read-only input; refine in the source tool)"];
114786
114823
  }
@@ -114843,6 +114880,15 @@ function parseArgs11(args) {
114843
114880
  }
114844
114881
  return parsed;
114845
114882
  }
114883
+ function resolveCommandSource(directory, parsed) {
114884
+ const selection = parsed.source ? undefined : resolveSddSourceSelection(directory);
114885
+ return { source: parsed.source ?? selection?.source, selection };
114886
+ }
114887
+ function featureSourceError(selection) {
114888
+ return `Error: --feature is only valid with --source speckit${selection ? ` (the selected source is ${selection.label})` : ""}
114889
+
114890
+ ${USAGE17}`;
114891
+ }
114846
114892
  function formatList(items) {
114847
114893
  return items.length > 0 ? items.map((item) => `- ${item}`).join(`
114848
114894
  `) : "- none";
@@ -114873,31 +114919,39 @@ async function handleSddStatusCommand(directory, args) {
114873
114919
  return `Error: ${parsed.error}
114874
114920
 
114875
114921
  ${USAGE17}`;
114876
- if (parsed.feature && parsed.source && parsed.source !== "speckit") {
114877
- return `Error: --feature is only valid with --source speckit
114878
-
114879
- ${USAGE17}`;
114922
+ const { source, selection } = resolveCommandSource(directory, parsed);
114923
+ if (parsed.feature && source && source !== "speckit") {
114924
+ return featureSourceError(selection);
114880
114925
  }
114881
114926
  const speckitDetection = detectSpeckit(directory);
114882
114927
  const speckitPresent = speckitDetection.features.length > 0;
114883
114928
  const nativeSpecExists = fs85.existsSync(path152.join(directory, SWARM_SPEC_REL));
114884
- if (speckitPresent && !parsed.source && !nativeSpecExists) {
114929
+ if (speckitPresent && !source && !nativeSpecExists) {
114885
114930
  const openspecProjection = buildOpenSpecProjectionSync(directory);
114886
114931
  if (openspecProjection !== null) {
114887
114932
  const errLines = [
114888
114933
  "Error: Multiple SDD sources detected (openspec, speckit).",
114889
- "Pass --source openspec or --source speckit to select a provider."
114934
+ "Pass --source openspec or --source speckit (or set SWARM_SDD_SOURCE / sdd.source) to select a provider."
114890
114935
  ];
114891
114936
  return parsed.json ? JSON.stringify({ error: errLines.join(" "), sources: ["openspec", "speckit"] }, null, 2) : errLines.join(`
114892
114937
  `);
114893
114938
  }
114894
114939
  }
114895
114940
  const status = loadSddStatusSync(directory, {
114896
- source: parsed.source,
114941
+ source,
114897
114942
  feature: parsed.feature
114898
114943
  });
114899
114944
  if (parsed.json) {
114900
- return JSON.stringify({ ...status, speckit: speckitDetection }, null, 2);
114945
+ return JSON.stringify({
114946
+ ...status,
114947
+ speckit: speckitDetection,
114948
+ ...selection ? {
114949
+ sourceSelection: {
114950
+ source: selection.source,
114951
+ via: selection.label
114952
+ }
114953
+ } : {}
114954
+ }, null, 2);
114901
114955
  }
114902
114956
  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
114957
  const speckitLines = [
@@ -114912,6 +114966,7 @@ ${speckitDetection.features.map((f) => `- ${f.featureId}`).join(`
114912
114966
  "## SDD Status",
114913
114967
  "",
114914
114968
  `Provider: ${status.provider}`,
114969
+ ...selection ? [`Source selection: ${selection.label}`] : [],
114915
114970
  `Swarm spec: ${status.swSpecExists ? "present" : "missing"}`,
114916
114971
  `OpenSpec root: ${status.openSpecExists ? "present" : "missing"}`,
114917
114972
  `Current OpenSpec specs: ${status.currentSpecs.length}`,
@@ -114945,23 +115000,22 @@ async function handleSddValidateCommand(directory, args) {
114945
115000
  return `Error: ${parsed.error}
114946
115001
 
114947
115002
  ${USAGE17}`;
114948
- if (parsed.feature && parsed.source && parsed.source !== "speckit") {
114949
- return `Error: --feature is only valid with --source speckit
114950
-
114951
- ${USAGE17}`;
115003
+ const { source, selection } = resolveCommandSource(directory, parsed);
115004
+ if (parsed.feature && source && source !== "speckit") {
115005
+ return featureSourceError(selection);
114952
115006
  }
114953
115007
  let useSpeckit = false;
114954
115008
  const nativeSpecExists = fs85.existsSync(path152.join(directory, SWARM_SPEC_REL));
114955
- if (parsed.source === "speckit") {
115009
+ if (source === "speckit") {
114956
115010
  useSpeckit = true;
114957
- } else if (!parsed.source && !nativeSpecExists) {
115011
+ } else if (!source && !nativeSpecExists) {
114958
115012
  const speckitDetection = detectSpeckit(directory);
114959
115013
  if (speckitDetection.features.length > 0) {
114960
115014
  const openspecProjection = buildOpenSpecProjectionSync(directory);
114961
115015
  if (openspecProjection !== null) {
114962
115016
  const errLines = [
114963
115017
  "Error: Multiple SDD sources detected (openspec, speckit).",
114964
- "Pass --source openspec or --source speckit to select a provider."
115018
+ "Pass --source openspec or --source speckit (or set SWARM_SDD_SOURCE / sdd.source) to select a provider."
114965
115019
  ];
114966
115020
  return parsed.json ? JSON.stringify({
114967
115021
  valid: false,
@@ -115015,7 +115069,7 @@ ${formatList(result2.warnings)}` : ""
115015
115069
  ].join(`
115016
115070
  `);
115017
115071
  }
115018
- if (parsed.source === "swarm") {
115072
+ if (source === "swarm") {
115019
115073
  const status2 = loadSddStatusSync(directory, {
115020
115074
  source: "swarm",
115021
115075
  feature: parsed.feature
@@ -115050,7 +115104,7 @@ ${formatList(result2.warnings)}` : ""
115050
115104
  `);
115051
115105
  }
115052
115106
  const status = loadSddStatusSync(directory, {
115053
- source: parsed.source,
115107
+ source,
115054
115108
  feature: parsed.feature
115055
115109
  });
115056
115110
  const projection = buildOpenSpecProjectionSync(directory, {
@@ -115094,13 +115148,12 @@ async function handleSddProjectCommand(directory, args) {
115094
115148
  return `Error: ${parsed.error}
115095
115149
 
115096
115150
  ${USAGE17}`;
115097
- if (parsed.feature && parsed.source && parsed.source !== "speckit") {
115098
- return `Error: --feature is only valid with --source speckit
115099
-
115100
- ${USAGE17}`;
115151
+ const { source, selection } = resolveCommandSource(directory, parsed);
115152
+ if (parsed.feature && source && source !== "speckit") {
115153
+ return featureSourceError(selection);
115101
115154
  }
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.
115155
+ if (source === "swarm") {
115156
+ 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
115157
 
115105
115158
  ${USAGE17}`;
115106
115159
  }
@@ -115119,16 +115172,16 @@ ${USAGE17}`;
115119
115172
  }
115120
115173
  }
115121
115174
  let useSpeckit = false;
115122
- if (parsed.source === "speckit") {
115175
+ if (source === "speckit") {
115123
115176
  useSpeckit = true;
115124
- } else if (!parsed.source) {
115177
+ } else if (!source) {
115125
115178
  const speckitDetection = detectSpeckit(directory);
115126
115179
  if (speckitDetection.features.length > 0) {
115127
115180
  const openspecProjection = buildOpenSpecProjectionSync(directory);
115128
115181
  if (openspecProjection !== null) {
115129
115182
  return [
115130
115183
  "Error: Multiple SDD sources detected (openspec, speckit).",
115131
- "Pass --source openspec or --source speckit to select a provider."
115184
+ "Pass --source openspec or --source speckit (or set SWARM_SDD_SOURCE / sdd.source) to select a provider."
115132
115185
  ].join(`
115133
115186
  `);
115134
115187
  }
@@ -116176,7 +116229,7 @@ async function runValidationWithTransientRetry(input, candidateContent, baseline
116176
116229
  if (!input.dispatcher) {
116177
116230
  throw new Error("no evaluation dispatcher available (cannot run validation)");
116178
116231
  }
116179
- const { createModelEvaluationExecutor: createModelEvaluationExecutor2 } = await import("./runner-rt2smh14.js");
116232
+ const { createModelEvaluationExecutor: createModelEvaluationExecutor2 } = await import("./runner-rwya5yhg.js");
116180
116233
  const executor = createModelEvaluationExecutor2(input.dispatcher, input.sessionId);
116181
116234
  const result = await withProtectedSetIntegrity([evalInputRoot, ...protectedRoots(input.directory)], () => _internals144.evaluateCandidateV1({
116182
116235
  projectRoot: input.directory,
@@ -118769,7 +118822,7 @@ function buildDetailedHelp(commandName, entry) {
118769
118822
  async function handleHelpCommand(ctx) {
118770
118823
  const targetCommand = ctx.args.join(" ");
118771
118824
  if (!targetCommand) {
118772
- const { buildHelpText } = await import("./index-15j2cze3.js");
118825
+ const { buildHelpText } = await import("./index-pfwhq6p5.js");
118773
118826
  return buildHelpText();
118774
118827
  }
118775
118828
  const tokens = targetCommand.split(/\s+/);
@@ -118783,7 +118836,7 @@ async function handleHelpCommand(ctx) {
118783
118836
  > Note: \`/swarm ${resolved.key}\` is a deprecated alias for \`/swarm ${aliasTarget}\`.` : detailed;
118784
118837
  }
118785
118838
  const similar = _internals39.findSimilarCommands(targetCommand);
118786
- const { buildHelpText: fullHelp } = await import("./index-15j2cze3.js");
118839
+ const { buildHelpText: fullHelp } = await import("./index-pfwhq6p5.js");
118787
118840
  if (similar.length > 0) {
118788
118841
  return `Command '/swarm ${targetCommand}' not found.
118789
118842
 
@@ -119111,7 +119164,7 @@ var COMMAND_REGISTRY = {
119111
119164
  },
119112
119165
  "guardrail explain": {
119113
119166
  handler: async (ctx) => {
119114
- const { handleGuardrailExplain } = await import("./guardrail-explain-vv4c5b39.js");
119167
+ const { handleGuardrailExplain } = await import("./guardrail-explain-0z5cyah2.js");
119115
119168
  return handleGuardrailExplain(ctx.directory, ctx.args);
119116
119169
  },
119117
119170
  description: "Dry-run: show what the guardrails would do to a command or write target (executes nothing)",
@@ -119121,7 +119174,7 @@ var COMMAND_REGISTRY = {
119121
119174
  },
119122
119175
  "guardrail reset": {
119123
119176
  handler: async (ctx) => {
119124
- const { handleGuardrailReset } = await import("./guardrail-reset-pbcfymhq.js");
119177
+ const { handleGuardrailReset } = await import("./guardrail-reset-4zrb40d3.js");
119125
119178
  return handleGuardrailReset(ctx.args, ctx.sessionID);
119126
119179
  },
119127
119180
  description: "Reset one exact active invocation/action circuit after repair",
@@ -119142,7 +119195,7 @@ var COMMAND_REGISTRY = {
119142
119195
  },
119143
119196
  "guardrail-log": {
119144
119197
  handler: async (ctx) => {
119145
- const { handleGuardrailLog } = await import("./guardrail-log-dtkzgxz8.js");
119198
+ const { handleGuardrailLog } = await import("./guardrail-log-yjbyf5sc.js");
119146
119199
  return handleGuardrailLog(ctx.directory, ctx.args);
119147
119200
  },
119148
119201
  description: "Read the guardrail decision log (use --blocks-only for blocks)",
@@ -123245,7 +123298,7 @@ Example (multi-task set-dispatch):
123245
123298
  [REVIEWED] | task-2.1 | APPROVED | No issues found in src/foo.ts
123246
123299
  [REVIEWED] | task-2.2 | REJECTED | Missing null check in bar() at line 42
123247
123300
 
123248
- Never omit this line. The task ID must match the TASK field exactly.
123301
+ 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
123302
 
123250
123303
  ## OUTPUT ORDER FOR SKILL COMPLIANCE (when applicable)
123251
123304
  When SKILLS_USED_BY_CODER is provided, output TASK: immediately followed by SKILL_COMPLIANCE to ensure proper attribution:
@@ -124466,4 +124519,4 @@ function getAgentConfigs(config, directory, sessionId, projectContext) {
124466
124519
  return result;
124467
124520
  }
124468
124521
 
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 };
124522
+ 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 };