opencode-swarm 7.60.0 → 7.61.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.
package/dist/state.d.ts CHANGED
@@ -496,9 +496,9 @@ export declare function recordStageBCompletion(session: AgentSessionState, taskI
496
496
  */
497
497
  export declare function hasBothStageBCompletions(session: AgentSessionState, taskId: string): boolean;
498
498
  /**
499
- * Returns true iff council is authoritative for the current plan.
499
+ * Returns true iff per-task council mode is active (replaces Stage B).
500
500
  *
501
- * AND semantics: council is authoritative when BOTH `pluginConfig.council.enabled === true`
501
+ * AND semantics: requires BOTH `pluginConfig.council.enabled === true`
502
502
  * AND `QaGates.council_mode === true` for the plan associated with this directory.
503
503
  *
504
504
  * If exactly one of the two flags is true, a one-time warning is logged per plan_id
@@ -510,7 +510,7 @@ export declare function hasBothStageBCompletions(session: AgentSessionState, tas
510
510
  */
511
511
  export declare function isCouncilGateActive(directory: string, council: {
512
512
  enabled?: boolean;
513
- } | undefined): Promise<boolean>;
513
+ } | undefined, sessionOverrides?: Partial<QaGates>): Promise<boolean>;
514
514
  /**
515
515
  * Test-only helper: clear the warn-once memo so each test can observe a fresh
516
516
  * disagreement warning. Not part of the public surface.
@@ -36,6 +36,7 @@ export declare const ArgsSchema: z.ZodObject<{
36
36
  confidence: z.ZodNumber;
37
37
  findings: z.ZodArray<z.ZodObject<{
38
38
  severity: z.ZodEnum<{
39
+ CRITICAL: "CRITICAL";
39
40
  HIGH: "HIGH";
40
41
  MEDIUM: "MEDIUM";
41
42
  LOW: "LOW";
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Gate 5 – Phase Council.
3
- * Conditional on council_mode QA gate flag.
3
+ * Conditional on phase_council QA gate flag.
4
4
  */
5
5
  import type { GateContext, GateResult } from './types';
6
6
  export declare function runPhaseCouncilGate(ctx: GateContext): Promise<GateResult>;
@@ -18,7 +18,7 @@ export interface SetQaGatesArgs {
18
18
  hallucination_guard?: boolean;
19
19
  sast_enabled?: boolean;
20
20
  mutation_test?: boolean;
21
- council_general_review?: boolean;
21
+ phase_council?: boolean;
22
22
  drift_check?: boolean;
23
23
  final_council?: boolean;
24
24
  project_type?: string;
@@ -22,6 +22,7 @@ export declare const ArgsSchema: z.ZodObject<{
22
22
  confidence: z.ZodNumber;
23
23
  findings: z.ZodArray<z.ZodObject<{
24
24
  severity: z.ZodEnum<{
25
+ CRITICAL: "CRITICAL";
25
26
  HIGH: "HIGH";
26
27
  MEDIUM: "MEDIUM";
27
28
  LOW: "LOW";
@@ -90,16 +90,19 @@ export declare function recoverTaskStateFromDelegations(taskId: string, director
90
90
  export interface CouncilGateResult {
91
91
  blocked: boolean;
92
92
  reason: string;
93
+ /** True when council is active for this plan (i.e. council.enabled and council_mode on). */
94
+ active: boolean;
93
95
  }
94
96
  /**
95
97
  * Check the council gate for a completion transition. Pure — reads config and
96
98
  * evidence only, no state mutation. Exported for focused unit testing.
97
99
  *
98
- * AND semantics (mirrors isCouncilGateActive in state.ts): the gate only
99
- * activates when BOTH pluginConfig.council.enabled === true AND the QA gate
100
- * profile for this plan has council_mode === true. When council.enabled is
101
- * true but council_mode is false (or the profile is absent), the gate is
102
- * treated as inactive the operator has disabled it at the profile level.
100
+ * AND semantics: the gate only activates when BOTH pluginConfig.council.enabled
101
+ * === true AND the QA gate profile has council_mode === true. When active, the
102
+ * per-task full 5-member council verdict (via submit_council_verdicts) is
103
+ * required before task advancement. When council.enabled is true but
104
+ * council_mode is false (or the profile is absent), the gate is treated as
105
+ * inactive — the operator has disabled it at the profile level.
103
106
  *
104
107
  * @param workingDirectory - Validated project root (contains .swarm/evidence/)
105
108
  * @param taskId - Task ID in N.M or N.M.P format
@@ -28,6 +28,7 @@ export declare const ArgsSchema: z.ZodObject<{
28
28
  confidence: z.ZodNumber;
29
29
  findings: z.ZodArray<z.ZodObject<{
30
30
  severity: z.ZodEnum<{
31
+ CRITICAL: "CRITICAL";
31
32
  HIGH: "HIGH";
32
33
  MEDIUM: "MEDIUM";
33
34
  LOW: "LOW";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-swarm",
3
- "version": "7.60.0",
3
+ "version": "7.61.0",
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",