agentic-qe 1.8.4 → 1.9.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 (212) hide show
  1. package/.claude/skills/agentic-jujutsu/SKILL.md +645 -0
  2. package/CHANGELOG.md +375 -0
  3. package/README.md +86 -18
  4. package/dist/App.d.ts +5 -0
  5. package/dist/App.d.ts.map +1 -0
  6. package/dist/App.js +15 -0
  7. package/dist/App.js.map +1 -0
  8. package/dist/cli/commands/constitution.d.ts +34 -0
  9. package/dist/cli/commands/constitution.d.ts.map +1 -0
  10. package/dist/cli/commands/constitution.js +679 -0
  11. package/dist/cli/commands/constitution.js.map +1 -0
  12. package/dist/cli/commands/init.d.ts +8 -75
  13. package/dist/cli/commands/init.d.ts.map +1 -1
  14. package/dist/cli/commands/init.js +22 -2292
  15. package/dist/cli/commands/init.js.map +1 -1
  16. package/dist/cli/commands/telemetry.d.ts +36 -0
  17. package/dist/cli/commands/telemetry.d.ts.map +1 -0
  18. package/dist/cli/commands/telemetry.js +364 -0
  19. package/dist/cli/commands/telemetry.js.map +1 -0
  20. package/dist/cli/index.js +66 -0
  21. package/dist/cli/index.js.map +1 -1
  22. package/dist/cli/init/agents.d.ts +22 -0
  23. package/dist/cli/init/agents.d.ts.map +1 -0
  24. package/dist/cli/init/agents.js +522 -0
  25. package/dist/cli/init/agents.js.map +1 -0
  26. package/dist/cli/init/bash-wrapper.d.ts +14 -0
  27. package/dist/cli/init/bash-wrapper.d.ts.map +1 -0
  28. package/dist/cli/init/bash-wrapper.js +47 -0
  29. package/dist/cli/init/bash-wrapper.js.map +1 -0
  30. package/dist/cli/init/claude-config.d.ts +24 -0
  31. package/dist/cli/init/claude-config.d.ts.map +1 -0
  32. package/dist/cli/init/claude-config.js +275 -0
  33. package/dist/cli/init/claude-config.js.map +1 -0
  34. package/dist/cli/init/claude-md.d.ts +19 -0
  35. package/dist/cli/init/claude-md.d.ts.map +1 -0
  36. package/dist/cli/init/claude-md.js +153 -0
  37. package/dist/cli/init/claude-md.js.map +1 -0
  38. package/dist/cli/init/commands.d.ts +6 -0
  39. package/dist/cli/init/commands.d.ts.map +1 -0
  40. package/dist/cli/init/commands.js +83 -0
  41. package/dist/cli/init/commands.js.map +1 -0
  42. package/dist/cli/init/database-init.d.ts +15 -0
  43. package/dist/cli/init/database-init.d.ts.map +1 -0
  44. package/dist/cli/init/database-init.js +203 -0
  45. package/dist/cli/init/database-init.js.map +1 -0
  46. package/dist/cli/init/directory-structure.d.ts +14 -0
  47. package/dist/cli/init/directory-structure.d.ts.map +1 -0
  48. package/dist/cli/init/directory-structure.js +107 -0
  49. package/dist/cli/init/directory-structure.js.map +1 -0
  50. package/dist/cli/init/documentation.d.ts +14 -0
  51. package/dist/cli/init/documentation.d.ts.map +1 -0
  52. package/dist/cli/init/documentation.js +195 -0
  53. package/dist/cli/init/documentation.js.map +1 -0
  54. package/dist/cli/init/fleet-config.d.ts +34 -0
  55. package/dist/cli/init/fleet-config.d.ts.map +1 -0
  56. package/dist/cli/init/fleet-config.js +269 -0
  57. package/dist/cli/init/fleet-config.js.map +1 -0
  58. package/dist/cli/init/helpers.d.ts +6 -0
  59. package/dist/cli/init/helpers.d.ts.map +1 -0
  60. package/dist/cli/init/helpers.js +94 -0
  61. package/dist/cli/init/helpers.js.map +1 -0
  62. package/dist/cli/init/index.d.ts +32 -0
  63. package/dist/cli/init/index.d.ts.map +1 -0
  64. package/dist/cli/init/index.js +294 -0
  65. package/dist/cli/init/index.js.map +1 -0
  66. package/dist/cli/init/skills.d.ts +6 -0
  67. package/dist/cli/init/skills.d.ts.map +1 -0
  68. package/dist/cli/init/skills.js +138 -0
  69. package/dist/cli/init/skills.js.map +1 -0
  70. package/dist/cli/init/utils/file-utils.d.ts +74 -0
  71. package/dist/cli/init/utils/file-utils.d.ts.map +1 -0
  72. package/dist/cli/init/utils/file-utils.js +187 -0
  73. package/dist/cli/init/utils/file-utils.js.map +1 -0
  74. package/dist/cli/init/utils/index.d.ts +18 -0
  75. package/dist/cli/init/utils/index.d.ts.map +1 -0
  76. package/dist/cli/init/utils/index.js +48 -0
  77. package/dist/cli/init/utils/index.js.map +1 -0
  78. package/dist/cli/init/utils/log-utils.d.ts +47 -0
  79. package/dist/cli/init/utils/log-utils.d.ts.map +1 -0
  80. package/dist/cli/init/utils/log-utils.js +68 -0
  81. package/dist/cli/init/utils/log-utils.js.map +1 -0
  82. package/dist/cli/init/utils/path-utils.d.ts +91 -0
  83. package/dist/cli/init/utils/path-utils.d.ts.map +1 -0
  84. package/dist/cli/init/utils/path-utils.js +208 -0
  85. package/dist/cli/init/utils/path-utils.js.map +1 -0
  86. package/dist/cli/init/utils/validation-utils.d.ts +44 -0
  87. package/dist/cli/init/utils/validation-utils.d.ts.map +1 -0
  88. package/dist/cli/init/utils/validation-utils.js +68 -0
  89. package/dist/cli/init/utils/validation-utils.js.map +1 -0
  90. package/dist/cli/init/utils.d.ts +183 -0
  91. package/dist/cli/init/utils.d.ts.map +1 -0
  92. package/dist/cli/init/utils.js +354 -0
  93. package/dist/cli/init/utils.js.map +1 -0
  94. package/dist/components/Dashboard/Dashboard.d.ts +4 -0
  95. package/dist/components/Dashboard/Dashboard.d.ts.map +1 -0
  96. package/dist/components/Dashboard/Dashboard.js +148 -0
  97. package/dist/components/Dashboard/Dashboard.js.map +1 -0
  98. package/dist/components/Dashboard/DashboardHeader.d.ts +4 -0
  99. package/dist/components/Dashboard/DashboardHeader.d.ts.map +1 -0
  100. package/dist/components/Dashboard/DashboardHeader.js +138 -0
  101. package/dist/components/Dashboard/DashboardHeader.js.map +1 -0
  102. package/dist/constitution/evaluators/ast-evaluator.d.ts +42 -0
  103. package/dist/constitution/evaluators/ast-evaluator.d.ts.map +1 -0
  104. package/dist/constitution/evaluators/ast-evaluator.js +303 -0
  105. package/dist/constitution/evaluators/ast-evaluator.js.map +1 -0
  106. package/dist/constitution/evaluators/base.d.ts +144 -0
  107. package/dist/constitution/evaluators/base.d.ts.map +1 -0
  108. package/dist/constitution/evaluators/base.js +144 -0
  109. package/dist/constitution/evaluators/base.js.map +1 -0
  110. package/dist/constitution/evaluators/index.d.ts +19 -0
  111. package/dist/constitution/evaluators/index.d.ts.map +1 -0
  112. package/dist/constitution/evaluators/index.js +56 -0
  113. package/dist/constitution/evaluators/index.js.map +1 -0
  114. package/dist/constitution/evaluators/metric-evaluator.d.ts +59 -0
  115. package/dist/constitution/evaluators/metric-evaluator.d.ts.map +1 -0
  116. package/dist/constitution/evaluators/metric-evaluator.js +195 -0
  117. package/dist/constitution/evaluators/metric-evaluator.js.map +1 -0
  118. package/dist/constitution/evaluators/pattern-evaluator.d.ts +66 -0
  119. package/dist/constitution/evaluators/pattern-evaluator.d.ts.map +1 -0
  120. package/dist/constitution/evaluators/pattern-evaluator.js +221 -0
  121. package/dist/constitution/evaluators/pattern-evaluator.js.map +1 -0
  122. package/dist/constitution/evaluators/semantic-evaluator.d.ts +68 -0
  123. package/dist/constitution/evaluators/semantic-evaluator.d.ts.map +1 -0
  124. package/dist/constitution/evaluators/semantic-evaluator.js +250 -0
  125. package/dist/constitution/evaluators/semantic-evaluator.js.map +1 -0
  126. package/dist/contexts/DashboardContext.d.ts +41 -0
  127. package/dist/contexts/DashboardContext.d.ts.map +1 -0
  128. package/dist/contexts/DashboardContext.js +187 -0
  129. package/dist/contexts/DashboardContext.js.map +1 -0
  130. package/dist/core/memory/SwarmMemoryManager.d.ts +40 -0
  131. package/dist/core/memory/SwarmMemoryManager.d.ts.map +1 -1
  132. package/dist/core/memory/SwarmMemoryManager.js +279 -120
  133. package/dist/core/memory/SwarmMemoryManager.js.map +1 -1
  134. package/dist/hooks/useKeyboardShortcuts.d.ts +12 -0
  135. package/dist/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  136. package/dist/hooks/useKeyboardShortcuts.js +69 -0
  137. package/dist/hooks/useKeyboardShortcuts.js.map +1 -0
  138. package/dist/telemetry/instrumentation/agent.d.ts +158 -0
  139. package/dist/telemetry/instrumentation/agent.d.ts.map +1 -0
  140. package/dist/telemetry/instrumentation/agent.js +372 -0
  141. package/dist/telemetry/instrumentation/agent.js.map +1 -0
  142. package/dist/telemetry/instrumentation/index.d.ts +24 -0
  143. package/dist/telemetry/instrumentation/index.d.ts.map +1 -0
  144. package/dist/telemetry/instrumentation/index.js +54 -0
  145. package/dist/telemetry/instrumentation/index.js.map +1 -0
  146. package/dist/telemetry/instrumentation/memory.d.ts +313 -0
  147. package/dist/telemetry/instrumentation/memory.d.ts.map +1 -0
  148. package/dist/telemetry/instrumentation/memory.js +552 -0
  149. package/dist/telemetry/instrumentation/memory.js.map +1 -0
  150. package/dist/telemetry/instrumentation/task.d.ts +146 -0
  151. package/dist/telemetry/instrumentation/task.d.ts.map +1 -0
  152. package/dist/telemetry/instrumentation/task.js +305 -0
  153. package/dist/telemetry/instrumentation/task.js.map +1 -0
  154. package/dist/telemetry/metrics/collectors/cost.d.ts +246 -0
  155. package/dist/telemetry/metrics/collectors/cost.d.ts.map +1 -0
  156. package/dist/telemetry/metrics/collectors/cost.js +526 -0
  157. package/dist/telemetry/metrics/collectors/cost.js.map +1 -0
  158. package/dist/telemetry/metrics/collectors/pricing-config.d.ts +87 -0
  159. package/dist/telemetry/metrics/collectors/pricing-config.d.ts.map +1 -0
  160. package/dist/telemetry/metrics/collectors/pricing-config.js +207 -0
  161. package/dist/telemetry/metrics/collectors/pricing-config.js.map +1 -0
  162. package/dist/telemetry/metrics/index.d.ts +4 -1
  163. package/dist/telemetry/metrics/index.d.ts.map +1 -1
  164. package/dist/telemetry/metrics/index.js +18 -2
  165. package/dist/telemetry/metrics/index.js.map +1 -1
  166. package/dist/telemetry/types.d.ts +1 -1
  167. package/dist/telemetry/types.d.ts.map +1 -1
  168. package/dist/visualization/api/RestEndpoints.d.ts +136 -0
  169. package/dist/visualization/api/RestEndpoints.d.ts.map +1 -0
  170. package/dist/visualization/api/RestEndpoints.js +428 -0
  171. package/dist/visualization/api/RestEndpoints.js.map +1 -0
  172. package/dist/visualization/api/WebSocketServer.d.ts +165 -0
  173. package/dist/visualization/api/WebSocketServer.d.ts.map +1 -0
  174. package/dist/visualization/api/WebSocketServer.js +518 -0
  175. package/dist/visualization/api/WebSocketServer.js.map +1 -0
  176. package/dist/visualization/core/DataTransformer.d.ts +89 -0
  177. package/dist/visualization/core/DataTransformer.d.ts.map +1 -0
  178. package/dist/visualization/core/DataTransformer.js +478 -0
  179. package/dist/visualization/core/DataTransformer.js.map +1 -0
  180. package/dist/visualization/index.d.ts +92 -0
  181. package/dist/visualization/index.d.ts.map +1 -0
  182. package/dist/visualization/index.js +121 -0
  183. package/dist/visualization/index.js.map +1 -0
  184. package/dist/visualization/types.d.ts +148 -0
  185. package/dist/visualization/types.d.ts.map +1 -0
  186. package/dist/visualization/types.js +7 -0
  187. package/dist/visualization/types.js.map +1 -0
  188. package/dist/voting/consensus.d.ts +87 -0
  189. package/dist/voting/consensus.d.ts.map +1 -0
  190. package/dist/voting/consensus.js +568 -0
  191. package/dist/voting/consensus.js.map +1 -0
  192. package/dist/voting/index.d.ts +12 -0
  193. package/dist/voting/index.d.ts.map +1 -0
  194. package/dist/voting/index.js +36 -0
  195. package/dist/voting/index.js.map +1 -0
  196. package/dist/voting/orchestrator.d.ts +65 -0
  197. package/dist/voting/orchestrator.d.ts.map +1 -0
  198. package/dist/voting/orchestrator.js +306 -0
  199. package/dist/voting/orchestrator.js.map +1 -0
  200. package/dist/voting/panel-assembly.d.ts +54 -0
  201. package/dist/voting/panel-assembly.d.ts.map +1 -0
  202. package/dist/voting/panel-assembly.js +192 -0
  203. package/dist/voting/panel-assembly.js.map +1 -0
  204. package/dist/voting/protocol.d.ts +119 -0
  205. package/dist/voting/protocol.d.ts.map +1 -0
  206. package/dist/voting/protocol.js +18 -0
  207. package/dist/voting/protocol.js.map +1 -0
  208. package/dist/voting/types.d.ts +125 -0
  209. package/dist/voting/types.d.ts.map +1 -0
  210. package/dist/voting/types.js +7 -0
  211. package/dist/voting/types.js.map +1 -0
  212. package/package.json +27 -2
@@ -0,0 +1,478 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Data transformer for converting telemetry data to visualization formats
4
+ * @module visualization/core/DataTransformer
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.DataTransformer = void 0;
8
+ /**
9
+ * Type guard for ReasoningChainWithSteps
10
+ */
11
+ function hasSteps(chain) {
12
+ return 'steps' in chain && Array.isArray(chain.steps);
13
+ }
14
+ /**
15
+ * DataTransformer converts raw telemetry data into visualization-friendly structures
16
+ *
17
+ * @example
18
+ * ```typescript
19
+ * const transformer = new DataTransformer(eventStore, reasoningStore);
20
+ *
21
+ * // Build visualization graph for a session
22
+ * const graph = transformer.buildSessionGraph('session-123', {
23
+ * algorithm: 'hierarchical',
24
+ * spacing: 100
25
+ * });
26
+ *
27
+ * // Transform reasoning chain to tree
28
+ * const tree = transformer.buildReasoningTree('chain-456');
29
+ * ```
30
+ */
31
+ class DataTransformer {
32
+ constructor(eventStore, reasoningStore) {
33
+ this.eventStore = eventStore;
34
+ this.reasoningStore = reasoningStore;
35
+ }
36
+ /**
37
+ * Build a visualization graph from events in a session
38
+ * @param sessionId - Session identifier
39
+ * @param layoutOptions - Graph layout configuration
40
+ * @param filter - Optional filters
41
+ * @returns Complete visualization graph with positioned nodes
42
+ */
43
+ buildSessionGraph(sessionId, layoutOptions, filter) {
44
+ const events = this.eventStore.getEventsBySession(sessionId);
45
+ const chains = this.reasoningStore.getChainsBySession(sessionId, { includeSteps: false });
46
+ // Filter events if criteria provided
47
+ const filteredEvents = filter ? this.applyEventFilter(events, filter) : events;
48
+ // Build nodes from events and chains
49
+ const nodes = [];
50
+ const edges = [];
51
+ const nodeMap = new Map();
52
+ // Create nodes for each agent
53
+ const agentNodes = new Map();
54
+ for (const event of filteredEvents) {
55
+ if (!agentNodes.has(event.agent_id)) {
56
+ const agentNode = {
57
+ id: `agent-${event.agent_id}`,
58
+ type: 'agent',
59
+ label: event.agent_id,
60
+ timestamp: event.timestamp,
61
+ status: 'active',
62
+ metadata: {
63
+ agent_id: event.agent_id,
64
+ first_event: event.timestamp,
65
+ },
66
+ };
67
+ agentNodes.set(event.agent_id, agentNode);
68
+ nodes.push(agentNode);
69
+ nodeMap.set(agentNode.id, agentNode);
70
+ }
71
+ }
72
+ // Create nodes for events
73
+ for (const event of filteredEvents) {
74
+ const eventNode = {
75
+ id: `event-${event.id}`,
76
+ type: 'event',
77
+ label: event.event_type,
78
+ timestamp: event.timestamp,
79
+ metadata: {
80
+ event_type: event.event_type,
81
+ payload: event.payload,
82
+ agent_id: event.agent_id,
83
+ },
84
+ };
85
+ nodes.push(eventNode);
86
+ nodeMap.set(eventNode.id, eventNode);
87
+ // Create edge from agent to event
88
+ edges.push({
89
+ id: `edge-agent-${event.agent_id}-event-${event.id}`,
90
+ source: `agent-${event.agent_id}`,
91
+ target: `event-${event.id}`,
92
+ type: 'trigger',
93
+ });
94
+ // Create correlation edges if present
95
+ if (event.correlation_id) {
96
+ const correlatedEvents = filteredEvents.filter(e => e.correlation_id === event.correlation_id && e.id !== event.id);
97
+ for (const correlated of correlatedEvents) {
98
+ edges.push({
99
+ id: `edge-corr-${event.id}-${correlated.id}`,
100
+ source: `event-${event.id}`,
101
+ target: `event-${correlated.id}`,
102
+ type: 'correlation',
103
+ label: event.correlation_id,
104
+ });
105
+ }
106
+ }
107
+ }
108
+ // Create nodes for reasoning chains
109
+ for (const chain of chains) {
110
+ const chainNode = {
111
+ id: `chain-${chain.id}`,
112
+ type: 'reasoning_chain',
113
+ label: `Reasoning: ${chain.agent_id}`,
114
+ timestamp: chain.created_at,
115
+ status: chain.status === 'completed' ? 'completed' : chain.status === 'failed' ? 'failed' : 'active',
116
+ metadata: {
117
+ chain_id: chain.id,
118
+ agent_id: chain.agent_id,
119
+ step_count: this.reasoningStore.getStepCount(chain.id),
120
+ total_tokens: this.reasoningStore.getTotalTokens(chain.id),
121
+ },
122
+ };
123
+ nodes.push(chainNode);
124
+ nodeMap.set(chainNode.id, chainNode);
125
+ // Link chain to agent
126
+ edges.push({
127
+ id: `edge-agent-${chain.agent_id}-chain-${chain.id}`,
128
+ source: `agent-${chain.agent_id}`,
129
+ target: `chain-${chain.id}`,
130
+ type: 'parent-child',
131
+ });
132
+ }
133
+ // Apply layout algorithm to calculate positions
134
+ this.applyLayout(nodes, edges, layoutOptions);
135
+ return {
136
+ nodes,
137
+ edges,
138
+ metadata: {
139
+ session_id: sessionId,
140
+ generated_at: new Date().toISOString(),
141
+ total_nodes: nodes.length,
142
+ total_edges: edges.length,
143
+ },
144
+ };
145
+ }
146
+ /**
147
+ * Build a reasoning tree from a reasoning chain
148
+ * @param chainId - Chain identifier
149
+ * @returns Hierarchical tree structure
150
+ */
151
+ buildReasoningTree(chainId) {
152
+ const chainWithSteps = this.reasoningStore.getChainWithSteps(chainId);
153
+ if (!chainWithSteps)
154
+ return null;
155
+ // Build tree structure from steps (simplified - assumes linear for now)
156
+ const rootNodes = chainWithSteps.steps.map(step => ({
157
+ id: step.id,
158
+ step_order: step.step_order,
159
+ thought_type: step.thought_type,
160
+ content: step.content,
161
+ confidence: step.confidence,
162
+ token_count: step.token_count,
163
+ timestamp: step.created_at,
164
+ children: [], // Could be enhanced to build actual tree based on metadata
165
+ metadata: step.metadata,
166
+ }));
167
+ return {
168
+ chain_id: chainWithSteps.id,
169
+ agent_id: chainWithSteps.agent_id,
170
+ session_id: chainWithSteps.session_id,
171
+ root_nodes: rootNodes,
172
+ total_steps: chainWithSteps.steps.length,
173
+ total_tokens: this.reasoningStore.getTotalTokens(chainId),
174
+ avg_confidence: this.reasoningStore.getAverageConfidence(chainId),
175
+ created_at: chainWithSteps.created_at,
176
+ completed_at: chainWithSteps.completed_at,
177
+ status: chainWithSteps.status,
178
+ };
179
+ }
180
+ /**
181
+ * Generate agent activity summaries for a session
182
+ * @param sessionId - Session identifier
183
+ * @returns Array of agent summaries
184
+ */
185
+ generateAgentSummaries(sessionId) {
186
+ const events = this.eventStore.getEventsBySession(sessionId);
187
+ const agentMap = new Map();
188
+ for (const event of events) {
189
+ if (!agentMap.has(event.agent_id)) {
190
+ agentMap.set(event.agent_id, {
191
+ agent_id: event.agent_id,
192
+ agent_type: event.event_type.split(':')[0] || 'unknown',
193
+ event_count: 0,
194
+ task_count: 0,
195
+ success_rate: 0,
196
+ avg_duration_ms: 0,
197
+ total_tokens: 0,
198
+ cost_usd: 0,
199
+ first_seen: event.timestamp,
200
+ last_seen: event.timestamp,
201
+ });
202
+ }
203
+ const summary = agentMap.get(event.agent_id);
204
+ summary.event_count++;
205
+ summary.last_seen = event.timestamp;
206
+ // Extract metrics from payload
207
+ if (event.payload && typeof event.payload === 'object') {
208
+ const payload = event.payload;
209
+ if (typeof payload.tokens === 'number') {
210
+ summary.total_tokens += payload.tokens;
211
+ }
212
+ if (typeof payload.cost === 'number') {
213
+ summary.cost_usd += payload.cost;
214
+ }
215
+ if (typeof payload.duration_ms === 'number') {
216
+ summary.avg_duration_ms =
217
+ (summary.avg_duration_ms * (summary.event_count - 1) + payload.duration_ms) /
218
+ summary.event_count;
219
+ }
220
+ }
221
+ }
222
+ return Array.from(agentMap.values());
223
+ }
224
+ /**
225
+ * Build complete session visualization
226
+ * @param sessionId - Session identifier
227
+ * @returns Complete session visualization data
228
+ */
229
+ buildSessionVisualization(sessionId) {
230
+ const events = this.eventStore.getEventsBySession(sessionId);
231
+ const chains = this.reasoningStore.getChainsBySession(sessionId, { includeSteps: true });
232
+ // Build agent summaries
233
+ const agents = this.generateAgentSummaries(sessionId);
234
+ // Build events timeline (aggregated by minute)
235
+ const timeline = this.buildEventsTimeline(events);
236
+ // Build reasoning trees
237
+ const reasoningTrees = [];
238
+ for (const chain of chains) {
239
+ const tree = this.buildReasoningTree(chain.id);
240
+ if (tree) {
241
+ reasoningTrees.push(tree);
242
+ }
243
+ }
244
+ // Calculate session duration
245
+ const sessionStart = events.length > 0 ? events[0].timestamp : new Date().toISOString();
246
+ const sessionEnd = events.length > 0 ? events[events.length - 1].timestamp : null;
247
+ const sessionDuration = sessionEnd
248
+ ? new Date(sessionEnd).getTime() - new Date(sessionStart).getTime()
249
+ : 0;
250
+ // Calculate total reasoning steps using type guard
251
+ const totalReasoningSteps = chains.reduce((sum, chain) => {
252
+ if (hasSteps(chain)) {
253
+ return sum + chain.steps.length;
254
+ }
255
+ return sum;
256
+ }, 0);
257
+ return {
258
+ session_id: sessionId,
259
+ agents,
260
+ events_timeline: timeline,
261
+ reasoning_chains: reasoningTrees,
262
+ total_events: events.length,
263
+ total_reasoning_steps: totalReasoningSteps,
264
+ session_duration_ms: sessionDuration,
265
+ session_start: sessionStart,
266
+ session_end: sessionEnd,
267
+ };
268
+ }
269
+ /**
270
+ * Build time-series metrics from events
271
+ * @param events - Array of events
272
+ * @returns Aggregated time-series data
273
+ */
274
+ buildEventsTimeline(events) {
275
+ const timelineMap = new Map();
276
+ for (const event of events) {
277
+ // Aggregate by minute
278
+ const minute = event.timestamp.substring(0, 16); // YYYY-MM-DDTHH:mm
279
+ timelineMap.set(minute, (timelineMap.get(minute) || 0) + 1);
280
+ }
281
+ return Array.from(timelineMap.entries())
282
+ .map(([timestamp, count]) => ({
283
+ timestamp: `${timestamp}:00.000Z`,
284
+ value: count,
285
+ }))
286
+ .sort((a, b) => a.timestamp.localeCompare(b.timestamp));
287
+ }
288
+ /**
289
+ * Apply layout algorithm to position nodes
290
+ * @param nodes - Graph nodes
291
+ * @param edges - Graph edges
292
+ * @param options - Layout options
293
+ */
294
+ applyLayout(nodes, edges, options) {
295
+ switch (options.algorithm) {
296
+ case 'hierarchical':
297
+ this.applyHierarchicalLayout(nodes, edges, options);
298
+ break;
299
+ case 'force-directed':
300
+ this.applyForceDirectedLayout(nodes, edges, options);
301
+ break;
302
+ case 'circular':
303
+ this.applyCircularLayout(nodes, options);
304
+ break;
305
+ case 'grid':
306
+ this.applyGridLayout(nodes, options);
307
+ break;
308
+ }
309
+ }
310
+ /**
311
+ * Apply hierarchical layout (top-down or left-right)
312
+ */
313
+ applyHierarchicalLayout(nodes, edges, options) {
314
+ const direction = options.direction || 'TB';
315
+ const spacing = options.spacing;
316
+ // Build adjacency list
317
+ const adjList = new Map();
318
+ for (const edge of edges) {
319
+ if (!adjList.has(edge.source)) {
320
+ adjList.set(edge.source, []);
321
+ }
322
+ adjList.get(edge.source).push(edge.target);
323
+ }
324
+ // Find root nodes (no incoming edges)
325
+ const hasIncoming = new Set(edges.map(e => e.target));
326
+ const roots = nodes.filter(n => !hasIncoming.has(n.id));
327
+ // Assign levels via BFS
328
+ const levels = new Map();
329
+ const queue = roots.map(r => ({ id: r.id, level: 0 }));
330
+ while (queue.length > 0) {
331
+ const { id, level } = queue.shift();
332
+ levels.set(id, level);
333
+ const children = adjList.get(id) || [];
334
+ for (const child of children) {
335
+ if (!levels.has(child)) {
336
+ queue.push({ id: child, level: level + 1 });
337
+ }
338
+ }
339
+ }
340
+ // Position nodes
341
+ const levelGroups = new Map();
342
+ for (const [nodeId, level] of levels.entries()) {
343
+ if (!levelGroups.has(level)) {
344
+ levelGroups.set(level, []);
345
+ }
346
+ levelGroups.get(level).push(nodeId);
347
+ }
348
+ for (const [level, nodeIds] of levelGroups.entries()) {
349
+ nodeIds.forEach((nodeId, index) => {
350
+ const node = nodes.find(n => n.id === nodeId);
351
+ if (node) {
352
+ if (direction === 'TB' || direction === 'BT') {
353
+ node.position = {
354
+ x: index * spacing,
355
+ y: direction === 'TB' ? level * spacing : -level * spacing,
356
+ };
357
+ }
358
+ else {
359
+ node.position = {
360
+ x: direction === 'LR' ? level * spacing : -level * spacing,
361
+ y: index * spacing,
362
+ };
363
+ }
364
+ }
365
+ });
366
+ }
367
+ }
368
+ /**
369
+ * Apply force-directed layout (simplified spring model)
370
+ */
371
+ applyForceDirectedLayout(nodes, edges, options) {
372
+ const spacing = options.spacing;
373
+ const iterations = 50;
374
+ const repulsionStrength = spacing * 2;
375
+ const attractionStrength = 0.1;
376
+ // Initialize random positions
377
+ nodes.forEach((node, index) => {
378
+ node.position = {
379
+ x: Math.random() * spacing * nodes.length,
380
+ y: Math.random() * spacing * nodes.length,
381
+ };
382
+ });
383
+ // Simulate forces
384
+ for (let iter = 0; iter < iterations; iter++) {
385
+ const forces = new Map();
386
+ nodes.forEach(n => forces.set(n.id, { x: 0, y: 0 }));
387
+ // Repulsion between all nodes
388
+ for (let i = 0; i < nodes.length; i++) {
389
+ for (let j = i + 1; j < nodes.length; j++) {
390
+ const nodeA = nodes[i];
391
+ const nodeB = nodes[j];
392
+ const dx = nodeB.position.x - nodeA.position.x;
393
+ const dy = nodeB.position.y - nodeA.position.y;
394
+ const dist = Math.sqrt(dx * dx + dy * dy) || 1;
395
+ const force = repulsionStrength / (dist * dist);
396
+ const fx = (force * dx) / dist;
397
+ const fy = (force * dy) / dist;
398
+ forces.get(nodeA.id).x -= fx;
399
+ forces.get(nodeA.id).y -= fy;
400
+ forces.get(nodeB.id).x += fx;
401
+ forces.get(nodeB.id).y += fy;
402
+ }
403
+ }
404
+ // Attraction along edges
405
+ for (const edge of edges) {
406
+ const source = nodes.find(n => n.id === edge.source);
407
+ const target = nodes.find(n => n.id === edge.target);
408
+ if (source && target && source.position && target.position) {
409
+ const dx = target.position.x - source.position.x;
410
+ const dy = target.position.y - source.position.y;
411
+ const force = attractionStrength;
412
+ const fx = force * dx;
413
+ const fy = force * dy;
414
+ forces.get(source.id).x += fx;
415
+ forces.get(source.id).y += fy;
416
+ forces.get(target.id).x -= fx;
417
+ forces.get(target.id).y -= fy;
418
+ }
419
+ }
420
+ // Apply forces
421
+ nodes.forEach(node => {
422
+ const force = forces.get(node.id);
423
+ node.position.x += force.x;
424
+ node.position.y += force.y;
425
+ });
426
+ }
427
+ }
428
+ /**
429
+ * Apply circular layout
430
+ */
431
+ applyCircularLayout(nodes, options) {
432
+ const radius = (nodes.length * options.spacing) / (2 * Math.PI);
433
+ const angleStep = (2 * Math.PI) / nodes.length;
434
+ nodes.forEach((node, index) => {
435
+ const angle = index * angleStep;
436
+ node.position = {
437
+ x: radius * Math.cos(angle),
438
+ y: radius * Math.sin(angle),
439
+ };
440
+ });
441
+ }
442
+ /**
443
+ * Apply grid layout
444
+ */
445
+ applyGridLayout(nodes, options) {
446
+ const cols = Math.ceil(Math.sqrt(nodes.length));
447
+ const spacing = options.spacing;
448
+ nodes.forEach((node, index) => {
449
+ const row = Math.floor(index / cols);
450
+ const col = index % cols;
451
+ node.position = {
452
+ x: col * spacing,
453
+ y: row * spacing,
454
+ };
455
+ });
456
+ }
457
+ /**
458
+ * Apply filter to events
459
+ */
460
+ applyEventFilter(events, filter) {
461
+ return events.filter((event) => {
462
+ if (filter.time_range) {
463
+ if (event.timestamp < filter.time_range.start || event.timestamp > filter.time_range.end) {
464
+ return false;
465
+ }
466
+ }
467
+ if (filter.agent_ids && !filter.agent_ids.includes(event.agent_id)) {
468
+ return false;
469
+ }
470
+ if (filter.event_types && !filter.event_types.includes(event.event_type)) {
471
+ return false;
472
+ }
473
+ return true;
474
+ });
475
+ }
476
+ }
477
+ exports.DataTransformer = DataTransformer;
478
+ //# sourceMappingURL=DataTransformer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataTransformer.js","sourceRoot":"","sources":["../../../src/visualization/core/DataTransformer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * @fileoverview Visualization API module entry point
3
+ * @module visualization
4
+ */
5
+ export * from './types';
6
+ export { DataTransformer } from './core/DataTransformer';
7
+ export { WebSocketServer, WebSocketServerConfig } from './api/WebSocketServer';
8
+ export { RestApiServer, RestApiConfig } from './api/RestEndpoints';
9
+ import { EventStore } from '../persistence/event-store';
10
+ import { ReasoningStore } from '../persistence/reasoning-store';
11
+ import { DataTransformer } from './core/DataTransformer';
12
+ import { WebSocketServer, WebSocketServerConfig } from './api/WebSocketServer';
13
+ import { RestApiServer, RestApiConfig } from './api/RestEndpoints';
14
+ /**
15
+ * Visualization service configuration
16
+ */
17
+ export interface VisualizationServiceConfig {
18
+ /** Event store instance */
19
+ eventStore: EventStore;
20
+ /** Reasoning store instance */
21
+ reasoningStore: ReasoningStore;
22
+ /** REST API configuration */
23
+ restApi?: RestApiConfig;
24
+ /** WebSocket server configuration */
25
+ webSocket?: WebSocketServerConfig;
26
+ /** Enable REST API */
27
+ enableRestApi?: boolean;
28
+ /** Enable WebSocket server */
29
+ enableWebSocket?: boolean;
30
+ }
31
+ /**
32
+ * Integrated visualization service
33
+ *
34
+ * Provides unified access to visualization data through both REST and WebSocket APIs
35
+ *
36
+ * @example
37
+ * ```typescript
38
+ * const service = new VisualizationService({
39
+ * eventStore,
40
+ * reasoningStore,
41
+ * enableRestApi: true,
42
+ * enableWebSocket: true,
43
+ * restApi: { port: 3000 },
44
+ * webSocket: { port: 8080 }
45
+ * });
46
+ *
47
+ * await service.start();
48
+ * ```
49
+ */
50
+ export declare class VisualizationService {
51
+ private eventStore;
52
+ private reasoningStore;
53
+ private transformer;
54
+ private restApi?;
55
+ private webSocket?;
56
+ private config;
57
+ constructor(config: VisualizationServiceConfig);
58
+ /**
59
+ * Start visualization services
60
+ */
61
+ start(): Promise<void>;
62
+ /**
63
+ * Stop visualization services
64
+ */
65
+ stop(): Promise<void>;
66
+ /**
67
+ * Get data transformer
68
+ */
69
+ getTransformer(): DataTransformer;
70
+ /**
71
+ * Get REST API server
72
+ */
73
+ getRestApi(): RestApiServer | undefined;
74
+ /**
75
+ * Get WebSocket server
76
+ */
77
+ getWebSocket(): WebSocketServer | undefined;
78
+ /**
79
+ * Get service status
80
+ */
81
+ getStatus(): {
82
+ restApi?: {
83
+ isRunning: boolean;
84
+ port: number;
85
+ };
86
+ webSocket?: {
87
+ isRunning: boolean;
88
+ connectedClients: number;
89
+ };
90
+ };
91
+ }
92
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/visualization/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,2BAA2B;IAC3B,UAAU,EAAE,UAAU,CAAC;IACvB,+BAA+B;IAC/B,cAAc,EAAE,cAAc,CAAC;IAC/B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,qCAAqC;IACrC,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAClC,sBAAsB;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,8BAA8B;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,OAAO,CAAC,CAAgB;IAChC,OAAO,CAAC,SAAS,CAAC,CAAkB;IACpC,OAAO,CAAC,MAAM,CAA6B;gBAE/B,MAAM,EAAE,0BAA0B;IAyB9C;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAc5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAc3B;;OAEG;IACH,cAAc,IAAI,eAAe;IAIjC;;OAEG;IACH,UAAU,IAAI,aAAa,GAAG,SAAS;IAIvC;;OAEG;IACH,YAAY,IAAI,eAAe,GAAG,SAAS;IAI3C;;OAEG;IACH,SAAS,IAAI;QACX,OAAO,CAAC,EAAE;YAAE,SAAS,EAAE,OAAO,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC;QAC/C,SAAS,CAAC,EAAE;YAAE,SAAS,EAAE,OAAO,CAAC;YAAC,gBAAgB,EAAE,MAAM,CAAA;SAAE,CAAC;KAC9D;CAMF"}