opencode-swarm 7.107.4 → 7.107.6
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/codebase-review-swarm/SKILL.md +15 -0
- package/.opencode/skills/codebase-review-swarm/references/review-protocol-v8.2.md +15 -0
- package/.opencode/skills/engineering-conventions/SKILL.md +1 -1
- package/.opencode/skills/execute/SKILL.md +2 -0
- package/.opencode/skills/phase-wrap/SKILL.md +6 -1
- package/.opencode/skills/swarm-implement/SKILL.md +161 -0
- package/.opencode/skills/swarm-pr-feedback/SKILL.md +5 -2
- package/.opencode/skills/swarm-pr-review/SKILL.md +61 -0
- package/.opencode/skills/writing-tests/SKILL.md +7 -0
- package/dist/cli/{curator-rb05fjjk.js → curator-jpwvkpdv.js} +3 -3
- package/dist/cli/{curator-llm-factory-abw56kg0.js → curator-llm-factory-9y15npd5.js} +3 -3
- package/dist/cli/{evidence-summary-service-nwdfnbz1.js → evidence-summary-service-6zsgw7x7.js} +2 -2
- package/dist/cli/{gate-evidence-ywys9vfs.js → gate-evidence-pgr7d942.js} +1 -1
- package/dist/cli/{guardrail-explain-dayy7zw4.js → guardrail-explain-jk0amzae.js} +4 -4
- package/dist/cli/{hive-promoter-34bdmw1w.js → hive-promoter-j2krbdn9.js} +3 -3
- package/dist/cli/{index-r8f89sm9.js → index-0kxc7t16.js} +2 -1
- package/dist/cli/{index-gyzxeza3.js → index-572t1qff.js} +12 -10
- package/dist/cli/{index-f45hbd5x.js → index-57rthc1z.js} +1 -1
- package/dist/cli/{index-9b7a6agd.js → index-6h82c2h0.js} +25 -8
- package/dist/cli/{index-19vxtwa6.js → index-h28wfp7n.js} +4 -4
- package/dist/cli/index.js +3 -3
- package/dist/config/bundled-skills.d.ts +1 -1
- package/dist/config/skill-mirrors.d.ts +1 -1
- package/dist/index.js +13 -13
- package/package.json +2 -1
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
readTaskEvidence,
|
|
8
8
|
readTaskEvidenceRaw,
|
|
9
9
|
sanitizeTaskId
|
|
10
|
-
} from "./index-
|
|
10
|
+
} from "./index-0kxc7t16.js";
|
|
11
11
|
import {
|
|
12
12
|
readSwarmFileAsync,
|
|
13
13
|
validateSwarmPath
|
|
@@ -1754,21 +1754,38 @@ function derivePhaseStatusesInPlace(plan) {
|
|
|
1754
1754
|
}
|
|
1755
1755
|
}
|
|
1756
1756
|
}
|
|
1757
|
-
function
|
|
1757
|
+
function statusRank(s) {
|
|
1758
|
+
switch (s) {
|
|
1759
|
+
case "closed":
|
|
1760
|
+
return 5;
|
|
1761
|
+
case "completed":
|
|
1762
|
+
return 4;
|
|
1763
|
+
case "blocked":
|
|
1764
|
+
return 3;
|
|
1765
|
+
case "in_progress":
|
|
1766
|
+
return 2;
|
|
1767
|
+
case "pending":
|
|
1768
|
+
return 1;
|
|
1769
|
+
default:
|
|
1770
|
+
return 0;
|
|
1771
|
+
}
|
|
1772
|
+
}
|
|
1773
|
+
function mergeStatusesTakingPrecedence(validated, replayed, ledgerStatusTaskIds) {
|
|
1758
1774
|
const projected = structuredClone(validated);
|
|
1759
|
-
const
|
|
1775
|
+
const replayedByTaskId = new Map;
|
|
1760
1776
|
for (const phase of replayed.phases) {
|
|
1761
1777
|
for (const task of phase.tasks) {
|
|
1762
1778
|
if (ledgerStatusTaskIds.has(task.id)) {
|
|
1763
|
-
|
|
1779
|
+
replayedByTaskId.set(task.id, task.status);
|
|
1764
1780
|
}
|
|
1765
1781
|
}
|
|
1766
1782
|
}
|
|
1767
1783
|
for (const phase of projected.phases) {
|
|
1768
1784
|
for (const task of phase.tasks) {
|
|
1769
|
-
const replayedStatus =
|
|
1770
|
-
if (replayedStatus)
|
|
1785
|
+
const replayedStatus = replayedByTaskId.get(task.id);
|
|
1786
|
+
if (replayedStatus && statusRank(replayedStatus) > statusRank(task.status)) {
|
|
1771
1787
|
task.status = replayedStatus;
|
|
1788
|
+
}
|
|
1772
1789
|
}
|
|
1773
1790
|
}
|
|
1774
1791
|
derivePhaseStatusesInPlace(projected);
|
|
@@ -2433,14 +2450,14 @@ async function savePlan(directory, plan, options) {
|
|
|
2433
2450
|
}
|
|
2434
2451
|
const ledgerStatusTaskIds = collectLedgerStatusTaskIds(await readLedgerEvents(directory));
|
|
2435
2452
|
const replayedBeforeProjection = await replayFromLedger(directory);
|
|
2436
|
-
const projectionCandidate = replayedBeforeProjection ?
|
|
2453
|
+
const projectionCandidate = replayedBeforeProjection ? mergeStatusesTakingPrecedence(validated, replayedBeforeProjection, ledgerStatusTaskIds) : validated;
|
|
2437
2454
|
if (replayedBeforeProjection && computePlanHash(replayedBeforeProjection) !== computePlanHash(projectionCandidate)) {
|
|
2438
2455
|
await takeSnapshotEvent(directory, projectionCandidate, {
|
|
2439
2456
|
planHashAfter: computePlanHash(projectionCandidate),
|
|
2440
2457
|
source: "savePlan_structural_projection"
|
|
2441
2458
|
});
|
|
2442
2459
|
}
|
|
2443
|
-
const projectedPlan =
|
|
2460
|
+
const projectedPlan = projectionCandidate;
|
|
2444
2461
|
const SNAPSHOT_INTERVAL = 50;
|
|
2445
2462
|
const latestSeq = await getLatestLedgerSeq(directory);
|
|
2446
2463
|
if (latestSeq > 0 && latestSeq % SNAPSHOT_INTERVAL === 0) {
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
} from "./index-zej8cy0j.js";
|
|
5
5
|
import {
|
|
6
6
|
handleGuardrailExplain
|
|
7
|
-
} from "./index-
|
|
7
|
+
} from "./index-57rthc1z.js";
|
|
8
8
|
import {
|
|
9
9
|
COMMAND_REGISTRY,
|
|
10
10
|
SWARM_COMMAND_TOOL_ALLOWLIST,
|
|
@@ -80,11 +80,11 @@ import {
|
|
|
80
80
|
handleWriteRetroCommand,
|
|
81
81
|
normalizeSwarmCommandInput,
|
|
82
82
|
resolveCommand
|
|
83
|
-
} from "./index-
|
|
83
|
+
} from "./index-572t1qff.js";
|
|
84
84
|
import"./index-4vsgp5a8.js";
|
|
85
85
|
import"./index-c8s9a3zh.js";
|
|
86
86
|
import"./index-wvxhynxq.js";
|
|
87
|
-
import"./index-
|
|
87
|
+
import"./index-6h82c2h0.js";
|
|
88
88
|
import"./index-91j1sqzm.js";
|
|
89
89
|
import"./index-xg18az81.js";
|
|
90
90
|
import"./index-09xpycan.js";
|
|
@@ -101,7 +101,7 @@ import"./index-xmarctsf.js";
|
|
|
101
101
|
import"./index-n1sptn1w.js";
|
|
102
102
|
import"./index-bfwt3abw.js";
|
|
103
103
|
import"./index-v4fcn4tr.js";
|
|
104
|
-
import"./index-
|
|
104
|
+
import"./index-0kxc7t16.js";
|
|
105
105
|
import"./index-9b7qp18e.js";
|
|
106
106
|
import"./index-4r5z8sgw.js";
|
|
107
107
|
import"./index-57ymmh7h.js";
|
package/dist/cli/index.js
CHANGED
|
@@ -7,11 +7,11 @@ import {
|
|
|
7
7
|
getPluginLockFilePaths,
|
|
8
8
|
package_default,
|
|
9
9
|
resolveCommand
|
|
10
|
-
} from "./index-
|
|
10
|
+
} from "./index-572t1qff.js";
|
|
11
11
|
import"./index-4vsgp5a8.js";
|
|
12
12
|
import"./index-c8s9a3zh.js";
|
|
13
13
|
import"./index-wvxhynxq.js";
|
|
14
|
-
import"./index-
|
|
14
|
+
import"./index-6h82c2h0.js";
|
|
15
15
|
import"./index-91j1sqzm.js";
|
|
16
16
|
import"./index-xg18az81.js";
|
|
17
17
|
import"./index-09xpycan.js";
|
|
@@ -26,7 +26,7 @@ import"./index-xmarctsf.js";
|
|
|
26
26
|
import"./index-n1sptn1w.js";
|
|
27
27
|
import"./index-bfwt3abw.js";
|
|
28
28
|
import"./index-v4fcn4tr.js";
|
|
29
|
-
import"./index-
|
|
29
|
+
import"./index-0kxc7t16.js";
|
|
30
30
|
import"./index-9b7qp18e.js";
|
|
31
31
|
import"./index-4r5z8sgw.js";
|
|
32
32
|
import"./index-57ymmh7h.js";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const BUNDLED_PROJECT_SKILLS: readonly ["brainstorm", "specify", "clarify-spec", "resume", "clarify", "discover", "consult", "pre-phase-briefing", "council", "deep-dive", "deep-research", "codebase-review-swarm", "design-docs", "swarm-pr-review", "swarm-pr-feedback", "swarm-pr-subscribe", "issue-ingest", "plan", "critic-gate", "execute", "phase-wrap", "loop", "writing-tests", "running-tests", "engineering-conventions", "commit-pr"];
|
|
1
|
+
export declare const BUNDLED_PROJECT_SKILLS: readonly ["brainstorm", "specify", "clarify-spec", "resume", "clarify", "discover", "consult", "pre-phase-briefing", "council", "deep-dive", "deep-research", "codebase-review-swarm", "swarm-implement", "design-docs", "swarm-pr-review", "swarm-pr-feedback", "swarm-pr-subscribe", "issue-ingest", "plan", "critic-gate", "execute", "phase-wrap", "loop", "writing-tests", "running-tests", "engineering-conventions", "commit-pr"];
|
|
2
2
|
interface CopyState {
|
|
3
3
|
files: number;
|
|
4
4
|
bytes: number;
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* Claude Code and OpenCode sessions cannot diverge silently. Tuple shape is
|
|
18
18
|
* `[slug, opencodePath, claudePath]`.
|
|
19
19
|
*/
|
|
20
|
-
export declare const MIRRORED_ARCHITECT_MODE_SKILLS: readonly [readonly ["brainstorm", ".opencode/skills/brainstorm/SKILL.md", ".claude/skills/brainstorm/SKILL.md"], readonly ["specify", ".opencode/skills/specify/SKILL.md", ".claude/skills/specify/SKILL.md"], readonly ["clarify-spec", ".opencode/skills/clarify-spec/SKILL.md", ".claude/skills/clarify-spec/SKILL.md"], readonly ["resume", ".opencode/skills/resume/SKILL.md", ".claude/skills/resume/SKILL.md"], readonly ["clarify", ".opencode/skills/clarify/SKILL.md", ".claude/skills/clarify/SKILL.md"], readonly ["discover", ".opencode/skills/discover/SKILL.md", ".claude/skills/discover/SKILL.md"], readonly ["consult", ".opencode/skills/consult/SKILL.md", ".claude/skills/consult/SKILL.md"], readonly ["pre-phase-briefing", ".opencode/skills/pre-phase-briefing/SKILL.md", ".claude/skills/pre-phase-briefing/SKILL.md"], readonly ["council", ".opencode/skills/council/SKILL.md", ".claude/skills/council/SKILL.md"], readonly ["deep-dive", ".opencode/skills/deep-dive/SKILL.md", ".claude/skills/deep-dive/SKILL.md"], readonly ["deep-research", ".opencode/skills/deep-research/SKILL.md", ".claude/skills/deep-research/SKILL.md"], readonly ["issue-ingest", ".opencode/skills/issue-ingest/SKILL.md", ".claude/skills/issue-ingest/SKILL.md"], readonly ["plan", ".opencode/skills/plan/SKILL.md", ".claude/skills/plan/SKILL.md"], readonly ["critic-gate", ".opencode/skills/critic-gate/SKILL.md", ".claude/skills/critic-gate/SKILL.md"], readonly ["
|
|
20
|
+
export declare const MIRRORED_ARCHITECT_MODE_SKILLS: readonly [readonly ["brainstorm", ".opencode/skills/brainstorm/SKILL.md", ".claude/skills/brainstorm/SKILL.md"], readonly ["specify", ".opencode/skills/specify/SKILL.md", ".claude/skills/specify/SKILL.md"], readonly ["clarify-spec", ".opencode/skills/clarify-spec/SKILL.md", ".claude/skills/clarify-spec/SKILL.md"], readonly ["resume", ".opencode/skills/resume/SKILL.md", ".claude/skills/resume/SKILL.md"], readonly ["clarify", ".opencode/skills/clarify/SKILL.md", ".claude/skills/clarify/SKILL.md"], readonly ["discover", ".opencode/skills/discover/SKILL.md", ".claude/skills/discover/SKILL.md"], readonly ["consult", ".opencode/skills/consult/SKILL.md", ".claude/skills/consult/SKILL.md"], readonly ["pre-phase-briefing", ".opencode/skills/pre-phase-briefing/SKILL.md", ".claude/skills/pre-phase-briefing/SKILL.md"], readonly ["council", ".opencode/skills/council/SKILL.md", ".claude/skills/council/SKILL.md"], readonly ["deep-dive", ".opencode/skills/deep-dive/SKILL.md", ".claude/skills/deep-dive/SKILL.md"], readonly ["deep-research", ".opencode/skills/deep-research/SKILL.md", ".claude/skills/deep-research/SKILL.md"], readonly ["issue-ingest", ".opencode/skills/issue-ingest/SKILL.md", ".claude/skills/issue-ingest/SKILL.md"], readonly ["plan", ".opencode/skills/plan/SKILL.md", ".claude/skills/plan/SKILL.md"], readonly ["critic-gate", ".opencode/skills/critic-gate/SKILL.md", ".claude/skills/critic-gate/SKILL.md"], readonly ["design-docs", ".opencode/skills/design-docs/SKILL.md", ".claude/skills/design-docs/SKILL.md"]];
|
|
21
21
|
/**
|
|
22
22
|
* Architect MODE skills where `.opencode` is the full operative protocol and
|
|
23
23
|
* `.claude` is an intentionally different surface. Both must exist; byte
|