swarm-engine 1.38.0 → 1.41.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 (107) hide show
  1. package/dist/core/patterns.d.ts +7 -1
  2. package/dist/core/patterns.d.ts.map +1 -1
  3. package/dist/core/patterns.js +23 -0
  4. package/dist/core/patterns.js.map +1 -1
  5. package/dist/core/types.d.ts +9 -0
  6. package/dist/core/types.d.ts.map +1 -1
  7. package/dist/core/types.js.map +1 -1
  8. package/dist/index.d.ts +11 -2
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +8 -0
  11. package/dist/index.js.map +1 -1
  12. package/dist/memory/index.d.ts.map +1 -1
  13. package/dist/memory/index.js +3 -9
  14. package/dist/memory/index.js.map +1 -1
  15. package/dist/runtime/adaptive.d.ts +1 -0
  16. package/dist/runtime/adaptive.d.ts.map +1 -1
  17. package/dist/runtime/adaptive.js +18 -4
  18. package/dist/runtime/adaptive.js.map +1 -1
  19. package/dist/runtime/agent-runner.d.ts +8 -0
  20. package/dist/runtime/agent-runner.d.ts.map +1 -1
  21. package/dist/runtime/agent-runner.js +79 -4
  22. package/dist/runtime/agent-runner.js.map +1 -1
  23. package/dist/runtime/backends/claude-session.d.ts +49 -0
  24. package/dist/runtime/backends/claude-session.d.ts.map +1 -0
  25. package/dist/runtime/backends/claude-session.js +237 -0
  26. package/dist/runtime/backends/claude-session.js.map +1 -0
  27. package/dist/runtime/backends/claude.d.ts.map +1 -1
  28. package/dist/runtime/backends/claude.js +90 -4
  29. package/dist/runtime/backends/claude.js.map +1 -1
  30. package/dist/runtime/backends/types.d.ts +31 -1
  31. package/dist/runtime/backends/types.d.ts.map +1 -1
  32. package/dist/runtime/compaction.d.ts +7 -1
  33. package/dist/runtime/compaction.d.ts.map +1 -1
  34. package/dist/runtime/compaction.js +12 -2
  35. package/dist/runtime/compaction.js.map +1 -1
  36. package/dist/runtime/distiller.d.ts +1 -0
  37. package/dist/runtime/distiller.d.ts.map +1 -1
  38. package/dist/runtime/distiller.js +8 -2
  39. package/dist/runtime/distiller.js.map +1 -1
  40. package/dist/runtime/engine.d.ts +43 -15
  41. package/dist/runtime/engine.d.ts.map +1 -1
  42. package/dist/runtime/engine.js +355 -67
  43. package/dist/runtime/engine.js.map +1 -1
  44. package/dist/runtime/execution-graph.d.ts.map +1 -1
  45. package/dist/runtime/execution-graph.js.map +1 -1
  46. package/dist/runtime/executor.d.ts +7 -1
  47. package/dist/runtime/executor.d.ts.map +1 -1
  48. package/dist/runtime/executor.js +20 -0
  49. package/dist/runtime/executor.js.map +1 -1
  50. package/dist/runtime/graph-adversarial.d.ts.map +1 -1
  51. package/dist/runtime/graph-adversarial.js.map +1 -1
  52. package/dist/runtime/graph-analyzer.d.ts.map +1 -1
  53. package/dist/runtime/graph-analyzer.js.map +1 -1
  54. package/dist/runtime/graph-discovery.d.ts.map +1 -1
  55. package/dist/runtime/graph-discovery.js +1 -4
  56. package/dist/runtime/graph-discovery.js.map +1 -1
  57. package/dist/runtime/graph-dropout.d.ts.map +1 -1
  58. package/dist/runtime/graph-dropout.js +10 -2
  59. package/dist/runtime/graph-dropout.js.map +1 -1
  60. package/dist/runtime/graph-embeddings.d.ts.map +1 -1
  61. package/dist/runtime/graph-embeddings.js +1 -3
  62. package/dist/runtime/graph-embeddings.js.map +1 -1
  63. package/dist/runtime/graph-feedback.d.ts.map +1 -1
  64. package/dist/runtime/graph-feedback.js +1 -3
  65. package/dist/runtime/graph-feedback.js.map +1 -1
  66. package/dist/runtime/graph-gnn.d.ts.map +1 -1
  67. package/dist/runtime/graph-gnn.js.map +1 -1
  68. package/dist/runtime/graph-meta-adversarial.d.ts.map +1 -1
  69. package/dist/runtime/graph-meta-adversarial.js.map +1 -1
  70. package/dist/runtime/graph-meta.d.ts.map +1 -1
  71. package/dist/runtime/graph-meta.js +48 -20
  72. package/dist/runtime/graph-meta.js.map +1 -1
  73. package/dist/runtime/graph-self-evolve.d.ts.map +1 -1
  74. package/dist/runtime/graph-self-evolve.js.map +1 -1
  75. package/dist/runtime/graph-synthesis.d.ts.map +1 -1
  76. package/dist/runtime/graph-synthesis.js.map +1 -1
  77. package/dist/runtime/graph-trajectory.d.ts.map +1 -1
  78. package/dist/runtime/graph-trajectory.js +3 -8
  79. package/dist/runtime/graph-trajectory.js.map +1 -1
  80. package/dist/runtime/learning-engine.d.ts.map +1 -1
  81. package/dist/runtime/learning-engine.js +10 -4
  82. package/dist/runtime/learning-engine.js.map +1 -1
  83. package/dist/runtime/prompt-compressor.d.ts +16 -0
  84. package/dist/runtime/prompt-compressor.d.ts.map +1 -0
  85. package/dist/runtime/prompt-compressor.js +68 -0
  86. package/dist/runtime/prompt-compressor.js.map +1 -0
  87. package/dist/runtime/repo-map.d.ts +40 -0
  88. package/dist/runtime/repo-map.d.ts.map +1 -0
  89. package/dist/runtime/repo-map.js +358 -0
  90. package/dist/runtime/repo-map.js.map +1 -0
  91. package/dist/runtime/sdk-mcp-server.d.ts +44 -0
  92. package/dist/runtime/sdk-mcp-server.d.ts.map +1 -0
  93. package/dist/runtime/sdk-mcp-server.js +133 -0
  94. package/dist/runtime/sdk-mcp-server.js.map +1 -0
  95. package/dist/runtime/structured-handoff.d.ts +41 -0
  96. package/dist/runtime/structured-handoff.d.ts.map +1 -0
  97. package/dist/runtime/structured-handoff.js +279 -0
  98. package/dist/runtime/structured-handoff.js.map +1 -0
  99. package/dist/runtime/token-analytics.d.ts +38 -0
  100. package/dist/runtime/token-analytics.d.ts.map +1 -0
  101. package/dist/runtime/token-analytics.js +59 -0
  102. package/dist/runtime/token-analytics.js.map +1 -0
  103. package/dist/runtime/verifier.d.ts +10 -0
  104. package/dist/runtime/verifier.d.ts.map +1 -1
  105. package/dist/runtime/verifier.js +97 -1
  106. package/dist/runtime/verifier.js.map +1 -1
  107. package/package.json +1 -1
@@ -0,0 +1,41 @@
1
+ export interface StructuredHandoff {
2
+ filesTouched: string[];
3
+ decisions: string[];
4
+ constraints: string[];
5
+ codeSnippets: Array<{
6
+ file: string;
7
+ code: string;
8
+ }>;
9
+ testResults: {
10
+ passed: string[];
11
+ failed: string[];
12
+ };
13
+ openQuestions: string[];
14
+ summary: string;
15
+ }
16
+ export declare class HandoffParser {
17
+ /**
18
+ * Parse agent output into a structured handoff.
19
+ */
20
+ static parseAgentOutput(output: string): StructuredHandoff;
21
+ /**
22
+ * Serialize handoffs for the next phase within a character budget.
23
+ * Drop-in replacement for output.slice(0, 2000) — returns a string.
24
+ */
25
+ static serializeForNextPhase(handoffs: Array<{
26
+ agentName: string;
27
+ handoff: StructuredHandoff;
28
+ }>, budget?: number): string;
29
+ /**
30
+ * Fallback truncation that preserves structure instead of blind slicing.
31
+ */
32
+ static fallbackTruncate(output: string, maxChars: number): string;
33
+ private static extractFiles;
34
+ private static extractDecisions;
35
+ private static extractConstraints;
36
+ private static extractCodeSnippets;
37
+ private static extractTestResults;
38
+ private static extractOpenQuestions;
39
+ private static extractSummary;
40
+ }
41
+ //# sourceMappingURL=structured-handoff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structured-handoff.d.ts","sourceRoot":"","sources":["../../src/runtime/structured-handoff.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,WAAW,EAAE;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IACpD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AA2CD,qBAAa,aAAa;IACxB;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAwB1D;;;OAGG;IACH,MAAM,CAAC,qBAAqB,CAC1B,QAAQ,EAAE,KAAK,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,iBAAiB,CAAA;KAAE,CAAC,EAClE,MAAM,GAAE,MAAa,GACpB,MAAM;IAoGT;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IAoCjE,OAAO,CAAC,MAAM,CAAC,YAAY;IAqB3B,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAI/B,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAMjC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA0BlC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAqBjC,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAQnC,OAAO,CAAC,MAAM,CAAC,cAAc;CAiB9B"}
@@ -0,0 +1,279 @@
1
+ // ─── Structured Inter-Phase Handoff ─────────────────────────────────
2
+ // Replaces blind output.slice(0, 2000) with structured extraction
3
+ // from agent prose, preserving high-value information for downstream phases.
4
+ // ─── Regex Patterns ─────────────────────────────────────────────────
5
+ const FILE_LIST_RE = /(?:files?\s+(?:touched|modified|changed|created|edited))\s*[:]\s*(.+)/gi;
6
+ const INLINE_FILE_RE = /`([\w./-]+\.\w{1,4})`/g;
7
+ const DECISION_RE = /(?:decision|decided|chose)\s*[:]\s*(.+)/gi;
8
+ const CONSTRAINT_RE = /(?:constraint|limitation|requirement)\s*[:]\s*(.+)/gi;
9
+ const MUST_RE = /^[-*]?\s*((?:must(?:\s+not)?|cannot|requires?)\s+.+)/gim;
10
+ const CODE_BLOCK_RE = /```\w*\n([\s\S]*?)```/g;
11
+ const TEST_PASS_RE = /(?:test|spec)\s+(?:passed|pass|✓|PASS)\s*[:]?\s*(.+)?/gi;
12
+ const TEST_FAIL_RE = /(?:test|spec)\s+(?:failed|fail|✗|FAIL)\s*[:]?\s*(.+)?/gi;
13
+ const QUESTION_RE = /(?:question|todo|open|unclear|need\s+to)\s*[:]\s*(.+)/gi;
14
+ const QUESTION_MARK_RE = /^[-*]?\s*(.+\?)\s*$/gm;
15
+ const SUMMARY_SECTION_RE = /##\s*Summary\s*\n([\s\S]*?)(?=\n##|\n$|$)/i;
16
+ // ─── Helpers ────────────────────────────────────────────────────────
17
+ function matchAll(re, text) {
18
+ const results = [];
19
+ // Reset lastIndex to avoid stale state from prior calls
20
+ re.lastIndex = 0;
21
+ let m;
22
+ while ((m = re.exec(text)) !== null) {
23
+ const val = (m[1] ?? '').trim();
24
+ if (val)
25
+ results.push(val);
26
+ }
27
+ return results;
28
+ }
29
+ function unique(arr) {
30
+ return [...new Set(arr)];
31
+ }
32
+ function splitList(s) {
33
+ return s
34
+ .split(/[,;]/)
35
+ .map((x) => x.trim())
36
+ .filter(Boolean);
37
+ }
38
+ // ─── Parser ─────────────────────────────────────────────────────────
39
+ export class HandoffParser {
40
+ /**
41
+ * Parse agent output into a structured handoff.
42
+ */
43
+ static parseAgentOutput(output) {
44
+ if (!output || !output.trim()) {
45
+ return {
46
+ filesTouched: [],
47
+ decisions: [],
48
+ constraints: [],
49
+ codeSnippets: [],
50
+ testResults: { passed: [], failed: [] },
51
+ openQuestions: [],
52
+ summary: '',
53
+ };
54
+ }
55
+ const filesTouched = HandoffParser.extractFiles(output);
56
+ const decisions = HandoffParser.extractDecisions(output);
57
+ const constraints = HandoffParser.extractConstraints(output);
58
+ const codeSnippets = HandoffParser.extractCodeSnippets(output);
59
+ const testResults = HandoffParser.extractTestResults(output);
60
+ const openQuestions = HandoffParser.extractOpenQuestions(output);
61
+ const summary = HandoffParser.extractSummary(output);
62
+ return { filesTouched, decisions, constraints, codeSnippets, testResults, openQuestions, summary };
63
+ }
64
+ /**
65
+ * Serialize handoffs for the next phase within a character budget.
66
+ * Drop-in replacement for output.slice(0, 2000) — returns a string.
67
+ */
68
+ static serializeForNextPhase(handoffs, budget = 4000) {
69
+ const sections = [];
70
+ const perAgent = Math.floor(budget / Math.max(handoffs.length, 1));
71
+ for (const { agentName, handoff } of handoffs) {
72
+ const parts = [];
73
+ let used = 0;
74
+ // Header
75
+ const header = `## ${agentName} Output`;
76
+ parts.push(header);
77
+ used += header.length + 1;
78
+ // Priority 1: Summary (always)
79
+ if (handoff.summary) {
80
+ const summaryLine = `**Summary**: ${handoff.summary}`;
81
+ const truncated = summaryLine.length > perAgent / 3 ? summaryLine.slice(0, Math.floor(perAgent / 3)) + '...' : summaryLine;
82
+ parts.push(truncated);
83
+ used += truncated.length + 1;
84
+ }
85
+ // Priority 2: Files (always — small)
86
+ if (handoff.filesTouched.length > 0) {
87
+ const filesLine = `**Files**: ${handoff.filesTouched.join(', ')}`;
88
+ parts.push(filesLine);
89
+ used += filesLine.length + 1;
90
+ }
91
+ // Priority 3: Test results (always — critical)
92
+ const { passed, failed } = handoff.testResults;
93
+ if (passed.length > 0 || failed.length > 0) {
94
+ const passStr = passed.length > 0 ? `${passed.length} passed` : '';
95
+ const failStr = failed.length > 0 ? `${failed.length} failed (${failed.join(', ')})` : '';
96
+ const testLine = `**Test Results**: ${[passStr, failStr].filter(Boolean).join(', ')}`;
97
+ parts.push(testLine);
98
+ used += testLine.length + 1;
99
+ }
100
+ // Priority 4: Decisions (if budget allows)
101
+ if (handoff.decisions.length > 0 && used < perAgent * 0.7) {
102
+ const decisionsLine = `**Decisions**: ${handoff.decisions.join('; ')}`;
103
+ const remaining = perAgent - used;
104
+ if (decisionsLine.length <= remaining) {
105
+ parts.push(decisionsLine);
106
+ used += decisionsLine.length + 1;
107
+ }
108
+ else if (remaining > 30) {
109
+ parts.push(decisionsLine.slice(0, remaining - 3) + '...');
110
+ used = perAgent;
111
+ }
112
+ }
113
+ // Priority 5: Constraints (if budget allows)
114
+ if (handoff.constraints.length > 0 && used < perAgent * 0.8) {
115
+ const constraintsLine = `**Constraints**: ${handoff.constraints.join('; ')}`;
116
+ const remaining = perAgent - used;
117
+ if (constraintsLine.length <= remaining) {
118
+ parts.push(constraintsLine);
119
+ used += constraintsLine.length + 1;
120
+ }
121
+ }
122
+ // Priority 6: Open questions (if budget allows)
123
+ if (handoff.openQuestions.length > 0 && used < perAgent * 0.85) {
124
+ const questionsLine = `**Open Questions**: ${handoff.openQuestions.join('; ')}`;
125
+ const remaining = perAgent - used;
126
+ if (questionsLine.length <= remaining) {
127
+ parts.push(questionsLine);
128
+ used += questionsLine.length + 1;
129
+ }
130
+ }
131
+ // Priority 7: Code snippets (if budget allows, truncate largest first)
132
+ if (handoff.codeSnippets.length > 0 && used < perAgent * 0.9) {
133
+ const remaining = perAgent - used;
134
+ const sorted = [...handoff.codeSnippets].sort((a, b) => a.code.length - b.code.length);
135
+ let snippetBudget = remaining;
136
+ const snippetParts = [];
137
+ for (const snippet of sorted) {
138
+ const line = `\`${snippet.file}\`: \`\`\`${snippet.code}\`\`\``;
139
+ if (line.length <= snippetBudget) {
140
+ snippetParts.push(line);
141
+ snippetBudget -= line.length + 1;
142
+ }
143
+ else {
144
+ break;
145
+ }
146
+ }
147
+ if (snippetParts.length > 0) {
148
+ parts.push(`**Code**: ${snippetParts.join(' | ')}`);
149
+ }
150
+ }
151
+ sections.push(parts.join('\n'));
152
+ }
153
+ return sections.join('\n\n');
154
+ }
155
+ /**
156
+ * Fallback truncation that preserves structure instead of blind slicing.
157
+ */
158
+ static fallbackTruncate(output, maxChars) {
159
+ if (output.length <= maxChars)
160
+ return output;
161
+ // Try to find a summary section first
162
+ const summaryMatch = SUMMARY_SECTION_RE.exec(output);
163
+ if (summaryMatch) {
164
+ const summary = summaryMatch[1].trim();
165
+ if (summary.length <= maxChars) {
166
+ return summary;
167
+ }
168
+ }
169
+ // Extract first paragraph
170
+ const firstParagraph = output.split(/\n\s*\n/)[0] || '';
171
+ // Extract file references
172
+ const fileRefs = unique(HandoffParser.extractFiles(output));
173
+ const fileSection = fileRefs.length > 0 ? `\nFiles: ${fileRefs.join(', ')}` : '';
174
+ // Get the end of the output (often contains conclusions)
175
+ const headerSize = firstParagraph.length + fileSection.length + 20; // 20 for separator
176
+ const tailBudget = maxChars - headerSize;
177
+ if (tailBudget > 100) {
178
+ const tail = output.slice(output.length - tailBudget);
179
+ return `${firstParagraph}${fileSection}\n\n[...]\n\n${tail}`;
180
+ }
181
+ // Just first paragraph + files if budget is very tight
182
+ const combined = `${firstParagraph}${fileSection}`;
183
+ if (combined.length <= maxChars)
184
+ return combined;
185
+ return combined.slice(0, maxChars - 3) + '...';
186
+ }
187
+ // ─── Private Extractors ──────────────────────────────────────────
188
+ static extractFiles(output) {
189
+ const fromLists = [];
190
+ for (const raw of matchAll(FILE_LIST_RE, output)) {
191
+ fromLists.push(...splitList(raw));
192
+ }
193
+ const fromInline = [];
194
+ INLINE_FILE_RE.lastIndex = 0;
195
+ let m;
196
+ while ((m = INLINE_FILE_RE.exec(output)) !== null) {
197
+ const candidate = m[1];
198
+ // Filter out common non-file patterns (single words without path separators
199
+ // that don't look like files, e.g. `true`, `false`, `null`)
200
+ if (candidate.includes('/') || candidate.includes('.')) {
201
+ fromInline.push(candidate);
202
+ }
203
+ }
204
+ return unique([...fromLists, ...fromInline]);
205
+ }
206
+ static extractDecisions(output) {
207
+ return unique(matchAll(DECISION_RE, output));
208
+ }
209
+ static extractConstraints(output) {
210
+ const explicit = matchAll(CONSTRAINT_RE, output);
211
+ const must = matchAll(MUST_RE, output);
212
+ return unique([...explicit, ...must]);
213
+ }
214
+ static extractCodeSnippets(output) {
215
+ const snippets = [];
216
+ CODE_BLOCK_RE.lastIndex = 0;
217
+ let m;
218
+ while ((m = CODE_BLOCK_RE.exec(output)) !== null) {
219
+ const code = m[1].trim();
220
+ if (!code)
221
+ continue;
222
+ // Try to find a file reference in the 200 chars preceding the code block
223
+ const precedingStart = Math.max(0, m.index - 200);
224
+ const preceding = output.slice(precedingStart, m.index);
225
+ INLINE_FILE_RE.lastIndex = 0;
226
+ let fileMatch = null;
227
+ let lastFile = null;
228
+ while ((fileMatch = INLINE_FILE_RE.exec(preceding)) !== null) {
229
+ lastFile = fileMatch;
230
+ }
231
+ const file = lastFile ? lastFile[1] : 'unknown';
232
+ snippets.push({ file, code });
233
+ }
234
+ return snippets;
235
+ }
236
+ static extractTestResults(output) {
237
+ const passed = matchAll(TEST_PASS_RE, output).flatMap(splitList).filter(Boolean);
238
+ const failed = matchAll(TEST_FAIL_RE, output).flatMap(splitList).filter(Boolean);
239
+ // Also look for ✓/✗ markers in line context
240
+ const lines = output.split('\n');
241
+ for (const line of lines) {
242
+ const trimmed = line.trim();
243
+ if (/^[✓✔]\s+(.+)/.test(trimmed)) {
244
+ const name = trimmed.replace(/^[✓✔]\s+/, '').trim();
245
+ if (name && !passed.includes(name))
246
+ passed.push(name);
247
+ }
248
+ if (/^[✗✘]\s+(.+)/.test(trimmed)) {
249
+ const name = trimmed.replace(/^[✗✘]\s+/, '').trim();
250
+ if (name && !failed.includes(name))
251
+ failed.push(name);
252
+ }
253
+ }
254
+ return { passed: unique(passed), failed: unique(failed) };
255
+ }
256
+ static extractOpenQuestions(output) {
257
+ const explicit = matchAll(QUESTION_RE, output);
258
+ const questionMarks = matchAll(QUESTION_MARK_RE, output);
259
+ // Filter question-mark lines to avoid picking up rhetorical questions in prose
260
+ const filtered = questionMarks.filter((q) => q.length < 200);
261
+ return unique([...explicit, ...filtered]);
262
+ }
263
+ static extractSummary(output) {
264
+ // Check for explicit summary section
265
+ SUMMARY_SECTION_RE.lastIndex = 0;
266
+ const sectionMatch = SUMMARY_SECTION_RE.exec(output);
267
+ if (sectionMatch) {
268
+ return sectionMatch[1].trim().slice(0, 500);
269
+ }
270
+ // Fallback: first paragraph
271
+ const firstParagraph = output.split(/\n\s*\n/)[0]?.trim() || '';
272
+ if (firstParagraph.length > 0) {
273
+ return firstParagraph.slice(0, 500);
274
+ }
275
+ // Last resort: first 200 chars
276
+ return output.trim().slice(0, 200);
277
+ }
278
+ }
279
+ //# sourceMappingURL=structured-handoff.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structured-handoff.js","sourceRoot":"","sources":["../../src/runtime/structured-handoff.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,kEAAkE;AAClE,6EAA6E;AAY7E,uEAAuE;AAEvE,MAAM,YAAY,GAAG,yEAAyE,CAAC;AAC/F,MAAM,cAAc,GAAG,wBAAwB,CAAC;AAChD,MAAM,WAAW,GAAG,2CAA2C,CAAC;AAChE,MAAM,aAAa,GAAG,sDAAsD,CAAC;AAC7E,MAAM,OAAO,GAAG,yDAAyD,CAAC;AAC1E,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAC/C,MAAM,YAAY,GAAG,yDAAyD,CAAC;AAC/E,MAAM,YAAY,GAAG,yDAAyD,CAAC;AAC/E,MAAM,WAAW,GAAG,yDAAyD,CAAC;AAC9E,MAAM,gBAAgB,GAAG,uBAAuB,CAAC;AACjD,MAAM,kBAAkB,GAAG,4CAA4C,CAAC;AAExE,uEAAuE;AAEvE,SAAS,QAAQ,CAAC,EAAU,EAAE,IAAY;IACxC,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,wDAAwD;IACxD,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC;IACjB,IAAI,CAAyB,CAAC;IAC9B,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,GAAG;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,MAAM,CAAC,GAAa;IAC3B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IAC1B,OAAO,CAAC;SACL,KAAK,CAAC,MAAM,CAAC;SACb,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC;AAED,uEAAuE;AAEvE,MAAM,OAAO,aAAa;IACxB;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAc;QACpC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;YAC9B,OAAO;gBACL,YAAY,EAAE,EAAE;gBAChB,SAAS,EAAE,EAAE;gBACb,WAAW,EAAE,EAAE;gBACf,YAAY,EAAE,EAAE;gBAChB,WAAW,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;gBACvC,aAAa,EAAE,EAAE;gBACjB,OAAO,EAAE,EAAE;aACZ,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACxD,MAAM,SAAS,GAAG,aAAa,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,WAAW,GAAG,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC7D,MAAM,YAAY,GAAG,aAAa,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC7D,MAAM,aAAa,GAAG,aAAa,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QACjE,MAAM,OAAO,GAAG,aAAa,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAErD,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;IACrG,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,qBAAqB,CAC1B,QAAkE,EAClE,SAAiB,IAAI;QAErB,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QAEnE,KAAK,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC9C,MAAM,KAAK,GAAa,EAAE,CAAC;YAC3B,IAAI,IAAI,GAAG,CAAC,CAAC;YAEb,SAAS;YACT,MAAM,MAAM,GAAG,MAAM,SAAS,SAAS,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACnB,IAAI,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAE1B,+BAA+B;YAC/B,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,WAAW,GAAG,gBAAgB,OAAO,CAAC,OAAO,EAAE,CAAC;gBACtD,MAAM,SAAS,GACb,WAAW,CAAC,MAAM,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC;gBAC3G,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACtB,IAAI,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;YAC/B,CAAC;YAED,qCAAqC;YACrC,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,SAAS,GAAG,cAAc,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACtB,IAAI,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;YAC/B,CAAC;YAED,+CAA+C;YAC/C,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC;YAC/C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnE,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,YAAY,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1F,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtF,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACrB,IAAI,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;YAC9B,CAAC;YAED,2CAA2C;YAC3C,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,GAAG,QAAQ,GAAG,GAAG,EAAE,CAAC;gBAC1D,MAAM,aAAa,GAAG,kBAAkB,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvE,MAAM,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC;gBAClC,IAAI,aAAa,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;oBACtC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAC1B,IAAI,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;gBACnC,CAAC;qBAAM,IAAI,SAAS,GAAG,EAAE,EAAE,CAAC;oBAC1B,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;oBAC1D,IAAI,GAAG,QAAQ,CAAC;gBAClB,CAAC;YACH,CAAC;YAED,6CAA6C;YAC7C,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,GAAG,QAAQ,GAAG,GAAG,EAAE,CAAC;gBAC5D,MAAM,eAAe,GAAG,oBAAoB,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC7E,MAAM,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC;gBAClC,IAAI,eAAe,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;oBACxC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oBAC5B,IAAI,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;gBACrC,CAAC;YACH,CAAC;YAED,gDAAgD;YAChD,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,GAAG,QAAQ,GAAG,IAAI,EAAE,CAAC;gBAC/D,MAAM,aAAa,GAAG,uBAAuB,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChF,MAAM,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC;gBAClC,IAAI,aAAa,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC;oBACtC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAC1B,IAAI,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,uEAAuE;YACvE,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,GAAG,QAAQ,GAAG,GAAG,EAAE,CAAC;gBAC7D,MAAM,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC;gBAClC,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvF,IAAI,aAAa,GAAG,SAAS,CAAC;gBAC9B,MAAM,YAAY,GAAa,EAAE,CAAC;gBAElC,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;oBAC7B,MAAM,IAAI,GAAG,KAAK,OAAO,CAAC,IAAI,aAAa,OAAO,CAAC,IAAI,QAAQ,CAAC;oBAChE,IAAI,IAAI,CAAC,MAAM,IAAI,aAAa,EAAE,CAAC;wBACjC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACxB,aAAa,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;oBACnC,CAAC;yBAAM,CAAC;wBACN,MAAM;oBACR,CAAC;gBACH,CAAC;gBAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,KAAK,CAAC,IAAI,CAAC,aAAa,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,MAAc,EAAE,QAAgB;QACtD,IAAI,MAAM,CAAC,MAAM,IAAI,QAAQ;YAAE,OAAO,MAAM,CAAC;QAE7C,sCAAsC;QACtC,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,IAAI,OAAO,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC/B,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAED,0BAA0B;QAC1B,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAExD,0BAA0B;QAC1B,MAAM,QAAQ,GAAG,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5D,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAEjF,yDAAyD;QACzD,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,mBAAmB;QACvF,MAAM,UAAU,GAAG,QAAQ,GAAG,UAAU,CAAC;QAEzC,IAAI,UAAU,GAAG,GAAG,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAC,CAAC;YACtD,OAAO,GAAG,cAAc,GAAG,WAAW,gBAAgB,IAAI,EAAE,CAAC;QAC/D,CAAC;QAED,uDAAuD;QACvD,MAAM,QAAQ,GAAG,GAAG,cAAc,GAAG,WAAW,EAAE,CAAC;QACnD,IAAI,QAAQ,CAAC,MAAM,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QACjD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;IACjD,CAAC;IAED,oEAAoE;IAE5D,MAAM,CAAC,YAAY,CAAC,MAAc;QACxC,MAAM,SAAS,GAAa,EAAE,CAAC;QAC/B,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC;YACjD,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;QACpC,CAAC;QAED,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,cAAc,CAAC,SAAS,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAyB,CAAC;QAC9B,OAAO,CAAC,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAClD,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACvB,4EAA4E;YAC5E,4DAA4D;YAC5D,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvD,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,CAAC,GAAG,SAAS,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC;IAC/C,CAAC;IAEO,MAAM,CAAC,gBAAgB,CAAC,MAAc;QAC5C,OAAO,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/C,CAAC;IAEO,MAAM,CAAC,kBAAkB,CAAC,MAAc;QAC9C,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACvC,OAAO,MAAM,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;IACxC,CAAC;IAEO,MAAM,CAAC,mBAAmB,CAAC,MAAc;QAC/C,MAAM,QAAQ,GAA0C,EAAE,CAAC;QAC3D,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAyB,CAAC;QAE9B,OAAO,CAAC,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACjD,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI;gBAAE,SAAS;YAEpB,yEAAyE;YACzE,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YACxD,cAAc,CAAC,SAAS,GAAG,CAAC,CAAC;YAC7B,IAAI,SAAS,GAA2B,IAAI,CAAC;YAC7C,IAAI,QAAQ,GAA2B,IAAI,CAAC;YAC5C,OAAO,CAAC,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC7D,QAAQ,GAAG,SAAS,CAAC;YACvB,CAAC;YAED,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAChD,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,MAAM,CAAC,kBAAkB,CAAC,MAAc;QAC9C,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjF,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAEjF,4CAA4C;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAC5B,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACpD,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxD,CAAC;YACD,IAAI,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;gBACpD,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IAC5D,CAAC;IAEO,MAAM,CAAC,oBAAoB,CAAC,MAAc;QAChD,MAAM,QAAQ,GAAG,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC/C,MAAM,aAAa,GAAG,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;QACzD,+EAA+E;QAC/E,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QAC7D,OAAO,MAAM,CAAC,CAAC,GAAG,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC;IAC5C,CAAC;IAEO,MAAM,CAAC,cAAc,CAAC,MAAc;QAC1C,qCAAqC;QACrC,kBAAkB,CAAC,SAAS,GAAG,CAAC,CAAC;QACjC,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC9C,CAAC;QAED,4BAA4B;QAC5B,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAChE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACtC,CAAC;QAED,+BAA+B;QAC/B,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;CACF"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * TokenAnalytics — tracks and analyzes token usage patterns across agents.
3
+ */
4
+ export interface AgentTokenRecord {
5
+ agentId: string;
6
+ agentType: string;
7
+ phaseKind: string;
8
+ inputTokens: number;
9
+ outputTokens: number;
10
+ totalTokens: number;
11
+ outputLength: number;
12
+ turnsUsed: number;
13
+ costUsd: number;
14
+ efficiency: number;
15
+ }
16
+ export interface WasteReport {
17
+ totalTokens: number;
18
+ estimatedWastedTokens: number;
19
+ efficiencyScore: number;
20
+ byAgent: AgentTokenRecord[];
21
+ savingsOpportunities: string[];
22
+ }
23
+ export declare class TokenAnalytics {
24
+ private records;
25
+ /** Record token usage for an agent */
26
+ record(rec: Omit<AgentTokenRecord, 'efficiency'>): void;
27
+ /** Get waste analysis */
28
+ getWasteReport(): WasteReport;
29
+ /** Get per-phase breakdown */
30
+ getPhaseBreakdown(): Map<string, {
31
+ tokens: number;
32
+ agents: number;
33
+ avgEfficiency: number;
34
+ }>;
35
+ /** Reset for new orchestration */
36
+ reset(): void;
37
+ }
38
+ //# sourceMappingURL=token-analytics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-analytics.d.ts","sourceRoot":"","sources":["../../src/runtime/token-analytics.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,oBAAoB,EAAE,MAAM,EAAE,CAAC;CAChC;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAA0B;IAEzC,sCAAsC;IACtC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,GAAG,IAAI;IAKvD,yBAAyB;IACzB,cAAc,IAAI,WAAW;IA+B7B,8BAA8B;IAC9B,iBAAiB,IAAI,GAAG,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAiB3F,kCAAkC;IAClC,KAAK,IAAI,IAAI;CAGd"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * TokenAnalytics — tracks and analyzes token usage patterns across agents.
3
+ */
4
+ export class TokenAnalytics {
5
+ records = [];
6
+ /** Record token usage for an agent */
7
+ record(rec) {
8
+ const efficiency = rec.totalTokens > 0 ? rec.outputLength / rec.totalTokens : 0;
9
+ this.records.push({ ...rec, efficiency });
10
+ }
11
+ /** Get waste analysis */
12
+ getWasteReport() {
13
+ const totalTokens = this.records.reduce((s, r) => s + r.totalTokens, 0);
14
+ const opportunities = [];
15
+ // 1. Agents with efficiency < 0.1 (used many tokens, produced little)
16
+ const inefficient = this.records.filter((r) => r.efficiency < 0.1 && r.totalTokens > 1000);
17
+ if (inefficient.length) {
18
+ opportunities.push(`${inefficient.length} agent(s) with <10% efficiency: ${inefficient.map((r) => r.agentType).join(', ')}`);
19
+ }
20
+ // 2. Agents that exceeded typical turns for their type
21
+ const turnLimits = { researcher: 15, implementer: 25, reviewer: 10 };
22
+ const overTurns = this.records.filter((r) => r.turnsUsed > (turnLimits[r.agentType] || 20));
23
+ if (overTurns.length) {
24
+ opportunities.push(`${overTurns.length} agent(s) exceeded turn limits`);
25
+ }
26
+ const estimatedWasted = inefficient.reduce((s, r) => s + r.totalTokens * 0.7, 0);
27
+ const efficiencyScore = totalTokens > 0 ? 1 - estimatedWasted / totalTokens : 1;
28
+ return {
29
+ totalTokens,
30
+ estimatedWastedTokens: Math.round(estimatedWasted),
31
+ efficiencyScore: Math.round(efficiencyScore * 100) / 100,
32
+ byAgent: [...this.records].sort((a, b) => b.totalTokens - a.totalTokens),
33
+ savingsOpportunities: opportunities,
34
+ };
35
+ }
36
+ /** Get per-phase breakdown */
37
+ getPhaseBreakdown() {
38
+ const byPhase = new Map();
39
+ for (const r of this.records) {
40
+ if (!byPhase.has(r.phaseKind))
41
+ byPhase.set(r.phaseKind, []);
42
+ byPhase.get(r.phaseKind).push(r);
43
+ }
44
+ const result = new Map();
45
+ for (const [phase, recs] of byPhase) {
46
+ result.set(phase, {
47
+ tokens: recs.reduce((s, r) => s + r.totalTokens, 0),
48
+ agents: recs.length,
49
+ avgEfficiency: recs.reduce((s, r) => s + r.efficiency, 0) / recs.length,
50
+ });
51
+ }
52
+ return result;
53
+ }
54
+ /** Reset for new orchestration */
55
+ reset() {
56
+ this.records = [];
57
+ }
58
+ }
59
+ //# sourceMappingURL=token-analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token-analytics.js","sourceRoot":"","sources":["../../src/runtime/token-analytics.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,16 @@ export declare class Verifier {
29
29
  static summarize(results: VerificationResult[]): string;
30
30
  /** Auto-detect verification commands from project files */
31
31
  private detectCommands;
32
+ /** Map changed files to their corresponding test files and run only those */
33
+ getRelevantTests(changedFiles: string[]): Promise<{
34
+ results: string;
35
+ passed: boolean;
36
+ }>;
37
+ /** Run lint and typecheck before the review phase */
38
+ runPreReviewChecks(): Promise<{
39
+ issues: string;
40
+ hasIssues: boolean;
41
+ }>;
32
42
  /** Get configured commands */
33
43
  getCommands(): VerificationCommand[];
34
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../../src/runtime/verifier.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAIhD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,gBAAgB,EAAE,cAI9B,CAAC;AAEF,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,GAAG,CAAS;gBAER,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAUzD,uDAAuD;IACjD,MAAM,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAkC7C,wCAAwC;IAClC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAKjC,mDAAmD;IACnD,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,MAAM;IAKvD,2DAA2D;IAC3D,OAAO,CAAC,cAAc;IA2DtB,8BAA8B;IAC9B,WAAW,IAAI,mBAAmB,EAAE;CAGrC;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,GAAG,CAAW;IACtB,OAAO,CAAC,aAAa,CAA+B;IACpD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAA4B;gBAEnC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,GAAE,MAAa;IAMxE,wCAAwC;IACxC,KAAK,IAAI,IAAI;IAYb,sBAAsB;IACtB,IAAI,IAAI,IAAI;IAOZ,oCAAoC;IACpC,cAAc,IAAI,kBAAkB,EAAE;IAItC,OAAO,CAAC,oBAAoB;CAwB7B"}
1
+ {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../../src/runtime/verifier.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAIhD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,mBAAmB,EAAE,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,eAAO,MAAM,gBAAgB,EAAE,cAI9B,CAAC;AAEF,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,GAAG,CAAS;gBAER,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC;IAUzD,uDAAuD;IACjD,MAAM,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAkC7C,wCAAwC;IAClC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAKjC,mDAAmD;IACnD,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,kBAAkB,EAAE,GAAG,MAAM;IAKvD,2DAA2D;IAC3D,OAAO,CAAC,cAAc;IA2DtB,6EAA6E;IACvE,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IA6D7F,qDAAqD;IAC/C,kBAAkB,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC;IAoC3E,8BAA8B;IAC9B,WAAW,IAAI,mBAAmB,EAAE;CAGrC;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,GAAG,CAAW;IACtB,OAAO,CAAC,aAAa,CAA+B;IACpD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,WAAW,CAA4B;gBAEnC,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU,GAAE,MAAa;IAMxE,wCAAwC;IACxC,KAAK,IAAI,IAAI;IAYb,sBAAsB;IACtB,IAAI,IAAI,IAAI;IAOZ,oCAAoC;IACpC,cAAc,IAAI,kBAAkB,EAAE;IAItC,OAAO,CAAC,oBAAoB;CAwB7B"}
@@ -1,7 +1,7 @@
1
1
  import { execFile } from 'child_process';
2
2
  import { promisify } from 'util';
3
3
  import { existsSync, readFileSync } from 'fs';
4
- import { join } from 'path';
4
+ import { join, dirname, basename } from 'path';
5
5
  const execFileAsync = promisify(execFile);
6
6
  export const DEFAULT_VERIFIER = {
7
7
  enabled: true,
@@ -112,6 +112,102 @@ export class Verifier {
112
112
  }
113
113
  return commands;
114
114
  }
115
+ /** Map changed files to their corresponding test files and run only those */
116
+ async getRelevantTests(changedFiles) {
117
+ const testFiles = [];
118
+ for (const file of changedFiles) {
119
+ // TypeScript/JavaScript
120
+ if (file.match(/\.(ts|js|tsx|jsx)$/)) {
121
+ const ext = file.match(/\.(ts|js|tsx|jsx)$/)[1];
122
+ const testPath = file.replace(/^src\//, 'tests/').replace(/\.(ts|js|tsx|jsx)$/, `.test.${ext}`);
123
+ if (existsSync(join(this.cwd, testPath))) {
124
+ testFiles.push(testPath);
125
+ }
126
+ }
127
+ // Python
128
+ if (file.endsWith('.py')) {
129
+ const dir = dirname(file);
130
+ const base = basename(file, '.py');
131
+ const testPath = join(dir.replace(/^(src|lib)(\/|$)/, 'tests$2'), `test_${base}.py`);
132
+ if (existsSync(join(this.cwd, testPath))) {
133
+ testFiles.push(testPath);
134
+ }
135
+ }
136
+ // Go
137
+ if (file.endsWith('.go') && !file.endsWith('_test.go')) {
138
+ const testPath = file.replace(/\.go$/, '_test.go');
139
+ if (existsSync(join(this.cwd, testPath))) {
140
+ testFiles.push(testPath);
141
+ }
142
+ }
143
+ }
144
+ if (testFiles.length === 0) {
145
+ return { results: 'No relevant test files found.', passed: true };
146
+ }
147
+ // Run relevant tests — detect test runner from project type
148
+ try {
149
+ let cmd, args;
150
+ if (existsSync(join(this.cwd, 'vitest.config.ts')) || existsSync(join(this.cwd, 'vitest.config.js'))) {
151
+ cmd = 'npx';
152
+ args = ['vitest', 'run', ...testFiles];
153
+ }
154
+ else if (existsSync(join(this.cwd, 'jest.config.ts')) || existsSync(join(this.cwd, 'jest.config.js'))) {
155
+ cmd = 'npx';
156
+ args = ['jest', '--no-coverage', ...testFiles];
157
+ }
158
+ else if (existsSync(join(this.cwd, 'package.json'))) {
159
+ cmd = 'npx';
160
+ args = ['vitest', 'run', ...testFiles]; // default for TS
161
+ }
162
+ else {
163
+ return { results: 'Could not detect test runner.', passed: true };
164
+ }
165
+ const { stdout } = await execFileAsync(cmd, args, {
166
+ cwd: this.cwd,
167
+ timeout: 30000,
168
+ encoding: 'utf-8',
169
+ });
170
+ return { results: stdout.slice(-1000), passed: true };
171
+ }
172
+ catch (e) {
173
+ return { results: (e.stdout || e.stderr || e.message || '').slice(-1000), passed: false };
174
+ }
175
+ }
176
+ /** Run lint and typecheck before the review phase */
177
+ async runPreReviewChecks() {
178
+ const issues = [];
179
+ // TypeScript typecheck
180
+ if (existsSync(join(this.cwd, 'tsconfig.json'))) {
181
+ try {
182
+ await execFileAsync('npx', ['tsc', '--noEmit'], {
183
+ cwd: this.cwd,
184
+ timeout: 30000,
185
+ encoding: 'utf-8',
186
+ });
187
+ }
188
+ catch (e) {
189
+ issues.push(`TypeScript errors:\n${(e.stdout || e.stderr || e.message || '').slice(0, 1000)}`);
190
+ }
191
+ }
192
+ // ESLint
193
+ const eslintConfigs = ['eslint.config.js', 'eslint.config.mjs', '.eslintrc.json', '.eslintrc.js'];
194
+ if (eslintConfigs.some((c) => existsSync(join(this.cwd, c)))) {
195
+ try {
196
+ await execFileAsync('npx', ['eslint', '.', '--max-warnings=0'], {
197
+ cwd: this.cwd,
198
+ timeout: 30000,
199
+ encoding: 'utf-8',
200
+ });
201
+ }
202
+ catch (e) {
203
+ issues.push(`ESLint issues:\n${(e.stdout || e.stderr || e.message || '').slice(0, 1000)}`);
204
+ }
205
+ }
206
+ return {
207
+ issues: issues.join('\n\n'),
208
+ hasIssues: issues.length > 0,
209
+ };
210
+ }
115
211
  /** Get configured commands */
116
212
  getCommands() {
117
213
  return this.config.commands;
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../../src/runtime/verifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../../src/runtime/verifier.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "swarm-engine",
3
- "version": "1.38.0",
3
+ "version": "1.41.0",
4
4
  "description": "Self-aware multi-agent orchestration engine with knowledge graph, causal inference, GNN failure prediction, and self-evolving rules — pure TypeScript",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",