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/.opencode/skills/brainstorm/SKILL.md +28 -17
- package/.opencode/skills/council/SKILL.md +3 -2
- package/.opencode/skills/execute/SKILL.md +12 -0
- package/.opencode/skills/phase-wrap/SKILL.md +12 -3
- package/.opencode/skills/plan/SKILL.md +9 -7
- package/.opencode/skills/specify/SKILL.md +17 -41
- package/dist/cli/index.js +24 -9
- package/dist/commands/registry.d.ts +1 -1
- package/dist/council/types.d.ts +8 -2
- package/dist/db/qa-gate-profile.d.ts +8 -5
- package/dist/index.js +418 -183
- package/dist/state.d.ts +3 -3
- package/dist/tools/convene-council.d.ts +1 -0
- package/dist/tools/phase-complete/gates/phase-council-gate.d.ts +1 -1
- package/dist/tools/set-qa-gates.d.ts +1 -1
- package/dist/tools/submit-phase-council-verdicts.d.ts +1 -0
- package/dist/tools/update-task-status.d.ts +8 -5
- package/dist/tools/write-final-council-evidence.d.ts +1 -0
- package/package.json +1 -1
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
|
|
499
|
+
* Returns true iff per-task council mode is active (replaces Stage B).
|
|
500
500
|
*
|
|
501
|
-
* AND semantics:
|
|
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.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Gate 5 – Phase Council.
|
|
3
|
-
* Conditional on
|
|
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
|
-
|
|
21
|
+
phase_council?: boolean;
|
|
22
22
|
drift_check?: boolean;
|
|
23
23
|
final_council?: boolean;
|
|
24
24
|
project_type?: string;
|
|
@@ -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
|
|
99
|
-
*
|
|
100
|
-
*
|
|
101
|
-
*
|
|
102
|
-
*
|
|
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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "opencode-swarm",
|
|
3
|
-
"version": "7.
|
|
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",
|