opencode-swarm 7.198.2 → 7.199.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 (105) hide show
  1. package/.opencode/skills/swarm-pr-feedback/SKILL.md +6 -6
  2. package/.opencode/skills/swarm-pr-feedback/references/followup-dispositions.md +74 -0
  3. package/.opencode/skills/swarm-pr-review/references/lane-output-recoverability.md +25 -0
  4. package/binaries/win32-arm64/swarm-sandbox-runner.exe +0 -0
  5. package/binaries/win32-x64/swarm-sandbox-runner.exe +0 -0
  6. package/dist/background/pending-delegations.d.ts +1 -1
  7. package/dist/background/pr-review-contract.d.ts +10 -0
  8. package/dist/cli/{auto-checkpoint-ekp5j5v5.js → auto-checkpoint-x13d1g1t.js} +8 -8
  9. package/dist/cli/{checkpoint-30yrbqee.js → checkpoint-68nb8k3t.js} +16 -16
  10. package/dist/cli/{coder-settlement-t3zcgsd6.js → coder-settlement-kmdmdpyy.js} +12 -12
  11. package/dist/cli/{config-doctor-6w105xpy.js → config-doctor-4b0jb15n.js} +15 -15
  12. package/dist/cli/{core-6hyt1hg6.js → core-6kkm2vrz.js} +3 -3
  13. package/dist/cli/{curation-policy-m8ng2vm5.js → curation-policy-0smbd33w.js} +6 -6
  14. package/dist/cli/{curator-drift-z83e3a60.js → curator-drift-axcgdjy4.js} +8 -8
  15. package/dist/cli/curator-llm-factory-58ec737y.js +82 -0
  16. package/dist/cli/{curator-bzy7cess.js → curator-z8xzxh9f.js} +42 -42
  17. package/dist/cli/{doctor-knowledge-receipt-phase-id-8av1860z.js → doctor-knowledge-receipt-phase-id-hkjt6hv4.js} +8 -8
  18. package/dist/cli/{evidence-summary-service-ym7y7w5k.js → evidence-summary-service-981cx8wa.js} +19 -19
  19. package/dist/cli/{gate-evidence-vvhtzwry.js → gate-evidence-zyvwsp7a.js} +7 -7
  20. package/dist/cli/guardrail-explain-23b0amne.js +83 -0
  21. package/dist/cli/{guardrail-log-4f0jxq61.js → guardrail-log-s2gxszvm.js} +8 -7
  22. package/dist/cli/{guardrail-reset-cqq3yk9s.js → guardrail-reset-kt18vr45.js} +42 -42
  23. package/dist/cli/{hive-promoter-vvgdsx8s.js → hive-promoter-fz7ep8h4.js} +42 -42
  24. package/dist/cli/{index-rnjtf5kn.js → index-14vhp87b.js} +2 -2
  25. package/dist/cli/{index-yk1vnpzx.js → index-2bc7zfw3.js} +1 -1
  26. package/dist/cli/{index-d31b2zvf.js → index-2mx2gn97.js} +1 -1
  27. package/dist/cli/{index-5hbb3088.js → index-3zzxrwaf.js} +4 -4
  28. package/dist/cli/{index-bj916p5e.js → index-408tpd21.js} +261 -21
  29. package/dist/cli/{index-gc9dvmy7.js → index-4rrff8k6.js} +2 -2
  30. package/dist/cli/{index-89j5h1j9.js → index-4s6kdsfr.js} +1 -1
  31. package/dist/cli/{index-v85gn9jm.js → index-61fa8hg7.js} +5 -5
  32. package/dist/cli/{index-7e9mqse6.js → index-61m1jw7p.js} +3 -3
  33. package/dist/cli/{index-4s3770gs.js → index-6dtt0brw.js} +4 -4
  34. package/dist/cli/{index-whmby20t.js → index-795vmpe6.js} +42 -42
  35. package/dist/cli/{index-t7qgt5yk.js → index-7c432abn.js} +2 -2
  36. package/dist/cli/{index-xez06sc1.js → index-820pzqd6.js} +1 -1
  37. package/dist/cli/{index-mx74665q.js → index-8pyg2qnw.js} +4 -4
  38. package/dist/cli/{index-v30zmakk.js → index-9ztsfved.js} +2 -2
  39. package/dist/cli/{index-tnnxvq2f.js → index-bb2rx8k2.js} +6 -6
  40. package/dist/cli/{index-qg6qn99c.js → index-bkscmz4z.js} +7 -7
  41. package/dist/cli/{index-vjwmcxz4.js → index-f900029m.js} +7 -7
  42. package/dist/cli/{index-drf91t9h.js → index-fmbqyqqw.js} +5 -5
  43. package/dist/cli/{index-cfs1k1eh.js → index-ge7vn1vz.js} +5 -5
  44. package/dist/cli/{index-e4hj8r57.js → index-h349p91m.js} +34 -3
  45. package/dist/cli/{index-tdpfecs3.js → index-hc6wa3yg.js} +2 -2
  46. package/dist/cli/{index-76mg98ac.js → index-jccs3fgn.js} +1 -1
  47. package/dist/cli/{index-wg1mt92h.js → index-jhk4000q.js} +9 -8
  48. package/dist/cli/{index-xxb2depv.js → index-m4s5a2sp.js} +7 -7
  49. package/dist/cli/{index-y81sw9vt.js → index-mzx33w6e.js} +11 -11
  50. package/dist/cli/{index-9keabj7d.js → index-n9ry04hw.js} +4 -4
  51. package/dist/cli/{index-bczx8jcg.js → index-nacmcvc4.js} +5 -12
  52. package/dist/cli/{index-d9jrzepr.js → index-npy15m50.js} +3 -3
  53. package/dist/cli/{index-rqxwv4q5.js → index-nr1pj3hy.js} +1 -1
  54. package/dist/cli/{index-6pc5j9rb.js → index-nreezgrd.js} +3 -3
  55. package/dist/cli/{index-ehw0s6xa.js → index-p35gw2x7.js} +1 -1
  56. package/dist/cli/{index-xt4q610f.js → index-p5pgjp7n.js} +1 -1
  57. package/dist/cli/{index-166xny29.js → index-pf0xrx9w.js} +605 -172
  58. package/dist/cli/{index-59w9zfc5.js → index-px1dnna2.js} +5 -5
  59. package/dist/cli/{index-84r9rydf.js → index-pxdc0qn1.js} +2 -2
  60. package/dist/cli/{index-5h5tj8wc.js → index-qqv9rr8k.js} +44 -44
  61. package/dist/cli/{index-hd3d7rcw.js → index-r7ayh42s.js} +3 -3
  62. package/dist/cli/{index-rfcb9f54.js → index-t1t93qm0.js} +3 -2
  63. package/dist/cli/{index-xrghsqg3.js → index-vj0zede7.js} +4 -4
  64. package/dist/cli/{index-wrn4khfb.js → index-w00dj8p5.js} +1 -1
  65. package/dist/cli/{index-0ap067j7.js → index-w4624tpw.js} +2 -2
  66. package/dist/cli/{index-mjmsq8t7.js → index-w7d8gcj0.js} +2 -2
  67. package/dist/cli/{index-h86e4jp9.js → index-w9f2jbwe.js} +2 -2
  68. package/dist/cli/{index-bd4szzja.js → index-weewx5nx.js} +1 -1
  69. package/dist/cli/{index-0y5yvag6.js → index-xj9260dh.js} +6 -6
  70. package/dist/cli/{index-p4xmq6aa.js → index-ywb5er8g.js} +1 -1
  71. package/dist/cli/index.js +43 -43
  72. package/dist/cli/{knowledge-escalator-8hrnc4bd.js → knowledge-escalator-cf6m9y0s.js} +14 -14
  73. package/dist/cli/{knowledge-events-v2abqt9z.js → knowledge-events-hn5hymam.js} +12 -12
  74. package/dist/cli/{knowledge-link-5qt3pe5v.js → knowledge-link-1f91bzcc.js} +5 -5
  75. package/dist/cli/{knowledge-store-9y17zzce.js → knowledge-store-mgqk4hvy.js} +6 -6
  76. package/dist/cli/{knowledge-validator-7red2zwb.js → knowledge-validator-x9yrte9q.js} +8 -8
  77. package/dist/cli/{mcp-gbyndb15.js → mcp-hpmh4d6d.js} +1 -1
  78. package/dist/cli/{model-preflight-1tsaksc7.js → model-preflight-ry5jjnx4.js} +42 -42
  79. package/dist/cli/{pending-delegations-yg769m4y.js → pending-delegations-j850kj5p.js} +12 -12
  80. package/dist/cli/{pr-subscriptions-mc2mvjkj.js → pr-subscriptions-mme9gb5e.js} +12 -12
  81. package/dist/cli/{pr-workflow-gate-0fb280b2.js → pr-workflow-gate-n6bj3dnn.js} +46 -42
  82. package/dist/cli/{runner-rwya5yhg.js → runner-qe3fkzx5.js} +6 -6
  83. package/dist/cli/{scan-cursor-g74j6gcr.js → scan-cursor-fdpxbx4f.js} +7 -7
  84. package/dist/cli/{schema-q2v7px9y.js → schema-amcjvk8a.js} +1 -1
  85. package/dist/cli/{scope-persistence-g88f0163.js → scope-persistence-mp4kqpk2.js} +15 -15
  86. package/dist/cli/{server-j3a7q7gg.js → server-ptdvpwyd.js} +42 -42
  87. package/dist/cli/{skill-generator-30bjrvcc.js → skill-generator-v59hhybn.js} +16 -16
  88. package/dist/cli/{snapshot-coordination-init-9ekvft16.js → snapshot-coordination-init-nv6e4svp.js} +42 -42
  89. package/dist/cli/{speckit-checkoff-sx24fz29.js → speckit-checkoff-me8kd3wd.js} +4 -4
  90. package/dist/cli/{telemetry-t3425cht.js → telemetry-6yv06xyz.js} +1 -1
  91. package/dist/cli/{workspace-snapshot-bst64vey.js → workspace-snapshot-vhvrkbbb.js} +3 -3
  92. package/dist/cli/{worktree-collision-ownership-shtk6dsk.js → worktree-collision-ownership-84qyqars.js} +13 -13
  93. package/dist/cli/{worktree-isolation-x41cgd9n.js → worktree-isolation-99qvz8ap.js} +42 -42
  94. package/dist/config/schema.d.ts +2 -0
  95. package/dist/config/skill-contract-digest.d.ts +29 -4
  96. package/dist/hooks/guardrails/file-authority.d.ts +17 -0
  97. package/dist/hooks/pr-workflow-gate.d.ts +17 -0
  98. package/dist/hooks/skill-scoring.d.ts +40 -0
  99. package/dist/index.js +129 -120
  100. package/dist/pr-review/verdict-settlement.d.ts +40 -4
  101. package/dist/state.d.ts +49 -0
  102. package/opencode-swarm.schema.json +4 -0
  103. package/package.json +1 -1
  104. package/dist/cli/curator-llm-factory-ykpty14a.js +0 -82
  105. package/dist/cli/guardrail-explain-1ethgkvp.js +0 -83
@@ -1285,6 +1285,16 @@ interface EnforcePrReviewBaseDimensionsOptions {
1285
1285
  }
1286
1286
  export declare function enforcePrReviewBaseDimensions(directory: string, sessionID: string, lanes: readonly PrWorkflowLaneSpec[], options: EnforcePrReviewBaseDimensionsOptions): Promise<PrWorkflowGateState>;
1287
1287
  export declare function rollbackPrReviewBaseAdmissionIfUnlaunched(directory: string, sessionID: string, batchId: string, contractRetry?: boolean): Promise<boolean>;
1288
+ /**
1289
+ * Issue #3311 (ghost owners): remove a reviewer/critic validation batch whose
1290
+ * dispatch launched ZERO lanes. A recorded-but-unlaunched batch would leave
1291
+ * owner lanes with no delegation record, which N-of-M admission correctly
1292
+ * treats as blocking (the #3101 silence constraint) — but the batch should
1293
+ * never have been recorded. Mirrors `rollbackPrReviewBaseAdmissionIfUnlaunched`
1294
+ * (fail-closed on an unreadable store: the rollback must PROVE the batch has
1295
+ * no delegation records before removing the validation batch).
1296
+ */
1297
+ export declare function rollbackPrReviewValidationBatchIfUnlaunched(directory: string, sessionID: string, batchId: string): Promise<boolean>;
1288
1298
  declare function minimumConsolidatedLaneCover(sets: ReadonlyArray<readonly string[]>): number;
1289
1299
  /**
1290
1300
  * Issue #2385: the coverage-disclosure admission/settlement state machine now
@@ -2394,6 +2404,13 @@ interface CandidateArtifactParseResult {
2394
2404
  declare function resolvePrReviewRowFamily(workflowLane: string | undefined, mode?: string): RowFormatFamily;
2395
2405
  declare function parseCanonicalCandidateRows(text: string, fallbackFamily: RowFormatFamily): CandidateArtifactParseResult;
2396
2406
  declare function extractCandidateIds(text: string, fallbackFamily: RowFormatFamily, scopeToLanes?: readonly string[]): string[];
2407
+ /**
2408
+ * Issue #3311: exported wrapper so the `pr_workflow_status` projection derives
2409
+ * per-item verdict attempt counts over EXACTLY the window the N-of-M admission
2410
+ * reads (the post-latest-council reviewer slice included), instead of
2411
+ * hand-rolling a filter that can drift from settlement semantics.
2412
+ */
2413
+ export declare function prReviewPhaseWindowForStatus(state: PrWorkflowGateState, phase: PrReviewComposablePhase): PrReviewValidationBatchRecord[];
2397
2414
  /**
2398
2415
  * Issue #3101: the per-item disclosure rows of admitted N-of-M verdict
2399
2416
  * settlements (both phases, effective sets), for additive tool-response echoes.
@@ -87,6 +87,46 @@ export declare const _internals: {
87
87
  * E.g. `.claude/skills/writing-tests/SKILL.md` → `writing-tests`
88
88
  */
89
89
  declare function extractSkillName(skillPath: string): string;
90
+ /** A parsed inline flow-map `metadata: {k: v, ...}` value (issue #3217). */
91
+ export interface MetadataFlowMap {
92
+ /** (key, rawValue) pairs in declaration order; keys NOT lowercased. */
93
+ pairs: Array<[string, string]>;
94
+ /** Keys declared more than once inside the flow map. */
95
+ duplicateKeys: Set<string>;
96
+ }
97
+ /**
98
+ * Parse a single-level YAML flow mapping (`{key: value, ...}`) within the
99
+ * bounded line parser — the same subset collectMetadataChildren reads in
100
+ * block form (issue #3217). Values are kept raw (quotes intact); nested flow
101
+ * collections must be balanced and kind-matched. A quote opens only at a
102
+ * value start (apostrophes mid-word stay plain), backslash escapes apply in
103
+ * double quotes, and a top-level trailing comment is ignored.
104
+ * Returns null when the value is not a `{...}` form or any segment is not a
105
+ * `key: value` pair — callers treat that as malformed and fail closed.
106
+ */
107
+ export declare function parseMetadataFlowMap(raw: string): MetadataFlowMap | null;
108
+ /** Strip a trailing YAML comment from an inline `metadata:` value,
109
+ * quote-aware: a `#` at value start is a comment-only line (empty), and a
110
+ * `#` inside a quoted scalar (e.g. `{note: "a # b"}`) is scalar content —
111
+ * only a top-level ` #` after the value ends the line (PR #3387 feedback
112
+ * round 2: the earlier naive `indexOf(' #')` truncated quoted hashes and
113
+ * failed valid YAML closed). */
114
+ export declare function stripInlineMetadataComment(rawValue: string): string;
115
+ /**
116
+ * True when a flow-collection value leaves the scanner unbalanced at end of
117
+ * input (open bracket or open quote) — the value continues on the next line.
118
+ */
119
+ export declare function flowNeedsContinuation(value: string): boolean;
120
+ /**
121
+ * Consume continuation lines of a multi-line flow collection started on the
122
+ * `metadata:` line, until the brackets balance (bounded by the frontmatter
123
+ * end). Returns the joined single-line value and the last consumed line
124
+ * index, or null when the collection never balances.
125
+ */
126
+ export declare function consumeFlowContinuation(firstValue: string, lines: string[], start: number, end: number): {
127
+ value: string;
128
+ endIndex: number;
129
+ } | null;
90
130
  /**
91
131
  * Match parsed skill audience metadata against the active project and runner.
92
132
  * Domain tokens are ORed with domains, runner tokens are ORed with runners,