resolve-solo 1.0.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 (117) 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/data-sources/alerts-generator.d.ts +12 -0
  21. package/dist/data-sources/alerts-generator.d.ts.map +1 -0
  22. package/dist/data-sources/alerts-generator.js +168 -0
  23. package/dist/data-sources/alerts-generator.js.map +1 -0
  24. package/dist/data-sources/index.d.ts +10 -0
  25. package/dist/data-sources/index.d.ts.map +1 -0
  26. package/dist/data-sources/index.js +10 -0
  27. package/dist/data-sources/index.js.map +1 -0
  28. package/dist/data-sources/metrics-generator.d.ts +12 -0
  29. package/dist/data-sources/metrics-generator.d.ts.map +1 -0
  30. package/dist/data-sources/metrics-generator.js +169 -0
  31. package/dist/data-sources/metrics-generator.js.map +1 -0
  32. package/dist/data-sources/pipeline-generator.d.ts +12 -0
  33. package/dist/data-sources/pipeline-generator.d.ts.map +1 -0
  34. package/dist/data-sources/pipeline-generator.js +157 -0
  35. package/dist/data-sources/pipeline-generator.js.map +1 -0
  36. package/dist/data-sources/sla-generator.d.ts +12 -0
  37. package/dist/data-sources/sla-generator.d.ts.map +1 -0
  38. package/dist/data-sources/sla-generator.js +84 -0
  39. package/dist/data-sources/sla-generator.js.map +1 -0
  40. package/dist/demo-generator.d.ts +6 -2
  41. package/dist/demo-generator.d.ts.map +1 -1
  42. package/dist/demo-generator.js +40 -30
  43. package/dist/demo-generator.js.map +1 -1
  44. package/dist/demo-schema.d.ts +49 -0
  45. package/dist/demo-schema.d.ts.map +1 -1
  46. package/dist/findings/aggregator.d.ts +26 -0
  47. package/dist/findings/aggregator.d.ts.map +1 -0
  48. package/dist/findings/aggregator.js +149 -0
  49. package/dist/findings/aggregator.js.map +1 -0
  50. package/dist/findings/formatter.d.ts +50 -0
  51. package/dist/findings/formatter.d.ts.map +1 -0
  52. package/dist/findings/formatter.js +393 -0
  53. package/dist/findings/formatter.js.map +1 -0
  54. package/dist/findings/index.d.ts +4 -0
  55. package/dist/findings/index.d.ts.map +1 -0
  56. package/dist/findings/index.js +7 -0
  57. package/dist/findings/index.js.map +1 -0
  58. package/dist/findings/prioritizer.d.ts +15 -0
  59. package/dist/findings/prioritizer.d.ts.map +1 -0
  60. package/dist/findings/prioritizer.js +107 -0
  61. package/dist/findings/prioritizer.js.map +1 -0
  62. package/dist/handlers.d.ts +38 -0
  63. package/dist/handlers.d.ts.map +1 -1
  64. package/dist/handlers.js +135 -1
  65. package/dist/handlers.js.map +1 -1
  66. package/dist/investigation-engine/example.d.ts +9 -0
  67. package/dist/investigation-engine/example.d.ts.map +1 -0
  68. package/dist/investigation-engine/example.js +88 -0
  69. package/dist/investigation-engine/example.js.map +1 -0
  70. package/dist/investigation-engine/index.d.ts +9 -0
  71. package/dist/investigation-engine/index.d.ts.map +1 -0
  72. package/dist/investigation-engine/index.js +9 -0
  73. package/dist/investigation-engine/index.js.map +1 -0
  74. package/dist/investigation-engine/task-definitions.d.ts +10 -0
  75. package/dist/investigation-engine/task-definitions.d.ts.map +1 -0
  76. package/dist/investigation-engine/task-definitions.js +86 -0
  77. package/dist/investigation-engine/task-definitions.js.map +1 -0
  78. package/dist/investigation-engine/task-executor.d.ts +58 -0
  79. package/dist/investigation-engine/task-executor.d.ts.map +1 -0
  80. package/dist/investigation-engine/task-executor.js +211 -0
  81. package/dist/investigation-engine/task-executor.js.map +1 -0
  82. package/dist/investigation-engine/task-progress.d.ts +51 -0
  83. package/dist/investigation-engine/task-progress.d.ts.map +1 -0
  84. package/dist/investigation-engine/task-progress.js +107 -0
  85. package/dist/investigation-engine/task-progress.js.map +1 -0
  86. package/dist/investigation-engine/task-types.d.ts +44 -0
  87. package/dist/investigation-engine/task-types.d.ts.map +1 -0
  88. package/dist/investigation-engine/task-types.js +2 -0
  89. package/dist/investigation-engine/task-types.js.map +1 -0
  90. package/dist/mcp/tools.d.ts.map +1 -1
  91. package/dist/mcp/tools.js +22 -2
  92. package/dist/mcp/tools.js.map +1 -1
  93. package/dist/parser.d.ts.map +1 -1
  94. package/dist/parser.js +10 -0
  95. package/dist/parser.js.map +1 -1
  96. package/dist/repl.d.ts.map +1 -1
  97. package/dist/repl.js +143 -19
  98. package/dist/repl.js.map +1 -1
  99. package/dist/seeded-random.d.ts +15 -0
  100. package/dist/seeded-random.d.ts.map +1 -0
  101. package/dist/seeded-random.js +32 -0
  102. package/dist/seeded-random.js.map +1 -0
  103. package/dist/storage.d.ts +9 -5
  104. package/dist/storage.d.ts.map +1 -1
  105. package/dist/storage.js +75 -8
  106. package/dist/storage.js.map +1 -1
  107. package/dist/tool-config.d.ts +36 -0
  108. package/dist/tool-config.d.ts.map +1 -0
  109. package/dist/tool-config.js +83 -0
  110. package/dist/tool-config.js.map +1 -0
  111. package/dist/tool-discovery.d.ts +27 -0
  112. package/dist/tool-discovery.d.ts.map +1 -0
  113. package/dist/tool-discovery.js +150 -0
  114. package/dist/tool-discovery.js.map +1 -0
  115. package/dist/types.d.ts +1 -1
  116. package/dist/types.d.ts.map +1 -1
  117. package/package.json +1 -1
@@ -0,0 +1,157 @@
1
+ /**
2
+ * Pipeline Generator
3
+ *
4
+ * Generates realistic deployment pipelines with stages
5
+ */
6
+ const STAGE_NAMES = [
7
+ 'Build',
8
+ 'Unit Tests',
9
+ 'Integration Tests',
10
+ 'Security Scan',
11
+ 'Deploy to Staging',
12
+ 'Smoke Tests',
13
+ 'Deploy to Production',
14
+ ];
15
+ const DEPLOYERS = [
16
+ { name: 'Alice Chen', email: 'alice@example.com' },
17
+ { name: 'Bob Smith', email: 'bob@example.com' },
18
+ { name: 'Carol Wu', email: 'carol@example.com' },
19
+ { name: 'David Kim', email: 'david@example.com' },
20
+ ];
21
+ /**
22
+ * Generate realistic deployment pipelines
23
+ */
24
+ export function generatePipelines(services, metrics, rng, baseDate = new Date()) {
25
+ const pipelines = [];
26
+ const now = baseDate;
27
+ // Generate 5-10 pipelines
28
+ const pipelineCount = rng.nextInt(5, 10);
29
+ // Only deploy application services
30
+ const deployableServices = services.filter((s) => s.stack === 'python' || s.stack === 'node');
31
+ // Ensure we have mix of statuses
32
+ const statusTargets = {
33
+ success: Math.ceil(pipelineCount * 0.6), // 60% success
34
+ failed: Math.ceil(pipelineCount * 0.2), // 20% failed
35
+ running: Math.ceil(pipelineCount * 0.1), // 10% running
36
+ cancelled: Math.ceil(pipelineCount * 0.1), // 10% cancelled
37
+ };
38
+ let statusCounts = { success: 0, failed: 0, running: 0, cancelled: 0 };
39
+ for (let i = 0; i < pipelineCount; i++) {
40
+ const service = rng.pick(deployableServices);
41
+ const deployer = rng.pick(DEPLOYERS);
42
+ const version = `v1.${rng.nextInt(10, 99)}.${rng.nextInt(0, 20)}`;
43
+ // Time distribution over last 7 days
44
+ const daysAgo = rng.next() * 7;
45
+ const startTime = new Date(now.getTime() - daysAgo * 24 * 60 * 60 * 1000);
46
+ // Determine status based on targets
47
+ let status;
48
+ if (statusCounts.failed < statusTargets.failed && rng.next() < 0.3) {
49
+ status = 'failed';
50
+ statusCounts.failed++;
51
+ }
52
+ else if (statusCounts.running < statusTargets.running && i < 2) {
53
+ status = 'running';
54
+ statusCounts.running++;
55
+ }
56
+ else if (statusCounts.cancelled < statusTargets.cancelled && rng.next() < 0.15) {
57
+ status = 'cancelled';
58
+ statusCounts.cancelled++;
59
+ }
60
+ else {
61
+ status = 'success';
62
+ statusCounts.success++;
63
+ }
64
+ // Check if service has error spikes (correlate with failed pipelines)
65
+ const serviceMetrics = metrics.filter((m) => m.service === service.id);
66
+ const hasHighErrors = serviceMetrics.some((m) => m.metric === 'error_rate' && m.value > 5);
67
+ if (hasHighErrors && status === 'success' && rng.next() < 0.4) {
68
+ // Service with high errors more likely to have failed deploy
69
+ status = 'failed';
70
+ }
71
+ // Generate stages
72
+ const stages = [];
73
+ let currentTime = startTime.getTime();
74
+ for (const stageName of STAGE_NAMES) {
75
+ let stageStatus;
76
+ let duration;
77
+ if (status === 'running') {
78
+ // For running pipelines, some stages complete, current is running, rest pending
79
+ if (stages.length < 3) {
80
+ stageStatus = 'success';
81
+ duration = rng.nextInt(30, 180); // 30s-3min
82
+ }
83
+ else if (stages.length === 3) {
84
+ stageStatus = 'running';
85
+ duration = undefined; // Still running
86
+ }
87
+ else {
88
+ stageStatus = 'pending';
89
+ duration = undefined;
90
+ }
91
+ }
92
+ else if (status === 'failed') {
93
+ // For failed pipelines, fail at a specific stage
94
+ const failStage = rng.nextInt(1, STAGE_NAMES.length - 2);
95
+ if (stages.length < failStage) {
96
+ stageStatus = 'success';
97
+ duration = rng.nextInt(30, 180);
98
+ }
99
+ else if (stages.length === failStage) {
100
+ stageStatus = 'failed';
101
+ duration = rng.nextInt(10, 120);
102
+ }
103
+ else {
104
+ stageStatus = 'skipped';
105
+ duration = undefined;
106
+ }
107
+ }
108
+ else if (status === 'cancelled') {
109
+ // For cancelled pipelines, cancel at a random stage
110
+ const cancelStage = rng.nextInt(0, STAGE_NAMES.length - 3);
111
+ if (stages.length < cancelStage) {
112
+ stageStatus = 'success';
113
+ duration = rng.nextInt(30, 180);
114
+ }
115
+ else if (stages.length === cancelStage) {
116
+ stageStatus = 'failed';
117
+ duration = rng.nextInt(5, 60);
118
+ }
119
+ else {
120
+ stageStatus = 'skipped';
121
+ duration = undefined;
122
+ }
123
+ }
124
+ else {
125
+ // Success - all stages succeed
126
+ stageStatus = 'success';
127
+ duration = rng.nextInt(30, 180);
128
+ }
129
+ stages.push({
130
+ name: stageName,
131
+ status: stageStatus,
132
+ duration,
133
+ });
134
+ if (duration) {
135
+ currentTime += duration * 1000;
136
+ }
137
+ }
138
+ // Calculate end time
139
+ let endTime;
140
+ if (status !== 'running') {
141
+ const totalDuration = stages.reduce((sum, s) => sum + (s.duration || 0), 0);
142
+ endTime = new Date(startTime.getTime() + totalDuration * 1000).toISOString();
143
+ }
144
+ pipelines.push({
145
+ id: `pipeline-${i + 1}`,
146
+ service: service.id,
147
+ version,
148
+ status,
149
+ stages,
150
+ triggeredBy: deployer.name,
151
+ startTime: startTime.toISOString(),
152
+ endTime,
153
+ });
154
+ }
155
+ return pipelines.sort((a, b) => new Date(a.startTime).getTime() - new Date(b.startTime).getTime());
156
+ }
157
+ //# sourceMappingURL=pipeline-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline-generator.js","sourceRoot":"","sources":["../../src/data-sources/pipeline-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * SLA Generator
3
+ *
4
+ * Generates realistic SLA metrics for services
5
+ */
6
+ import type { Service, SLAMetric, MetricDataPoint } from '../demo-schema.js';
7
+ import type { SeededRandom } from '../seeded-random.js';
8
+ /**
9
+ * Generate realistic SLA metrics for services
10
+ */
11
+ export declare function generateSLA(services: Service[], metrics: MetricDataPoint[], rng: SeededRandom): SLAMetric[];
12
+ //# sourceMappingURL=sla-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sla-generator.d.ts","sourceRoot":"","sources":["../../src/data-sources/sla-generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAWxD;;GAEG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE,eAAe,EAAE,EAC1B,GAAG,EAAE,YAAY,GAChB,SAAS,EAAE,CAuFb"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * SLA Generator
3
+ *
4
+ * Generates realistic SLA metrics for services
5
+ */
6
+ const SLA_NAMES = [
7
+ 'API Availability',
8
+ 'Request Success Rate',
9
+ 'Response Time P95',
10
+ 'Error Rate',
11
+ ];
12
+ const PERIODS = ['last_24h', 'last_7d'];
13
+ /**
14
+ * Generate realistic SLA metrics for services
15
+ */
16
+ export function generateSLA(services, metrics, rng) {
17
+ const slaMetrics = [];
18
+ // Only monitor application services (not infra)
19
+ const monitoredServices = services.filter((s) => s.stack === 'python' || s.stack === 'node');
20
+ // Ensure we have 1-2 services in warning
21
+ const warningCount = rng.nextInt(1, 2);
22
+ const warningServices = [];
23
+ for (let i = 0; i < warningCount; i++) {
24
+ const service = rng.pick(monitoredServices.filter((s) => !warningServices.includes(s)));
25
+ warningServices.push(service);
26
+ }
27
+ // Ensure we have 1 service breached
28
+ const breachedService = rng.pick(monitoredServices.filter((s) => !warningServices.includes(s)));
29
+ let warningAssigned = 0;
30
+ let breachedAssigned = 0;
31
+ // Generate SLA metrics for each monitored service
32
+ for (const service of monitoredServices) {
33
+ const slaName = rng.pick(SLA_NAMES);
34
+ const period = rng.pick(PERIODS);
35
+ const target = 99.5; // Standard SLA target
36
+ let current;
37
+ let status;
38
+ // Check if this service should be in warning or breached
39
+ if (breachedAssigned === 0 && service.id === breachedService.id) {
40
+ // Breached SLA (<98%)
41
+ current = 95 + rng.next() * 3; // 95-98%
42
+ status = 'breached';
43
+ breachedAssigned++;
44
+ }
45
+ else if (warningAssigned < warningServices.length && warningServices.some((s) => s.id === service.id)) {
46
+ // Warning SLA (98-99%)
47
+ current = 98 + rng.next() * 1; // 98-99%
48
+ status = 'warning';
49
+ warningAssigned++;
50
+ }
51
+ else {
52
+ // Healthy SLA (>99.5%)
53
+ current = 99.5 + rng.next() * 0.5; // 99.5-100%
54
+ status = 'healthy';
55
+ }
56
+ // Check metrics to correlate with actual service health
57
+ // Only adjust if NOT already assigned a specific status
58
+ if (status === 'healthy' && !warningServices.some((s) => s.id === service.id) && service.id !== breachedService.id) {
59
+ const serviceMetrics = metrics.filter((m) => m.service === service.id);
60
+ const hasHighErrors = serviceMetrics.some((m) => m.metric === 'error_rate' && m.value > 5);
61
+ const hasHighLatency = serviceMetrics.some((m) => m.metric === 'latency_p99' && m.value > 500);
62
+ // Only adjust some healthy services to warning based on metrics (not all)
63
+ if ((hasHighErrors || hasHighLatency) && rng.next() < 0.3) {
64
+ current = 98 + rng.next() * 1.5; // 98-99.5%
65
+ if (current < 99.5) {
66
+ status = 'warning';
67
+ }
68
+ }
69
+ }
70
+ // Round to 1 decimal place
71
+ current = Math.round(current * 10) / 10;
72
+ slaMetrics.push({
73
+ id: `sla-${slaMetrics.length + 1}`,
74
+ service: service.id,
75
+ slaName,
76
+ target,
77
+ current,
78
+ status,
79
+ period,
80
+ });
81
+ }
82
+ return slaMetrics;
83
+ }
84
+ //# sourceMappingURL=sla-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sla-generator.js","sourceRoot":"","sources":["../../src/data-sources/sla-generator.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,13 @@
4
4
  * Generates deterministic mock data for demo mode.
5
5
  * Uses a fixed seed to ensure reproducibility.
6
6
  */
7
- import type { DemoDataset } from './demo-schema.js';
7
+ import type { DemoDataset, EnhancedDemoDataset } from './demo-schema.js';
8
8
  /**
9
- * Generate complete demo dataset
9
+ * Generate complete demo dataset (legacy - without enhanced data)
10
10
  */
11
11
  export declare function generateDemoData(seed?: number, baseDate?: Date): DemoDataset;
12
+ /**
13
+ * Generate complete enhanced demo dataset with metrics, SLA, pipelines, and alerts
14
+ */
15
+ export declare function generateEnhancedDemoData(seed?: number, baseDate?: Date): EnhancedDemoDataset;
12
16
  //# sourceMappingURL=demo-generator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"demo-generator.d.ts","sourceRoot":"","sources":["../src/demo-generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EAKZ,MAAM,kBAAkB,CAAC;AA6W1B;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,MAAkB,EAAE,QAAQ,CAAC,EAAE,IAAI,GAAG,WAAW,CAoBvF"}
1
+ {"version":3,"file":"demo-generator.d.ts","sourceRoot":"","sources":["../src/demo-generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EASpB,MAAM,kBAAkB,CAAC;AAiV1B;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,MAAkB,EAAE,QAAQ,CAAC,EAAE,IAAI,GAAG,WAAW,CAoBvF;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,GAAE,MAAkB,EACxB,QAAQ,CAAC,EAAE,IAAI,GACd,mBAAmB,CAuCrB"}
@@ -5,36 +5,9 @@
5
5
  * Uses a fixed seed to ensure reproducibility.
6
6
  */
7
7
  import { VERSION } from './constants.js';
8
+ import { SeededRandom } from './seeded-random.js';
9
+ import { generateMetrics, generateSLA, generatePipelines, generateAlerts, } from './data-sources/index.js';
8
10
  const DEMO_SEED = 42; // Answer to everything
9
- /**
10
- * Simple seeded random number generator (LCG algorithm)
11
- * Same seed = same sequence of random numbers
12
- */
13
- class SeededRandom {
14
- state;
15
- constructor(seed) {
16
- this.state = seed;
17
- }
18
- next() {
19
- // Linear congruential generator
20
- this.state = (this.state * 1664525 + 1013904223) % 2 ** 32;
21
- return this.state / 2 ** 32;
22
- }
23
- nextInt(min, max) {
24
- return Math.floor(this.next() * (max - min + 1)) + min;
25
- }
26
- pick(array) {
27
- return array[this.nextInt(0, array.length - 1)];
28
- }
29
- shuffle(array) {
30
- const result = [...array];
31
- for (let i = result.length - 1; i > 0; i--) {
32
- const j = this.nextInt(0, i);
33
- [result[i], result[j]] = [result[j], result[i]];
34
- }
35
- return result;
36
- }
37
- }
38
11
  /**
39
12
  * Generate realistic service catalog
40
13
  */
@@ -328,7 +301,7 @@ function generateIncidents(services, rng, baseDate = new Date()) {
328
301
  return incidents.sort((a, b) => new Date(a.createdAt).getTime() - new Date(b.createdAt).getTime());
329
302
  }
330
303
  /**
331
- * Generate complete demo dataset
304
+ * Generate complete demo dataset (legacy - without enhanced data)
332
305
  */
333
306
  export function generateDemoData(seed = DEMO_SEED, baseDate) {
334
307
  const rng = new SeededRandom(seed);
@@ -349,4 +322,41 @@ export function generateDemoData(seed = DEMO_SEED, baseDate) {
349
322
  },
350
323
  };
351
324
  }
325
+ /**
326
+ * Generate complete enhanced demo dataset with metrics, SLA, pipelines, and alerts
327
+ */
328
+ export function generateEnhancedDemoData(seed = DEMO_SEED, baseDate) {
329
+ const rng = new SeededRandom(seed);
330
+ const now = baseDate || new Date();
331
+ // Generate base data
332
+ const services = generateServices(rng);
333
+ const deploys = generateDeploys(services, rng, now);
334
+ const logs = generateLogs(services, rng, now);
335
+ const incidents = generateIncidents(services, rng, now);
336
+ // Generate enhanced data
337
+ // Use separate RNG instances to ensure determinism
338
+ const metricsRng = new SeededRandom(seed + 1);
339
+ const metrics = generateMetrics(services, metricsRng, now);
340
+ const slaRng = new SeededRandom(seed + 2);
341
+ const sla = generateSLA(services, metrics, slaRng);
342
+ const pipelinesRng = new SeededRandom(seed + 3);
343
+ const pipelines = generatePipelines(services, metrics, pipelinesRng, now);
344
+ const alertsRng = new SeededRandom(seed + 4);
345
+ const alerts = generateAlerts(services, metrics, sla, alertsRng, now);
346
+ return {
347
+ services,
348
+ deploys,
349
+ logs,
350
+ incidents,
351
+ metrics,
352
+ sla,
353
+ pipelines,
354
+ alerts,
355
+ metadata: {
356
+ generatedAt: now.toISOString(),
357
+ seed,
358
+ version: VERSION,
359
+ },
360
+ };
361
+ }
352
362
  //# sourceMappingURL=demo-generator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"demo-generator.js","sourceRoot":"","sources":["../src/demo-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"demo-generator.js","sourceRoot":"","sources":["../src/demo-generator.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,49 @@ export interface Incident {
52
52
  resolution?: string;
53
53
  timeToResolveMinutes?: number;
54
54
  }
55
+ export interface MetricDataPoint {
56
+ id: string;
57
+ service: string;
58
+ metric: 'latency_p99' | 'error_rate' | 'throughput' | 'cpu' | 'memory';
59
+ timestamp: string;
60
+ value: number;
61
+ unit: string;
62
+ anomaly?: 'spike' | 'drop' | 'normal';
63
+ }
64
+ export interface SLAMetric {
65
+ id: string;
66
+ service: string;
67
+ slaName: string;
68
+ target: number;
69
+ current: number;
70
+ status: 'healthy' | 'warning' | 'breached';
71
+ period: string;
72
+ }
73
+ export interface PipelineStage {
74
+ name: string;
75
+ status: 'pending' | 'running' | 'success' | 'failed' | 'skipped';
76
+ duration?: number;
77
+ }
78
+ export interface DeploymentPipeline {
79
+ id: string;
80
+ service: string;
81
+ version: string;
82
+ status: 'running' | 'success' | 'failed' | 'cancelled';
83
+ stages: PipelineStage[];
84
+ triggeredBy: string;
85
+ startTime: string;
86
+ endTime?: string;
87
+ }
88
+ export interface AlertEvent {
89
+ id: string;
90
+ service: string;
91
+ alertName: string;
92
+ severity: 'critical' | 'warning' | 'info';
93
+ status: 'firing' | 'resolved';
94
+ startTime: string;
95
+ endTime?: string;
96
+ message: string;
97
+ }
55
98
  export interface DemoDataset {
56
99
  services: Service[];
57
100
  deploys: DeployEvent[];
@@ -63,4 +106,10 @@ export interface DemoDataset {
63
106
  version: string;
64
107
  };
65
108
  }
109
+ export interface EnhancedDemoDataset extends DemoDataset {
110
+ metrics: MetricDataPoint[];
111
+ sla: SLAMetric[];
112
+ pipelines: DeploymentPipeline[];
113
+ alerts: AlertEvent[];
114
+ }
66
115
  //# sourceMappingURL=demo-schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"demo-schema.d.ts","sourceRoot":"","sources":["../src/demo-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,YAAY,GAAG,SAAS,CAAC;IACtC,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,aAAa,CAAC;CAC9C;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjD,MAAM,EAAE,MAAM,GAAG,eAAe,GAAG,UAAU,CAAC;IAC9C,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,QAAQ,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH"}
1
+ {"version":3,"file":"demo-schema.d.ts","sourceRoot":"","sources":["../src/demo-schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { Finding, InvestigationTask } from '../investigation-engine/task-types.js';
2
+ export interface AggregatedFindings {
3
+ total: number;
4
+ byPriority: {
5
+ P0: Finding[];
6
+ P1: Finding[];
7
+ P2: Finding[];
8
+ P3: Finding[];
9
+ };
10
+ byCategory: Record<string, Finding[]>;
11
+ byService: Record<string, Finding[]>;
12
+ }
13
+ /**
14
+ * Aggregate findings from completed investigation tasks
15
+ */
16
+ export declare function aggregateFindings(tasks: InvestigationTask[]): AggregatedFindings;
17
+ /**
18
+ * Merge duplicate or related findings
19
+ *
20
+ * Two findings are considered duplicates if:
21
+ * - Same service AND same category AND similar title (>80% overlap)
22
+ * - Keep the one with higher priority
23
+ * - Merge evidence arrays
24
+ */
25
+ export declare function deduplicateFindings(findings: Finding[]): Finding[];
26
+ //# sourceMappingURL=aggregator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aggregator.d.ts","sourceRoot":"","sources":["../../src/findings/aggregator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAc,MAAM,uCAAuC,CAAC;AAE/F,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE;QACV,EAAE,EAAE,OAAO,EAAE,CAAC;QACd,EAAE,EAAE,OAAO,EAAE,CAAC;QACd,EAAE,EAAE,OAAO,EAAE,CAAC;QACd,EAAE,EAAE,OAAO,EAAE,CAAC;KACf,CAAC;IACF,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IACtC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,GAAG,kBAAkB,CA6ChF;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CA0ClE"}