opencode-swarm-plugin 0.56.1 → 0.57.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/README.md +21 -0
- package/claude-plugin/agents/background-worker.md +1 -0
- package/claude-plugin/agents/coordinator.md +2 -0
- package/claude-plugin/agents/worker.md +1 -0
- package/claude-plugin/bin/swarm-mcp-server.ts +53 -8
- package/claude-plugin/dist/agent-mail.d.ts +480 -0
- package/claude-plugin/dist/agent-mail.d.ts.map +1 -0
- package/claude-plugin/dist/anti-patterns.d.ts +257 -0
- package/claude-plugin/dist/anti-patterns.d.ts.map +1 -0
- package/claude-plugin/dist/bin/swarm.js +373132 -0
- package/claude-plugin/dist/build/mcp-bundle.d.ts +16 -0
- package/claude-plugin/dist/build/mcp-bundle.d.ts.map +1 -0
- package/claude-plugin/dist/cache/claude-plugin-cache.d.ts +41 -0
- package/claude-plugin/dist/cache/claude-plugin-cache.d.ts.map +1 -0
- package/claude-plugin/dist/cass-tools.d.ts +74 -0
- package/claude-plugin/dist/cass-tools.d.ts.map +1 -0
- package/claude-plugin/dist/claude-plugin/claude-plugin-assets.d.ts +10 -0
- package/claude-plugin/dist/claude-plugin/claude-plugin-assets.d.ts.map +1 -0
- package/claude-plugin/dist/compaction-hook.d.ts +178 -0
- package/claude-plugin/dist/compaction-hook.d.ts.map +1 -0
- package/claude-plugin/dist/compaction-observability.d.ts +173 -0
- package/claude-plugin/dist/compaction-observability.d.ts.map +1 -0
- package/claude-plugin/dist/compaction-prompt-scoring.d.ts +125 -0
- package/claude-plugin/dist/compaction-prompt-scoring.d.ts.map +1 -0
- package/claude-plugin/dist/compaction-prompt-scoring.js +139 -0
- package/claude-plugin/dist/contributor-tools.d.ts +42 -0
- package/claude-plugin/dist/contributor-tools.d.ts.map +1 -0
- package/claude-plugin/dist/coordinator-guard.d.ts +79 -0
- package/claude-plugin/dist/coordinator-guard.d.ts.map +1 -0
- package/claude-plugin/dist/dashboard.d.ts +82 -0
- package/claude-plugin/dist/dashboard.d.ts.map +1 -0
- package/claude-plugin/dist/decision-trace-integration.d.ts +204 -0
- package/claude-plugin/dist/decision-trace-integration.d.ts.map +1 -0
- package/claude-plugin/dist/error-enrichment.d.ts +49 -0
- package/claude-plugin/dist/error-enrichment.d.ts.map +1 -0
- package/claude-plugin/dist/eval-capture.d.ts +494 -0
- package/claude-plugin/dist/eval-capture.d.ts.map +1 -0
- package/claude-plugin/dist/eval-capture.js +12844 -0
- package/claude-plugin/dist/eval-gates.d.ts +84 -0
- package/claude-plugin/dist/eval-gates.d.ts.map +1 -0
- package/claude-plugin/dist/eval-history.d.ts +117 -0
- package/claude-plugin/dist/eval-history.d.ts.map +1 -0
- package/claude-plugin/dist/eval-learning.d.ts +216 -0
- package/claude-plugin/dist/eval-learning.d.ts.map +1 -0
- package/claude-plugin/dist/eval-runner.d.ts +134 -0
- package/claude-plugin/dist/eval-runner.d.ts.map +1 -0
- package/claude-plugin/dist/examples/plugin-wrapper-template.ts +3341 -0
- package/claude-plugin/dist/export-tools.d.ts +76 -0
- package/claude-plugin/dist/export-tools.d.ts.map +1 -0
- package/claude-plugin/dist/hive.d.ts +949 -0
- package/claude-plugin/dist/hive.d.ts.map +1 -0
- package/claude-plugin/dist/hive.js +15009 -0
- package/claude-plugin/dist/hivemind-tools.d.ts +479 -0
- package/claude-plugin/dist/hivemind-tools.d.ts.map +1 -0
- package/claude-plugin/dist/hooks/atomic-write.d.ts +21 -0
- package/claude-plugin/dist/hooks/atomic-write.d.ts.map +1 -0
- package/claude-plugin/dist/hooks/constants.d.ts +28 -0
- package/claude-plugin/dist/hooks/constants.d.ts.map +1 -0
- package/claude-plugin/dist/hooks/index.d.ts +16 -0
- package/claude-plugin/dist/hooks/index.d.ts.map +1 -0
- package/claude-plugin/dist/hooks/session-start.d.ts +30 -0
- package/claude-plugin/dist/hooks/session-start.d.ts.map +1 -0
- package/claude-plugin/dist/hooks/tool-complete.d.ts +54 -0
- package/claude-plugin/dist/hooks/tool-complete.d.ts.map +1 -0
- package/claude-plugin/dist/index.d.ts +2017 -0
- package/claude-plugin/dist/index.d.ts.map +1 -0
- package/claude-plugin/dist/index.js +73454 -0
- package/claude-plugin/dist/learning.d.ts +700 -0
- package/claude-plugin/dist/learning.d.ts.map +1 -0
- package/claude-plugin/dist/logger.d.ts +38 -0
- package/claude-plugin/dist/logger.d.ts.map +1 -0
- package/claude-plugin/dist/mandate-promotion.d.ts +93 -0
- package/claude-plugin/dist/mandate-promotion.d.ts.map +1 -0
- package/claude-plugin/dist/mandate-storage.d.ts +209 -0
- package/claude-plugin/dist/mandate-storage.d.ts.map +1 -0
- package/claude-plugin/dist/mandates.d.ts +230 -0
- package/claude-plugin/dist/mandates.d.ts.map +1 -0
- package/claude-plugin/dist/mcp/swarm-mcp-server.js +19675 -0
- package/claude-plugin/dist/memory-tools.d.ts +281 -0
- package/claude-plugin/dist/memory-tools.d.ts.map +1 -0
- package/claude-plugin/dist/memory.d.ts +164 -0
- package/claude-plugin/dist/memory.d.ts.map +1 -0
- package/claude-plugin/dist/model-selection.d.ts +37 -0
- package/claude-plugin/dist/model-selection.d.ts.map +1 -0
- package/claude-plugin/dist/observability-health.d.ts +87 -0
- package/claude-plugin/dist/observability-health.d.ts.map +1 -0
- package/claude-plugin/dist/observability-tools.d.ts +184 -0
- package/claude-plugin/dist/observability-tools.d.ts.map +1 -0
- package/claude-plugin/dist/output-guardrails.d.ts +125 -0
- package/claude-plugin/dist/output-guardrails.d.ts.map +1 -0
- package/claude-plugin/dist/pattern-maturity.d.ts +246 -0
- package/claude-plugin/dist/pattern-maturity.d.ts.map +1 -0
- package/claude-plugin/dist/planning-guardrails.d.ts +183 -0
- package/claude-plugin/dist/planning-guardrails.d.ts.map +1 -0
- package/claude-plugin/dist/plugin.d.ts +22 -0
- package/claude-plugin/dist/plugin.d.ts.map +1 -0
- package/claude-plugin/dist/plugin.js +72296 -0
- package/claude-plugin/dist/post-compaction-tracker.d.ts +133 -0
- package/claude-plugin/dist/post-compaction-tracker.d.ts.map +1 -0
- package/claude-plugin/dist/query-tools.d.ts +90 -0
- package/claude-plugin/dist/query-tools.d.ts.map +1 -0
- package/claude-plugin/dist/rate-limiter.d.ts +218 -0
- package/claude-plugin/dist/rate-limiter.d.ts.map +1 -0
- package/claude-plugin/dist/regression-detection.d.ts +58 -0
- package/claude-plugin/dist/regression-detection.d.ts.map +1 -0
- package/claude-plugin/dist/replay-tools.d.ts +28 -0
- package/claude-plugin/dist/replay-tools.d.ts.map +1 -0
- package/claude-plugin/dist/repo-crawl.d.ts +146 -0
- package/claude-plugin/dist/repo-crawl.d.ts.map +1 -0
- package/claude-plugin/dist/schemas/cell-events.d.ts +1352 -0
- package/claude-plugin/dist/schemas/cell-events.d.ts.map +1 -0
- package/claude-plugin/dist/schemas/cell.d.ts +413 -0
- package/claude-plugin/dist/schemas/cell.d.ts.map +1 -0
- package/claude-plugin/dist/schemas/evaluation.d.ts +161 -0
- package/claude-plugin/dist/schemas/evaluation.d.ts.map +1 -0
- package/claude-plugin/dist/schemas/index.d.ts +46 -0
- package/claude-plugin/dist/schemas/index.d.ts.map +1 -0
- package/claude-plugin/dist/schemas/mandate.d.ts +336 -0
- package/claude-plugin/dist/schemas/mandate.d.ts.map +1 -0
- package/claude-plugin/dist/schemas/swarm-context.d.ts +131 -0
- package/claude-plugin/dist/schemas/swarm-context.d.ts.map +1 -0
- package/claude-plugin/dist/schemas/task.d.ts +189 -0
- package/claude-plugin/dist/schemas/task.d.ts.map +1 -0
- package/claude-plugin/dist/schemas/worker-handoff.d.ts +78 -0
- package/claude-plugin/dist/schemas/worker-handoff.d.ts.map +1 -0
- package/claude-plugin/dist/sessions/agent-discovery.d.ts +59 -0
- package/claude-plugin/dist/sessions/agent-discovery.d.ts.map +1 -0
- package/claude-plugin/dist/sessions/index.d.ts +10 -0
- package/claude-plugin/dist/sessions/index.d.ts.map +1 -0
- package/claude-plugin/dist/skills.d.ts +490 -0
- package/claude-plugin/dist/skills.d.ts.map +1 -0
- package/claude-plugin/dist/storage.d.ts +260 -0
- package/claude-plugin/dist/storage.d.ts.map +1 -0
- package/claude-plugin/dist/structured.d.ts +206 -0
- package/claude-plugin/dist/structured.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-adversarial-review.d.ts +104 -0
- package/claude-plugin/dist/swarm-adversarial-review.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-decompose.d.ts +297 -0
- package/claude-plugin/dist/swarm-decompose.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-insights.d.ts +390 -0
- package/claude-plugin/dist/swarm-insights.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-mail.d.ts +274 -0
- package/claude-plugin/dist/swarm-mail.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-orchestrate.d.ts +924 -0
- package/claude-plugin/dist/swarm-orchestrate.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-prompts.d.ts +467 -0
- package/claude-plugin/dist/swarm-prompts.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-prompts.js +45286 -0
- package/claude-plugin/dist/swarm-research.d.ts +125 -0
- package/claude-plugin/dist/swarm-research.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-review.d.ts +214 -0
- package/claude-plugin/dist/swarm-review.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-signature.d.ts +106 -0
- package/claude-plugin/dist/swarm-signature.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-strategies.d.ts +113 -0
- package/claude-plugin/dist/swarm-strategies.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-validation.d.ts +127 -0
- package/claude-plugin/dist/swarm-validation.d.ts.map +1 -0
- package/claude-plugin/dist/swarm-worktree.d.ts +185 -0
- package/claude-plugin/dist/swarm-worktree.d.ts.map +1 -0
- package/claude-plugin/dist/swarm.d.ts +590 -0
- package/claude-plugin/dist/swarm.d.ts.map +1 -0
- package/claude-plugin/dist/tool-availability.d.ts +91 -0
- package/claude-plugin/dist/tool-availability.d.ts.map +1 -0
- package/claude-plugin/dist/utils/tree-renderer.d.ts +61 -0
- package/claude-plugin/dist/utils/tree-renderer.d.ts.map +1 -0
- package/claude-plugin/dist/validators/index.d.ts +7 -0
- package/claude-plugin/dist/validators/index.d.ts.map +1 -0
- package/claude-plugin/dist/validators/schema-validator.d.ts +58 -0
- package/claude-plugin/dist/validators/schema-validator.d.ts.map +1 -0
- package/claude-plugin/scripts/copyClaudePluginRuntimeAssets.ts +84 -0
- package/claude-plugin/skills/always-on-guidance/SKILL.md +45 -0
- package/claude-plugin/tests/mcp-runtime.test.ts +187 -0
- package/dist/agent-mail.d.ts +4 -4
- package/dist/agent-mail.d.ts.map +1 -1
- package/dist/bin/swarm.js +479 -20
- package/dist/build/mcp-bundle.d.ts +16 -0
- package/dist/build/mcp-bundle.d.ts.map +1 -0
- package/dist/cache/claude-plugin-cache.d.ts +41 -0
- package/dist/cache/claude-plugin-cache.d.ts.map +1 -0
- package/dist/claude-plugin/claude-plugin-assets.d.ts +10 -0
- package/dist/claude-plugin/claude-plugin-assets.d.ts.map +1 -0
- package/dist/compaction-hook.d.ts +1 -1
- package/dist/compaction-hook.d.ts.map +1 -1
- package/dist/index.js +371 -260
- package/dist/mcp/swarm-mcp-server.js +19675 -0
- package/dist/plugin.js +370 -259
- package/dist/skills.d.ts +15 -0
- package/dist/skills.d.ts.map +1 -1
- package/dist/swarm-mail.d.ts.map +1 -1
- package/dist/swarm-prompts.d.ts +3 -1
- package/dist/swarm-prompts.d.ts.map +1 -1
- package/dist/swarm-prompts.js +88 -8
- package/package.json +4 -1
|
@@ -0,0 +1,494 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* Subtask outcome - what actually happened
|
|
4
|
+
*/
|
|
5
|
+
export declare const SubtaskOutcomeSchema: z.ZodObject<{
|
|
6
|
+
bead_id: z.ZodString;
|
|
7
|
+
title: z.ZodString;
|
|
8
|
+
planned_files: z.ZodArray<z.ZodString>;
|
|
9
|
+
actual_files: z.ZodArray<z.ZodString>;
|
|
10
|
+
duration_ms: z.ZodNumber;
|
|
11
|
+
error_count: z.ZodNumber;
|
|
12
|
+
retry_count: z.ZodNumber;
|
|
13
|
+
success: z.ZodBoolean;
|
|
14
|
+
failure_mode: z.ZodOptional<z.ZodString>;
|
|
15
|
+
}, z.core.$strip>;
|
|
16
|
+
export type SubtaskOutcome = z.infer<typeof SubtaskOutcomeSchema>;
|
|
17
|
+
/**
|
|
18
|
+
* Complete eval record - input, output, and outcome
|
|
19
|
+
*/
|
|
20
|
+
export declare const EvalRecordSchema: z.ZodObject<{
|
|
21
|
+
id: z.ZodString;
|
|
22
|
+
timestamp: z.ZodString;
|
|
23
|
+
project_path: z.ZodString;
|
|
24
|
+
task: z.ZodString;
|
|
25
|
+
context: z.ZodOptional<z.ZodString>;
|
|
26
|
+
strategy: z.ZodEnum<{
|
|
27
|
+
"file-based": "file-based";
|
|
28
|
+
"feature-based": "feature-based";
|
|
29
|
+
"risk-based": "risk-based";
|
|
30
|
+
auto: "auto";
|
|
31
|
+
}>;
|
|
32
|
+
subtask_count: z.ZodNumber;
|
|
33
|
+
epic_title: z.ZodString;
|
|
34
|
+
epic_description: z.ZodOptional<z.ZodString>;
|
|
35
|
+
subtasks: z.ZodArray<z.ZodObject<{
|
|
36
|
+
title: z.ZodString;
|
|
37
|
+
description: z.ZodOptional<z.ZodString>;
|
|
38
|
+
files: z.ZodArray<z.ZodString>;
|
|
39
|
+
dependencies: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
|
|
40
|
+
estimated_complexity: z.ZodOptional<z.ZodNumber>;
|
|
41
|
+
}, z.core.$strip>>;
|
|
42
|
+
outcomes: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
43
|
+
bead_id: z.ZodString;
|
|
44
|
+
title: z.ZodString;
|
|
45
|
+
planned_files: z.ZodArray<z.ZodString>;
|
|
46
|
+
actual_files: z.ZodArray<z.ZodString>;
|
|
47
|
+
duration_ms: z.ZodNumber;
|
|
48
|
+
error_count: z.ZodNumber;
|
|
49
|
+
retry_count: z.ZodNumber;
|
|
50
|
+
success: z.ZodBoolean;
|
|
51
|
+
failure_mode: z.ZodOptional<z.ZodString>;
|
|
52
|
+
}, z.core.$strip>>>;
|
|
53
|
+
overall_success: z.ZodOptional<z.ZodBoolean>;
|
|
54
|
+
total_duration_ms: z.ZodOptional<z.ZodNumber>;
|
|
55
|
+
total_errors: z.ZodOptional<z.ZodNumber>;
|
|
56
|
+
human_accepted: z.ZodOptional<z.ZodBoolean>;
|
|
57
|
+
human_modified: z.ZodOptional<z.ZodBoolean>;
|
|
58
|
+
human_notes: z.ZodOptional<z.ZodString>;
|
|
59
|
+
file_overlap_count: z.ZodOptional<z.ZodNumber>;
|
|
60
|
+
scope_accuracy: z.ZodOptional<z.ZodNumber>;
|
|
61
|
+
time_balance_ratio: z.ZodOptional<z.ZodNumber>;
|
|
62
|
+
}, z.core.$strip>;
|
|
63
|
+
export type EvalRecord = z.infer<typeof EvalRecordSchema>;
|
|
64
|
+
/**
|
|
65
|
+
* Partial record for in-progress capture
|
|
66
|
+
*/
|
|
67
|
+
export type PartialEvalRecord = Partial<EvalRecord> & {
|
|
68
|
+
id: string;
|
|
69
|
+
timestamp: string;
|
|
70
|
+
task: string;
|
|
71
|
+
};
|
|
72
|
+
/**
|
|
73
|
+
* Coordinator Event - captures coordinator decisions, violations, outcomes, and compaction
|
|
74
|
+
*/
|
|
75
|
+
export declare const CoordinatorEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
76
|
+
session_id: z.ZodString;
|
|
77
|
+
epic_id: z.ZodString;
|
|
78
|
+
timestamp: z.ZodString;
|
|
79
|
+
event_type: z.ZodLiteral<"DECISION">;
|
|
80
|
+
decision_type: z.ZodEnum<{
|
|
81
|
+
worker_spawned: "worker_spawned";
|
|
82
|
+
review_completed: "review_completed";
|
|
83
|
+
skill_loaded: "skill_loaded";
|
|
84
|
+
strategy_selected: "strategy_selected";
|
|
85
|
+
decomposition_complete: "decomposition_complete";
|
|
86
|
+
researcher_spawned: "researcher_spawned";
|
|
87
|
+
inbox_checked: "inbox_checked";
|
|
88
|
+
blocker_resolved: "blocker_resolved";
|
|
89
|
+
scope_change_approved: "scope_change_approved";
|
|
90
|
+
scope_change_rejected: "scope_change_rejected";
|
|
91
|
+
}>;
|
|
92
|
+
payload: z.ZodAny;
|
|
93
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
94
|
+
session_id: z.ZodString;
|
|
95
|
+
epic_id: z.ZodString;
|
|
96
|
+
timestamp: z.ZodString;
|
|
97
|
+
event_type: z.ZodLiteral<"VIOLATION">;
|
|
98
|
+
violation_type: z.ZodEnum<{
|
|
99
|
+
coordinator_edited_file: "coordinator_edited_file";
|
|
100
|
+
coordinator_ran_tests: "coordinator_ran_tests";
|
|
101
|
+
coordinator_reserved_files: "coordinator_reserved_files";
|
|
102
|
+
no_worker_spawned: "no_worker_spawned";
|
|
103
|
+
worker_completed_without_review: "worker_completed_without_review";
|
|
104
|
+
}>;
|
|
105
|
+
payload: z.ZodAny;
|
|
106
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
107
|
+
session_id: z.ZodString;
|
|
108
|
+
epic_id: z.ZodString;
|
|
109
|
+
timestamp: z.ZodString;
|
|
110
|
+
event_type: z.ZodLiteral<"OUTCOME">;
|
|
111
|
+
outcome_type: z.ZodEnum<{
|
|
112
|
+
subtask_success: "subtask_success";
|
|
113
|
+
subtask_retry: "subtask_retry";
|
|
114
|
+
subtask_failed: "subtask_failed";
|
|
115
|
+
epic_complete: "epic_complete";
|
|
116
|
+
blocker_detected: "blocker_detected";
|
|
117
|
+
}>;
|
|
118
|
+
payload: z.ZodAny;
|
|
119
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
120
|
+
session_id: z.ZodString;
|
|
121
|
+
epic_id: z.ZodString;
|
|
122
|
+
timestamp: z.ZodString;
|
|
123
|
+
event_type: z.ZodLiteral<"COMPACTION">;
|
|
124
|
+
compaction_type: z.ZodEnum<{
|
|
125
|
+
context_injected: "context_injected";
|
|
126
|
+
detection_complete: "detection_complete";
|
|
127
|
+
prompt_generated: "prompt_generated";
|
|
128
|
+
resumption_started: "resumption_started";
|
|
129
|
+
tool_call_tracked: "tool_call_tracked";
|
|
130
|
+
}>;
|
|
131
|
+
payload: z.ZodAny;
|
|
132
|
+
}, z.core.$strip>], "event_type">;
|
|
133
|
+
export type CoordinatorEvent = z.infer<typeof CoordinatorEventSchema>;
|
|
134
|
+
/**
|
|
135
|
+
* Coordinator Session - wraps a full coordinator session
|
|
136
|
+
*/
|
|
137
|
+
export declare const CoordinatorSessionSchema: z.ZodObject<{
|
|
138
|
+
session_id: z.ZodString;
|
|
139
|
+
epic_id: z.ZodString;
|
|
140
|
+
start_time: z.ZodString;
|
|
141
|
+
end_time: z.ZodOptional<z.ZodString>;
|
|
142
|
+
events: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
143
|
+
session_id: z.ZodString;
|
|
144
|
+
epic_id: z.ZodString;
|
|
145
|
+
timestamp: z.ZodString;
|
|
146
|
+
event_type: z.ZodLiteral<"DECISION">;
|
|
147
|
+
decision_type: z.ZodEnum<{
|
|
148
|
+
worker_spawned: "worker_spawned";
|
|
149
|
+
review_completed: "review_completed";
|
|
150
|
+
skill_loaded: "skill_loaded";
|
|
151
|
+
strategy_selected: "strategy_selected";
|
|
152
|
+
decomposition_complete: "decomposition_complete";
|
|
153
|
+
researcher_spawned: "researcher_spawned";
|
|
154
|
+
inbox_checked: "inbox_checked";
|
|
155
|
+
blocker_resolved: "blocker_resolved";
|
|
156
|
+
scope_change_approved: "scope_change_approved";
|
|
157
|
+
scope_change_rejected: "scope_change_rejected";
|
|
158
|
+
}>;
|
|
159
|
+
payload: z.ZodAny;
|
|
160
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
161
|
+
session_id: z.ZodString;
|
|
162
|
+
epic_id: z.ZodString;
|
|
163
|
+
timestamp: z.ZodString;
|
|
164
|
+
event_type: z.ZodLiteral<"VIOLATION">;
|
|
165
|
+
violation_type: z.ZodEnum<{
|
|
166
|
+
coordinator_edited_file: "coordinator_edited_file";
|
|
167
|
+
coordinator_ran_tests: "coordinator_ran_tests";
|
|
168
|
+
coordinator_reserved_files: "coordinator_reserved_files";
|
|
169
|
+
no_worker_spawned: "no_worker_spawned";
|
|
170
|
+
worker_completed_without_review: "worker_completed_without_review";
|
|
171
|
+
}>;
|
|
172
|
+
payload: z.ZodAny;
|
|
173
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
174
|
+
session_id: z.ZodString;
|
|
175
|
+
epic_id: z.ZodString;
|
|
176
|
+
timestamp: z.ZodString;
|
|
177
|
+
event_type: z.ZodLiteral<"OUTCOME">;
|
|
178
|
+
outcome_type: z.ZodEnum<{
|
|
179
|
+
subtask_success: "subtask_success";
|
|
180
|
+
subtask_retry: "subtask_retry";
|
|
181
|
+
subtask_failed: "subtask_failed";
|
|
182
|
+
epic_complete: "epic_complete";
|
|
183
|
+
blocker_detected: "blocker_detected";
|
|
184
|
+
}>;
|
|
185
|
+
payload: z.ZodAny;
|
|
186
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
187
|
+
session_id: z.ZodString;
|
|
188
|
+
epic_id: z.ZodString;
|
|
189
|
+
timestamp: z.ZodString;
|
|
190
|
+
event_type: z.ZodLiteral<"COMPACTION">;
|
|
191
|
+
compaction_type: z.ZodEnum<{
|
|
192
|
+
context_injected: "context_injected";
|
|
193
|
+
detection_complete: "detection_complete";
|
|
194
|
+
prompt_generated: "prompt_generated";
|
|
195
|
+
resumption_started: "resumption_started";
|
|
196
|
+
tool_call_tracked: "tool_call_tracked";
|
|
197
|
+
}>;
|
|
198
|
+
payload: z.ZodAny;
|
|
199
|
+
}, z.core.$strip>], "event_type">>;
|
|
200
|
+
}, z.core.$strip>;
|
|
201
|
+
export type CoordinatorSession = z.infer<typeof CoordinatorSessionSchema>;
|
|
202
|
+
/**
|
|
203
|
+
* Default path for eval data
|
|
204
|
+
*/
|
|
205
|
+
export declare const DEFAULT_EVAL_DATA_PATH = ".opencode/eval-data.jsonl";
|
|
206
|
+
/**
|
|
207
|
+
* Get the eval data file path for a project
|
|
208
|
+
*/
|
|
209
|
+
export declare function getEvalDataPath(projectPath: string): string;
|
|
210
|
+
/**
|
|
211
|
+
* Ensure the eval data directory exists
|
|
212
|
+
*/
|
|
213
|
+
export declare function ensureEvalDataDir(projectPath: string): void;
|
|
214
|
+
/**
|
|
215
|
+
* Append an eval record to the JSONL file
|
|
216
|
+
*/
|
|
217
|
+
export declare function appendEvalRecord(projectPath: string, record: EvalRecord | PartialEvalRecord): void;
|
|
218
|
+
/**
|
|
219
|
+
* Read all eval records from a project
|
|
220
|
+
*/
|
|
221
|
+
export declare function readEvalRecords(projectPath: string): EvalRecord[];
|
|
222
|
+
/**
|
|
223
|
+
* Read partial records (for updating in-progress records)
|
|
224
|
+
*/
|
|
225
|
+
export declare function readPartialRecords(projectPath: string): PartialEvalRecord[];
|
|
226
|
+
/**
|
|
227
|
+
* Update an existing record by ID
|
|
228
|
+
*/
|
|
229
|
+
export declare function updateEvalRecord(projectPath: string, id: string, updates: Partial<EvalRecord>): boolean;
|
|
230
|
+
/**
|
|
231
|
+
* Start capturing a decomposition
|
|
232
|
+
*
|
|
233
|
+
* Called when swarm_decompose generates a decomposition.
|
|
234
|
+
* Creates a partial record that will be completed when outcomes arrive.
|
|
235
|
+
*/
|
|
236
|
+
export declare function captureDecomposition(params: {
|
|
237
|
+
epicId: string;
|
|
238
|
+
projectPath: string;
|
|
239
|
+
task: string;
|
|
240
|
+
context?: string;
|
|
241
|
+
strategy: "file-based" | "feature-based" | "risk-based" | "auto";
|
|
242
|
+
epicTitle: string;
|
|
243
|
+
epicDescription?: string;
|
|
244
|
+
subtasks: Array<{
|
|
245
|
+
title: string;
|
|
246
|
+
description?: string;
|
|
247
|
+
files: string[];
|
|
248
|
+
dependencies?: number[];
|
|
249
|
+
estimated_complexity?: number;
|
|
250
|
+
}>;
|
|
251
|
+
}): PartialEvalRecord;
|
|
252
|
+
/**
|
|
253
|
+
* Capture a subtask outcome
|
|
254
|
+
*
|
|
255
|
+
* Called when swarm_complete finishes a subtask.
|
|
256
|
+
* Updates the in-progress record with outcome data.
|
|
257
|
+
*/
|
|
258
|
+
export declare function captureSubtaskOutcome(params: {
|
|
259
|
+
epicId: string;
|
|
260
|
+
projectPath: string;
|
|
261
|
+
beadId: string;
|
|
262
|
+
title: string;
|
|
263
|
+
plannedFiles: string[];
|
|
264
|
+
actualFiles: string[];
|
|
265
|
+
durationMs: number;
|
|
266
|
+
errorCount: number;
|
|
267
|
+
retryCount: number;
|
|
268
|
+
success: boolean;
|
|
269
|
+
failureMode?: string;
|
|
270
|
+
}): void;
|
|
271
|
+
/**
|
|
272
|
+
* Finalize an eval record
|
|
273
|
+
*
|
|
274
|
+
* Called when all subtasks are complete.
|
|
275
|
+
* Computes aggregate metrics and marks record as complete.
|
|
276
|
+
*/
|
|
277
|
+
export declare function finalizeEvalRecord(params: {
|
|
278
|
+
epicId: string;
|
|
279
|
+
projectPath: string;
|
|
280
|
+
}): EvalRecord | null;
|
|
281
|
+
/**
|
|
282
|
+
* Capture human feedback on a decomposition
|
|
283
|
+
*/
|
|
284
|
+
export declare function captureHumanFeedback(params: {
|
|
285
|
+
epicId: string;
|
|
286
|
+
projectPath: string;
|
|
287
|
+
accepted: boolean;
|
|
288
|
+
modified: boolean;
|
|
289
|
+
notes?: string;
|
|
290
|
+
}): void;
|
|
291
|
+
/**
|
|
292
|
+
* Export eval records as Evalite-compatible test cases
|
|
293
|
+
*
|
|
294
|
+
* Filters to only complete records with outcomes.
|
|
295
|
+
*/
|
|
296
|
+
export declare function exportForEvalite(projectPath: string): Array<{
|
|
297
|
+
input: {
|
|
298
|
+
task: string;
|
|
299
|
+
context?: string;
|
|
300
|
+
};
|
|
301
|
+
expected: {
|
|
302
|
+
minSubtasks: number;
|
|
303
|
+
subtaskCount: number;
|
|
304
|
+
requiredFiles?: string[];
|
|
305
|
+
overallSuccess?: boolean;
|
|
306
|
+
};
|
|
307
|
+
actual: EvalRecord;
|
|
308
|
+
}>;
|
|
309
|
+
/**
|
|
310
|
+
* Get statistics about captured eval data
|
|
311
|
+
*/
|
|
312
|
+
export declare function getEvalDataStats(projectPath: string): {
|
|
313
|
+
totalRecords: number;
|
|
314
|
+
completeRecords: number;
|
|
315
|
+
successRate: number;
|
|
316
|
+
avgSubtasks: number;
|
|
317
|
+
avgDurationMs: number;
|
|
318
|
+
avgScopeAccuracy: number;
|
|
319
|
+
avgTimeBalance: number;
|
|
320
|
+
};
|
|
321
|
+
/**
|
|
322
|
+
* Get the session directory path
|
|
323
|
+
* Can be overridden via SWARM_SESSIONS_DIR env var for testing
|
|
324
|
+
*/
|
|
325
|
+
export declare function getSessionDir(): string;
|
|
326
|
+
/**
|
|
327
|
+
* Get the session file path for a session ID
|
|
328
|
+
*/
|
|
329
|
+
export declare function getSessionPath(sessionId: string): string;
|
|
330
|
+
/**
|
|
331
|
+
* Ensure the session directory exists
|
|
332
|
+
*/
|
|
333
|
+
export declare function ensureSessionDir(): void;
|
|
334
|
+
/**
|
|
335
|
+
* Capture a coordinator event to libSQL via appendEvent
|
|
336
|
+
*
|
|
337
|
+
* Stores event in events table with type based on event_type:
|
|
338
|
+
* - DECISION → coordinator_decision
|
|
339
|
+
* - VIOLATION → coordinator_violation
|
|
340
|
+
* - OUTCOME → coordinator_outcome
|
|
341
|
+
* - COMPACTION → coordinator_compaction
|
|
342
|
+
*
|
|
343
|
+
* The project_key is derived from the session working directory (process.cwd()).
|
|
344
|
+
* Events are queryable via observability-tools.ts.
|
|
345
|
+
*/
|
|
346
|
+
export declare function captureCoordinatorEvent(event: CoordinatorEvent): Promise<void>;
|
|
347
|
+
/**
|
|
348
|
+
* Capture a compaction event to the session file
|
|
349
|
+
*
|
|
350
|
+
* Helper for capturing COMPACTION events with automatic timestamp generation.
|
|
351
|
+
* Tracks compaction hook lifecycle: detection → prompt generation → context injection → resumption.
|
|
352
|
+
*
|
|
353
|
+
* **Part of eval-driven development pipeline:** Compaction events are used by `compaction-prompt.eval.ts`
|
|
354
|
+
* to score prompt quality (ID specificity, actionability, coordinator identity).
|
|
355
|
+
*
|
|
356
|
+
* **Lifecycle stages:**
|
|
357
|
+
* - `detection_complete` - Compaction detected (confidence level, context type)
|
|
358
|
+
* - `prompt_generated` - Continuation prompt created (FULL content stored for eval)
|
|
359
|
+
* - `context_injected` - Prompt injected into OpenCode context
|
|
360
|
+
* - `resumption_started` - Coordinator resumed from checkpoint
|
|
361
|
+
* - `tool_call_tracked` - First tool called post-compaction (measures discipline)
|
|
362
|
+
*
|
|
363
|
+
* @param params - Compaction event parameters
|
|
364
|
+
* @param params.session_id - Coordinator session ID
|
|
365
|
+
* @param params.epic_id - Epic ID being coordinated
|
|
366
|
+
* @param params.compaction_type - Stage of compaction lifecycle
|
|
367
|
+
* @param params.payload - Event-specific data (full prompt content, detection results, etc.)
|
|
368
|
+
*
|
|
369
|
+
* @example
|
|
370
|
+
* // Capture detection complete
|
|
371
|
+
* captureCompactionEvent({
|
|
372
|
+
* session_id: "session-123",
|
|
373
|
+
* epic_id: "bd-456",
|
|
374
|
+
* compaction_type: "detection_complete",
|
|
375
|
+
* payload: {
|
|
376
|
+
* confidence: "high",
|
|
377
|
+
* context_type: "full",
|
|
378
|
+
* epic_id: "bd-456",
|
|
379
|
+
* },
|
|
380
|
+
* });
|
|
381
|
+
*
|
|
382
|
+
* @example
|
|
383
|
+
* // Capture prompt generated (with full content for eval)
|
|
384
|
+
* captureCompactionEvent({
|
|
385
|
+
* session_id: "session-123",
|
|
386
|
+
* epic_id: "bd-456",
|
|
387
|
+
* compaction_type: "prompt_generated",
|
|
388
|
+
* payload: {
|
|
389
|
+
* prompt_length: 5000,
|
|
390
|
+
* full_prompt: "You are a coordinator...", // Full prompt, not truncated - used for quality scoring
|
|
391
|
+
* context_type: "full",
|
|
392
|
+
* },
|
|
393
|
+
* });
|
|
394
|
+
*/
|
|
395
|
+
export declare function captureCompactionEvent(params: {
|
|
396
|
+
session_id: string;
|
|
397
|
+
epic_id: string;
|
|
398
|
+
compaction_type: "detection_complete" | "prompt_generated" | "context_injected" | "resumption_started" | "tool_call_tracked";
|
|
399
|
+
payload: any;
|
|
400
|
+
}): Promise<void>;
|
|
401
|
+
/**
|
|
402
|
+
* Capture a researcher spawned event
|
|
403
|
+
*
|
|
404
|
+
* Called when coordinator spawns a swarm-researcher to handle unfamiliar technology
|
|
405
|
+
* or gather documentation before decomposition.
|
|
406
|
+
*/
|
|
407
|
+
export declare function captureResearcherSpawned(params: {
|
|
408
|
+
session_id: string;
|
|
409
|
+
epic_id: string;
|
|
410
|
+
researcher_id: string;
|
|
411
|
+
research_topic: string;
|
|
412
|
+
tools_used?: string[];
|
|
413
|
+
}): Promise<void>;
|
|
414
|
+
/**
|
|
415
|
+
* Capture a skill loaded event
|
|
416
|
+
*
|
|
417
|
+
* Called when coordinator loads domain knowledge via skills_use().
|
|
418
|
+
*/
|
|
419
|
+
export declare function captureSkillLoaded(params: {
|
|
420
|
+
session_id: string;
|
|
421
|
+
epic_id: string;
|
|
422
|
+
skill_name: string;
|
|
423
|
+
context?: string;
|
|
424
|
+
}): Promise<void>;
|
|
425
|
+
/**
|
|
426
|
+
* Capture an inbox checked event
|
|
427
|
+
*
|
|
428
|
+
* Called when coordinator checks swarmmail inbox for worker messages.
|
|
429
|
+
* Tracks monitoring frequency and responsiveness.
|
|
430
|
+
*/
|
|
431
|
+
export declare function captureInboxChecked(params: {
|
|
432
|
+
session_id: string;
|
|
433
|
+
epic_id: string;
|
|
434
|
+
message_count: number;
|
|
435
|
+
urgent_count: number;
|
|
436
|
+
}): Promise<void>;
|
|
437
|
+
/**
|
|
438
|
+
* Capture a blocker resolved event
|
|
439
|
+
*
|
|
440
|
+
* Called when coordinator successfully unblocks a worker.
|
|
441
|
+
*/
|
|
442
|
+
export declare function captureBlockerResolved(params: {
|
|
443
|
+
session_id: string;
|
|
444
|
+
epic_id: string;
|
|
445
|
+
worker_id: string;
|
|
446
|
+
subtask_id: string;
|
|
447
|
+
blocker_type: string;
|
|
448
|
+
resolution: string;
|
|
449
|
+
}): Promise<void>;
|
|
450
|
+
/**
|
|
451
|
+
* Capture a scope change decision event
|
|
452
|
+
*
|
|
453
|
+
* Called when coordinator approves or rejects a worker's scope expansion request.
|
|
454
|
+
*/
|
|
455
|
+
export declare function captureScopeChangeDecision(params: {
|
|
456
|
+
session_id: string;
|
|
457
|
+
epic_id: string;
|
|
458
|
+
worker_id: string;
|
|
459
|
+
subtask_id: string;
|
|
460
|
+
approved: boolean;
|
|
461
|
+
original_scope?: string;
|
|
462
|
+
new_scope?: string;
|
|
463
|
+
requested_scope?: string;
|
|
464
|
+
rejection_reason?: string;
|
|
465
|
+
estimated_time_add?: number;
|
|
466
|
+
}): Promise<void>;
|
|
467
|
+
/**
|
|
468
|
+
* Capture a blocker detected event
|
|
469
|
+
*
|
|
470
|
+
* Called when a worker reports being blocked (OUTCOME event, not DECISION).
|
|
471
|
+
*/
|
|
472
|
+
export declare function captureBlockerDetected(params: {
|
|
473
|
+
session_id: string;
|
|
474
|
+
epic_id: string;
|
|
475
|
+
worker_id: string;
|
|
476
|
+
subtask_id: string;
|
|
477
|
+
blocker_type: string;
|
|
478
|
+
blocker_description: string;
|
|
479
|
+
}): Promise<void>;
|
|
480
|
+
/**
|
|
481
|
+
* Read all events from a session file
|
|
482
|
+
*/
|
|
483
|
+
export declare function readSessionEvents(sessionId: string): CoordinatorEvent[];
|
|
484
|
+
/**
|
|
485
|
+
* Save a session - wraps all events in a CoordinatorSession structure
|
|
486
|
+
*
|
|
487
|
+
* Reads all events from the session file and wraps them in a session object.
|
|
488
|
+
* Returns null if the session file doesn't exist.
|
|
489
|
+
*/
|
|
490
|
+
export declare function saveSession(params: {
|
|
491
|
+
session_id: string;
|
|
492
|
+
epic_id: string;
|
|
493
|
+
}): CoordinatorSession | null;
|
|
494
|
+
//# sourceMappingURL=eval-capture.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eval-capture.d.ts","sourceRoot":"","sources":["../src/eval-capture.ts"],"names":[],"mappings":"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"}
|