opencode-swarm 6.27.1 → 6.28.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/index.js +11 -9
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -40332,11 +40332,11 @@ INPUT: [provide the complete plan content below]
|
|
|
40332
40332
|
CONSTRAINT: Write EXACTLY the content provided. Do not modify, summarize, or interpret.
|
|
40333
40333
|
|
|
40334
40334
|
TASK GRANULARITY RULES:
|
|
40335
|
-
- SMALL task: 1
|
|
40336
|
-
- MEDIUM task:
|
|
40337
|
-
- LARGE task:
|
|
40338
|
-
- Litmus test: If
|
|
40339
|
-
-
|
|
40335
|
+
- SMALL task: 1-2 files, 1 logical concern. Delegate as-is.
|
|
40336
|
+
- MEDIUM task: 3-5 files within a single logical concern (e.g., implementation + test + type update). Delegate as-is.
|
|
40337
|
+
- LARGE task: 6+ files OR multiple unrelated concerns. SPLIT into logical units (not per-file) before writing to plan.
|
|
40338
|
+
- Litmus test: If the task has ONE clear purpose and the coder can hold the full context, it's fine. Split only when concerns are unrelated.
|
|
40339
|
+
- Compound verbs are OK when they describe a single logical change: "add validation to handler and update its test" = 1 task. "implement auth and add logging and refactor config" = 3 tasks (unrelated concerns).
|
|
40340
40340
|
- Coder receives ONE task. You make ALL scope decisions in the plan. Coder makes zero scope decisions.
|
|
40341
40341
|
|
|
40342
40342
|
PHASE COUNT GUIDANCE:
|
|
@@ -40815,7 +40815,7 @@ REVIEW CHECKLIST:
|
|
|
40815
40815
|
- Dependencies: Are task dependencies correct? Will ordering work?
|
|
40816
40816
|
- Risk: Are high-risk changes identified? Is there a rollback path?
|
|
40817
40817
|
- AI-Slop Detection: Does the plan contain vague filler ("robust", "comprehensive", "leverage") without concrete specifics?
|
|
40818
|
-
- Task Atomicity: Does any single task touch
|
|
40818
|
+
- Task Atomicity: Does any single task touch 6+ files or mix unrelated concerns ("implement auth and add logging and refactor config")? Flag as MAJOR \u2014 oversized tasks blow coder's context and cause downstream gate failures. Suggested fix: Split into logical units grouped by concern, not per-file subtasks.
|
|
40819
40819
|
- Governance Compliance (conditional): If \`.swarm/context.md\` contains a \`## Project Governance\` section, read the MUST and SHOULD rules and validate the plan against them. MUST rule violations are CRITICAL severity. SHOULD rule violations are recommendation-level (note them but do not block approval). If no \`## Project Governance\` section exists in context.md, skip this check silently.
|
|
40820
40820
|
|
|
40821
40821
|
## PLAN ASSESSMENT DIMENSIONS
|
|
@@ -49557,7 +49557,8 @@ function createDelegationGateHook(config3, directory) {
|
|
|
49557
49557
|
}
|
|
49558
49558
|
}
|
|
49559
49559
|
if (typeof subagentType === "string") {
|
|
49560
|
-
const
|
|
49560
|
+
const rawTaskId = directArgs?.task_id;
|
|
49561
|
+
const evidenceTaskId = typeof rawTaskId === "string" && rawTaskId.length <= 20 && /^\d+\.\d+$/.test(rawTaskId.trim()) ? rawTaskId.trim() : getEvidenceTaskId(session, directory);
|
|
49561
49562
|
if (evidenceTaskId) {
|
|
49562
49563
|
try {
|
|
49563
49564
|
const turbo = hasActiveTurboMode();
|
|
@@ -49676,7 +49677,8 @@ function createDelegationGateHook(config3, directory) {
|
|
|
49676
49677
|
}
|
|
49677
49678
|
}
|
|
49678
49679
|
{
|
|
49679
|
-
const
|
|
49680
|
+
const rawTaskId = directArgs?.task_id;
|
|
49681
|
+
const evidenceTaskId = typeof rawTaskId === "string" && rawTaskId.length <= 20 && /^\d+\.\d+$/.test(rawTaskId.trim()) ? rawTaskId.trim() : getEvidenceTaskId(session, directory);
|
|
49680
49682
|
if (evidenceTaskId) {
|
|
49681
49683
|
try {
|
|
49682
49684
|
const turbo = hasActiveTurboMode();
|
|
@@ -52273,7 +52275,7 @@ function isWriteToEvidenceFile(input) {
|
|
|
52273
52275
|
const rawFile = record3.file;
|
|
52274
52276
|
const pathField = typeof rawPath === "string" ? rawPath.replace(/\\/g, "/") : undefined;
|
|
52275
52277
|
const fileField = typeof rawFile === "string" ? rawFile.replace(/\\/g, "/") : undefined;
|
|
52276
|
-
const evidenceRegex = /\.swarm
|
|
52278
|
+
const evidenceRegex = /\.swarm\/+evidence\/+/i;
|
|
52277
52279
|
if (typeof pathField === "string" && evidenceRegex.test(pathField)) {
|
|
52278
52280
|
return true;
|
|
52279
52281
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "opencode-swarm",
|
|
3
|
-
"version": "6.
|
|
3
|
+
"version": "6.28.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",
|