opencode-swarm 7.146.0 → 7.146.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 (60) hide show
  1. package/.opencode/skills/swarm-pr-review/SKILL.md +67 -33
  2. package/dist/cli/{config-doctor-vs6hvbew.js → config-doctor-sd7x5bts.js} +2 -2
  3. package/dist/cli/{core-jvvm935f.js → core-17febkvw.js} +1 -1
  4. package/dist/cli/{curation-policy-xv0j8zyt.js → curation-policy-x19e8bqc.js} +4 -4
  5. package/dist/cli/{curator-llm-factory-pe6skby4.js → curator-llm-factory-zxbgkjm5.js} +23 -23
  6. package/dist/cli/{curator-5bxh1djq.js → curator-vghf320v.js} +23 -23
  7. package/dist/cli/{evidence-summary-service-6m9jmzk8.js → evidence-summary-service-xma4aagr.js} +9 -9
  8. package/dist/cli/{gate-evidence-84sfx6g8.js → gate-evidence-2bznvee8.js} +4 -4
  9. package/dist/cli/{guardrail-explain-jhbxq8yb.js → guardrail-explain-ppzg0xz9.js} +24 -24
  10. package/dist/cli/{guardrail-log-vpbp3rm4.js → guardrail-log-xexwz93q.js} +3 -3
  11. package/dist/cli/{hive-promoter-mmmfszv8.js → hive-promoter-j3vw2hj4.js} +23 -23
  12. package/dist/cli/{index-jfcgnvg6.js → index-19f0zycs.js} +2 -2
  13. package/dist/cli/{index-5qwmpamg.js → index-1c9mfnj0.js} +1 -1
  14. package/dist/cli/{index-d4e6wpkg.js → index-4qvsh3m5.js} +8 -5
  15. package/dist/cli/{index-pz2py5v7.js → index-7x00nx8m.js} +321 -99
  16. package/dist/cli/{index-gxbhp7sx.js → index-9qbr27bw.js} +2 -2
  17. package/dist/cli/{index-s8qyaqs2.js → index-bd4g9fvb.js} +1 -1
  18. package/dist/cli/{index-q2mvacjr.js → index-cw96tpy6.js} +4 -4
  19. package/dist/cli/{index-4p3qfb05.js → index-e1hjd15c.js} +1 -1
  20. package/dist/cli/{index-j43qndgc.js → index-e3caa7ng.js} +25 -25
  21. package/dist/cli/{index-f17j50dx.js → index-fksfxhmx.js} +5 -5
  22. package/dist/cli/{index-fzqhn96z.js → index-g8qbjqqz.js} +1 -1
  23. package/dist/cli/{index-fay8h6v8.js → index-h8qed3pr.js} +18 -3
  24. package/dist/cli/{index-zd1mfygt.js → index-k46kg4t6.js} +5 -5
  25. package/dist/cli/{index-bma2wrqx.js → index-n7trn9wz.js} +5 -1
  26. package/dist/cli/{index-j20fzn0w.js → index-qbpxrw95.js} +1 -1
  27. package/dist/cli/{index-92cxd0r1.js → index-t7sfrv3v.js} +3 -3
  28. package/dist/cli/{index-n6ke10ck.js → index-twwb61bh.js} +3 -3
  29. package/dist/cli/{index-g3xt1d16.js → index-txh3h83v.js} +4 -4
  30. package/dist/cli/{index-zsmsy1dh.js → index-tzyvmkd1.js} +1 -1
  31. package/dist/cli/{index-fyr2wbvz.js → index-va8a2zrq.js} +2 -2
  32. package/dist/cli/{index-kfmee1cr.js → index-vacrzesw.js} +6 -6
  33. package/dist/cli/{index-x8pm918t.js → index-w0cj7zyd.js} +1 -1
  34. package/dist/cli/{index-0a0asz2s.js → index-w5r84rd1.js} +1 -1
  35. package/dist/cli/{index-vk15nbh4.js → index-xz0ccakc.js} +1 -1
  36. package/dist/cli/{index-kggqpefz.js → index-ycgm9pzg.js} +1 -1
  37. package/dist/cli/{index-nsr5b69r.js → index-zkaz3fhw.js} +1 -1
  38. package/dist/cli/{index-kwxp0z0n.js → index-zwn2e2pe.js} +3 -3
  39. package/dist/cli/index.js +23 -23
  40. package/dist/cli/{knowledge-escalator-c9p3w12b.js → knowledge-escalator-wj85ppdt.js} +9 -9
  41. package/dist/cli/{knowledge-events-d201414m.js → knowledge-events-4y9kk2xe.js} +7 -7
  42. package/dist/cli/{knowledge-link-82ew2yc4.js → knowledge-link-8pr02pza.js} +3 -3
  43. package/dist/cli/{knowledge-store-ds45k9th.js → knowledge-store-kc8dwc14.js} +4 -4
  44. package/dist/cli/{knowledge-validator-707vsncy.js → knowledge-validator-584ga9fb.js} +6 -6
  45. package/dist/cli/{runner-pqsf809k.js → runner-e7z9cf5y.js} +4 -4
  46. package/dist/cli/{scan-cursor-znhqb8xa.js → scan-cursor-rhjym1pn.js} +5 -5
  47. package/dist/cli/{schema-dnnm0p40.js → schema-yb3pvhcs.js} +5 -1
  48. package/dist/cli/{scope-persistence-4n24a1e2.js → scope-persistence-bxwjk9rc.js} +5 -5
  49. package/dist/cli/{skill-generator-5s0p3y8k.js → skill-generator-3w8w7htr.js} +11 -11
  50. package/dist/cli/{worktree-isolation-1v2mythh.js → worktree-isolation-av1rshr3.js} +23 -23
  51. package/dist/commands/registry.d.ts +1 -1
  52. package/dist/config/schema.d.ts +22 -0
  53. package/dist/hooks/guardrails/index.d.ts +35 -0
  54. package/dist/hooks/pr-workflow-gate.d.ts +48 -2
  55. package/dist/hooks/pr-workflow-response-gate.d.ts +24 -0
  56. package/dist/index.js +60 -62
  57. package/dist/tools/dispatch-lanes.d.ts +13 -1
  58. package/dist/workflow/coder-settlement.d.ts +13 -0
  59. package/dist/workflow/stage-a-repair.d.ts +41 -0
  60. package/package.json +1 -1
@@ -1,6 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { type BackgroundDelegationRecord, type BackgroundDelegationWorkflowLaneRecovery } from '../background/pending-delegations.js';
3
3
  import { resolveExactMergeBaseAsync, resolvePrWorkflowRevisionDigestAsync } from '../background/workspace-snapshot.js';
4
+ import { loadPluginConfig } from '../config/loader.js';
4
5
  import { type PrReviewDepthTier, validatePrWorkflowTransportRecovery } from '../hooks/pr-workflow-gate.js';
5
6
  import { buildLaneOrientationBlock } from '../hooks/repo-graph-injection.js';
6
7
  import { createParallelDispatcher } from '../parallel/dispatcher/parallel-dispatcher.js';
@@ -90,6 +91,11 @@ declare const DispatchLanesAsyncArgsSchema: z.ZodObject<{
90
91
  evidence: z.ZodString;
91
92
  }, z.core.$strict>], "result">>>;
92
93
  feedback_inventory: z.ZodOptional<z.ZodArray<z.ZodString>>;
94
+ pr_review_wave_stage: z.ZodOptional<z.ZodEnum<{
95
+ canary: "canary";
96
+ fanout: "fanout";
97
+ }>>;
98
+ pr_review_wave_attempt: z.ZodOptional<z.ZodNumber>;
93
99
  }, z.core.$strip>;
94
100
  declare const CollectLaneResultsArgsSchema: z.ZodObject<{
95
101
  batch_id: z.ZodString;
@@ -158,7 +164,7 @@ export interface DispatchLanesResult {
158
164
  }
159
165
  export interface DispatchLanesAsyncResult {
160
166
  success: boolean;
161
- failure_class?: 'invalid_args' | 'no_client';
167
+ failure_class?: 'invalid_args' | 'no_client' | 'circuit_open' | 'retry_exhausted';
162
168
  message?: string;
163
169
  batch_id: string | null;
164
170
  dispatched: number;
@@ -295,6 +301,7 @@ export declare const _internals: {
295
301
  getSessionOps: () => SessionOps | null;
296
302
  getGeneratedAgentNames: () => readonly string[];
297
303
  createParallelDispatcher: typeof createParallelDispatcher;
304
+ loadPluginConfig: typeof loadPluginConfig;
298
305
  resolvePrWorkflowRevisionDigestAsync: typeof resolvePrWorkflowRevisionDigestAsync;
299
306
  resolveExactMergeBaseAsync: typeof resolveExactMergeBaseAsync;
300
307
  validatePrWorkflowTransportRecovery: typeof validatePrWorkflowTransportRecovery;
@@ -386,6 +393,11 @@ export declare const _test_exports: {
386
393
  evidence: z.ZodString;
387
394
  }, z.core.$strict>], "result">>>;
388
395
  feedback_inventory: z.ZodOptional<z.ZodArray<z.ZodString>>;
396
+ pr_review_wave_stage: z.ZodOptional<z.ZodEnum<{
397
+ canary: "canary";
398
+ fanout: "fanout";
399
+ }>>;
400
+ pr_review_wave_attempt: z.ZodOptional<z.ZodNumber>;
389
401
  }, z.core.$strip>;
390
402
  DEFAULT_TIMEOUT_MS: number;
391
403
  DEFAULT_ASYNC_LAUNCH_TIMEOUT_MS: number;
@@ -80,6 +80,19 @@ export interface CoderSettlementWalState {
80
80
  transitionId?: string;
81
81
  processId?: number;
82
82
  recordedAt?: string;
83
+ /**
84
+ * Whether the settlement attributed an accepted mutation. Only meaningful
85
+ * on COMMITTED WALs — the parser enforces the boolean only for PREPARED
86
+ * state (workflow-wal-schema.ts), so consumers must compare `=== true`.
87
+ */
88
+ accepted?: boolean;
89
+ /**
90
+ * The file paths the dispatch declared it would change, as recorded on the
91
+ * WAL at dispatch time. `null`/absent means no scope was declared. Used to
92
+ * bind durable Stage-A attribution to the files a gate-tool call actually
93
+ * scanned, rather than attributing on task-state cardinality alone.
94
+ */
95
+ declaredFiles?: string[] | null;
83
96
  /** The in-process ownership registry still holds this dispatch (toolAfter never drained it). */
84
97
  ownedInProcess: boolean;
85
98
  /** A different, still-alive host process owns the dispatch. Never force-releasable from here. */
@@ -0,0 +1,41 @@
1
+ export type StageARepairOutcome = {
2
+ taskId: string;
3
+ outcome: 'repaired';
4
+ generation: number;
5
+ transitionId: string;
6
+ } | {
7
+ taskId: string;
8
+ outcome: 'skipped_not_wedged';
9
+ state: string;
10
+ } | {
11
+ taskId: string;
12
+ outcome: 'skipped_not_green';
13
+ reason: 'no_pre_check_bundles' | 'pre_check_failed_or_stale';
14
+ } | {
15
+ taskId: string;
16
+ outcome: 'error';
17
+ message: string;
18
+ };
19
+ export interface StageARepairResult {
20
+ results: StageARepairOutcome[];
21
+ truncated: boolean;
22
+ }
23
+ export type PreCheckGreennessResult = {
24
+ green: true;
25
+ } | {
26
+ green: false;
27
+ reason: 'no_pre_check_bundles' | 'pre_check_failed_or_stale';
28
+ };
29
+ /**
30
+ * Repair path for tasks already wedged at `coder_delegated`
31
+ * (TASK_WORKFLOW_STAGE_A_REQUIRED post-reset wedge). For each flat task
32
+ * evidence file whose workflow store sits at `coder_delegated` with no
33
+ * pre_check gate proof AND a green post-settlement pre-check bundle, emits
34
+ * the missing `stage_a_passed` transition directly and appends an audit
35
+ * event. Never re-runs the coder; live DISPATCHED/PREPARED settlement WALs
36
+ * refuse the transition loudly (CODER_SETTLEMENT_IN_PROGRESS) and surface as
37
+ * per-task errors without blocking siblings.
38
+ */
39
+ export declare function repairWedgedStageA(directory: string, options?: {
40
+ taskIds?: string[];
41
+ }): Promise<StageARepairResult>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-swarm",
3
- "version": "7.146.0",
3
+ "version": "7.146.1",
4
4
  "description": "Architect-centric agentic swarm plugin for OpenCode - hub-and-spoke orchestration with SME consultation, code generation, and QA review",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",