resolve-solo 0.7.0 → 1.1.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 (119) hide show
  1. package/dist/cli-progress/index.d.ts +9 -0
  2. package/dist/cli-progress/index.d.ts.map +1 -0
  3. package/dist/cli-progress/index.js +9 -0
  4. package/dist/cli-progress/index.js.map +1 -0
  5. package/dist/cli-progress/progress-bar.d.ts +12 -0
  6. package/dist/cli-progress/progress-bar.d.ts.map +1 -0
  7. package/dist/cli-progress/progress-bar.js +29 -0
  8. package/dist/cli-progress/progress-bar.js.map +1 -0
  9. package/dist/cli-progress/spinner.d.ts +21 -0
  10. package/dist/cli-progress/spinner.d.ts.map +1 -0
  11. package/dist/cli-progress/spinner.js +35 -0
  12. package/dist/cli-progress/spinner.js.map +1 -0
  13. package/dist/cli-progress/task-renderer.d.ts +57 -0
  14. package/dist/cli-progress/task-renderer.d.ts.map +1 -0
  15. package/dist/cli-progress/task-renderer.js +177 -0
  16. package/dist/cli-progress/task-renderer.js.map +1 -0
  17. package/dist/cli.d.ts.map +1 -1
  18. package/dist/cli.js +135 -24
  19. package/dist/cli.js.map +1 -1
  20. package/dist/constants.d.ts +1 -1
  21. package/dist/constants.js +1 -1
  22. package/dist/data-sources/alerts-generator.d.ts +12 -0
  23. package/dist/data-sources/alerts-generator.d.ts.map +1 -0
  24. package/dist/data-sources/alerts-generator.js +168 -0
  25. package/dist/data-sources/alerts-generator.js.map +1 -0
  26. package/dist/data-sources/index.d.ts +10 -0
  27. package/dist/data-sources/index.d.ts.map +1 -0
  28. package/dist/data-sources/index.js +10 -0
  29. package/dist/data-sources/index.js.map +1 -0
  30. package/dist/data-sources/metrics-generator.d.ts +12 -0
  31. package/dist/data-sources/metrics-generator.d.ts.map +1 -0
  32. package/dist/data-sources/metrics-generator.js +169 -0
  33. package/dist/data-sources/metrics-generator.js.map +1 -0
  34. package/dist/data-sources/pipeline-generator.d.ts +12 -0
  35. package/dist/data-sources/pipeline-generator.d.ts.map +1 -0
  36. package/dist/data-sources/pipeline-generator.js +157 -0
  37. package/dist/data-sources/pipeline-generator.js.map +1 -0
  38. package/dist/data-sources/sla-generator.d.ts +12 -0
  39. package/dist/data-sources/sla-generator.d.ts.map +1 -0
  40. package/dist/data-sources/sla-generator.js +84 -0
  41. package/dist/data-sources/sla-generator.js.map +1 -0
  42. package/dist/demo-generator.d.ts +6 -2
  43. package/dist/demo-generator.d.ts.map +1 -1
  44. package/dist/demo-generator.js +40 -30
  45. package/dist/demo-generator.js.map +1 -1
  46. package/dist/demo-schema.d.ts +49 -0
  47. package/dist/demo-schema.d.ts.map +1 -1
  48. package/dist/findings/aggregator.d.ts +26 -0
  49. package/dist/findings/aggregator.d.ts.map +1 -0
  50. package/dist/findings/aggregator.js +149 -0
  51. package/dist/findings/aggregator.js.map +1 -0
  52. package/dist/findings/formatter.d.ts +50 -0
  53. package/dist/findings/formatter.d.ts.map +1 -0
  54. package/dist/findings/formatter.js +393 -0
  55. package/dist/findings/formatter.js.map +1 -0
  56. package/dist/findings/index.d.ts +4 -0
  57. package/dist/findings/index.d.ts.map +1 -0
  58. package/dist/findings/index.js +7 -0
  59. package/dist/findings/index.js.map +1 -0
  60. package/dist/findings/prioritizer.d.ts +15 -0
  61. package/dist/findings/prioritizer.d.ts.map +1 -0
  62. package/dist/findings/prioritizer.js +107 -0
  63. package/dist/findings/prioritizer.js.map +1 -0
  64. package/dist/handlers.d.ts +38 -0
  65. package/dist/handlers.d.ts.map +1 -1
  66. package/dist/handlers.js +135 -1
  67. package/dist/handlers.js.map +1 -1
  68. package/dist/investigation-engine/example.d.ts +9 -0
  69. package/dist/investigation-engine/example.d.ts.map +1 -0
  70. package/dist/investigation-engine/example.js +88 -0
  71. package/dist/investigation-engine/example.js.map +1 -0
  72. package/dist/investigation-engine/index.d.ts +9 -0
  73. package/dist/investigation-engine/index.d.ts.map +1 -0
  74. package/dist/investigation-engine/index.js +9 -0
  75. package/dist/investigation-engine/index.js.map +1 -0
  76. package/dist/investigation-engine/task-definitions.d.ts +10 -0
  77. package/dist/investigation-engine/task-definitions.d.ts.map +1 -0
  78. package/dist/investigation-engine/task-definitions.js +86 -0
  79. package/dist/investigation-engine/task-definitions.js.map +1 -0
  80. package/dist/investigation-engine/task-executor.d.ts +58 -0
  81. package/dist/investigation-engine/task-executor.d.ts.map +1 -0
  82. package/dist/investigation-engine/task-executor.js +211 -0
  83. package/dist/investigation-engine/task-executor.js.map +1 -0
  84. package/dist/investigation-engine/task-progress.d.ts +51 -0
  85. package/dist/investigation-engine/task-progress.d.ts.map +1 -0
  86. package/dist/investigation-engine/task-progress.js +107 -0
  87. package/dist/investigation-engine/task-progress.js.map +1 -0
  88. package/dist/investigation-engine/task-types.d.ts +44 -0
  89. package/dist/investigation-engine/task-types.d.ts.map +1 -0
  90. package/dist/investigation-engine/task-types.js +2 -0
  91. package/dist/investigation-engine/task-types.js.map +1 -0
  92. package/dist/mcp/tools.d.ts.map +1 -1
  93. package/dist/mcp/tools.js +22 -2
  94. package/dist/mcp/tools.js.map +1 -1
  95. package/dist/parser.d.ts.map +1 -1
  96. package/dist/parser.js +10 -0
  97. package/dist/parser.js.map +1 -1
  98. package/dist/repl.d.ts.map +1 -1
  99. package/dist/repl.js +143 -19
  100. package/dist/repl.js.map +1 -1
  101. package/dist/seeded-random.d.ts +15 -0
  102. package/dist/seeded-random.d.ts.map +1 -0
  103. package/dist/seeded-random.js +32 -0
  104. package/dist/seeded-random.js.map +1 -0
  105. package/dist/storage.d.ts +9 -5
  106. package/dist/storage.d.ts.map +1 -1
  107. package/dist/storage.js +75 -8
  108. package/dist/storage.js.map +1 -1
  109. package/dist/tool-config.d.ts +36 -0
  110. package/dist/tool-config.d.ts.map +1 -0
  111. package/dist/tool-config.js +83 -0
  112. package/dist/tool-config.js.map +1 -0
  113. package/dist/tool-discovery.d.ts +27 -0
  114. package/dist/tool-discovery.d.ts.map +1 -0
  115. package/dist/tool-discovery.js +150 -0
  116. package/dist/tool-discovery.js.map +1 -0
  117. package/dist/types.d.ts +1 -1
  118. package/dist/types.d.ts.map +1 -1
  119. package/package.json +1 -1
@@ -0,0 +1,15 @@
1
+ import { Finding } from '../investigation-engine/task-types.js';
2
+ /**
3
+ * Assign priority to a finding based on priority rules:
4
+ * P0: SLA breach, error rate >10%, complete outage
5
+ * P1: Error rate >5%, failed deploy, latency >2x baseline
6
+ * P2: Warning alerts, latency degradation, high resource usage
7
+ * P3: Informational, minor anomalies
8
+ */
9
+ export declare function assignPriority(finding: Finding): Finding;
10
+ /**
11
+ * Sort findings by priority (P0 first, P3 last)
12
+ * Within the same priority, sort by service name alphabetically
13
+ */
14
+ export declare function sortByPriority(findings: Finding[]): Finding[];
15
+ //# sourceMappingURL=prioritizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prioritizer.d.ts","sourceRoot":"","sources":["../../src/findings/prioritizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAmB,MAAM,uCAAuC,CAAC;AAEjF;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAMxD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAgB7D"}
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Assign priority to a finding based on priority rules:
3
+ * P0: SLA breach, error rate >10%, complete outage
4
+ * P1: Error rate >5%, failed deploy, latency >2x baseline
5
+ * P2: Warning alerts, latency degradation, high resource usage
6
+ * P3: Informational, minor anomalies
7
+ */
8
+ export function assignPriority(finding) {
9
+ const priority = getPriority(finding);
10
+ return {
11
+ ...finding,
12
+ priority,
13
+ };
14
+ }
15
+ /**
16
+ * Sort findings by priority (P0 first, P3 last)
17
+ * Within the same priority, sort by service name alphabetically
18
+ */
19
+ export function sortByPriority(findings) {
20
+ const priorityOrder = {
21
+ P0: 0,
22
+ P1: 1,
23
+ P2: 2,
24
+ P3: 3,
25
+ };
26
+ return [...findings].sort((a, b) => {
27
+ const priorityDiff = priorityOrder[a.priority] - priorityOrder[b.priority];
28
+ if (priorityDiff !== 0) {
29
+ return priorityDiff;
30
+ }
31
+ // Same priority, sort by service name
32
+ return a.service.localeCompare(b.service);
33
+ });
34
+ }
35
+ /**
36
+ * Determine priority based on finding attributes
37
+ */
38
+ function getPriority(finding) {
39
+ const title = finding.title.toLowerCase();
40
+ const description = finding.description.toLowerCase();
41
+ const category = finding.category;
42
+ // P0 - Critical (immediate action required)
43
+ if (category === 'sla' && (title.includes('breach') || description.includes('breach'))) {
44
+ return 'P0';
45
+ }
46
+ if (category === 'errors') {
47
+ if (containsPercentageGreaterThan(title, 10) || containsPercentageGreaterThan(description, 10)) {
48
+ return 'P0';
49
+ }
50
+ }
51
+ if (title.includes('outage') || title.includes('down') || title.includes('complete failure')) {
52
+ return 'P0';
53
+ }
54
+ if (description.includes('complete outage') || description.includes('total failure')) {
55
+ return 'P0';
56
+ }
57
+ // P1 - High (address within hours)
58
+ if (category === 'errors') {
59
+ if (containsPercentageGreaterThan(title, 5) || containsPercentageGreaterThan(description, 5)) {
60
+ return 'P1';
61
+ }
62
+ }
63
+ if (category === 'deploy' && (title.includes('failed') || description.includes('failed'))) {
64
+ return 'P1';
65
+ }
66
+ if (category === 'latency') {
67
+ if (title.includes('2x') || description.includes('2x') ||
68
+ title.includes('doubled') || description.includes('doubled')) {
69
+ return 'P1';
70
+ }
71
+ }
72
+ if (title.includes('critical') || description.includes('critical')) {
73
+ return 'P1';
74
+ }
75
+ // P2 - Medium (address within days)
76
+ if (category === 'latency' || category === 'saturation') {
77
+ return 'P2';
78
+ }
79
+ if (title.includes('warning') || description.includes('warning')) {
80
+ return 'P2';
81
+ }
82
+ if (title.includes('degraded') || description.includes('degraded')) {
83
+ return 'P2';
84
+ }
85
+ if (title.includes('elevated') || description.includes('elevated')) {
86
+ return 'P2';
87
+ }
88
+ // P3 - Low (informational)
89
+ return 'P3';
90
+ }
91
+ /**
92
+ * Check if text contains a percentage greater than the threshold
93
+ * Handles formats like "15%", "error rate at 12%", ">10%", etc.
94
+ */
95
+ function containsPercentageGreaterThan(text, threshold) {
96
+ // Match patterns like "15%", ">10%", "at 12%"
97
+ const percentageRegex = /(?:>|at\s+)?(\d+(?:\.\d+)?)\s*%/g;
98
+ let match;
99
+ while ((match = percentageRegex.exec(text)) !== null) {
100
+ const value = parseFloat(match[1]);
101
+ if (value > threshold) {
102
+ return true;
103
+ }
104
+ }
105
+ return false;
106
+ }
107
+ //# sourceMappingURL=prioritizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prioritizer.js","sourceRoot":"","sources":["../../src/findings/prioritizer.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@
4
4
  * Handlers contain business logic only and return structured results.
5
5
  * Each mode is responsible for formatting and displaying results appropriately.
6
6
  */
7
+ import { type ExecutiveSummary } from './findings/formatter.js';
8
+ import type { InvestigationTask, TaskProgressEvent } from './investigation-engine/task-types.js';
7
9
  /**
8
10
  * Execution context for handlers
9
11
  */
@@ -76,4 +78,40 @@ export declare function executeUninstall(options: {
76
78
  * Handle doctor command - M10
77
79
  */
78
80
  export declare function handleDoctor(context: HandlerContext): Promise<HandlerResult>;
81
+ /**
82
+ * Multi-agent investigation result
83
+ */
84
+ export interface MultiAgentInvestigationResult {
85
+ query: string;
86
+ sessionId: string;
87
+ tasks: InvestigationTask[];
88
+ summary: ExecutiveSummary;
89
+ formattedOutput: {
90
+ cli: string;
91
+ markdown: string;
92
+ };
93
+ timing: {
94
+ startTime: number;
95
+ endTime: number;
96
+ totalDuration: number;
97
+ };
98
+ }
99
+ /**
100
+ * Options for multi-agent investigation
101
+ */
102
+ export interface MultiAgentInvestigateOptions {
103
+ onProgress?: (event: TaskProgressEvent) => void;
104
+ parallel?: boolean;
105
+ simulatedDelay?: boolean;
106
+ maxConcurrency?: number;
107
+ }
108
+ /**
109
+ * Handle multi-agent investigation command - M18
110
+ * Executes parallel investigation tasks and returns aggregated findings
111
+ */
112
+ export declare function handleMultiAgentInvestigate(query: string, context: HandlerContext, options?: MultiAgentInvestigateOptions): Promise<HandlerResult>;
113
+ /**
114
+ * Handle tool discovery command - M13
115
+ */
116
+ export declare function handleToolDiscovery(context: HandlerContext): Promise<HandlerResult>;
79
117
  //# sourceMappingURL=handlers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../src/handlers.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA0BH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAuDhF;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CAgExB;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CA+CxB;AAED;;GAEG;AACH,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CAsCxB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CA0CxB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,aAAa,CA+BrE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,cAAc,GAAG,aAAa,CA2BtE;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAyCjF;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CA8BxF;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,EACjE,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CAwBxB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,CAAA;CAAE,EACjE,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CAqBxB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAkBlF"}
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../src/handlers.ts"],"names":[],"mappings":"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"}
package/dist/handlers.js CHANGED
@@ -4,7 +4,12 @@
4
4
  * Handlers contain business logic only and return structured results.
5
5
  * Each mode is responsible for formatting and displaying results appropriately.
6
6
  */
7
- import { generateDemoData } from './demo-generator.js';
7
+ import { generateDemoData, generateEnhancedDemoData } from './demo-generator.js';
8
+ import { TaskExecutor } from './investigation-engine/task-executor.js';
9
+ import { getInvestigationTasks } from './investigation-engine/task-definitions.js';
10
+ import { aggregateFindings } from './findings/aggregator.js';
11
+ import { assignPriority } from './findings/prioritizer.js';
12
+ import { generateExecutiveSummary, formatSummaryForCLI, formatSummaryForMarkdown, } from './findings/formatter.js';
8
13
  import { saveDemoData, loadDemoData, deleteDemoData, demoDataExists, } from './storage.js';
9
14
  import { buildTimeline, deduplicateTimeline } from './timeline.js';
10
15
  import { generateInvestigationPaths, findRecallMatches, detectMissingSignals, generateSuggestions, } from './investigation.js';
@@ -468,4 +473,133 @@ export async function handleDoctor(context) {
468
473
  };
469
474
  }
470
475
  }
476
+ /**
477
+ * Handle multi-agent investigation command - M18
478
+ * Executes parallel investigation tasks and returns aggregated findings
479
+ */
480
+ export async function handleMultiAgentInvestigate(query, context, options = {}) {
481
+ try {
482
+ const startTime = Date.now();
483
+ const sessionId = `multi-${Date.now()}`;
484
+ // Seed demo data if needed
485
+ if (!demoDataExists()) {
486
+ const dataset = generateDemoData();
487
+ saveDemoData(dataset);
488
+ }
489
+ // Generate enhanced demo data for metrics (use query hash as seed for determinism)
490
+ const queryHash = query.split('').reduce((acc, char) => acc + char.charCodeAt(0), 0);
491
+ const enhancedData = generateEnhancedDemoData(queryHash);
492
+ // Get investigation tasks
493
+ const tasks = getInvestigationTasks(query);
494
+ // Create task executor with options
495
+ const executor = new TaskExecutor({
496
+ parallel: options.parallel ?? true,
497
+ maxConcurrency: options.maxConcurrency ?? 5,
498
+ simulatedDelay: options.simulatedDelay ?? true,
499
+ onProgress: options.onProgress,
500
+ });
501
+ // Execute tasks
502
+ const completedTasks = await executor.execute(tasks);
503
+ // Apply priority assignment to all findings
504
+ for (const task of completedTasks) {
505
+ if (task.result?.findings) {
506
+ task.result.findings = task.result.findings.map(finding => assignPriority(finding));
507
+ }
508
+ }
509
+ // Aggregate findings
510
+ const aggregated = aggregateFindings(completedTasks);
511
+ // Generate metrics summary from enhanced demo data
512
+ const metricsData = {
513
+ sla: {
514
+ status: enhancedData.sla.some((s) => s.status === 'breached')
515
+ ? 'breached'
516
+ : enhancedData.sla.some((s) => s.status === 'warning')
517
+ ? 'warning'
518
+ : 'healthy',
519
+ current: enhancedData.sla.length > 0
520
+ ? Math.min(...enhancedData.sla.map((s) => s.current))
521
+ : 99.5,
522
+ target: 99.5,
523
+ },
524
+ latency: {
525
+ status: enhancedData.metrics.some((m) => m.metric === 'latency_p99' && m.anomaly === 'spike')
526
+ ? 'critical'
527
+ : 'healthy',
528
+ current: `${Math.round(enhancedData.metrics.find((m) => m.metric === 'latency_p99')?.value || 250)}ms`,
529
+ target: '500ms',
530
+ },
531
+ errorRate: {
532
+ status: enhancedData.metrics.some((m) => m.metric === 'error_rate' && m.anomaly === 'spike')
533
+ ? 'critical'
534
+ : 'healthy',
535
+ current: `${(enhancedData.metrics.find((m) => m.metric === 'error_rate')?.value || 0.5).toFixed(1)}%`,
536
+ target: '1%',
537
+ },
538
+ traffic: {
539
+ status: enhancedData.metrics.some((m) => m.metric === 'throughput' && m.anomaly === 'spike')
540
+ ? 'warning'
541
+ : 'healthy',
542
+ current: `${Math.round((enhancedData.metrics.find((m) => m.metric === 'throughput')?.value || 10000) / 1000)}K rps`,
543
+ capacity: '15K',
544
+ },
545
+ };
546
+ // Generate executive summary
547
+ const summary = generateExecutiveSummary(aggregated, metricsData);
548
+ // Format output for CLI and markdown
549
+ const formattedOutput = {
550
+ cli: formatSummaryForCLI(summary),
551
+ markdown: formatSummaryForMarkdown(summary),
552
+ };
553
+ const endTime = Date.now();
554
+ const result = {
555
+ query,
556
+ sessionId,
557
+ tasks: completedTasks,
558
+ summary,
559
+ formattedOutput,
560
+ timing: {
561
+ startTime,
562
+ endTime,
563
+ totalDuration: endTime - startTime,
564
+ },
565
+ };
566
+ return {
567
+ success: true,
568
+ message: 'Multi-agent investigation complete',
569
+ data: result,
570
+ };
571
+ }
572
+ catch (error) {
573
+ return {
574
+ success: false,
575
+ message: 'Multi-agent investigation failed',
576
+ error: error instanceof Error ? error.message : String(error),
577
+ };
578
+ }
579
+ }
580
+ /**
581
+ * Handle tool discovery command - M13
582
+ */
583
+ export async function handleToolDiscovery(context) {
584
+ try {
585
+ const { discoverTools } = await import('./tool-discovery.js');
586
+ const { saveToolConfig } = await import('./tool-config.js');
587
+ // Run tool discovery
588
+ const result = discoverTools();
589
+ // Save results to config
590
+ saveToolConfig(result);
591
+ return {
592
+ success: true,
593
+ message: 'Tool discovery complete',
594
+ data: result,
595
+ };
596
+ }
597
+ catch (error) {
598
+ return {
599
+ success: false,
600
+ message: 'Tool discovery failed',
601
+ error: error instanceof Error ? error.message : String(error),
602
+ };
603
+ }
604
+ }
471
605
  //# sourceMappingURL=handlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../src/handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../src/handlers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Example usage of the Investigation Engine
3
+ *
4
+ * This file demonstrates how to use the TaskExecutor and TaskProgressTracker
5
+ * to run parallel investigation tasks with progress tracking.
6
+ */
7
+ declare function runExample(): Promise<void>;
8
+ export { runExample };
9
+ //# sourceMappingURL=example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../src/investigation-engine/example.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,iBAAe,UAAU,kBAyFxB;AAOD,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Example usage of the Investigation Engine
3
+ *
4
+ * This file demonstrates how to use the TaskExecutor and TaskProgressTracker
5
+ * to run parallel investigation tasks with progress tracking.
6
+ */
7
+ import { TaskExecutor, TaskProgressTracker, getInvestigationTasks } from './index.js';
8
+ async function runExample() {
9
+ console.log('=== Investigation Engine Example ===\n');
10
+ // 1. Get pre-defined investigation tasks for a query
11
+ const query = 'API is slow and returning errors';
12
+ const tasks = getInvestigationTasks(query);
13
+ console.log(`Generated ${tasks.length} investigation tasks for: "${query}"\n`);
14
+ tasks.forEach((task, i) => {
15
+ console.log(`${i + 1}. ${task.name} (${task.priority} priority)`);
16
+ console.log(` Source: ${task.source}`);
17
+ console.log(` ${task.description}\n`);
18
+ });
19
+ // 2. Create a progress tracker
20
+ const tracker = new TaskProgressTracker();
21
+ // Add all tasks to tracker
22
+ tasks.forEach(task => tracker.addTask(task));
23
+ // 3. Set up progress listener
24
+ tracker.onProgress((event) => {
25
+ const timestamp = new Date().toISOString().split('T')[1].split('.')[0];
26
+ switch (event.type) {
27
+ case 'start':
28
+ console.log(`[${timestamp}] ▶️ Started: ${event.taskName}`);
29
+ break;
30
+ case 'complete':
31
+ console.log(`[${timestamp}] ✅ Completed: ${event.taskName} (${event.duration}ms, ${event.findingsCount} findings)`);
32
+ break;
33
+ case 'error':
34
+ console.log(`[${timestamp}] ❌ Failed: ${event.taskName} - ${event.message}`);
35
+ break;
36
+ }
37
+ });
38
+ // 4. Create executor and run tasks
39
+ const executor = new TaskExecutor({
40
+ parallel: true,
41
+ maxConcurrency: 3,
42
+ simulatedDelay: true,
43
+ onProgress: (event) => tracker.emit(event),
44
+ });
45
+ console.log('\n=== Executing Tasks (max 3 concurrent) ===\n');
46
+ const startTime = Date.now();
47
+ const results = await executor.execute(tasks);
48
+ const totalDuration = Date.now() - startTime;
49
+ // 5. Display summary
50
+ console.log('\n=== Execution Summary ===\n');
51
+ const summary = tracker.getSummary();
52
+ console.log(`Total tasks: ${summary.total}`);
53
+ console.log(`Completed: ${summary.completed}`);
54
+ console.log(`Failed: ${summary.failed}`);
55
+ console.log(`Total findings: ${summary.findings}`);
56
+ console.log(`Total duration: ${totalDuration}ms\n`);
57
+ // 6. Display findings
58
+ console.log('=== Findings by Priority ===\n');
59
+ const allFindings = results
60
+ .filter(task => task.result)
61
+ .flatMap(task => task.result.findings);
62
+ const byPriority = {
63
+ P0: allFindings.filter(f => f.priority === 'P0'),
64
+ P1: allFindings.filter(f => f.priority === 'P1'),
65
+ P2: allFindings.filter(f => f.priority === 'P2'),
66
+ P3: allFindings.filter(f => f.priority === 'P3'),
67
+ };
68
+ Object.entries(byPriority).forEach(([priority, findings]) => {
69
+ if (findings.length > 0) {
70
+ console.log(`${priority}: ${findings.length} findings`);
71
+ findings.slice(0, 2).forEach(f => {
72
+ console.log(` - ${f.title} (${f.service})`);
73
+ });
74
+ if (findings.length > 2) {
75
+ console.log(` ... and ${findings.length - 2} more\n`);
76
+ }
77
+ else {
78
+ console.log();
79
+ }
80
+ }
81
+ });
82
+ }
83
+ // Run the example if this file is executed directly
84
+ if (import.meta.url === `file://${process.argv[1]}`) {
85
+ runExample().catch(console.error);
86
+ }
87
+ export { runExample };
88
+ //# sourceMappingURL=example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.js","sourceRoot":"","sources":["../../src/investigation-engine/example.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Investigation Engine - Parallel task execution for multi-agent investigations
3
+ */
4
+ export type { TaskSource, TaskStatus, FindingPriority, Finding, TaskResult, InvestigationTask, TaskProgressEvent, TaskEventCallback, } from './task-types.js';
5
+ export { TaskExecutor } from './task-executor.js';
6
+ export type { TaskExecutorOptions } from './task-executor.js';
7
+ export { TaskProgressTracker } from './task-progress.js';
8
+ export { getInvestigationTasks, createCustomTask } from './task-definitions.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/investigation-engine/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,UAAU,EACV,UAAU,EACV,eAAe,EACf,OAAO,EACP,UAAU,EACV,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Investigation Engine - Parallel task execution for multi-agent investigations
3
+ */
4
+ // Export classes
5
+ export { TaskExecutor } from './task-executor.js';
6
+ export { TaskProgressTracker } from './task-progress.js';
7
+ // Export task definitions
8
+ export { getInvestigationTasks, createCustomTask } from './task-definitions.js';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/investigation-engine/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAcH,iBAAiB;AACjB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,0BAA0B;AAC1B,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { InvestigationTask } from './task-types.js';
2
+ /**
3
+ * Generate pre-defined investigation tasks based on query
4
+ */
5
+ export declare function getInvestigationTasks(query: string): InvestigationTask[];
6
+ /**
7
+ * Create a custom investigation task
8
+ */
9
+ export declare function createCustomTask(name: string, description: string, source: InvestigationTask['source'], priority?: InvestigationTask['priority']): InvestigationTask;
10
+ //# sourceMappingURL=task-definitions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-definitions.d.ts","sourceRoot":"","sources":["../../src/investigation-engine/task-definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE,CA8ExE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,iBAAiB,CAAC,QAAQ,CAAC,EACnC,QAAQ,GAAE,iBAAiB,CAAC,UAAU,CAAY,GACjD,iBAAiB,CASnB"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Generate pre-defined investigation tasks based on query
3
+ */
4
+ export function getInvestigationTasks(query) {
5
+ const tasks = [];
6
+ // Always include high-priority tasks
7
+ tasks.push({
8
+ id: 'task-datadog-metrics',
9
+ name: 'Fetch Datadog Metrics',
10
+ description: 'Retrieve recent metrics from Datadog for error rates, latency, and throughput',
11
+ source: 'datadog',
12
+ priority: 'high',
13
+ status: 'pending',
14
+ });
15
+ tasks.push({
16
+ id: 'task-recent-deploys',
17
+ name: 'Check Recent Deployments',
18
+ description: 'Scan for recent deployments that may have introduced issues',
19
+ source: 'deployments',
20
+ priority: 'high',
21
+ status: 'pending',
22
+ });
23
+ tasks.push({
24
+ id: 'task-error-logs',
25
+ name: 'Scan Error Logs',
26
+ description: 'Search logs for error patterns and stack traces',
27
+ source: 'logs',
28
+ priority: 'high',
29
+ status: 'pending',
30
+ });
31
+ // Medium priority tasks
32
+ tasks.push({
33
+ id: 'task-sla-metrics',
34
+ name: 'Analyze SLA Metrics',
35
+ description: 'Check if any SLAs are being violated',
36
+ source: 'sla',
37
+ priority: 'medium',
38
+ status: 'pending',
39
+ });
40
+ tasks.push({
41
+ id: 'task-past-incidents',
42
+ name: 'Review Past Incidents',
43
+ description: 'Look for similar past incidents and their resolutions',
44
+ source: 'incidents',
45
+ priority: 'medium',
46
+ status: 'pending',
47
+ });
48
+ tasks.push({
49
+ id: 'task-alerts',
50
+ name: 'Check Active Alerts',
51
+ description: 'Retrieve currently firing alerts and their history',
52
+ source: 'alerts',
53
+ priority: 'medium',
54
+ status: 'pending',
55
+ });
56
+ // Low priority task - only include if query mentions traces or performance
57
+ const queryLower = query.toLowerCase();
58
+ if (queryLower.includes('trace') ||
59
+ queryLower.includes('performance') ||
60
+ queryLower.includes('slow') ||
61
+ queryLower.includes('latency')) {
62
+ tasks.push({
63
+ id: 'task-traces',
64
+ name: 'Analyze Distributed Traces',
65
+ description: 'Examine trace data for performance bottlenecks',
66
+ source: 'traces',
67
+ priority: 'low',
68
+ status: 'pending',
69
+ });
70
+ }
71
+ return tasks;
72
+ }
73
+ /**
74
+ * Create a custom investigation task
75
+ */
76
+ export function createCustomTask(name, description, source, priority = 'medium') {
77
+ return {
78
+ id: `task-custom-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`,
79
+ name,
80
+ description,
81
+ source,
82
+ priority,
83
+ status: 'pending',
84
+ };
85
+ }
86
+ //# sourceMappingURL=task-definitions.js.map