opencode-swarm-plugin 0.44.0 → 0.44.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.
- package/bin/swarm.serve.test.ts +6 -4
- package/bin/swarm.ts +16 -10
- package/dist/compaction-prompt-scoring.js +139 -0
- package/dist/eval-capture.js +12811 -0
- package/dist/hive.d.ts.map +1 -1
- package/dist/index.js +7644 -62599
- package/dist/plugin.js +23766 -78721
- package/dist/swarm-orchestrate.d.ts.map +1 -1
- package/dist/swarm-prompts.d.ts.map +1 -1
- package/dist/swarm-review.d.ts.map +1 -1
- package/package.json +17 -5
- package/.changeset/swarm-insights-data-layer.md +0 -63
- package/.hive/analysis/eval-failure-analysis-2025-12-25.md +0 -331
- package/.hive/analysis/session-data-quality-audit.md +0 -320
- package/.hive/eval-results.json +0 -483
- package/.hive/issues.jsonl +0 -138
- package/.hive/memories.jsonl +0 -729
- package/.opencode/eval-history.jsonl +0 -327
- package/.turbo/turbo-build.log +0 -9
- package/CHANGELOG.md +0 -2286
- package/SCORER-ANALYSIS.md +0 -598
- package/docs/analysis/subagent-coordination-patterns.md +0 -902
- package/docs/analysis-socratic-planner-pattern.md +0 -504
- package/docs/planning/ADR-001-monorepo-structure.md +0 -171
- package/docs/planning/ADR-002-package-extraction.md +0 -393
- package/docs/planning/ADR-003-performance-improvements.md +0 -451
- package/docs/planning/ADR-004-message-queue-features.md +0 -187
- package/docs/planning/ADR-005-devtools-observability.md +0 -202
- package/docs/planning/ADR-007-swarm-enhancements-worktree-review.md +0 -168
- package/docs/planning/ADR-008-worker-handoff-protocol.md +0 -293
- package/docs/planning/ADR-009-oh-my-opencode-patterns.md +0 -353
- package/docs/planning/ADR-010-cass-inhousing.md +0 -1215
- package/docs/planning/ROADMAP.md +0 -368
- package/docs/semantic-memory-cli-syntax.md +0 -123
- package/docs/swarm-mail-architecture.md +0 -1147
- package/docs/testing/context-recovery-test.md +0 -470
- package/evals/ARCHITECTURE.md +0 -1189
- package/evals/README.md +0 -768
- package/evals/compaction-prompt.eval.ts +0 -149
- package/evals/compaction-resumption.eval.ts +0 -289
- package/evals/coordinator-behavior.eval.ts +0 -307
- package/evals/coordinator-session.eval.ts +0 -154
- package/evals/evalite.config.ts.bak +0 -15
- package/evals/example.eval.ts +0 -31
- package/evals/fixtures/cass-baseline.ts +0 -217
- package/evals/fixtures/compaction-cases.ts +0 -350
- package/evals/fixtures/compaction-prompt-cases.ts +0 -311
- package/evals/fixtures/coordinator-sessions.ts +0 -328
- package/evals/fixtures/decomposition-cases.ts +0 -105
- package/evals/lib/compaction-loader.test.ts +0 -248
- package/evals/lib/compaction-loader.ts +0 -320
- package/evals/lib/data-loader.evalite-test.ts +0 -289
- package/evals/lib/data-loader.test.ts +0 -345
- package/evals/lib/data-loader.ts +0 -281
- package/evals/lib/llm.ts +0 -115
- package/evals/scorers/compaction-prompt-scorers.ts +0 -145
- package/evals/scorers/compaction-scorers.ts +0 -305
- package/evals/scorers/coordinator-discipline.evalite-test.ts +0 -539
- package/evals/scorers/coordinator-discipline.ts +0 -325
- package/evals/scorers/index.test.ts +0 -146
- package/evals/scorers/index.ts +0 -328
- package/evals/scorers/outcome-scorers.evalite-test.ts +0 -27
- package/evals/scorers/outcome-scorers.ts +0 -349
- package/evals/swarm-decomposition.eval.ts +0 -121
- package/examples/commands/swarm.md +0 -745
- package/examples/plugin-wrapper-template.ts +0 -2515
- package/examples/skills/hive-workflow/SKILL.md +0 -212
- package/examples/skills/skill-creator/SKILL.md +0 -223
- package/examples/skills/swarm-coordination/SKILL.md +0 -292
- package/global-skills/cli-builder/SKILL.md +0 -344
- package/global-skills/cli-builder/references/advanced-patterns.md +0 -244
- package/global-skills/learning-systems/SKILL.md +0 -644
- package/global-skills/skill-creator/LICENSE.txt +0 -202
- package/global-skills/skill-creator/SKILL.md +0 -352
- package/global-skills/skill-creator/references/output-patterns.md +0 -82
- package/global-skills/skill-creator/references/workflows.md +0 -28
- package/global-skills/swarm-coordination/SKILL.md +0 -995
- package/global-skills/swarm-coordination/references/coordinator-patterns.md +0 -235
- package/global-skills/swarm-coordination/references/strategies.md +0 -138
- package/global-skills/system-design/SKILL.md +0 -213
- package/global-skills/testing-patterns/SKILL.md +0 -430
- package/global-skills/testing-patterns/references/dependency-breaking-catalog.md +0 -586
- package/opencode-swarm-plugin-0.30.7.tgz +0 -0
- package/opencode-swarm-plugin-0.31.0.tgz +0 -0
- package/scripts/cleanup-test-memories.ts +0 -346
- package/scripts/init-skill.ts +0 -222
- package/scripts/migrate-unknown-sessions.ts +0 -349
- package/scripts/validate-skill.ts +0 -204
- package/src/agent-mail.ts +0 -1724
- package/src/anti-patterns.test.ts +0 -1167
- package/src/anti-patterns.ts +0 -448
- package/src/compaction-capture.integration.test.ts +0 -257
- package/src/compaction-hook.test.ts +0 -838
- package/src/compaction-hook.ts +0 -1204
- package/src/compaction-observability.integration.test.ts +0 -139
- package/src/compaction-observability.test.ts +0 -187
- package/src/compaction-observability.ts +0 -324
- package/src/compaction-prompt-scorers.test.ts +0 -475
- package/src/compaction-prompt-scoring.ts +0 -300
- package/src/contributor-tools.test.ts +0 -133
- package/src/contributor-tools.ts +0 -201
- package/src/dashboard.test.ts +0 -611
- package/src/dashboard.ts +0 -462
- package/src/error-enrichment.test.ts +0 -403
- package/src/error-enrichment.ts +0 -219
- package/src/eval-capture.test.ts +0 -1015
- package/src/eval-capture.ts +0 -929
- package/src/eval-gates.test.ts +0 -306
- package/src/eval-gates.ts +0 -218
- package/src/eval-history.test.ts +0 -508
- package/src/eval-history.ts +0 -214
- package/src/eval-learning.test.ts +0 -378
- package/src/eval-learning.ts +0 -360
- package/src/eval-runner.test.ts +0 -223
- package/src/eval-runner.ts +0 -402
- package/src/export-tools.test.ts +0 -476
- package/src/export-tools.ts +0 -257
- package/src/hive.integration.test.ts +0 -2241
- package/src/hive.ts +0 -1628
- package/src/index.ts +0 -940
- package/src/learning.integration.test.ts +0 -1815
- package/src/learning.ts +0 -1079
- package/src/logger.test.ts +0 -189
- package/src/logger.ts +0 -135
- package/src/mandate-promotion.test.ts +0 -473
- package/src/mandate-promotion.ts +0 -239
- package/src/mandate-storage.integration.test.ts +0 -601
- package/src/mandate-storage.test.ts +0 -578
- package/src/mandate-storage.ts +0 -794
- package/src/mandates.ts +0 -540
- package/src/memory-tools.test.ts +0 -195
- package/src/memory-tools.ts +0 -344
- package/src/memory.integration.test.ts +0 -334
- package/src/memory.test.ts +0 -158
- package/src/memory.ts +0 -527
- package/src/model-selection.test.ts +0 -188
- package/src/model-selection.ts +0 -68
- package/src/observability-tools.test.ts +0 -359
- package/src/observability-tools.ts +0 -871
- package/src/output-guardrails.test.ts +0 -438
- package/src/output-guardrails.ts +0 -381
- package/src/pattern-maturity.test.ts +0 -1160
- package/src/pattern-maturity.ts +0 -525
- package/src/planning-guardrails.test.ts +0 -491
- package/src/planning-guardrails.ts +0 -438
- package/src/plugin.ts +0 -23
- package/src/post-compaction-tracker.test.ts +0 -251
- package/src/post-compaction-tracker.ts +0 -237
- package/src/query-tools.test.ts +0 -636
- package/src/query-tools.ts +0 -324
- package/src/rate-limiter.integration.test.ts +0 -466
- package/src/rate-limiter.ts +0 -774
- package/src/replay-tools.test.ts +0 -496
- package/src/replay-tools.ts +0 -240
- package/src/repo-crawl.integration.test.ts +0 -441
- package/src/repo-crawl.ts +0 -610
- package/src/schemas/cell-events.test.ts +0 -347
- package/src/schemas/cell-events.ts +0 -807
- package/src/schemas/cell.ts +0 -257
- package/src/schemas/evaluation.ts +0 -166
- package/src/schemas/index.test.ts +0 -199
- package/src/schemas/index.ts +0 -286
- package/src/schemas/mandate.ts +0 -232
- package/src/schemas/swarm-context.ts +0 -115
- package/src/schemas/task.ts +0 -161
- package/src/schemas/worker-handoff.test.ts +0 -302
- package/src/schemas/worker-handoff.ts +0 -131
- package/src/sessions/agent-discovery.test.ts +0 -137
- package/src/sessions/agent-discovery.ts +0 -112
- package/src/sessions/index.ts +0 -15
- package/src/skills.integration.test.ts +0 -1192
- package/src/skills.test.ts +0 -643
- package/src/skills.ts +0 -1549
- package/src/storage.integration.test.ts +0 -341
- package/src/storage.ts +0 -884
- package/src/structured.integration.test.ts +0 -817
- package/src/structured.test.ts +0 -1046
- package/src/structured.ts +0 -762
- package/src/swarm-decompose.test.ts +0 -188
- package/src/swarm-decompose.ts +0 -1302
- package/src/swarm-deferred.integration.test.ts +0 -157
- package/src/swarm-deferred.test.ts +0 -38
- package/src/swarm-insights.test.ts +0 -214
- package/src/swarm-insights.ts +0 -459
- package/src/swarm-mail.integration.test.ts +0 -970
- package/src/swarm-mail.ts +0 -739
- package/src/swarm-orchestrate.integration.test.ts +0 -282
- package/src/swarm-orchestrate.test.ts +0 -548
- package/src/swarm-orchestrate.ts +0 -3084
- package/src/swarm-prompts.test.ts +0 -1270
- package/src/swarm-prompts.ts +0 -2077
- package/src/swarm-research.integration.test.ts +0 -701
- package/src/swarm-research.test.ts +0 -698
- package/src/swarm-research.ts +0 -472
- package/src/swarm-review.integration.test.ts +0 -285
- package/src/swarm-review.test.ts +0 -879
- package/src/swarm-review.ts +0 -709
- package/src/swarm-strategies.ts +0 -407
- package/src/swarm-worktree.test.ts +0 -501
- package/src/swarm-worktree.ts +0 -575
- package/src/swarm.integration.test.ts +0 -2377
- package/src/swarm.ts +0 -38
- package/src/tool-adapter.integration.test.ts +0 -1221
- package/src/tool-availability.ts +0 -461
- package/tsconfig.json +0 -28
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Swarm Decomposition Quality Eval
|
|
3
|
-
*
|
|
4
|
-
* Tests the quality of task decomposition for swarm coordination.
|
|
5
|
-
* Uses real LLM calls via AI SDK + Vercel AI Gateway.
|
|
6
|
-
*
|
|
7
|
-
* Scorers evaluate:
|
|
8
|
-
* - Subtask independence (no file conflicts)
|
|
9
|
-
* - Complexity balance (even distribution)
|
|
10
|
-
* - Coverage completeness (all required files)
|
|
11
|
-
* - Instruction clarity (actionable descriptions)
|
|
12
|
-
*
|
|
13
|
-
* Run with: pnpm evalite evals/swarm-decomposition.eval.ts
|
|
14
|
-
*
|
|
15
|
-
* Requires: ANTHROPIC_API_KEY environment variable
|
|
16
|
-
*/
|
|
17
|
-
import { evalite } from "evalite";
|
|
18
|
-
import {
|
|
19
|
-
subtaskIndependence,
|
|
20
|
-
coverageCompleteness,
|
|
21
|
-
instructionClarity,
|
|
22
|
-
decompositionCoherence,
|
|
23
|
-
} from "./scorers/index.js";
|
|
24
|
-
import { decompositionCases } from "./fixtures/decomposition-cases.js";
|
|
25
|
-
import {
|
|
26
|
-
generateDecomposition,
|
|
27
|
-
formatDecompositionPrompt,
|
|
28
|
-
extractJson,
|
|
29
|
-
} from "./lib/llm.js";
|
|
30
|
-
import {
|
|
31
|
-
loadEvalCases,
|
|
32
|
-
hasRealEvalData,
|
|
33
|
-
getEvalDataSummary,
|
|
34
|
-
} from "./lib/data-loader.js";
|
|
35
|
-
|
|
36
|
-
// Determine project key from current directory
|
|
37
|
-
// NOTE: project_key in eval_records is the full path (from getHiveWorkingDirectory),
|
|
38
|
-
// not a short name. Use process.cwd() to match.
|
|
39
|
-
const PROJECT_KEY = process.cwd();
|
|
40
|
-
const PROJECT_PATH = process.cwd();
|
|
41
|
-
|
|
42
|
-
// Check if we have enough real data to use instead of fixtures
|
|
43
|
-
const useRealData = await hasRealEvalData(PROJECT_KEY, 5, PROJECT_PATH);
|
|
44
|
-
|
|
45
|
-
// Load data based on availability
|
|
46
|
-
const evalCases = useRealData
|
|
47
|
-
? await loadEvalCases(PROJECT_KEY, { limit: 20, projectPath: PROJECT_PATH }) // PROJECT_KEY is now process.cwd()
|
|
48
|
-
: decompositionCases.map((testCase) => ({
|
|
49
|
-
input: testCase.input,
|
|
50
|
-
expected: testCase.expected,
|
|
51
|
-
}));
|
|
52
|
-
|
|
53
|
-
// Log data source for transparency
|
|
54
|
-
if (useRealData) {
|
|
55
|
-
const summary = await getEvalDataSummary(PROJECT_KEY, PROJECT_PATH);
|
|
56
|
-
console.log(`[eval] Using real data from PGlite:`);
|
|
57
|
-
console.log(` - Total records: ${summary.totalRecords}`);
|
|
58
|
-
console.log(` - Success rate: ${(summary.successRate * 100).toFixed(1)}%`);
|
|
59
|
-
console.log(
|
|
60
|
-
` - Strategies: ${Object.entries(summary.byStrategy)
|
|
61
|
-
.map(([s, c]) => `${s}(${c})`)
|
|
62
|
-
.join(", ")}`,
|
|
63
|
-
);
|
|
64
|
-
console.log(` - Eval cases: ${evalCases.length}`);
|
|
65
|
-
} else {
|
|
66
|
-
console.log(
|
|
67
|
-
`[eval] Using fixture data (${evalCases.length} cases) - not enough real data yet`,
|
|
68
|
-
);
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Swarm Decomposition Quality Eval
|
|
73
|
-
*
|
|
74
|
-
* Tests decomposition quality with real LLM calls.
|
|
75
|
-
*/
|
|
76
|
-
evalite("Swarm Decomposition Quality", {
|
|
77
|
-
// Test data from PGlite or fixtures
|
|
78
|
-
data: async () => evalCases,
|
|
79
|
-
|
|
80
|
-
// Task: generate real decomposition via Claude
|
|
81
|
-
task: async (input) => {
|
|
82
|
-
const prompt = formatDecompositionPrompt(input.task, input.context);
|
|
83
|
-
const response = await generateDecomposition(prompt);
|
|
84
|
-
return extractJson(response);
|
|
85
|
-
},
|
|
86
|
-
|
|
87
|
-
// Scorers evaluate decomposition quality
|
|
88
|
-
// decompositionCoherence uses LLM-as-judge for nuanced evaluation
|
|
89
|
-
scorers: [
|
|
90
|
-
subtaskIndependence,
|
|
91
|
-
coverageCompleteness,
|
|
92
|
-
instructionClarity,
|
|
93
|
-
decompositionCoherence,
|
|
94
|
-
],
|
|
95
|
-
});
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
* Edge Case Eval: Minimal and Complex Tasks
|
|
99
|
-
*
|
|
100
|
-
* Tests handling of edge cases in decomposition.
|
|
101
|
-
*/
|
|
102
|
-
evalite("Decomposition Edge Cases", {
|
|
103
|
-
data: async () => [
|
|
104
|
-
{
|
|
105
|
-
input: { task: "Fix typo in README.md" },
|
|
106
|
-
expected: { minSubtasks: 1, maxSubtasks: 2 },
|
|
107
|
-
},
|
|
108
|
-
{
|
|
109
|
-
input: { task: "Refactor entire codebase from JavaScript to TypeScript" },
|
|
110
|
-
expected: { minSubtasks: 4, maxSubtasks: 8 },
|
|
111
|
-
},
|
|
112
|
-
],
|
|
113
|
-
|
|
114
|
-
task: async (input) => {
|
|
115
|
-
const prompt = formatDecompositionPrompt(input.task, undefined, 8);
|
|
116
|
-
const response = await generateDecomposition(prompt);
|
|
117
|
-
return extractJson(response);
|
|
118
|
-
},
|
|
119
|
-
|
|
120
|
-
scorers: [subtaskIndependence, coverageCompleteness, decompositionCoherence],
|
|
121
|
-
});
|