dino-spec 17.4.2 → 17.5.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.
Files changed (195) hide show
  1. package/dist/commands/init.d.ts.map +1 -1
  2. package/dist/commands/init.js +10 -0
  3. package/dist/commands/init.js.map +1 -1
  4. package/dist/core/agents/__tests__/confidence-gate.test.d.ts +5 -0
  5. package/dist/core/agents/__tests__/confidence-gate.test.d.ts.map +1 -0
  6. package/dist/core/agents/__tests__/confidence-gate.test.js +329 -0
  7. package/dist/core/agents/__tests__/confidence-gate.test.js.map +1 -0
  8. package/dist/core/agents/__tests__/gap-detector.test.d.ts +5 -0
  9. package/dist/core/agents/__tests__/gap-detector.test.d.ts.map +1 -0
  10. package/dist/core/agents/__tests__/gap-detector.test.js +609 -0
  11. package/dist/core/agents/__tests__/gap-detector.test.js.map +1 -0
  12. package/dist/core/agents/__tests__/learning-loop.test.d.ts +5 -0
  13. package/dist/core/agents/__tests__/learning-loop.test.d.ts.map +1 -0
  14. package/dist/core/agents/__tests__/learning-loop.test.js +663 -0
  15. package/dist/core/agents/__tests__/learning-loop.test.js.map +1 -0
  16. package/dist/core/agents/__tests__/parallel-executor.test.d.ts +5 -0
  17. package/dist/core/agents/__tests__/parallel-executor.test.d.ts.map +1 -0
  18. package/dist/core/agents/__tests__/parallel-executor.test.js +610 -0
  19. package/dist/core/agents/__tests__/parallel-executor.test.js.map +1 -0
  20. package/dist/core/agents/__tests__/research-validator.test.js +5 -5
  21. package/dist/core/agents/__tests__/research-validator.test.js.map +1 -1
  22. package/dist/core/agents/__tests__/skill-creator.test.d.ts +5 -0
  23. package/dist/core/agents/__tests__/skill-creator.test.d.ts.map +1 -0
  24. package/dist/core/agents/__tests__/skill-creator.test.js +443 -0
  25. package/dist/core/agents/__tests__/skill-creator.test.js.map +1 -0
  26. package/dist/core/agents/__tests__/state-persistence.test.d.ts +2 -0
  27. package/dist/core/agents/__tests__/state-persistence.test.d.ts.map +1 -0
  28. package/dist/core/agents/__tests__/state-persistence.test.js +270 -0
  29. package/dist/core/agents/__tests__/state-persistence.test.js.map +1 -0
  30. package/dist/core/agents/__tests__/validation-cache.test.d.ts +2 -0
  31. package/dist/core/agents/__tests__/validation-cache.test.d.ts.map +1 -0
  32. package/dist/core/agents/__tests__/validation-cache.test.js +181 -0
  33. package/dist/core/agents/__tests__/validation-cache.test.js.map +1 -0
  34. package/dist/core/agents/blackboard.d.ts +22 -3
  35. package/dist/core/agents/blackboard.d.ts.map +1 -1
  36. package/dist/core/agents/blackboard.js +52 -2
  37. package/dist/core/agents/blackboard.js.map +1 -1
  38. package/dist/core/agents/circuit-breaker.d.ts +79 -1
  39. package/dist/core/agents/circuit-breaker.d.ts.map +1 -1
  40. package/dist/core/agents/circuit-breaker.js +175 -1
  41. package/dist/core/agents/circuit-breaker.js.map +1 -1
  42. package/dist/core/agents/clarification-phase.d.ts +128 -0
  43. package/dist/core/agents/clarification-phase.d.ts.map +1 -0
  44. package/dist/core/agents/clarification-phase.js +375 -0
  45. package/dist/core/agents/clarification-phase.js.map +1 -0
  46. package/dist/core/agents/confidence-gate.d.ts +116 -3
  47. package/dist/core/agents/confidence-gate.d.ts.map +1 -1
  48. package/dist/core/agents/confidence-gate.js +363 -3
  49. package/dist/core/agents/confidence-gate.js.map +1 -1
  50. package/dist/core/agents/correction-tracker.d.ts +197 -0
  51. package/dist/core/agents/correction-tracker.d.ts.map +1 -0
  52. package/dist/core/agents/correction-tracker.js +366 -0
  53. package/dist/core/agents/correction-tracker.js.map +1 -0
  54. package/dist/core/agents/dependency-graph.d.ts +193 -0
  55. package/dist/core/agents/dependency-graph.d.ts.map +1 -0
  56. package/dist/core/agents/dependency-graph.js +462 -0
  57. package/dist/core/agents/dependency-graph.js.map +1 -0
  58. package/dist/core/agents/gap-detector.d.ts +277 -0
  59. package/dist/core/agents/gap-detector.d.ts.map +1 -0
  60. package/dist/core/agents/gap-detector.js +540 -0
  61. package/dist/core/agents/gap-detector.js.map +1 -0
  62. package/dist/core/agents/index.d.ts +14 -1
  63. package/dist/core/agents/index.d.ts.map +1 -1
  64. package/dist/core/agents/index.js +26 -1
  65. package/dist/core/agents/index.js.map +1 -1
  66. package/dist/core/agents/message-protocol.d.ts +13 -2
  67. package/dist/core/agents/message-protocol.d.ts.map +1 -1
  68. package/dist/core/agents/message-protocol.js +20 -1
  69. package/dist/core/agents/message-protocol.js.map +1 -1
  70. package/dist/core/agents/parallel-executor.d.ts +182 -0
  71. package/dist/core/agents/parallel-executor.d.ts.map +1 -0
  72. package/dist/core/agents/parallel-executor.js +474 -0
  73. package/dist/core/agents/parallel-executor.js.map +1 -0
  74. package/dist/core/agents/pattern-detector.d.ts +157 -0
  75. package/dist/core/agents/pattern-detector.d.ts.map +1 -0
  76. package/dist/core/agents/pattern-detector.js +370 -0
  77. package/dist/core/agents/pattern-detector.js.map +1 -0
  78. package/dist/core/agents/registry-client.d.ts +6 -0
  79. package/dist/core/agents/registry-client.d.ts.map +1 -1
  80. package/dist/core/agents/registry-client.js +3 -0
  81. package/dist/core/agents/registry-client.js.map +1 -1
  82. package/dist/core/agents/research-phase.d.ts +114 -0
  83. package/dist/core/agents/research-phase.d.ts.map +1 -0
  84. package/dist/core/agents/research-phase.js +355 -0
  85. package/dist/core/agents/research-phase.js.map +1 -0
  86. package/dist/core/agents/research-validator.d.ts +13 -2
  87. package/dist/core/agents/research-validator.d.ts.map +1 -1
  88. package/dist/core/agents/research-validator.js +63 -31
  89. package/dist/core/agents/research-validator.js.map +1 -1
  90. package/dist/core/agents/skill-creator.d.ts +174 -0
  91. package/dist/core/agents/skill-creator.d.ts.map +1 -0
  92. package/dist/core/agents/skill-creator.js +570 -0
  93. package/dist/core/agents/skill-creator.js.map +1 -0
  94. package/dist/core/agents/state-persistence.d.ts +184 -0
  95. package/dist/core/agents/state-persistence.d.ts.map +1 -0
  96. package/dist/core/agents/state-persistence.js +394 -0
  97. package/dist/core/agents/state-persistence.js.map +1 -0
  98. package/dist/core/agents/validation-cache.d.ts +122 -0
  99. package/dist/core/agents/validation-cache.d.ts.map +1 -0
  100. package/dist/core/agents/validation-cache.js +280 -0
  101. package/dist/core/agents/validation-cache.js.map +1 -0
  102. package/dist/core/agents/validators/__tests__/validators.test.d.ts +5 -0
  103. package/dist/core/agents/validators/__tests__/validators.test.d.ts.map +1 -0
  104. package/dist/core/agents/validators/__tests__/validators.test.js +321 -0
  105. package/dist/core/agents/validators/__tests__/validators.test.js.map +1 -0
  106. package/dist/core/agents/validators/base-validator.d.ts +191 -0
  107. package/dist/core/agents/validators/base-validator.d.ts.map +1 -0
  108. package/dist/core/agents/validators/base-validator.js +192 -0
  109. package/dist/core/agents/validators/base-validator.js.map +1 -0
  110. package/dist/core/agents/validators/index.d.ts +7 -0
  111. package/dist/core/agents/validators/index.d.ts.map +1 -0
  112. package/dist/core/agents/validators/index.js +7 -0
  113. package/dist/core/agents/validators/index.js.map +1 -0
  114. package/dist/core/agents/validators/npm-validator.d.ts +50 -0
  115. package/dist/core/agents/validators/npm-validator.d.ts.map +1 -0
  116. package/dist/core/agents/validators/npm-validator.js +211 -0
  117. package/dist/core/agents/validators/npm-validator.js.map +1 -0
  118. package/dist/core/agents/validators/pip-validator.d.ts +49 -0
  119. package/dist/core/agents/validators/pip-validator.d.ts.map +1 -0
  120. package/dist/core/agents/validators/pip-validator.js +191 -0
  121. package/dist/core/agents/validators/pip-validator.js.map +1 -0
  122. package/dist/core/agents/validators/validator-registry.d.ts +122 -0
  123. package/dist/core/agents/validators/validator-registry.d.ts.map +1 -0
  124. package/dist/core/agents/validators/validator-registry.js +321 -0
  125. package/dist/core/agents/validators/validator-registry.js.map +1 -0
  126. package/dist/core/context-repl/types.d.ts +4 -4
  127. package/dist/core/memory/index.d.ts +1 -0
  128. package/dist/core/memory/index.d.ts.map +1 -1
  129. package/dist/core/memory/index.js +2 -0
  130. package/dist/core/memory/index.js.map +1 -1
  131. package/dist/core/memory/learning-store.d.ts +222 -0
  132. package/dist/core/memory/learning-store.d.ts.map +1 -0
  133. package/dist/core/memory/learning-store.js +477 -0
  134. package/dist/core/memory/learning-store.js.map +1 -0
  135. package/dist/core/spec-analyzer/__tests__/ambiguity-detector.test.d.ts +5 -0
  136. package/dist/core/spec-analyzer/__tests__/ambiguity-detector.test.d.ts.map +1 -0
  137. package/dist/core/spec-analyzer/__tests__/ambiguity-detector.test.js +401 -0
  138. package/dist/core/spec-analyzer/__tests__/ambiguity-detector.test.js.map +1 -0
  139. package/dist/core/spec-analyzer/ambiguity-detector.d.ts +99 -0
  140. package/dist/core/spec-analyzer/ambiguity-detector.d.ts.map +1 -0
  141. package/dist/core/spec-analyzer/ambiguity-detector.js +250 -0
  142. package/dist/core/spec-analyzer/ambiguity-detector.js.map +1 -0
  143. package/dist/core/spec-analyzer/clarification-generator.d.ts +76 -0
  144. package/dist/core/spec-analyzer/clarification-generator.d.ts.map +1 -0
  145. package/dist/core/spec-analyzer/clarification-generator.js +257 -0
  146. package/dist/core/spec-analyzer/clarification-generator.js.map +1 -0
  147. package/dist/core/spec-analyzer/index.d.ts +10 -1
  148. package/dist/core/spec-analyzer/index.d.ts.map +1 -1
  149. package/dist/core/spec-analyzer/index.js +13 -1
  150. package/dist/core/spec-analyzer/index.js.map +1 -1
  151. package/dist/core/spec-analyzer/patterns.d.ts +73 -0
  152. package/dist/core/spec-analyzer/patterns.d.ts.map +1 -0
  153. package/dist/core/spec-analyzer/patterns.js +412 -0
  154. package/dist/core/spec-analyzer/patterns.js.map +1 -0
  155. package/dist/hooks/__tests__/dynamic-generator.test.d.ts +5 -0
  156. package/dist/hooks/__tests__/dynamic-generator.test.d.ts.map +1 -0
  157. package/dist/hooks/__tests__/dynamic-generator.test.js +425 -0
  158. package/dist/hooks/__tests__/dynamic-generator.test.js.map +1 -0
  159. package/dist/hooks/__tests__/hook-agent-bridge.test.d.ts +5 -0
  160. package/dist/hooks/__tests__/hook-agent-bridge.test.d.ts.map +1 -0
  161. package/dist/hooks/__tests__/hook-agent-bridge.test.js +315 -0
  162. package/dist/hooks/__tests__/hook-agent-bridge.test.js.map +1 -0
  163. package/dist/hooks/dynamic-generator.d.ts +158 -0
  164. package/dist/hooks/dynamic-generator.d.ts.map +1 -0
  165. package/dist/hooks/dynamic-generator.js +448 -0
  166. package/dist/hooks/dynamic-generator.js.map +1 -0
  167. package/dist/hooks/hook-agent-bridge.d.ts +252 -0
  168. package/dist/hooks/hook-agent-bridge.d.ts.map +1 -0
  169. package/dist/hooks/hook-agent-bridge.js +489 -0
  170. package/dist/hooks/hook-agent-bridge.js.map +1 -0
  171. package/dist/hooks/index.d.ts +3 -1
  172. package/dist/hooks/index.d.ts.map +1 -1
  173. package/dist/hooks/index.js +5 -1
  174. package/dist/hooks/index.js.map +1 -1
  175. package/dist/mcp/tool-catalog.d.ts.map +1 -1
  176. package/dist/mcp/tool-catalog.js +47 -0
  177. package/dist/mcp/tool-catalog.js.map +1 -1
  178. package/dist/mcp/tool-tiers.d.ts.map +1 -1
  179. package/dist/mcp/tool-tiers.js +4 -0
  180. package/dist/mcp/tool-tiers.js.map +1 -1
  181. package/dist/mcp/tools/index.d.ts +2 -1
  182. package/dist/mcp/tools/index.d.ts.map +1 -1
  183. package/dist/mcp/tools/index.js +15 -1
  184. package/dist/mcp/tools/index.js.map +1 -1
  185. package/dist/mcp/tools/learning-store.d.ts +30 -0
  186. package/dist/mcp/tools/learning-store.d.ts.map +1 -0
  187. package/dist/mcp/tools/learning-store.js +286 -0
  188. package/dist/mcp/tools/learning-store.js.map +1 -0
  189. package/dist/rules/index.d.ts.map +1 -1
  190. package/dist/rules/index.js +2 -47
  191. package/dist/rules/index.js.map +1 -1
  192. package/dist/skills/index.d.ts.map +1 -1
  193. package/dist/skills/index.js +159 -38
  194. package/dist/skills/index.js.map +1 -1
  195. package/package.json +1 -1
@@ -0,0 +1,540 @@
1
+ /**
2
+ * Gap Detector - v17.5.0
3
+ *
4
+ * Detects gaps between expected and delivered outputs in multi-agent systems.
5
+ * Monitors agent health, acceptance criteria completion, and dependency satisfaction.
6
+ *
7
+ * Features:
8
+ * - Specification matching (delivered vs expected)
9
+ * - Dependency graph tracking
10
+ * - Acceptance criteria monitoring
11
+ * - Stuck agent detection
12
+ * - Gap report generation
13
+ * - Automatic re-routing on failure
14
+ *
15
+ * @module gap-detector
16
+ */
17
+ import { DependencyGraph, formatDependencyAnalysis, } from './dependency-graph.js';
18
+ // =============================================================================
19
+ // Constants
20
+ // =============================================================================
21
+ export const DEFAULT_GAP_DETECTOR_CONFIG = {
22
+ stuckThresholdMs: 5 * 60 * 1000, // 5 minutes
23
+ enableAutoRecovery: true,
24
+ maxRecoveryAttempts: 3,
25
+ healthCheckIntervalMs: 30 * 1000, // 30 seconds
26
+ };
27
+ // =============================================================================
28
+ // Gap Detector Class
29
+ // =============================================================================
30
+ /**
31
+ * Detects and reports gaps in multi-agent execution
32
+ */
33
+ export class GapDetector {
34
+ config;
35
+ dependencyGraph;
36
+ outputSpecs = new Map();
37
+ deliveredOutputs = new Map();
38
+ acceptanceCriteria = new Map();
39
+ agentHealth = new Map();
40
+ recoveryAttempts = new Map();
41
+ constructor(config = {}) {
42
+ this.config = { ...DEFAULT_GAP_DETECTOR_CONFIG, ...config };
43
+ this.dependencyGraph = new DependencyGraph();
44
+ }
45
+ // ===========================================================================
46
+ // Output Specification
47
+ // ===========================================================================
48
+ /**
49
+ * Register an expected output
50
+ */
51
+ registerOutput(spec) {
52
+ this.outputSpecs.set(spec.id, spec);
53
+ }
54
+ /**
55
+ * Mark an output as delivered
56
+ */
57
+ markOutputDelivered(specId, value) {
58
+ this.deliveredOutputs.set(specId, value);
59
+ }
60
+ /**
61
+ * Check if an output matches its specification
62
+ */
63
+ checkOutputMatch(specId) {
64
+ const spec = this.outputSpecs.get(specId);
65
+ if (!spec) {
66
+ return { matches: false, gaps: ['Specification not found'] };
67
+ }
68
+ const delivered = this.deliveredOutputs.get(specId);
69
+ const gaps = [];
70
+ if (delivered === undefined) {
71
+ if (spec.validation?.required !== false) {
72
+ gaps.push(`Output "${spec.description}" not delivered`);
73
+ }
74
+ return { matches: gaps.length === 0, gaps };
75
+ }
76
+ // Validate if validation rules exist
77
+ if (spec.validation) {
78
+ if (spec.validation.pattern && typeof delivered === 'string') {
79
+ const regex = new RegExp(spec.validation.pattern);
80
+ if (!regex.test(delivered)) {
81
+ gaps.push(`Output does not match pattern: ${spec.validation.pattern}`);
82
+ }
83
+ }
84
+ if (spec.validation.minLength !== undefined && typeof delivered === 'string') {
85
+ if (delivered.length < spec.validation.minLength) {
86
+ gaps.push(`Output length ${delivered.length} below minimum ${spec.validation.minLength}`);
87
+ }
88
+ }
89
+ }
90
+ return { matches: gaps.length === 0, gaps };
91
+ }
92
+ /**
93
+ * Get all output gaps
94
+ */
95
+ getOutputGaps() {
96
+ const entries = [];
97
+ for (const [specId, spec] of this.outputSpecs) {
98
+ const { matches, gaps } = this.checkOutputMatch(specId);
99
+ if (!matches) {
100
+ entries.push({
101
+ type: 'output',
102
+ severity: spec.validation?.required !== false ? 'high' : 'medium',
103
+ description: gaps.join('; '),
104
+ entityId: specId,
105
+ suggestedAction: `Ensure ${spec.type} "${spec.target}" is produced correctly`,
106
+ autoRecoveryAttempted: false,
107
+ });
108
+ }
109
+ }
110
+ return entries;
111
+ }
112
+ // ===========================================================================
113
+ // Acceptance Criteria
114
+ // ===========================================================================
115
+ /**
116
+ * Register acceptance criteria
117
+ */
118
+ registerCriteria(criteria) {
119
+ for (const criterion of criteria) {
120
+ this.acceptanceCriteria.set(criterion.id, criterion);
121
+ }
122
+ }
123
+ /**
124
+ * Mark a criterion as met
125
+ */
126
+ markCriterionMet(criterionId, evidence) {
127
+ const criterion = this.acceptanceCriteria.get(criterionId);
128
+ if (criterion) {
129
+ criterion.met = true;
130
+ criterion.evidence = evidence;
131
+ }
132
+ }
133
+ /**
134
+ * Get criteria status
135
+ */
136
+ getCriteriaStatus() {
137
+ const all = Array.from(this.acceptanceCriteria.values());
138
+ const required = all.filter((c) => c.priority === 'required');
139
+ const optional = all.filter((c) => c.priority === 'optional');
140
+ const total = all.length;
141
+ const met = all.filter((c) => c.met).length;
142
+ return {
143
+ total,
144
+ met,
145
+ unmet: total - met,
146
+ percentComplete: total > 0 ? Math.round((met / total) * 100) : 100,
147
+ required: {
148
+ met: required.filter((c) => c.met).length,
149
+ total: required.length,
150
+ },
151
+ optional: {
152
+ met: optional.filter((c) => c.met).length,
153
+ total: optional.length,
154
+ },
155
+ };
156
+ }
157
+ /**
158
+ * Get criteria gaps
159
+ */
160
+ getCriteriaGaps() {
161
+ const entries = [];
162
+ for (const criterion of this.acceptanceCriteria.values()) {
163
+ if (!criterion.met) {
164
+ entries.push({
165
+ type: 'criteria',
166
+ severity: criterion.priority === 'required' ? 'high' : 'low',
167
+ description: `Criterion not met: ${criterion.description}`,
168
+ entityId: criterion.id,
169
+ suggestedAction: 'Complete the required work to satisfy this criterion',
170
+ autoRecoveryAttempted: false,
171
+ });
172
+ }
173
+ }
174
+ return entries;
175
+ }
176
+ // ===========================================================================
177
+ // Dependency Tracking
178
+ // ===========================================================================
179
+ /**
180
+ * Get the dependency graph
181
+ */
182
+ getDependencyGraph() {
183
+ return this.dependencyGraph;
184
+ }
185
+ /**
186
+ * Set the dependency graph
187
+ */
188
+ setDependencyGraph(graph) {
189
+ this.dependencyGraph = graph;
190
+ }
191
+ /**
192
+ * Get dependency gaps
193
+ */
194
+ getDependencyGaps() {
195
+ const gaps = this.dependencyGraph.identifyGaps();
196
+ return gaps.map((gap) => ({
197
+ type: 'dependency',
198
+ severity: gap.severity,
199
+ description: gap.description,
200
+ entityId: gap.nodeId,
201
+ suggestedAction: gap.resolution,
202
+ autoRecoveryAttempted: false,
203
+ }));
204
+ }
205
+ // ===========================================================================
206
+ // Agent Health
207
+ // ===========================================================================
208
+ /**
209
+ * Update agent health status
210
+ */
211
+ updateAgentHealth(agentId, update) {
212
+ const existing = this.agentHealth.get(agentId) || {
213
+ agentId,
214
+ status: 'unknown',
215
+ lastHeartbeat: new Date(),
216
+ idleTime: 0,
217
+ errorCount: 0,
218
+ circuitState: 'closed',
219
+ };
220
+ this.agentHealth.set(agentId, {
221
+ ...existing,
222
+ ...update,
223
+ });
224
+ }
225
+ /**
226
+ * Record agent heartbeat
227
+ */
228
+ recordHeartbeat(agentId) {
229
+ this.updateAgentHealth(agentId, {
230
+ lastHeartbeat: new Date(),
231
+ idleTime: 0,
232
+ status: 'healthy',
233
+ });
234
+ }
235
+ /**
236
+ * Record agent error
237
+ */
238
+ recordAgentError(agentId) {
239
+ const existing = this.agentHealth.get(agentId);
240
+ const errorCount = (existing?.errorCount || 0) + 1;
241
+ this.updateAgentHealth(agentId, {
242
+ errorCount,
243
+ status: errorCount >= 3 ? 'unhealthy' : 'degraded',
244
+ });
245
+ }
246
+ /**
247
+ * Check for stuck agents
248
+ */
249
+ checkStuckAgents() {
250
+ const now = Date.now();
251
+ const stuck = [];
252
+ for (const health of this.agentHealth.values()) {
253
+ const idleTime = now - health.lastHeartbeat.getTime();
254
+ if (idleTime > this.config.stuckThresholdMs) {
255
+ health.status = 'stuck';
256
+ health.idleTime = idleTime;
257
+ stuck.push(health);
258
+ }
259
+ }
260
+ return stuck;
261
+ }
262
+ /**
263
+ * Get agent health gaps
264
+ */
265
+ getHealthGaps() {
266
+ const entries = [];
267
+ const stuckAgents = this.checkStuckAgents();
268
+ for (const agent of stuckAgents) {
269
+ entries.push({
270
+ type: 'health',
271
+ severity: 'high',
272
+ description: `Agent "${agent.agentId}" appears stuck (idle for ${Math.round(agent.idleTime / 60000)} minutes)`,
273
+ entityId: agent.agentId,
274
+ suggestedAction: 'Check agent status and consider re-routing task',
275
+ autoRecoveryAttempted: false,
276
+ });
277
+ }
278
+ for (const health of this.agentHealth.values()) {
279
+ if (health.status === 'unhealthy') {
280
+ entries.push({
281
+ type: 'health',
282
+ severity: 'high',
283
+ description: `Agent "${health.agentId}" is unhealthy (${health.errorCount} errors)`,
284
+ entityId: health.agentId,
285
+ suggestedAction: 'Consider replacing agent or reducing its workload',
286
+ autoRecoveryAttempted: false,
287
+ });
288
+ }
289
+ if (health.circuitState === 'open') {
290
+ entries.push({
291
+ type: 'health',
292
+ severity: 'critical',
293
+ description: `Agent "${health.agentId}" circuit is open (service unavailable)`,
294
+ entityId: health.agentId,
295
+ suggestedAction: 'Wait for circuit to close or route to alternative agent',
296
+ autoRecoveryAttempted: false,
297
+ });
298
+ }
299
+ }
300
+ return entries;
301
+ }
302
+ /**
303
+ * Get all agent health statuses
304
+ */
305
+ getAllAgentHealth() {
306
+ return Array.from(this.agentHealth.values());
307
+ }
308
+ // ===========================================================================
309
+ // Re-routing
310
+ // ===========================================================================
311
+ /**
312
+ * Determine if a task should be re-routed
313
+ */
314
+ shouldReroute(taskId, currentAgent, availableAgents) {
315
+ const agentHealth = this.agentHealth.get(currentAgent);
316
+ const attempts = this.recoveryAttempts.get(taskId) || 0;
317
+ // Check if agent is unhealthy
318
+ if (agentHealth?.status === 'stuck' || agentHealth?.status === 'unhealthy') {
319
+ // Find a healthy agent
320
+ const healthyAgent = availableAgents.find((id) => {
321
+ const health = this.agentHealth.get(id);
322
+ return !health || health.status === 'healthy';
323
+ });
324
+ if (healthyAgent && attempts < this.config.maxRecoveryAttempts) {
325
+ this.recoveryAttempts.set(taskId, attempts + 1);
326
+ return {
327
+ shouldReroute: true,
328
+ reason: `Agent "${currentAgent}" is ${agentHealth.status}`,
329
+ fromAgent: currentAgent,
330
+ toAgent: healthyAgent,
331
+ taskId,
332
+ priority: agentHealth.status === 'stuck' ? 'immediate' : 'next_available',
333
+ };
334
+ }
335
+ }
336
+ // Check circuit breaker
337
+ if (agentHealth?.circuitState === 'open') {
338
+ const healthyAgent = availableAgents.find((id) => {
339
+ const health = this.agentHealth.get(id);
340
+ return !health || health.circuitState !== 'open';
341
+ });
342
+ if (healthyAgent) {
343
+ return {
344
+ shouldReroute: true,
345
+ reason: `Agent "${currentAgent}" circuit is open`,
346
+ fromAgent: currentAgent,
347
+ toAgent: healthyAgent,
348
+ taskId,
349
+ priority: 'immediate',
350
+ };
351
+ }
352
+ }
353
+ return {
354
+ shouldReroute: false,
355
+ reason: 'No re-routing needed',
356
+ fromAgent: currentAgent,
357
+ taskId,
358
+ priority: 'low',
359
+ };
360
+ }
361
+ // ===========================================================================
362
+ // Gap Report
363
+ // ===========================================================================
364
+ /**
365
+ * Generate a comprehensive gap report
366
+ */
367
+ generateReport() {
368
+ const outputGaps = this.getOutputGaps();
369
+ const criteriaGaps = this.getCriteriaGaps();
370
+ const dependencyGaps = this.getDependencyGaps();
371
+ const healthGaps = this.getHealthGaps();
372
+ const allEntries = [...outputGaps, ...criteriaGaps, ...dependencyGaps, ...healthGaps];
373
+ const summary = {
374
+ totalGaps: allEntries.length,
375
+ criticalGaps: allEntries.filter((e) => e.severity === 'critical').length,
376
+ highGaps: allEntries.filter((e) => e.severity === 'high').length,
377
+ mediumGaps: allEntries.filter((e) => e.severity === 'medium').length,
378
+ lowGaps: allEntries.filter((e) => e.severity === 'low').length,
379
+ autoRecovered: allEntries.filter((e) => e.recoveryResult === 'success').length,
380
+ };
381
+ const criteriaStatus = this.getCriteriaStatus();
382
+ // Generate recommendations
383
+ const recommendations = [];
384
+ if (summary.criticalGaps > 0) {
385
+ recommendations.push('URGENT: Address critical gaps immediately - they are blocking progress');
386
+ }
387
+ if (healthGaps.some((g) => g.description.includes('stuck'))) {
388
+ recommendations.push('Consider re-routing tasks from stuck agents to healthy ones');
389
+ }
390
+ if (criteriaStatus.required.met < criteriaStatus.required.total) {
391
+ recommendations.push(`${criteriaStatus.required.total - criteriaStatus.required.met} required criteria not yet met`);
392
+ }
393
+ const analysis = this.dependencyGraph.analyze();
394
+ if (analysis.circularDependencies.length > 0) {
395
+ recommendations.push('Break circular dependencies to enable progress');
396
+ }
397
+ if (analysis.orphanedNodes.length > 0) {
398
+ recommendations.push('Add missing dependencies or remove orphaned nodes');
399
+ }
400
+ return {
401
+ timestamp: new Date(),
402
+ summary,
403
+ entries: allEntries,
404
+ dependencyAnalysis: analysis,
405
+ criteriaStatus: {
406
+ total: criteriaStatus.total,
407
+ met: criteriaStatus.met,
408
+ unmet: criteriaStatus.unmet,
409
+ percentComplete: criteriaStatus.percentComplete,
410
+ },
411
+ agentHealth: this.getAllAgentHealth(),
412
+ recommendations,
413
+ };
414
+ }
415
+ /**
416
+ * Reset the detector state
417
+ */
418
+ reset() {
419
+ this.outputSpecs.clear();
420
+ this.deliveredOutputs.clear();
421
+ this.acceptanceCriteria.clear();
422
+ this.agentHealth.clear();
423
+ this.recoveryAttempts.clear();
424
+ this.dependencyGraph.clear();
425
+ }
426
+ }
427
+ // =============================================================================
428
+ // Helper Functions
429
+ // =============================================================================
430
+ /**
431
+ * Create a gap detector with default configuration
432
+ */
433
+ export function createGapDetector(config) {
434
+ return new GapDetector(config);
435
+ }
436
+ /**
437
+ * Format gap report for display
438
+ */
439
+ export function formatGapReport(report) {
440
+ const lines = [];
441
+ lines.push('# Gap Detection Report');
442
+ lines.push('');
443
+ lines.push(`**Generated:** ${report.timestamp.toISOString()}`);
444
+ lines.push('');
445
+ // Summary
446
+ lines.push('## Summary');
447
+ lines.push('');
448
+ lines.push(`| Severity | Count |`);
449
+ lines.push(`|----------|-------|`);
450
+ lines.push(`| 🔴 Critical | ${report.summary.criticalGaps} |`);
451
+ lines.push(`| 🟠 High | ${report.summary.highGaps} |`);
452
+ lines.push(`| 🟡 Medium | ${report.summary.mediumGaps} |`);
453
+ lines.push(`| 🟢 Low | ${report.summary.lowGaps} |`);
454
+ lines.push(`| **Total** | **${report.summary.totalGaps}** |`);
455
+ lines.push('');
456
+ if (report.summary.autoRecovered > 0) {
457
+ lines.push(`✅ Auto-recovered: ${report.summary.autoRecovered}`);
458
+ lines.push('');
459
+ }
460
+ // Criteria Status
461
+ lines.push('## Acceptance Criteria');
462
+ lines.push('');
463
+ lines.push(`**Progress:** ${report.criteriaStatus.met}/${report.criteriaStatus.total} (${report.criteriaStatus.percentComplete}%)`);
464
+ lines.push('');
465
+ // Agent Health
466
+ if (report.agentHealth.length > 0) {
467
+ lines.push('## Agent Health');
468
+ lines.push('');
469
+ lines.push('| Agent | Status | Idle Time | Errors |');
470
+ lines.push('|-------|--------|-----------|--------|');
471
+ for (const agent of report.agentHealth) {
472
+ const statusEmoji = agent.status === 'healthy'
473
+ ? '✅'
474
+ : agent.status === 'degraded'
475
+ ? '🟡'
476
+ : agent.status === 'stuck'
477
+ ? '🔴'
478
+ : '❓';
479
+ lines.push(`| ${agent.agentId} | ${statusEmoji} ${agent.status} | ${Math.round(agent.idleTime / 1000)}s | ${agent.errorCount} |`);
480
+ }
481
+ lines.push('');
482
+ }
483
+ // Gap Entries
484
+ if (report.entries.length > 0) {
485
+ lines.push('## Gap Details');
486
+ lines.push('');
487
+ const byType = {
488
+ output: report.entries.filter((e) => e.type === 'output'),
489
+ criteria: report.entries.filter((e) => e.type === 'criteria'),
490
+ dependency: report.entries.filter((e) => e.type === 'dependency'),
491
+ health: report.entries.filter((e) => e.type === 'health'),
492
+ };
493
+ for (const [type, entries] of Object.entries(byType)) {
494
+ if (entries.length === 0)
495
+ continue;
496
+ lines.push(`### ${type.charAt(0).toUpperCase() + type.slice(1)} Gaps (${entries.length})`);
497
+ lines.push('');
498
+ for (const entry of entries) {
499
+ const emoji = entry.severity === 'critical'
500
+ ? '🔴'
501
+ : entry.severity === 'high'
502
+ ? '🟠'
503
+ : entry.severity === 'medium'
504
+ ? '🟡'
505
+ : '🟢';
506
+ lines.push(`${emoji} **${entry.entityId}**`);
507
+ lines.push(` ${entry.description}`);
508
+ lines.push(` _Action:_ ${entry.suggestedAction}`);
509
+ lines.push('');
510
+ }
511
+ }
512
+ }
513
+ // Dependency Analysis
514
+ lines.push(formatDependencyAnalysis(report.dependencyAnalysis));
515
+ lines.push('');
516
+ // Recommendations
517
+ if (report.recommendations.length > 0) {
518
+ lines.push('## Recommendations');
519
+ lines.push('');
520
+ for (const rec of report.recommendations) {
521
+ lines.push(`- ${rec}`);
522
+ }
523
+ lines.push('');
524
+ }
525
+ return lines.join('\n');
526
+ }
527
+ /**
528
+ * Check if a report has critical issues
529
+ */
530
+ export function hasCriticalIssues(report) {
531
+ return report.summary.criticalGaps > 0;
532
+ }
533
+ /**
534
+ * Check if a report has blocking issues
535
+ */
536
+ export function hasBlockingIssues(report) {
537
+ return (report.summary.criticalGaps > 0 ||
538
+ report.entries.some((e) => e.type === 'criteria' && e.severity === 'high'));
539
+ }
540
+ //# sourceMappingURL=gap-detector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gap-detector.js","sourceRoot":"","sources":["../../../src/core/agents/gap-detector.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Agent Coordination Module - v12.5.0
2
+ * Agent Coordination Module - v12.6.0
3
3
  *
4
4
  * Multi-agent coordination features:
5
5
  * - Action space masking (tool availability by phase/role)
@@ -8,20 +8,33 @@
8
8
  * - Recursive agents (v8.0.0): self-spawning agents with depth control
9
9
  * - Agent communication protocol (v12.5.0): message passing between agents
10
10
  * - Shared blackboard (v12.5.0): coordination state and resource claiming
11
+ * - State persistence (v12.6.0): persistent agent state across sessions
11
12
  */
12
13
  export { checkToolAvailability, createDefaultContext, formatActionMask, generateActionMask, getRecommendedTools, PHASE_RESTRICTIONS, ROLE_PERMISSIONS, TOOL_DEFINITIONS, } from './action-mask.js';
13
14
  export { Blackboard, type BlackboardStats, blackboard, type CachedContent, formatBlackboardStats, formatClaim, type ResourceClaim, } from './blackboard.js';
14
15
  export { AgentBudgetManager, budgetManager, COMPLEXITY_MULTIPLIERS, calculateRecommendedBudget, formatBudget, HANDOFF_RESERVE_PERCENT, hasSufficientBudget, MIN_USEFUL_BUDGET, ROLE_BASE_BUDGETS, } from './budgets.js';
15
16
  export { CircuitBreaker, type CircuitBreakerConfig, type CircuitResult, type CircuitState, type CircuitStats, DEFAULT_CONFIG as DEFAULT_CIRCUIT_CONFIG, formatCircuitStats, } from './circuit-breaker.js';
16
17
  export { type BreakerCategory, CATEGORY_CONFIGS, type CategoryConfig, CircuitBreakerRegistry, type CircuitStatusSummary, circuitRegistry, formatOpenCircuits, formatRegistryStats, type OpenCircuitInfo, type RegistryStats, withCircuitBreaker, } from './circuit-registry.js';
18
+ export { type ClarificationPhaseConfig, type ClarificationPhaseResult, type ClarificationPhaseState, type ClarificationRound, DEFAULT_CLARIFICATION_CONFIG, executeClarificationPhase, formatClarificationForSession, formatQuestionsForAskUser, generateAdditionalQuestions, getNextQuestions, initializeClarificationPhase, markUserValidated, processAnswers, type UserAnswer, } from './clarification-phase.js';
19
+ export { type ClarificationQuestion, CONFIDENCE_TIERS, type ConfidenceGateConfig, type ConfidenceRound, type ConfidenceTier, type ConfidenceTracking, checkConfidence, checkProgressiveConfidence, createConfidenceTracking, createProgressiveGateState, formatConfidenceForSession, formatGateResult, formatProgressiveGateForSession, type GateResult, generateClarificationQuestions, getConfidenceTier, getTieredAction, hasExceededMaxRounds, markStateUserValidated, type ProgressiveGateResult, type ProgressiveGateState, recordConfidenceRound, updateConfidenceFromAnswers, updateStateAfterClarification, updateStateAfterResearch, } from './confidence-gate.js';
17
20
  export { type AgentDynamicContext, addAgentToState, buildInheritanceTree, type ContextInheritanceNode, type ContextIsolationState, type ContextIsolationStats, createAgentDynamicContext, createContextIsolationState, createInheritanceNode, createIsolatedContext, createSharedPrefix, formatAgentDynamicContext, formatIsolatedContext, formatIsolationStats, formatSharedPrefix, getAgentContext, getInheritedContext, type IsolatedAgentContext, listAgents, ROLE_CONSTRAINTS, type SharedContextPrefix, } from './context-isolation.js';
21
+ export { type Correction, type CorrectionCluster, type CorrectionContext, CorrectionTracker, type CorrectionTrackerConfig, type CorrectionType, correctionTracker, DEFAULT_TRACKER_CONFIG, detectCorrection, formatCluster, formatCorrection, getPromotableClusters, trackCorrection, } from './correction-tracker.js';
22
+ export { createGraphFromTasks, type DependencyAnalysis, type DependencyEdge, type DependencyGap, DependencyGraph, type DependencyNode, formatDependencyAnalysis, formatDependencyGaps, } from './dependency-graph.js';
23
+ export { type AcceptanceCriterion, type AgentHealth, createGapDetector, DEFAULT_GAP_DETECTOR_CONFIG, formatGapReport, GapDetector, type GapDetectorConfig, type GapReport, type GapReportEntry, hasBlockingIssues, hasCriticalIssues, type OutputSpec, type RerouteDecision, } from './gap-detector.js';
18
24
  export { type InitContext, runBootstrap } from './initializer.js';
19
25
  export { type AgentMessage, type BroadcastPayload, type ClaimPayload, createBroadcast, createClaim, createMessage, createQuery, createResponse, formatMessage, isBroadcast, isClaim, isQuery, isResponse, MessageBus, type MessageHandler, type MessagePayload, type MessageType, messageBus, type QueryPayload, type ResponsePayload, type SubscriptionOptions, } from './message-protocol.js';
20
26
  export { broadcastTaskComplete, cacheFileContent, claimFileForRead, cleanupOrchestratorContext, completeParallelExecution, createOrchestratorContext, createParallelPlan, createSpawnContext, detectConflicts, formatParallelPlan, formatSpawnContext, getCachedFileContent, getChildTasks, getCoordinationState, getCoordinationStats, identifyParallelizableTasks, type OrchestratorContext, prepareParallelExecution, releaseFileClaim, resolveConflicts, setCoordinationState, synthesizeResults, } from './orchestrator.js';
27
+ export { type AgentExecutor, type AgentStatus, createMockAgentExecutor, createParallelExecutor, DEFAULT_EXECUTOR_CONFIG, type ExecutionProgress, executeParallel, formatExecutionProgress, formatParallelResult, ParallelExecutor, type ParallelExecutorConfig, type ParallelExecutorEvents, TimeoutError, type TrackedAgent, } from './parallel-executor.js';
28
+ export { calculateConfidenceAdjustment, DEFAULT_DETECTOR_CONFIG, type DetectedPattern, detectPatterns, formatDetectedPattern, formatSuggestionForSession, formatSuggestionsForSession, getPatternSuggestions, type PatternConfidence, PatternDetector, type PatternDetectorConfig, type PatternSuggestion, type PatternType, patternDetector, } from './pattern-detector.js';
21
29
  export * from './programmatic/index.js';
22
30
  export * from './recursive/index.js';
23
31
  export { clearCaches, fetchPackageMetadata, getCacheStats, getPackageSize, type PackageMetadata, type PackageSize, type SearchResult, searchPackages, } from './registry-client.js';
32
+ export { buildResearchPrompt, buildResearchTaskParams, calculateConfidenceImprovement, DEFAULT_RESEARCH_CONFIG, executeResearchPhase, formatResearchForSession, identifyResearchTargets, type ResearchArea, type ResearchFinding, type ResearchPhaseConfig, type ResearchPhaseResult, type ResearchTarget, } from './research-phase.js';
24
33
  export { clearValidationCache, getValidationCacheStats, type PackageValidation, type ValidationOptions, validatePackage, validatePackages, } from './research-validator.js';
25
34
  export { clearAuditCache, getAuditCacheStats, type SecurityScanResult, scanPackage, type Vulnerability, type VulnerabilitySeverity, } from './security-scanner.js';
35
+ export { createSkill, DEFAULT_CREATOR_CONFIG, formatSkillDefinition, formatValidationResult as formatSkillValidationResult, getSkillCreator, SKILL_TEMPLATES, type SkillContext, SkillCreator, type SkillCreatorConfig, type SkillDefinition, type SkillEffort, type SkillFrontmatter, type SkillGenerationRequest, type SkillModel, type SkillTemplate, type SkillValidationResult, TOOL_PRESETS, } from './skill-creator.js';
36
+ export { createPersistenceHooks, DEFAULT_PERSISTENCE_CONFIG, initializePersistence, type MessageHistoryEntry, type PersistedState, type PersistenceConfig, StatePersistence, statePersistence, } from './state-persistence.js';
26
37
  export type { ActionMask, AgentBudget, AgentBudgetStatus, AgentExecutionResult, AgentMaskingContext, AgentSpawnContext, BudgetAllocationRequest, BudgetHandoff, BudgetRecovery, BudgetStats, BudgetWarning, Conflict, ConflictDetection, ConflictStrategy, ConflictType, ExecutionWave, MaskingSessionState, MaskingTaskState, ParallelExecutionPlan, ParallelExecutionRequest, ParallelExecutionResult, TaskComplexity, ToolAvailability, ToolCategory, ToolDefinition, } from './types.js';
38
+ export { API_RATE_LIMITS, type CacheConfig, DEFAULT_CACHE_CONFIG, type RateLimitConfig, RateLimiter, rateLimited, rateLimiter, ValidationCache, withRateLimit, } from './validation-cache.js';
39
+ export { BaseValidator, type BatchValidationResult, createIssue, formatBatchResult, formatValidationResult, NpmValidator, npmValidator, type PackageEcosystem, type PackageId, type PackageMetadata as ValidatorPackageMetadata, PipValidator, pipValidator, type ValidationIssue, type ValidationResult, type ValidationSeverity, type ValidatorConfig, type ValidatorRegistration, ValidatorRegistry, validatePackage as validatePackagePlugin, validatePackages as validatePackagesPlugin, validatorRegistry, } from './validators/index.js';
27
40
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/agents/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/agents/index.ts"],"names":[],"mappings":"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"}