agentic-qe 1.8.3 → 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.
- package/.claude/skills/agentic-jujutsu/SKILL.md +645 -0
- package/.claude/skills/cicd-pipeline-qe-orchestrator/README.md +2 -2
- package/.claude/skills/cicd-pipeline-qe-orchestrator/SKILL.md +6 -6
- package/CHANGELOG.md +595 -0
- package/README.md +117 -16
- package/config/constitution.schema.json +423 -0
- package/config/otel-collector.yaml +234 -0
- package/dist/App.d.ts +5 -0
- package/dist/App.d.ts.map +1 -0
- package/dist/App.js +15 -0
- package/dist/App.js.map +1 -0
- package/dist/cli/commands/constitution.d.ts +34 -0
- package/dist/cli/commands/constitution.d.ts.map +1 -0
- package/dist/cli/commands/constitution.js +679 -0
- package/dist/cli/commands/constitution.js.map +1 -0
- package/dist/cli/commands/init-claude-md-template.js +3 -3
- package/dist/cli/commands/init.d.ts +8 -75
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +22 -2292
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/telemetry.d.ts +36 -0
- package/dist/cli/commands/telemetry.d.ts.map +1 -0
- package/dist/cli/commands/telemetry.js +364 -0
- package/dist/cli/commands/telemetry.js.map +1 -0
- package/dist/cli/index.js +66 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init/agents.d.ts +22 -0
- package/dist/cli/init/agents.d.ts.map +1 -0
- package/dist/cli/init/agents.js +522 -0
- package/dist/cli/init/agents.js.map +1 -0
- package/dist/cli/init/bash-wrapper.d.ts +14 -0
- package/dist/cli/init/bash-wrapper.d.ts.map +1 -0
- package/dist/cli/init/bash-wrapper.js +47 -0
- package/dist/cli/init/bash-wrapper.js.map +1 -0
- package/dist/cli/init/claude-config.d.ts +24 -0
- package/dist/cli/init/claude-config.d.ts.map +1 -0
- package/dist/cli/init/claude-config.js +275 -0
- package/dist/cli/init/claude-config.js.map +1 -0
- package/dist/cli/init/claude-md.d.ts +19 -0
- package/dist/cli/init/claude-md.d.ts.map +1 -0
- package/dist/cli/init/claude-md.js +153 -0
- package/dist/cli/init/claude-md.js.map +1 -0
- package/dist/cli/init/commands.d.ts +6 -0
- package/dist/cli/init/commands.d.ts.map +1 -0
- package/dist/cli/init/commands.js +83 -0
- package/dist/cli/init/commands.js.map +1 -0
- package/dist/cli/init/database-init.d.ts +15 -0
- package/dist/cli/init/database-init.d.ts.map +1 -0
- package/dist/cli/init/database-init.js +203 -0
- package/dist/cli/init/database-init.js.map +1 -0
- package/dist/cli/init/directory-structure.d.ts +14 -0
- package/dist/cli/init/directory-structure.d.ts.map +1 -0
- package/dist/cli/init/directory-structure.js +107 -0
- package/dist/cli/init/directory-structure.js.map +1 -0
- package/dist/cli/init/documentation.d.ts +14 -0
- package/dist/cli/init/documentation.d.ts.map +1 -0
- package/dist/cli/init/documentation.js +195 -0
- package/dist/cli/init/documentation.js.map +1 -0
- package/dist/cli/init/fleet-config.d.ts +34 -0
- package/dist/cli/init/fleet-config.d.ts.map +1 -0
- package/dist/cli/init/fleet-config.js +269 -0
- package/dist/cli/init/fleet-config.js.map +1 -0
- package/dist/cli/init/helpers.d.ts +6 -0
- package/dist/cli/init/helpers.d.ts.map +1 -0
- package/dist/cli/init/helpers.js +94 -0
- package/dist/cli/init/helpers.js.map +1 -0
- package/dist/cli/init/index.d.ts +32 -0
- package/dist/cli/init/index.d.ts.map +1 -0
- package/dist/cli/init/index.js +294 -0
- package/dist/cli/init/index.js.map +1 -0
- package/dist/cli/init/skills.d.ts +6 -0
- package/dist/cli/init/skills.d.ts.map +1 -0
- package/dist/cli/init/skills.js +138 -0
- package/dist/cli/init/skills.js.map +1 -0
- package/dist/cli/init/utils/file-utils.d.ts +74 -0
- package/dist/cli/init/utils/file-utils.d.ts.map +1 -0
- package/dist/cli/init/utils/file-utils.js +187 -0
- package/dist/cli/init/utils/file-utils.js.map +1 -0
- package/dist/cli/init/utils/index.d.ts +18 -0
- package/dist/cli/init/utils/index.d.ts.map +1 -0
- package/dist/cli/init/utils/index.js +48 -0
- package/dist/cli/init/utils/index.js.map +1 -0
- package/dist/cli/init/utils/log-utils.d.ts +47 -0
- package/dist/cli/init/utils/log-utils.d.ts.map +1 -0
- package/dist/cli/init/utils/log-utils.js +68 -0
- package/dist/cli/init/utils/log-utils.js.map +1 -0
- package/dist/cli/init/utils/path-utils.d.ts +91 -0
- package/dist/cli/init/utils/path-utils.d.ts.map +1 -0
- package/dist/cli/init/utils/path-utils.js +208 -0
- package/dist/cli/init/utils/path-utils.js.map +1 -0
- package/dist/cli/init/utils/validation-utils.d.ts +44 -0
- package/dist/cli/init/utils/validation-utils.d.ts.map +1 -0
- package/dist/cli/init/utils/validation-utils.js +68 -0
- package/dist/cli/init/utils/validation-utils.js.map +1 -0
- package/dist/cli/init/utils.d.ts +183 -0
- package/dist/cli/init/utils.d.ts.map +1 -0
- package/dist/cli/init/utils.js +354 -0
- package/dist/cli/init/utils.js.map +1 -0
- package/dist/components/Dashboard/Dashboard.d.ts +4 -0
- package/dist/components/Dashboard/Dashboard.d.ts.map +1 -0
- package/dist/components/Dashboard/Dashboard.js +148 -0
- package/dist/components/Dashboard/Dashboard.js.map +1 -0
- package/dist/components/Dashboard/DashboardHeader.d.ts +4 -0
- package/dist/components/Dashboard/DashboardHeader.d.ts.map +1 -0
- package/dist/components/Dashboard/DashboardHeader.js +138 -0
- package/dist/components/Dashboard/DashboardHeader.js.map +1 -0
- package/dist/constitution/evaluators/ast-evaluator.d.ts +42 -0
- package/dist/constitution/evaluators/ast-evaluator.d.ts.map +1 -0
- package/dist/constitution/evaluators/ast-evaluator.js +303 -0
- package/dist/constitution/evaluators/ast-evaluator.js.map +1 -0
- package/dist/constitution/evaluators/base.d.ts +144 -0
- package/dist/constitution/evaluators/base.d.ts.map +1 -0
- package/dist/constitution/evaluators/base.js +144 -0
- package/dist/constitution/evaluators/base.js.map +1 -0
- package/dist/constitution/evaluators/index.d.ts +19 -0
- package/dist/constitution/evaluators/index.d.ts.map +1 -0
- package/dist/constitution/evaluators/index.js +56 -0
- package/dist/constitution/evaluators/index.js.map +1 -0
- package/dist/constitution/evaluators/metric-evaluator.d.ts +59 -0
- package/dist/constitution/evaluators/metric-evaluator.d.ts.map +1 -0
- package/dist/constitution/evaluators/metric-evaluator.js +195 -0
- package/dist/constitution/evaluators/metric-evaluator.js.map +1 -0
- package/dist/constitution/evaluators/pattern-evaluator.d.ts +66 -0
- package/dist/constitution/evaluators/pattern-evaluator.d.ts.map +1 -0
- package/dist/constitution/evaluators/pattern-evaluator.js +221 -0
- package/dist/constitution/evaluators/pattern-evaluator.js.map +1 -0
- package/dist/constitution/evaluators/semantic-evaluator.d.ts +68 -0
- package/dist/constitution/evaluators/semantic-evaluator.d.ts.map +1 -0
- package/dist/constitution/evaluators/semantic-evaluator.js +250 -0
- package/dist/constitution/evaluators/semantic-evaluator.js.map +1 -0
- package/dist/constitution/index.d.ts +105 -0
- package/dist/constitution/index.d.ts.map +1 -0
- package/dist/constitution/index.js +207 -0
- package/dist/constitution/index.js.map +1 -0
- package/dist/constitution/loader.d.ts +141 -0
- package/dist/constitution/loader.d.ts.map +1 -0
- package/dist/constitution/loader.js +515 -0
- package/dist/constitution/loader.js.map +1 -0
- package/dist/constitution/schema.d.ts +409 -0
- package/dist/constitution/schema.d.ts.map +1 -0
- package/dist/constitution/schema.js +71 -0
- package/dist/constitution/schema.js.map +1 -0
- package/dist/contexts/DashboardContext.d.ts +41 -0
- package/dist/contexts/DashboardContext.d.ts.map +1 -0
- package/dist/contexts/DashboardContext.js +187 -0
- package/dist/contexts/DashboardContext.js.map +1 -0
- package/dist/core/memory/MemoryManagerFactory.d.ts +77 -0
- package/dist/core/memory/MemoryManagerFactory.d.ts.map +1 -0
- package/dist/core/memory/MemoryManagerFactory.js +270 -0
- package/dist/core/memory/MemoryManagerFactory.js.map +1 -0
- package/dist/core/memory/SwarmMemoryManager.d.ts +58 -0
- package/dist/core/memory/SwarmMemoryManager.d.ts.map +1 -1
- package/dist/core/memory/SwarmMemoryManager.js +375 -131
- package/dist/core/memory/SwarmMemoryManager.js.map +1 -1
- package/dist/core/memory/index.d.ts +1 -0
- package/dist/core/memory/index.d.ts.map +1 -1
- package/dist/core/memory/index.js +12 -1
- package/dist/core/memory/index.js.map +1 -1
- package/dist/hooks/useKeyboardShortcuts.d.ts +12 -0
- package/dist/hooks/useKeyboardShortcuts.d.ts.map +1 -0
- package/dist/hooks/useKeyboardShortcuts.js +69 -0
- package/dist/hooks/useKeyboardShortcuts.js.map +1 -0
- package/dist/mcp/handlers/memory/memory-backup.js +6 -6
- package/dist/mcp/handlers/memory/memory-backup.js.map +1 -1
- package/dist/mcp/handlers/phase2/Phase2Tools.d.ts.map +1 -1
- package/dist/mcp/handlers/phase2/Phase2Tools.js +4 -2
- package/dist/mcp/handlers/phase2/Phase2Tools.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +4 -38
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
- package/dist/mcp/services/AgentRegistry.js +4 -4
- package/dist/mcp/services/AgentRegistry.js.map +1 -1
- package/dist/persistence/event-store.d.ts +162 -0
- package/dist/persistence/event-store.d.ts.map +1 -0
- package/dist/persistence/event-store.js +315 -0
- package/dist/persistence/event-store.js.map +1 -0
- package/dist/persistence/index.d.ts +145 -0
- package/dist/persistence/index.d.ts.map +1 -0
- package/dist/persistence/index.js +227 -0
- package/dist/persistence/index.js.map +1 -0
- package/dist/persistence/metrics-aggregator.d.ts +187 -0
- package/dist/persistence/metrics-aggregator.d.ts.map +1 -0
- package/dist/persistence/metrics-aggregator.js +495 -0
- package/dist/persistence/metrics-aggregator.js.map +1 -0
- package/dist/persistence/reasoning-store.d.ts +178 -0
- package/dist/persistence/reasoning-store.d.ts.map +1 -0
- package/dist/persistence/reasoning-store.js +440 -0
- package/dist/persistence/reasoning-store.js.map +1 -0
- package/dist/persistence/schema.d.ts +181 -0
- package/dist/persistence/schema.d.ts.map +1 -0
- package/dist/persistence/schema.js +186 -0
- package/dist/persistence/schema.js.map +1 -0
- package/dist/telemetry/bootstrap.d.ts +67 -0
- package/dist/telemetry/bootstrap.d.ts.map +1 -0
- package/dist/telemetry/bootstrap.js +320 -0
- package/dist/telemetry/bootstrap.js.map +1 -0
- package/dist/telemetry/index.d.ts +16 -0
- package/dist/telemetry/index.d.ts.map +1 -0
- package/dist/telemetry/index.js +84 -0
- package/dist/telemetry/index.js.map +1 -0
- package/dist/telemetry/instrumentation/agent.d.ts +158 -0
- package/dist/telemetry/instrumentation/agent.d.ts.map +1 -0
- package/dist/telemetry/instrumentation/agent.js +372 -0
- package/dist/telemetry/instrumentation/agent.js.map +1 -0
- package/dist/telemetry/instrumentation/index.d.ts +24 -0
- package/dist/telemetry/instrumentation/index.d.ts.map +1 -0
- package/dist/telemetry/instrumentation/index.js +54 -0
- package/dist/telemetry/instrumentation/index.js.map +1 -0
- package/dist/telemetry/instrumentation/memory.d.ts +313 -0
- package/dist/telemetry/instrumentation/memory.d.ts.map +1 -0
- package/dist/telemetry/instrumentation/memory.js +552 -0
- package/dist/telemetry/instrumentation/memory.js.map +1 -0
- package/dist/telemetry/instrumentation/task.d.ts +146 -0
- package/dist/telemetry/instrumentation/task.d.ts.map +1 -0
- package/dist/telemetry/instrumentation/task.js +305 -0
- package/dist/telemetry/instrumentation/task.js.map +1 -0
- package/dist/telemetry/metrics/agent-metrics.d.ts +109 -0
- package/dist/telemetry/metrics/agent-metrics.d.ts.map +1 -0
- package/dist/telemetry/metrics/agent-metrics.js +213 -0
- package/dist/telemetry/metrics/agent-metrics.js.map +1 -0
- package/dist/telemetry/metrics/collectors/cost.d.ts +246 -0
- package/dist/telemetry/metrics/collectors/cost.d.ts.map +1 -0
- package/dist/telemetry/metrics/collectors/cost.js +526 -0
- package/dist/telemetry/metrics/collectors/cost.js.map +1 -0
- package/dist/telemetry/metrics/collectors/pricing-config.d.ts +87 -0
- package/dist/telemetry/metrics/collectors/pricing-config.d.ts.map +1 -0
- package/dist/telemetry/metrics/collectors/pricing-config.js +207 -0
- package/dist/telemetry/metrics/collectors/pricing-config.js.map +1 -0
- package/dist/telemetry/metrics/index.d.ts +54 -0
- package/dist/telemetry/metrics/index.d.ts.map +1 -0
- package/dist/telemetry/metrics/index.js +116 -0
- package/dist/telemetry/metrics/index.js.map +1 -0
- package/dist/telemetry/metrics/quality-metrics.d.ts +171 -0
- package/dist/telemetry/metrics/quality-metrics.d.ts.map +1 -0
- package/dist/telemetry/metrics/quality-metrics.js +259 -0
- package/dist/telemetry/metrics/quality-metrics.js.map +1 -0
- package/dist/telemetry/metrics/system-metrics.d.ts +129 -0
- package/dist/telemetry/metrics/system-metrics.d.ts.map +1 -0
- package/dist/telemetry/metrics/system-metrics.js +380 -0
- package/dist/telemetry/metrics/system-metrics.js.map +1 -0
- package/dist/telemetry/types.d.ts +195 -0
- package/dist/telemetry/types.d.ts.map +1 -0
- package/dist/telemetry/types.js +90 -0
- package/dist/telemetry/types.js.map +1 -0
- package/dist/visualization/api/RestEndpoints.d.ts +136 -0
- package/dist/visualization/api/RestEndpoints.d.ts.map +1 -0
- package/dist/visualization/api/RestEndpoints.js +428 -0
- package/dist/visualization/api/RestEndpoints.js.map +1 -0
- package/dist/visualization/api/WebSocketServer.d.ts +165 -0
- package/dist/visualization/api/WebSocketServer.d.ts.map +1 -0
- package/dist/visualization/api/WebSocketServer.js +518 -0
- package/dist/visualization/api/WebSocketServer.js.map +1 -0
- package/dist/visualization/core/DataTransformer.d.ts +89 -0
- package/dist/visualization/core/DataTransformer.d.ts.map +1 -0
- package/dist/visualization/core/DataTransformer.js +478 -0
- package/dist/visualization/core/DataTransformer.js.map +1 -0
- package/dist/visualization/index.d.ts +92 -0
- package/dist/visualization/index.d.ts.map +1 -0
- package/dist/visualization/index.js +121 -0
- package/dist/visualization/index.js.map +1 -0
- package/dist/visualization/types.d.ts +148 -0
- package/dist/visualization/types.d.ts.map +1 -0
- package/dist/visualization/types.js +7 -0
- package/dist/visualization/types.js.map +1 -0
- package/dist/voting/consensus.d.ts +87 -0
- package/dist/voting/consensus.d.ts.map +1 -0
- package/dist/voting/consensus.js +568 -0
- package/dist/voting/consensus.js.map +1 -0
- package/dist/voting/index.d.ts +12 -0
- package/dist/voting/index.d.ts.map +1 -0
- package/dist/voting/index.js +36 -0
- package/dist/voting/index.js.map +1 -0
- package/dist/voting/orchestrator.d.ts +65 -0
- package/dist/voting/orchestrator.d.ts.map +1 -0
- package/dist/voting/orchestrator.js +306 -0
- package/dist/voting/orchestrator.js.map +1 -0
- package/dist/voting/panel-assembly.d.ts +54 -0
- package/dist/voting/panel-assembly.d.ts.map +1 -0
- package/dist/voting/panel-assembly.js +192 -0
- package/dist/voting/panel-assembly.js.map +1 -0
- package/dist/voting/protocol.d.ts +119 -0
- package/dist/voting/protocol.d.ts.map +1 -0
- package/dist/voting/protocol.js +18 -0
- package/dist/voting/protocol.js.map +1 -0
- package/dist/voting/types.d.ts +125 -0
- package/dist/voting/types.d.ts.map +1 -0
- package/dist/voting/types.js +7 -0
- package/dist/voting/types.js.map +1 -0
- package/package.json +43 -2
|
@@ -0,0 +1,380 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* System Metrics for Agentic QE Fleet
|
|
4
|
+
*
|
|
5
|
+
* Metrics for tracking system resources, queues, databases, and infrastructure.
|
|
6
|
+
*/
|
|
7
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
|
+
if (k2 === undefined) k2 = k;
|
|
9
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
10
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
11
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
12
|
+
}
|
|
13
|
+
Object.defineProperty(o, k2, desc);
|
|
14
|
+
}) : (function(o, m, k, k2) {
|
|
15
|
+
if (k2 === undefined) k2 = k;
|
|
16
|
+
o[k2] = m[k];
|
|
17
|
+
}));
|
|
18
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
19
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
20
|
+
}) : function(o, v) {
|
|
21
|
+
o["default"] = v;
|
|
22
|
+
});
|
|
23
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
24
|
+
var ownKeys = function(o) {
|
|
25
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
26
|
+
var ar = [];
|
|
27
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
28
|
+
return ar;
|
|
29
|
+
};
|
|
30
|
+
return ownKeys(o);
|
|
31
|
+
};
|
|
32
|
+
return function (mod) {
|
|
33
|
+
if (mod && mod.__esModule) return mod;
|
|
34
|
+
var result = {};
|
|
35
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
36
|
+
__setModuleDefault(result, mod);
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
})();
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.createSystemMetrics = createSystemMetrics;
|
|
42
|
+
exports.getSystemMetrics = getSystemMetrics;
|
|
43
|
+
exports.recordDatabaseQuery = recordDatabaseQuery;
|
|
44
|
+
exports.recordDatabaseConnection = recordDatabaseConnection;
|
|
45
|
+
exports.recordQueueOperation = recordQueueOperation;
|
|
46
|
+
exports.recordEventBusOperation = recordEventBusOperation;
|
|
47
|
+
exports.recordNetworkRequest = recordNetworkRequest;
|
|
48
|
+
exports.recordFileSystemOperation = recordFileSystemOperation;
|
|
49
|
+
exports.recordEventLoopLag = recordEventLoopLag;
|
|
50
|
+
exports.createMemoryDetailMetrics = createMemoryDetailMetrics;
|
|
51
|
+
exports.createFleetCoordinationMetrics = createFleetCoordinationMetrics;
|
|
52
|
+
const bootstrap_1 = require("../bootstrap");
|
|
53
|
+
const types_1 = require("../types");
|
|
54
|
+
const v8 = __importStar(require("v8"));
|
|
55
|
+
// Singleton metrics instance
|
|
56
|
+
let systemMetrics = null;
|
|
57
|
+
// CPU tracking state
|
|
58
|
+
let lastCpuUsage = process.cpuUsage();
|
|
59
|
+
let lastCpuTime = Date.now();
|
|
60
|
+
/**
|
|
61
|
+
* Calculate CPU usage percentage
|
|
62
|
+
*/
|
|
63
|
+
function calculateCpuUsage() {
|
|
64
|
+
const currentCpuUsage = process.cpuUsage(lastCpuUsage);
|
|
65
|
+
const currentTime = Date.now();
|
|
66
|
+
const elapsedMs = currentTime - lastCpuTime;
|
|
67
|
+
if (elapsedMs === 0)
|
|
68
|
+
return 0;
|
|
69
|
+
// Total CPU time used in microseconds
|
|
70
|
+
const totalCpuTime = currentCpuUsage.user + currentCpuUsage.system;
|
|
71
|
+
// Convert to percentage (microseconds to milliseconds, then to percentage)
|
|
72
|
+
const cpuPercent = (totalCpuTime / 1000 / elapsedMs) * 100;
|
|
73
|
+
// Update tracking state
|
|
74
|
+
lastCpuUsage = process.cpuUsage();
|
|
75
|
+
lastCpuTime = currentTime;
|
|
76
|
+
return Math.min(cpuPercent, 100);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Initialize system metrics
|
|
80
|
+
*
|
|
81
|
+
* @param meter - OpenTelemetry Meter instance
|
|
82
|
+
* @returns System metrics registry
|
|
83
|
+
*/
|
|
84
|
+
function createSystemMetrics(meter) {
|
|
85
|
+
if (systemMetrics) {
|
|
86
|
+
return systemMetrics;
|
|
87
|
+
}
|
|
88
|
+
const m = meter || (0, bootstrap_1.getMeter)();
|
|
89
|
+
// Create observable gauges for memory metrics
|
|
90
|
+
const memoryHeapUsed = m.createObservableGauge(types_1.METRIC_NAMES.MEMORY_USAGE + '.heap.used', {
|
|
91
|
+
description: 'Current heap memory used',
|
|
92
|
+
unit: 'bytes',
|
|
93
|
+
});
|
|
94
|
+
const memoryHeapTotal = m.createObservableGauge(types_1.METRIC_NAMES.MEMORY_USAGE + '.heap.total', {
|
|
95
|
+
description: 'Total heap memory',
|
|
96
|
+
unit: 'bytes',
|
|
97
|
+
});
|
|
98
|
+
const memoryRss = m.createObservableGauge(types_1.METRIC_NAMES.MEMORY_USAGE + '.rss', {
|
|
99
|
+
description: 'Resident set size memory',
|
|
100
|
+
unit: 'bytes',
|
|
101
|
+
});
|
|
102
|
+
const memoryExternal = m.createObservableGauge(types_1.METRIC_NAMES.MEMORY_USAGE + '.external', {
|
|
103
|
+
description: 'External memory usage',
|
|
104
|
+
unit: 'bytes',
|
|
105
|
+
});
|
|
106
|
+
const cpuUsage = m.createObservableGauge(types_1.METRIC_NAMES.CPU_USAGE, {
|
|
107
|
+
description: 'CPU usage percentage',
|
|
108
|
+
unit: 'percent',
|
|
109
|
+
});
|
|
110
|
+
// Register callbacks for observable gauges
|
|
111
|
+
m.addBatchObservableCallback((observableResult) => {
|
|
112
|
+
const memUsage = process.memoryUsage();
|
|
113
|
+
const heapStats = v8.getHeapStatistics();
|
|
114
|
+
observableResult.observe(memoryHeapUsed, memUsage.heapUsed);
|
|
115
|
+
observableResult.observe(memoryHeapTotal, memUsage.heapTotal);
|
|
116
|
+
observableResult.observe(memoryRss, memUsage.rss);
|
|
117
|
+
observableResult.observe(memoryExternal, memUsage.external);
|
|
118
|
+
observableResult.observe(cpuUsage, calculateCpuUsage());
|
|
119
|
+
}, [memoryHeapUsed, memoryHeapTotal, memoryRss, memoryExternal, cpuUsage]);
|
|
120
|
+
systemMetrics = {
|
|
121
|
+
memoryHeapUsed,
|
|
122
|
+
memoryHeapTotal,
|
|
123
|
+
memoryRss,
|
|
124
|
+
memoryExternal,
|
|
125
|
+
cpuUsage,
|
|
126
|
+
eventLoopLag: m.createHistogram('aqe.system.eventloop.lag', {
|
|
127
|
+
description: 'Event loop lag in milliseconds',
|
|
128
|
+
unit: 'ms',
|
|
129
|
+
advice: {
|
|
130
|
+
explicitBucketBoundaries: [1, 5, 10, 25, 50, 100, 250, 500, 1000],
|
|
131
|
+
},
|
|
132
|
+
}),
|
|
133
|
+
queueDepth: m.createUpDownCounter(types_1.METRIC_NAMES.QUEUE_DEPTH, {
|
|
134
|
+
description: 'Current depth of task queues',
|
|
135
|
+
unit: 'tasks',
|
|
136
|
+
}),
|
|
137
|
+
queueWaitTime: m.createHistogram(types_1.METRIC_NAMES.QUEUE_WAIT_TIME, {
|
|
138
|
+
description: 'Time tasks wait in queue before processing',
|
|
139
|
+
unit: 'ms',
|
|
140
|
+
advice: {
|
|
141
|
+
explicitBucketBoundaries: [10, 50, 100, 250, 500, 1000, 2500, 5000, 10000],
|
|
142
|
+
},
|
|
143
|
+
}),
|
|
144
|
+
dbQueryCount: m.createCounter(types_1.METRIC_NAMES.DATABASE_QUERY_DURATION + '.count', {
|
|
145
|
+
description: 'Total number of database queries',
|
|
146
|
+
unit: 'queries',
|
|
147
|
+
}),
|
|
148
|
+
dbQueryDuration: m.createHistogram(types_1.METRIC_NAMES.DATABASE_QUERY_DURATION, {
|
|
149
|
+
description: 'Database query execution duration',
|
|
150
|
+
unit: 'ms',
|
|
151
|
+
advice: {
|
|
152
|
+
explicitBucketBoundaries: [1, 5, 10, 25, 50, 100, 250, 500, 1000, 2500],
|
|
153
|
+
},
|
|
154
|
+
}),
|
|
155
|
+
dbConnectionCount: m.createUpDownCounter(types_1.METRIC_NAMES.DATABASE_CONNECTION_COUNT, {
|
|
156
|
+
description: 'Current number of database connections',
|
|
157
|
+
unit: 'connections',
|
|
158
|
+
}),
|
|
159
|
+
eventBusPublishCount: m.createCounter(types_1.METRIC_NAMES.EVENT_BUS_PUBLISH_COUNT, {
|
|
160
|
+
description: 'Number of events published to event bus',
|
|
161
|
+
unit: 'events',
|
|
162
|
+
}),
|
|
163
|
+
eventBusLatency: m.createHistogram(types_1.METRIC_NAMES.EVENT_BUS_LATENCY, {
|
|
164
|
+
description: 'Event bus publish-to-receive latency',
|
|
165
|
+
unit: 'ms',
|
|
166
|
+
advice: {
|
|
167
|
+
explicitBucketBoundaries: [0.1, 0.5, 1, 5, 10, 25, 50, 100],
|
|
168
|
+
},
|
|
169
|
+
}),
|
|
170
|
+
fsOperationCount: m.createCounter('aqe.system.fs.operation.count', {
|
|
171
|
+
description: 'Number of file system operations',
|
|
172
|
+
unit: 'operations',
|
|
173
|
+
}),
|
|
174
|
+
networkRequestCount: m.createCounter('aqe.system.network.request.count', {
|
|
175
|
+
description: 'Number of network requests',
|
|
176
|
+
unit: 'requests',
|
|
177
|
+
}),
|
|
178
|
+
networkRequestDuration: m.createHistogram('aqe.system.network.request.duration', {
|
|
179
|
+
description: 'Network request duration',
|
|
180
|
+
unit: 'ms',
|
|
181
|
+
advice: {
|
|
182
|
+
explicitBucketBoundaries: [10, 50, 100, 250, 500, 1000, 2500, 5000, 10000],
|
|
183
|
+
},
|
|
184
|
+
}),
|
|
185
|
+
};
|
|
186
|
+
return systemMetrics;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Get initialized system metrics
|
|
190
|
+
*
|
|
191
|
+
* @returns System metrics registry
|
|
192
|
+
*/
|
|
193
|
+
function getSystemMetrics() {
|
|
194
|
+
if (!systemMetrics) {
|
|
195
|
+
return createSystemMetrics();
|
|
196
|
+
}
|
|
197
|
+
return systemMetrics;
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Record database query
|
|
201
|
+
*
|
|
202
|
+
* @param operation - Query operation (select, insert, update, delete)
|
|
203
|
+
* @param table - Table or collection name
|
|
204
|
+
* @param durationMs - Query duration in milliseconds
|
|
205
|
+
* @param success - Whether the query succeeded
|
|
206
|
+
*/
|
|
207
|
+
function recordDatabaseQuery(operation, table, durationMs, success = true) {
|
|
208
|
+
const metrics = getSystemMetrics();
|
|
209
|
+
const attributes = {
|
|
210
|
+
'db.operation': operation,
|
|
211
|
+
'db.table': table,
|
|
212
|
+
'db.status': success ? 'success' : 'error',
|
|
213
|
+
};
|
|
214
|
+
metrics.dbQueryCount.add(1, attributes);
|
|
215
|
+
metrics.dbQueryDuration.record(durationMs, attributes);
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Record database connection change
|
|
219
|
+
*
|
|
220
|
+
* @param delta - Change in connection count (+1 for open, -1 for close)
|
|
221
|
+
* @param poolName - Connection pool name
|
|
222
|
+
*/
|
|
223
|
+
function recordDatabaseConnection(delta, poolName = 'default') {
|
|
224
|
+
const metrics = getSystemMetrics();
|
|
225
|
+
metrics.dbConnectionCount.add(delta, {
|
|
226
|
+
'db.pool': poolName,
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Record queue operation
|
|
231
|
+
*
|
|
232
|
+
* @param queueName - Name of the queue
|
|
233
|
+
* @param operation - Operation type (enqueue, dequeue)
|
|
234
|
+
* @param waitTimeMs - Time item waited in queue (for dequeue)
|
|
235
|
+
*/
|
|
236
|
+
function recordQueueOperation(queueName, operation, waitTimeMs) {
|
|
237
|
+
const metrics = getSystemMetrics();
|
|
238
|
+
const attributes = {
|
|
239
|
+
'queue.name': queueName,
|
|
240
|
+
};
|
|
241
|
+
if (operation === 'enqueue') {
|
|
242
|
+
metrics.queueDepth.add(1, attributes);
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
metrics.queueDepth.add(-1, attributes);
|
|
246
|
+
if (waitTimeMs !== undefined) {
|
|
247
|
+
metrics.queueWaitTime.record(waitTimeMs, attributes);
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
/**
|
|
252
|
+
* Record event bus operation
|
|
253
|
+
*
|
|
254
|
+
* @param eventType - Type of event
|
|
255
|
+
* @param latencyMs - Publish-to-receive latency
|
|
256
|
+
*/
|
|
257
|
+
function recordEventBusOperation(eventType, latencyMs) {
|
|
258
|
+
const metrics = getSystemMetrics();
|
|
259
|
+
const attributes = {
|
|
260
|
+
'event.type': eventType,
|
|
261
|
+
};
|
|
262
|
+
metrics.eventBusPublishCount.add(1, attributes);
|
|
263
|
+
if (latencyMs !== undefined) {
|
|
264
|
+
metrics.eventBusLatency.record(latencyMs, attributes);
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
/**
|
|
268
|
+
* Record network request
|
|
269
|
+
*
|
|
270
|
+
* @param method - HTTP method
|
|
271
|
+
* @param url - Request URL
|
|
272
|
+
* @param statusCode - Response status code
|
|
273
|
+
* @param durationMs - Request duration
|
|
274
|
+
*/
|
|
275
|
+
function recordNetworkRequest(method, url, statusCode, durationMs) {
|
|
276
|
+
const metrics = getSystemMetrics();
|
|
277
|
+
// Extract host from URL
|
|
278
|
+
let host = 'unknown';
|
|
279
|
+
try {
|
|
280
|
+
host = new URL(url).host;
|
|
281
|
+
}
|
|
282
|
+
catch {
|
|
283
|
+
// Keep default
|
|
284
|
+
}
|
|
285
|
+
const attributes = {
|
|
286
|
+
'http.method': method,
|
|
287
|
+
'http.host': host,
|
|
288
|
+
'http.status_code': statusCode,
|
|
289
|
+
'http.status_class': `${Math.floor(statusCode / 100)}xx`,
|
|
290
|
+
};
|
|
291
|
+
metrics.networkRequestCount.add(1, attributes);
|
|
292
|
+
metrics.networkRequestDuration.record(durationMs, attributes);
|
|
293
|
+
}
|
|
294
|
+
/**
|
|
295
|
+
* Record file system operation
|
|
296
|
+
*
|
|
297
|
+
* @param operation - FS operation (read, write, delete, etc.)
|
|
298
|
+
* @param path - File path
|
|
299
|
+
* @param success - Whether operation succeeded
|
|
300
|
+
*/
|
|
301
|
+
function recordFileSystemOperation(operation, path, success = true) {
|
|
302
|
+
const metrics = getSystemMetrics();
|
|
303
|
+
// Extract directory from path for grouping
|
|
304
|
+
const directory = path.substring(0, path.lastIndexOf('/')) || '/';
|
|
305
|
+
metrics.fsOperationCount.add(1, {
|
|
306
|
+
'fs.operation': operation,
|
|
307
|
+
'fs.directory': directory,
|
|
308
|
+
'fs.status': success ? 'success' : 'error',
|
|
309
|
+
});
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Record event loop lag
|
|
313
|
+
*
|
|
314
|
+
* @param lagMs - Event loop lag in milliseconds
|
|
315
|
+
*/
|
|
316
|
+
function recordEventLoopLag(lagMs) {
|
|
317
|
+
const metrics = getSystemMetrics();
|
|
318
|
+
metrics.eventLoopLag.record(lagMs);
|
|
319
|
+
}
|
|
320
|
+
/**
|
|
321
|
+
* Create memory-specific detailed metrics
|
|
322
|
+
*/
|
|
323
|
+
function createMemoryDetailMetrics(meter) {
|
|
324
|
+
const m = meter || (0, bootstrap_1.getMeter)();
|
|
325
|
+
return {
|
|
326
|
+
heapSpaceUsed: m.createObservableGauge('aqe.system.memory.heap.space.used', {
|
|
327
|
+
description: 'Heap space used by type',
|
|
328
|
+
unit: 'bytes',
|
|
329
|
+
}),
|
|
330
|
+
heapSpaceAvailable: m.createObservableGauge('aqe.system.memory.heap.space.available', {
|
|
331
|
+
description: 'Heap space available by type',
|
|
332
|
+
unit: 'bytes',
|
|
333
|
+
}),
|
|
334
|
+
gcDuration: m.createHistogram('aqe.system.gc.duration', {
|
|
335
|
+
description: 'Garbage collection duration',
|
|
336
|
+
unit: 'ms',
|
|
337
|
+
advice: {
|
|
338
|
+
explicitBucketBoundaries: [1, 5, 10, 25, 50, 100, 250, 500],
|
|
339
|
+
},
|
|
340
|
+
}),
|
|
341
|
+
gcCount: m.createCounter('aqe.system.gc.count', {
|
|
342
|
+
description: 'Number of garbage collections',
|
|
343
|
+
unit: 'collections',
|
|
344
|
+
}),
|
|
345
|
+
};
|
|
346
|
+
}
|
|
347
|
+
/**
|
|
348
|
+
* Create fleet coordination metrics
|
|
349
|
+
*/
|
|
350
|
+
function createFleetCoordinationMetrics(meter) {
|
|
351
|
+
const m = meter || (0, bootstrap_1.getMeter)();
|
|
352
|
+
return {
|
|
353
|
+
coordinationRoundtrip: m.createHistogram('aqe.fleet.coordination.roundtrip', {
|
|
354
|
+
description: 'Fleet coordination message roundtrip time',
|
|
355
|
+
unit: 'ms',
|
|
356
|
+
advice: {
|
|
357
|
+
explicitBucketBoundaries: [1, 5, 10, 25, 50, 100, 250, 500, 1000],
|
|
358
|
+
},
|
|
359
|
+
}),
|
|
360
|
+
taskDistributionTime: m.createHistogram('aqe.fleet.task.distribution.time', {
|
|
361
|
+
description: 'Time to distribute tasks across fleet',
|
|
362
|
+
unit: 'ms',
|
|
363
|
+
advice: {
|
|
364
|
+
explicitBucketBoundaries: [10, 50, 100, 250, 500, 1000, 2500],
|
|
365
|
+
},
|
|
366
|
+
}),
|
|
367
|
+
agentSyncCount: m.createCounter('aqe.fleet.agent.sync.count', {
|
|
368
|
+
description: 'Number of agent synchronization events',
|
|
369
|
+
unit: 'syncs',
|
|
370
|
+
}),
|
|
371
|
+
memoryShareSize: m.createHistogram('aqe.fleet.memory.share.size', {
|
|
372
|
+
description: 'Size of shared memory operations',
|
|
373
|
+
unit: 'bytes',
|
|
374
|
+
advice: {
|
|
375
|
+
explicitBucketBoundaries: types_1.HISTOGRAM_BOUNDARIES.memoryBytes,
|
|
376
|
+
},
|
|
377
|
+
}),
|
|
378
|
+
};
|
|
379
|
+
}
|
|
380
|
+
//# sourceMappingURL=system-metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"system-metrics.js","sourceRoot":"","sources":["../../../src/telemetry/metrics/system-metrics.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiFH,kDA+HC;AAOD,4CAKC;AAUD,kDAgBC;AAQD,4DASC;AASD,oDAmBC;AAQD,0DAeC;AAUD,oDAyBC;AASD,8DAeC;AAOD,gDAGC;AAKD,8DA2BC;AAKD,wEAiCC;AAlcD,4CAAwC;AACxC,oCAA8D;AAE9D,uCAAyB;AAwCzB,6BAA6B;AAC7B,IAAI,aAAa,GAAyB,IAAI,CAAC;AAE/C,qBAAqB;AACrB,IAAI,YAAY,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;AACtC,IAAI,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AAE7B;;GAEG;AACH,SAAS,iBAAiB;IACxB,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC/B,MAAM,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;IAE5C,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAE9B,sCAAsC;IACtC,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC;IACnE,2EAA2E;IAC3E,MAAM,UAAU,GAAG,CAAC,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,GAAG,CAAC;IAE3D,wBAAwB;IACxB,YAAY,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAClC,WAAW,GAAG,WAAW,CAAC;IAE1B,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,KAAa;IAC/C,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,GAAG,KAAK,IAAI,IAAA,oBAAQ,GAAE,CAAC;IAE9B,8CAA8C;IAC9C,MAAM,cAAc,GAAG,CAAC,CAAC,qBAAqB,CAAC,oBAAY,CAAC,YAAY,GAAG,YAAY,EAAE;QACvF,WAAW,EAAE,0BAA0B;QACvC,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,CAAC,CAAC,qBAAqB,CAAC,oBAAY,CAAC,YAAY,GAAG,aAAa,EAAE;QACzF,WAAW,EAAE,mBAAmB;QAChC,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,CAAC,CAAC,qBAAqB,CAAC,oBAAY,CAAC,YAAY,GAAG,MAAM,EAAE;QAC5E,WAAW,EAAE,0BAA0B;QACvC,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,CAAC,CAAC,qBAAqB,CAAC,oBAAY,CAAC,YAAY,GAAG,WAAW,EAAE;QACtF,WAAW,EAAE,uBAAuB;QACpC,IAAI,EAAE,OAAO;KACd,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,CAAC,CAAC,qBAAqB,CAAC,oBAAY,CAAC,SAAS,EAAE;QAC/D,WAAW,EAAE,sBAAsB;QACnC,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IAEH,2CAA2C;IAC3C,CAAC,CAAC,0BAA0B,CAC1B,CAAC,gBAAgB,EAAE,EAAE;QACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,EAAE,CAAC,iBAAiB,EAAE,CAAC;QAEzC,gBAAgB,CAAC,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5D,gBAAgB,CAAC,OAAO,CAAC,eAAe,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC9D,gBAAgB,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC;QAClD,gBAAgB,CAAC,OAAO,CAAC,cAAc,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5D,gBAAgB,CAAC,OAAO,CAAC,QAAQ,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC1D,CAAC,EACD,CAAC,cAAc,EAAE,eAAe,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,CAAC,CACvE,CAAC;IAEF,aAAa,GAAG;QACd,cAAc;QACd,eAAe;QACf,SAAS;QACT,cAAc;QACd,QAAQ;QAER,YAAY,EAAE,CAAC,CAAC,eAAe,CAAC,0BAA0B,EAAE;YAC1D,WAAW,EAAE,gCAAgC;YAC7C,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACN,wBAAwB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;aAClE;SACF,CAAC;QAEF,UAAU,EAAE,CAAC,CAAC,mBAAmB,CAAC,oBAAY,CAAC,WAAW,EAAE;YAC1D,WAAW,EAAE,8BAA8B;YAC3C,IAAI,EAAE,OAAO;SACd,CAAC;QAEF,aAAa,EAAE,CAAC,CAAC,eAAe,CAAC,oBAAY,CAAC,eAAe,EAAE;YAC7D,WAAW,EAAE,4CAA4C;YACzD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACN,wBAAwB,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;aAC3E;SACF,CAAC;QAEF,YAAY,EAAE,CAAC,CAAC,aAAa,CAAC,oBAAY,CAAC,uBAAuB,GAAG,QAAQ,EAAE;YAC7E,WAAW,EAAE,kCAAkC;YAC/C,IAAI,EAAE,SAAS;SAChB,CAAC;QAEF,eAAe,EAAE,CAAC,CAAC,eAAe,CAAC,oBAAY,CAAC,uBAAuB,EAAE;YACvE,WAAW,EAAE,mCAAmC;YAChD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACN,wBAAwB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;aACxE;SACF,CAAC;QAEF,iBAAiB,EAAE,CAAC,CAAC,mBAAmB,CAAC,oBAAY,CAAC,yBAAyB,EAAE;YAC/E,WAAW,EAAE,wCAAwC;YACrD,IAAI,EAAE,aAAa;SACpB,CAAC;QAEF,oBAAoB,EAAE,CAAC,CAAC,aAAa,CAAC,oBAAY,CAAC,uBAAuB,EAAE;YAC1E,WAAW,EAAE,yCAAyC;YACtD,IAAI,EAAE,QAAQ;SACf,CAAC;QAEF,eAAe,EAAE,CAAC,CAAC,eAAe,CAAC,oBAAY,CAAC,iBAAiB,EAAE;YACjE,WAAW,EAAE,sCAAsC;YACnD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACN,wBAAwB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC;aAC5D;SACF,CAAC;QAEF,gBAAgB,EAAE,CAAC,CAAC,aAAa,CAAC,+BAA+B,EAAE;YACjE,WAAW,EAAE,kCAAkC;YAC/C,IAAI,EAAE,YAAY;SACnB,CAAC;QAEF,mBAAmB,EAAE,CAAC,CAAC,aAAa,CAAC,kCAAkC,EAAE;YACvE,WAAW,EAAE,4BAA4B;YACzC,IAAI,EAAE,UAAU;SACjB,CAAC;QAEF,sBAAsB,EAAE,CAAC,CAAC,eAAe,CAAC,qCAAqC,EAAE;YAC/E,WAAW,EAAE,0BAA0B;YACvC,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACN,wBAAwB,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;aAC3E;SACF,CAAC;KACH,CAAC;IAEF,OAAO,aAAc,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB;IAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,mBAAmB,EAAE,CAAC;IAC/B,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CACjC,SAAiB,EACjB,KAAa,EACb,UAAkB,EAClB,UAAmB,IAAI;IAEvB,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IAEnC,MAAM,UAAU,GAAe;QAC7B,cAAc,EAAE,SAAS;QACzB,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;KAC3C,CAAC;IAEF,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IACxC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,SAAgB,wBAAwB,CACtC,KAAa,EACb,WAAmB,SAAS;IAE5B,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IAEnC,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE;QACnC,SAAS,EAAE,QAAQ;KACpB,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,oBAAoB,CAClC,SAAiB,EACjB,SAAgC,EAChC,UAAmB;IAEnB,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IAEnC,MAAM,UAAU,GAAe;QAC7B,YAAY,EAAE,SAAS;KACxB,CAAC;IAEF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QACvC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAgB,uBAAuB,CACrC,SAAiB,EACjB,SAAkB;IAElB,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IAEnC,MAAM,UAAU,GAAe;QAC7B,YAAY,EAAE,SAAS;KACxB,CAAC;IAEF,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAEhD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,oBAAoB,CAClC,MAAc,EACd,GAAW,EACX,UAAkB,EAClB,UAAkB;IAElB,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IAEnC,wBAAwB;IACxB,IAAI,IAAI,GAAG,SAAS,CAAC;IACrB,IAAI,CAAC;QACH,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,eAAe;IACjB,CAAC;IAED,MAAM,UAAU,GAAe;QAC7B,aAAa,EAAE,MAAM;QACrB,WAAW,EAAE,IAAI;QACjB,kBAAkB,EAAE,UAAU;QAC9B,mBAAmB,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI;KACzD,CAAC;IAEF,OAAO,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAC/C,OAAO,CAAC,sBAAsB,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,yBAAyB,CACvC,SAAiB,EACjB,IAAY,EACZ,UAAmB,IAAI;IAEvB,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IAEnC,2CAA2C;IAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC;IAElE,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE;QAC9B,cAAc,EAAE,SAAS;QACzB,cAAc,EAAE,SAAS;QACzB,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;KAC3C,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAAC,KAAa;IAC9C,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAC;IACnC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,SAAgB,yBAAyB,CAAC,KAAa;IACrD,MAAM,CAAC,GAAG,KAAK,IAAI,IAAA,oBAAQ,GAAE,CAAC;IAE9B,OAAO;QACL,aAAa,EAAE,CAAC,CAAC,qBAAqB,CAAC,mCAAmC,EAAE;YAC1E,WAAW,EAAE,yBAAyB;YACtC,IAAI,EAAE,OAAO;SACd,CAAC;QAEF,kBAAkB,EAAE,CAAC,CAAC,qBAAqB,CAAC,wCAAwC,EAAE;YACpF,WAAW,EAAE,8BAA8B;YAC3C,IAAI,EAAE,OAAO;SACd,CAAC;QAEF,UAAU,EAAE,CAAC,CAAC,eAAe,CAAC,wBAAwB,EAAE;YACtD,WAAW,EAAE,6BAA6B;YAC1C,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACN,wBAAwB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;aAC5D;SACF,CAAC;QAEF,OAAO,EAAE,CAAC,CAAC,aAAa,CAAC,qBAAqB,EAAE;YAC9C,WAAW,EAAE,+BAA+B;YAC5C,IAAI,EAAE,aAAa;SACpB,CAAC;KACH,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,8BAA8B,CAAC,KAAa;IAC1D,MAAM,CAAC,GAAG,KAAK,IAAI,IAAA,oBAAQ,GAAE,CAAC;IAE9B,OAAO;QACL,qBAAqB,EAAE,CAAC,CAAC,eAAe,CAAC,kCAAkC,EAAE;YAC3E,WAAW,EAAE,2CAA2C;YACxD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACN,wBAAwB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;aAClE;SACF,CAAC;QAEF,oBAAoB,EAAE,CAAC,CAAC,eAAe,CAAC,kCAAkC,EAAE;YAC1E,WAAW,EAAE,uCAAuC;YACpD,IAAI,EAAE,IAAI;YACV,MAAM,EAAE;gBACN,wBAAwB,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC;aAC9D;SACF,CAAC;QAEF,cAAc,EAAE,CAAC,CAAC,aAAa,CAAC,4BAA4B,EAAE;YAC5D,WAAW,EAAE,wCAAwC;YACrD,IAAI,EAAE,OAAO;SACd,CAAC;QAEF,eAAe,EAAE,CAAC,CAAC,eAAe,CAAC,6BAA6B,EAAE;YAChE,WAAW,EAAE,kCAAkC;YAC/C,IAAI,EAAE,OAAO;YACb,MAAM,EAAE;gBACN,wBAAwB,EAAE,4BAAoB,CAAC,WAAW;aAC3D;SACF,CAAC;KACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenTelemetry Types for Agentic QE Fleet
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for telemetry configuration, metrics, and observability.
|
|
5
|
+
*/
|
|
6
|
+
import { Attributes } from '@opentelemetry/api';
|
|
7
|
+
/**
|
|
8
|
+
* Telemetry configuration options
|
|
9
|
+
*/
|
|
10
|
+
export interface TelemetryConfig {
|
|
11
|
+
/** Service name for resource identification */
|
|
12
|
+
serviceName: string;
|
|
13
|
+
/** Service version */
|
|
14
|
+
serviceVersion: string;
|
|
15
|
+
/** Deployment environment (development, staging, production) */
|
|
16
|
+
environment: string;
|
|
17
|
+
/** OTLP endpoint for trace export */
|
|
18
|
+
otlpEndpoint?: string;
|
|
19
|
+
/** OTLP endpoint for metrics export */
|
|
20
|
+
metricsEndpoint?: string;
|
|
21
|
+
/** OTLP endpoint for logs export */
|
|
22
|
+
logsEndpoint?: string;
|
|
23
|
+
/** Whether to use gRPC (true) or HTTP (false) for OTLP */
|
|
24
|
+
useGrpc?: boolean;
|
|
25
|
+
/** Enable console exporter for debugging */
|
|
26
|
+
enableConsoleExport?: boolean;
|
|
27
|
+
/** Enable auto-instrumentation */
|
|
28
|
+
enableAutoInstrumentation?: boolean;
|
|
29
|
+
/** Sample rate for traces (0.0 to 1.0) */
|
|
30
|
+
traceSampleRate?: number;
|
|
31
|
+
/** Metric export interval in milliseconds */
|
|
32
|
+
metricExportInterval?: number;
|
|
33
|
+
/** Additional resource attributes */
|
|
34
|
+
resourceAttributes?: Attributes;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Agent telemetry attributes
|
|
38
|
+
*/
|
|
39
|
+
export interface AgentAttributes {
|
|
40
|
+
/** Unique agent identifier */
|
|
41
|
+
'agent.id': string;
|
|
42
|
+
/** Agent type (e.g., test-generator, coverage-analyzer) */
|
|
43
|
+
'agent.type': string;
|
|
44
|
+
/** Agent name */
|
|
45
|
+
'agent.name': string;
|
|
46
|
+
/** Fleet identifier */
|
|
47
|
+
'fleet.id'?: string;
|
|
48
|
+
/** Fleet topology (hierarchical, mesh, star, ring) */
|
|
49
|
+
'fleet.topology'?: string;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Task telemetry attributes
|
|
53
|
+
*/
|
|
54
|
+
export interface TaskAttributes {
|
|
55
|
+
/** Unique task identifier */
|
|
56
|
+
'task.id': string;
|
|
57
|
+
/** Task type (unit-test, integration-test, coverage-analysis, etc.) */
|
|
58
|
+
'task.type': string;
|
|
59
|
+
/** Task priority (low, medium, high, critical) */
|
|
60
|
+
'task.priority'?: string | number;
|
|
61
|
+
/** Task status (pending, running, completed, failed) */
|
|
62
|
+
'task.status': string;
|
|
63
|
+
/** Parent task ID for hierarchical tasks */
|
|
64
|
+
'task.parent_id'?: string;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Quality Engineering specific attributes
|
|
68
|
+
*/
|
|
69
|
+
export interface QEAttributes {
|
|
70
|
+
/** Test framework (jest, mocha, pytest, etc.) */
|
|
71
|
+
'qe.test_framework'?: string;
|
|
72
|
+
/** Coverage type (line, branch, function, statement) */
|
|
73
|
+
'qe.coverage_type'?: string;
|
|
74
|
+
/** Quality gate name */
|
|
75
|
+
'qe.gate_name'?: string;
|
|
76
|
+
/** Risk level (low, medium, high, critical) */
|
|
77
|
+
'qe.risk_level'?: string;
|
|
78
|
+
/** Security severity (info, low, medium, high, critical) */
|
|
79
|
+
'qe.security_severity'?: string;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Model routing attributes
|
|
83
|
+
*/
|
|
84
|
+
export interface ModelAttributes {
|
|
85
|
+
/** Model provider (anthropic, openai, etc.) */
|
|
86
|
+
'model.provider': string;
|
|
87
|
+
/** Model name/ID */
|
|
88
|
+
'model.name': string;
|
|
89
|
+
/** Model tier (fast, balanced, quality) */
|
|
90
|
+
'model.tier'?: string;
|
|
91
|
+
/** Routing reason */
|
|
92
|
+
'model.routing_reason'?: string;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Metric recording options
|
|
96
|
+
*/
|
|
97
|
+
export interface MetricRecordOptions {
|
|
98
|
+
/** Attributes to attach to the metric */
|
|
99
|
+
attributes?: Attributes;
|
|
100
|
+
/** Timestamp for the metric (defaults to now) */
|
|
101
|
+
timestamp?: number;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Histogram bucket boundaries for common metrics
|
|
105
|
+
*/
|
|
106
|
+
export declare const HISTOGRAM_BOUNDARIES: {
|
|
107
|
+
/** Task duration in milliseconds */
|
|
108
|
+
taskDuration: number[];
|
|
109
|
+
/** Token counts */
|
|
110
|
+
tokenCount: number[];
|
|
111
|
+
/** Coverage percentage */
|
|
112
|
+
coveragePercent: number[];
|
|
113
|
+
/** Queue depth */
|
|
114
|
+
queueDepth: number[];
|
|
115
|
+
/** Memory in bytes */
|
|
116
|
+
memoryBytes: number[];
|
|
117
|
+
};
|
|
118
|
+
/**
|
|
119
|
+
* Semantic naming conventions for QE metrics
|
|
120
|
+
*/
|
|
121
|
+
export declare const METRIC_NAMES: {
|
|
122
|
+
readonly AGENT_TASK_DURATION: "aqe.agent.task.duration";
|
|
123
|
+
readonly AGENT_TASK_COUNT: "aqe.agent.task.count";
|
|
124
|
+
readonly AGENT_SUCCESS_RATE: "aqe.agent.success.rate";
|
|
125
|
+
readonly AGENT_TOKEN_USAGE: "aqe.agent.token.usage";
|
|
126
|
+
readonly AGENT_COST: "aqe.agent.cost";
|
|
127
|
+
readonly AGENT_ACTIVE_COUNT: "aqe.agent.active.count";
|
|
128
|
+
readonly AGENT_ERROR_COUNT: "aqe.agent.error.count";
|
|
129
|
+
readonly TEST_PASS_RATE: "aqe.quality.test.pass_rate";
|
|
130
|
+
readonly TEST_COUNT: "aqe.quality.test.count";
|
|
131
|
+
readonly TEST_DURATION: "aqe.quality.test.duration";
|
|
132
|
+
readonly COVERAGE_LINE: "aqe.quality.coverage.line";
|
|
133
|
+
readonly COVERAGE_BRANCH: "aqe.quality.coverage.branch";
|
|
134
|
+
readonly COVERAGE_FUNCTION: "aqe.quality.coverage.function";
|
|
135
|
+
readonly DEFECT_DENSITY: "aqe.quality.defect.density";
|
|
136
|
+
readonly FLAKY_TEST_COUNT: "aqe.quality.flaky.count";
|
|
137
|
+
readonly QUALITY_GATE_PASS_RATE: "aqe.quality.gate.pass_rate";
|
|
138
|
+
readonly SECURITY_VULNERABILITY_COUNT: "aqe.quality.security.vulnerability.count";
|
|
139
|
+
readonly MEMORY_USAGE: "aqe.system.memory.usage";
|
|
140
|
+
readonly CPU_USAGE: "aqe.system.cpu.usage";
|
|
141
|
+
readonly QUEUE_DEPTH: "aqe.system.queue.depth";
|
|
142
|
+
readonly QUEUE_WAIT_TIME: "aqe.system.queue.wait_time";
|
|
143
|
+
readonly DATABASE_QUERY_DURATION: "aqe.system.db.query.duration";
|
|
144
|
+
readonly DATABASE_CONNECTION_COUNT: "aqe.system.db.connection.count";
|
|
145
|
+
readonly EVENT_BUS_PUBLISH_COUNT: "aqe.system.eventbus.publish.count";
|
|
146
|
+
readonly EVENT_BUS_LATENCY: "aqe.system.eventbus.latency";
|
|
147
|
+
};
|
|
148
|
+
/**
|
|
149
|
+
* Span names for tracing
|
|
150
|
+
*/
|
|
151
|
+
export declare const SPAN_NAMES: {
|
|
152
|
+
readonly AGENT_EXECUTE_TASK: "aqe.agent.execute_task";
|
|
153
|
+
readonly AGENT_GENERATE_TESTS: "aqe.agent.generate_tests";
|
|
154
|
+
readonly AGENT_ANALYZE_COVERAGE: "aqe.agent.analyze_coverage";
|
|
155
|
+
readonly AGENT_VALIDATE_QUALITY: "aqe.agent.validate_quality";
|
|
156
|
+
readonly AGENT_SCAN_SECURITY: "aqe.agent.scan_security";
|
|
157
|
+
readonly FLEET_SPAWN_AGENT: "aqe.fleet.spawn_agent";
|
|
158
|
+
readonly FLEET_COORDINATE: "aqe.fleet.coordinate";
|
|
159
|
+
readonly FLEET_DISTRIBUTE_TASK: "aqe.fleet.distribute_task";
|
|
160
|
+
readonly MODEL_ROUTE: "aqe.model.route";
|
|
161
|
+
readonly MODEL_INVOKE: "aqe.model.invoke";
|
|
162
|
+
readonly DB_QUERY: "aqe.db.query";
|
|
163
|
+
readonly DB_INSERT: "aqe.db.insert";
|
|
164
|
+
readonly DB_UPDATE: "aqe.db.update";
|
|
165
|
+
readonly MEMORY_STORE: "aqe.memory.store";
|
|
166
|
+
readonly MEMORY_RETRIEVE: "aqe.memory.retrieve";
|
|
167
|
+
readonly MEMORY_SEARCH: "aqe.memory.search";
|
|
168
|
+
};
|
|
169
|
+
/**
|
|
170
|
+
* Telemetry initialization result
|
|
171
|
+
*/
|
|
172
|
+
export interface TelemetryInitResult {
|
|
173
|
+
/** Whether initialization was successful */
|
|
174
|
+
success: boolean;
|
|
175
|
+
/** Error message if initialization failed */
|
|
176
|
+
error?: string;
|
|
177
|
+
/** Configured service name */
|
|
178
|
+
serviceName: string;
|
|
179
|
+
/** Configured environment */
|
|
180
|
+
environment: string;
|
|
181
|
+
/** Active exporters */
|
|
182
|
+
exporters: string[];
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Shutdown result
|
|
186
|
+
*/
|
|
187
|
+
export interface TelemetryShutdownResult {
|
|
188
|
+
/** Whether shutdown was successful */
|
|
189
|
+
success: boolean;
|
|
190
|
+
/** Error message if shutdown failed */
|
|
191
|
+
error?: string;
|
|
192
|
+
/** Time taken to shutdown in milliseconds */
|
|
193
|
+
shutdownDuration: number;
|
|
194
|
+
}
|
|
195
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/telemetry/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* OpenTelemetry Types for Agentic QE Fleet
|
|
4
|
+
*
|
|
5
|
+
* Type definitions for telemetry configuration, metrics, and observability.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.SPAN_NAMES = exports.METRIC_NAMES = exports.HISTOGRAM_BOUNDARIES = void 0;
|
|
9
|
+
/**
|
|
10
|
+
* Histogram bucket boundaries for common metrics
|
|
11
|
+
*/
|
|
12
|
+
exports.HISTOGRAM_BOUNDARIES = {
|
|
13
|
+
/** Task duration in milliseconds */
|
|
14
|
+
taskDuration: [10, 50, 100, 250, 500, 1000, 2500, 5000, 10000, 30000, 60000],
|
|
15
|
+
/** Token counts */
|
|
16
|
+
tokenCount: [10, 50, 100, 500, 1000, 5000, 10000, 50000, 100000],
|
|
17
|
+
/** Coverage percentage */
|
|
18
|
+
coveragePercent: [10, 20, 30, 40, 50, 60, 70, 80, 90, 95, 100],
|
|
19
|
+
/** Queue depth */
|
|
20
|
+
queueDepth: [1, 5, 10, 25, 50, 100, 250, 500, 1000],
|
|
21
|
+
/** Memory in bytes */
|
|
22
|
+
memoryBytes: [
|
|
23
|
+
1024 * 1024, // 1 MB
|
|
24
|
+
10 * 1024 * 1024, // 10 MB
|
|
25
|
+
50 * 1024 * 1024, // 50 MB
|
|
26
|
+
100 * 1024 * 1024, // 100 MB
|
|
27
|
+
500 * 1024 * 1024, // 500 MB
|
|
28
|
+
1024 * 1024 * 1024, // 1 GB
|
|
29
|
+
],
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Semantic naming conventions for QE metrics
|
|
33
|
+
*/
|
|
34
|
+
exports.METRIC_NAMES = {
|
|
35
|
+
// Agent metrics
|
|
36
|
+
AGENT_TASK_DURATION: 'aqe.agent.task.duration',
|
|
37
|
+
AGENT_TASK_COUNT: 'aqe.agent.task.count',
|
|
38
|
+
AGENT_SUCCESS_RATE: 'aqe.agent.success.rate',
|
|
39
|
+
AGENT_TOKEN_USAGE: 'aqe.agent.token.usage',
|
|
40
|
+
AGENT_COST: 'aqe.agent.cost',
|
|
41
|
+
AGENT_ACTIVE_COUNT: 'aqe.agent.active.count',
|
|
42
|
+
AGENT_ERROR_COUNT: 'aqe.agent.error.count',
|
|
43
|
+
// Quality metrics
|
|
44
|
+
TEST_PASS_RATE: 'aqe.quality.test.pass_rate',
|
|
45
|
+
TEST_COUNT: 'aqe.quality.test.count',
|
|
46
|
+
TEST_DURATION: 'aqe.quality.test.duration',
|
|
47
|
+
COVERAGE_LINE: 'aqe.quality.coverage.line',
|
|
48
|
+
COVERAGE_BRANCH: 'aqe.quality.coverage.branch',
|
|
49
|
+
COVERAGE_FUNCTION: 'aqe.quality.coverage.function',
|
|
50
|
+
DEFECT_DENSITY: 'aqe.quality.defect.density',
|
|
51
|
+
FLAKY_TEST_COUNT: 'aqe.quality.flaky.count',
|
|
52
|
+
QUALITY_GATE_PASS_RATE: 'aqe.quality.gate.pass_rate',
|
|
53
|
+
SECURITY_VULNERABILITY_COUNT: 'aqe.quality.security.vulnerability.count',
|
|
54
|
+
// System metrics
|
|
55
|
+
MEMORY_USAGE: 'aqe.system.memory.usage',
|
|
56
|
+
CPU_USAGE: 'aqe.system.cpu.usage',
|
|
57
|
+
QUEUE_DEPTH: 'aqe.system.queue.depth',
|
|
58
|
+
QUEUE_WAIT_TIME: 'aqe.system.queue.wait_time',
|
|
59
|
+
DATABASE_QUERY_DURATION: 'aqe.system.db.query.duration',
|
|
60
|
+
DATABASE_CONNECTION_COUNT: 'aqe.system.db.connection.count',
|
|
61
|
+
EVENT_BUS_PUBLISH_COUNT: 'aqe.system.eventbus.publish.count',
|
|
62
|
+
EVENT_BUS_LATENCY: 'aqe.system.eventbus.latency',
|
|
63
|
+
};
|
|
64
|
+
/**
|
|
65
|
+
* Span names for tracing
|
|
66
|
+
*/
|
|
67
|
+
exports.SPAN_NAMES = {
|
|
68
|
+
// Agent operations
|
|
69
|
+
AGENT_EXECUTE_TASK: 'aqe.agent.execute_task',
|
|
70
|
+
AGENT_GENERATE_TESTS: 'aqe.agent.generate_tests',
|
|
71
|
+
AGENT_ANALYZE_COVERAGE: 'aqe.agent.analyze_coverage',
|
|
72
|
+
AGENT_VALIDATE_QUALITY: 'aqe.agent.validate_quality',
|
|
73
|
+
AGENT_SCAN_SECURITY: 'aqe.agent.scan_security',
|
|
74
|
+
// Fleet operations
|
|
75
|
+
FLEET_SPAWN_AGENT: 'aqe.fleet.spawn_agent',
|
|
76
|
+
FLEET_COORDINATE: 'aqe.fleet.coordinate',
|
|
77
|
+
FLEET_DISTRIBUTE_TASK: 'aqe.fleet.distribute_task',
|
|
78
|
+
// Model routing
|
|
79
|
+
MODEL_ROUTE: 'aqe.model.route',
|
|
80
|
+
MODEL_INVOKE: 'aqe.model.invoke',
|
|
81
|
+
// Database operations
|
|
82
|
+
DB_QUERY: 'aqe.db.query',
|
|
83
|
+
DB_INSERT: 'aqe.db.insert',
|
|
84
|
+
DB_UPDATE: 'aqe.db.update',
|
|
85
|
+
// Memory operations
|
|
86
|
+
MEMORY_STORE: 'aqe.memory.store',
|
|
87
|
+
MEMORY_RETRIEVE: 'aqe.memory.retrieve',
|
|
88
|
+
MEMORY_SEARCH: 'aqe.memory.search',
|
|
89
|
+
};
|
|
90
|
+
//# sourceMappingURL=types.js.map
|