agentic-qe 1.8.3 → 1.8.4

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 (91) hide show
  1. package/.claude/skills/cicd-pipeline-qe-orchestrator/README.md +2 -2
  2. package/.claude/skills/cicd-pipeline-qe-orchestrator/SKILL.md +6 -6
  3. package/CHANGELOG.md +220 -0
  4. package/README.md +36 -3
  5. package/config/constitution.schema.json +423 -0
  6. package/config/otel-collector.yaml +234 -0
  7. package/dist/cli/commands/init-claude-md-template.js +3 -3
  8. package/dist/constitution/index.d.ts +105 -0
  9. package/dist/constitution/index.d.ts.map +1 -0
  10. package/dist/constitution/index.js +207 -0
  11. package/dist/constitution/index.js.map +1 -0
  12. package/dist/constitution/loader.d.ts +141 -0
  13. package/dist/constitution/loader.d.ts.map +1 -0
  14. package/dist/constitution/loader.js +515 -0
  15. package/dist/constitution/loader.js.map +1 -0
  16. package/dist/constitution/schema.d.ts +409 -0
  17. package/dist/constitution/schema.d.ts.map +1 -0
  18. package/dist/constitution/schema.js +71 -0
  19. package/dist/constitution/schema.js.map +1 -0
  20. package/dist/core/memory/MemoryManagerFactory.d.ts +77 -0
  21. package/dist/core/memory/MemoryManagerFactory.d.ts.map +1 -0
  22. package/dist/core/memory/MemoryManagerFactory.js +270 -0
  23. package/dist/core/memory/MemoryManagerFactory.js.map +1 -0
  24. package/dist/core/memory/SwarmMemoryManager.d.ts +18 -0
  25. package/dist/core/memory/SwarmMemoryManager.d.ts.map +1 -1
  26. package/dist/core/memory/SwarmMemoryManager.js +96 -11
  27. package/dist/core/memory/SwarmMemoryManager.js.map +1 -1
  28. package/dist/core/memory/index.d.ts +1 -0
  29. package/dist/core/memory/index.d.ts.map +1 -1
  30. package/dist/core/memory/index.js +12 -1
  31. package/dist/core/memory/index.js.map +1 -1
  32. package/dist/mcp/handlers/memory/memory-backup.js +6 -6
  33. package/dist/mcp/handlers/memory/memory-backup.js.map +1 -1
  34. package/dist/mcp/handlers/phase2/Phase2Tools.d.ts.map +1 -1
  35. package/dist/mcp/handlers/phase2/Phase2Tools.js +4 -2
  36. package/dist/mcp/handlers/phase2/Phase2Tools.js.map +1 -1
  37. package/dist/mcp/server.d.ts.map +1 -1
  38. package/dist/mcp/server.js +4 -38
  39. package/dist/mcp/server.js.map +1 -1
  40. package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
  41. package/dist/mcp/services/AgentRegistry.js +4 -4
  42. package/dist/mcp/services/AgentRegistry.js.map +1 -1
  43. package/dist/persistence/event-store.d.ts +162 -0
  44. package/dist/persistence/event-store.d.ts.map +1 -0
  45. package/dist/persistence/event-store.js +315 -0
  46. package/dist/persistence/event-store.js.map +1 -0
  47. package/dist/persistence/index.d.ts +145 -0
  48. package/dist/persistence/index.d.ts.map +1 -0
  49. package/dist/persistence/index.js +227 -0
  50. package/dist/persistence/index.js.map +1 -0
  51. package/dist/persistence/metrics-aggregator.d.ts +187 -0
  52. package/dist/persistence/metrics-aggregator.d.ts.map +1 -0
  53. package/dist/persistence/metrics-aggregator.js +495 -0
  54. package/dist/persistence/metrics-aggregator.js.map +1 -0
  55. package/dist/persistence/reasoning-store.d.ts +178 -0
  56. package/dist/persistence/reasoning-store.d.ts.map +1 -0
  57. package/dist/persistence/reasoning-store.js +440 -0
  58. package/dist/persistence/reasoning-store.js.map +1 -0
  59. package/dist/persistence/schema.d.ts +181 -0
  60. package/dist/persistence/schema.d.ts.map +1 -0
  61. package/dist/persistence/schema.js +186 -0
  62. package/dist/persistence/schema.js.map +1 -0
  63. package/dist/telemetry/bootstrap.d.ts +67 -0
  64. package/dist/telemetry/bootstrap.d.ts.map +1 -0
  65. package/dist/telemetry/bootstrap.js +320 -0
  66. package/dist/telemetry/bootstrap.js.map +1 -0
  67. package/dist/telemetry/index.d.ts +16 -0
  68. package/dist/telemetry/index.d.ts.map +1 -0
  69. package/dist/telemetry/index.js +84 -0
  70. package/dist/telemetry/index.js.map +1 -0
  71. package/dist/telemetry/metrics/agent-metrics.d.ts +109 -0
  72. package/dist/telemetry/metrics/agent-metrics.d.ts.map +1 -0
  73. package/dist/telemetry/metrics/agent-metrics.js +213 -0
  74. package/dist/telemetry/metrics/agent-metrics.js.map +1 -0
  75. package/dist/telemetry/metrics/index.d.ts +51 -0
  76. package/dist/telemetry/metrics/index.d.ts.map +1 -0
  77. package/dist/telemetry/metrics/index.js +100 -0
  78. package/dist/telemetry/metrics/index.js.map +1 -0
  79. package/dist/telemetry/metrics/quality-metrics.d.ts +171 -0
  80. package/dist/telemetry/metrics/quality-metrics.d.ts.map +1 -0
  81. package/dist/telemetry/metrics/quality-metrics.js +259 -0
  82. package/dist/telemetry/metrics/quality-metrics.js.map +1 -0
  83. package/dist/telemetry/metrics/system-metrics.d.ts +129 -0
  84. package/dist/telemetry/metrics/system-metrics.d.ts.map +1 -0
  85. package/dist/telemetry/metrics/system-metrics.js +380 -0
  86. package/dist/telemetry/metrics/system-metrics.js.map +1 -0
  87. package/dist/telemetry/types.d.ts +195 -0
  88. package/dist/telemetry/types.d.ts.map +1 -0
  89. package/dist/telemetry/types.js +90 -0
  90. package/dist/telemetry/types.js.map +1 -0
  91. package/package.json +18 -2
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ /**
3
+ * OpenTelemetry Module for Agentic QE Fleet
4
+ *
5
+ * Main entry point for telemetry functionality.
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
24
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
25
+ };
26
+ var __importStar = (this && this.__importStar) || (function () {
27
+ var ownKeys = function(o) {
28
+ ownKeys = Object.getOwnPropertyNames || function (o) {
29
+ var ar = [];
30
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
31
+ return ar;
32
+ };
33
+ return ownKeys(o);
34
+ };
35
+ return function (mod) {
36
+ if (mod && mod.__esModule) return mod;
37
+ var result = {};
38
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
39
+ __setModuleDefault(result, mod);
40
+ return result;
41
+ };
42
+ })();
43
+ Object.defineProperty(exports, "__esModule", { value: true });
44
+ exports.SPAN_NAMES = exports.HISTOGRAM_BOUNDARIES = exports.METRIC_NAMES = exports.defaultTelemetryConfig = exports.setSpanAttributes = exports.recordSpanEvent = exports.withSpan = exports.isTelemetryInitialized = exports.getMeter = exports.getTracer = exports.shutdownTelemetry = exports.initTelemetry = void 0;
45
+ exports.quickStartTelemetry = quickStartTelemetry;
46
+ // Bootstrap exports
47
+ var bootstrap_1 = require("./bootstrap");
48
+ Object.defineProperty(exports, "initTelemetry", { enumerable: true, get: function () { return bootstrap_1.initTelemetry; } });
49
+ Object.defineProperty(exports, "shutdownTelemetry", { enumerable: true, get: function () { return bootstrap_1.shutdownTelemetry; } });
50
+ Object.defineProperty(exports, "getTracer", { enumerable: true, get: function () { return bootstrap_1.getTracer; } });
51
+ Object.defineProperty(exports, "getMeter", { enumerable: true, get: function () { return bootstrap_1.getMeter; } });
52
+ Object.defineProperty(exports, "isTelemetryInitialized", { enumerable: true, get: function () { return bootstrap_1.isTelemetryInitialized; } });
53
+ Object.defineProperty(exports, "withSpan", { enumerable: true, get: function () { return bootstrap_1.withSpan; } });
54
+ Object.defineProperty(exports, "recordSpanEvent", { enumerable: true, get: function () { return bootstrap_1.recordSpanEvent; } });
55
+ Object.defineProperty(exports, "setSpanAttributes", { enumerable: true, get: function () { return bootstrap_1.setSpanAttributes; } });
56
+ Object.defineProperty(exports, "defaultTelemetryConfig", { enumerable: true, get: function () { return bootstrap_1.defaultTelemetryConfig; } });
57
+ // Type exports
58
+ var types_1 = require("./types");
59
+ Object.defineProperty(exports, "METRIC_NAMES", { enumerable: true, get: function () { return types_1.METRIC_NAMES; } });
60
+ Object.defineProperty(exports, "HISTOGRAM_BOUNDARIES", { enumerable: true, get: function () { return types_1.HISTOGRAM_BOUNDARIES; } });
61
+ Object.defineProperty(exports, "SPAN_NAMES", { enumerable: true, get: function () { return types_1.SPAN_NAMES; } });
62
+ // Metrics exports
63
+ __exportStar(require("./metrics"), exports);
64
+ /**
65
+ * Quick start function for initializing telemetry with defaults
66
+ *
67
+ * @param serviceName - Optional service name override
68
+ * @returns Initialization result
69
+ */
70
+ async function quickStartTelemetry(serviceName) {
71
+ const { initTelemetry } = await Promise.resolve().then(() => __importStar(require('./bootstrap')));
72
+ const { initializeAllMetrics } = await Promise.resolve().then(() => __importStar(require('./metrics')));
73
+ const result = await initTelemetry({
74
+ serviceName: serviceName || 'agentic-qe-fleet',
75
+ enableConsoleExport: process.env.NODE_ENV === 'development',
76
+ enableAutoInstrumentation: true,
77
+ });
78
+ if (result.success) {
79
+ // Initialize all metrics
80
+ initializeAllMetrics();
81
+ }
82
+ return result;
83
+ }
84
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/telemetry/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCH,kDAgBC;AArDD,oBAAoB;AACpB,yCAUqB;AATnB,0GAAA,aAAa,OAAA;AACb,8GAAA,iBAAiB,OAAA;AACjB,sGAAA,SAAS,OAAA;AACT,qGAAA,QAAQ,OAAA;AACR,mHAAA,sBAAsB,OAAA;AACtB,qGAAA,QAAQ,OAAA;AACR,4GAAA,eAAe,OAAA;AACf,8GAAA,iBAAiB,OAAA;AACjB,mHAAA,sBAAsB,OAAA;AAGxB,eAAe;AACf,iCAYiB;AAHf,qGAAA,YAAY,OAAA;AACZ,6GAAA,oBAAoB,OAAA;AACpB,mGAAA,UAAU,OAAA;AAGZ,kBAAkB;AAClB,4CAA0B;AAE1B;;;;;GAKG;AACI,KAAK,UAAU,mBAAmB,CAAC,WAAoB;IAC5D,MAAM,EAAE,aAAa,EAAE,GAAG,wDAAa,aAAa,GAAC,CAAC;IACtD,MAAM,EAAE,oBAAoB,EAAE,GAAG,wDAAa,WAAW,GAAC,CAAC;IAE3D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC;QACjC,WAAW,EAAE,WAAW,IAAI,kBAAkB;QAC9C,mBAAmB,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;QAC3D,yBAAyB,EAAE,IAAI;KAChC,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,yBAAyB;QACzB,oBAAoB,EAAE,CAAC;IACzB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * Agent Performance Metrics for Agentic QE Fleet
3
+ *
4
+ * Metrics for tracking agent task execution, performance, and resource usage.
5
+ */
6
+ import { Meter, Counter, Histogram, UpDownCounter, Attributes } from '@opentelemetry/api';
7
+ import { MetricRecordOptions } from '../types';
8
+ /**
9
+ * Agent metrics registry
10
+ */
11
+ export interface AgentMetrics {
12
+ /** Total number of tasks executed by agents */
13
+ taskCount: Counter;
14
+ /** Distribution of task durations in milliseconds */
15
+ taskDuration: Histogram;
16
+ /** Number of successful tasks */
17
+ successCount: Counter;
18
+ /** Number of failed tasks */
19
+ errorCount: Counter;
20
+ /** Total tokens consumed by agents */
21
+ tokenUsage: Counter;
22
+ /** Total cost incurred by agents */
23
+ costTotal: Counter;
24
+ /** Number of currently active agents */
25
+ activeAgents: UpDownCounter;
26
+ }
27
+ /**
28
+ * Initialize agent metrics
29
+ *
30
+ * @param meter - OpenTelemetry Meter instance
31
+ * @returns Agent metrics registry
32
+ */
33
+ export declare function createAgentMetrics(meter?: Meter): AgentMetrics;
34
+ /**
35
+ * Get initialized agent metrics
36
+ *
37
+ * @returns Agent metrics registry
38
+ */
39
+ export declare function getAgentMetrics(): AgentMetrics;
40
+ /**
41
+ * Record a completed agent task
42
+ *
43
+ * @param agentType - Type of agent (e.g., test-generator, coverage-analyzer)
44
+ * @param taskType - Type of task executed
45
+ * @param durationMs - Task duration in milliseconds
46
+ * @param success - Whether the task succeeded
47
+ * @param options - Additional recording options
48
+ */
49
+ export declare function recordAgentTask(agentType: string, taskType: string, durationMs: number, success: boolean, options?: {
50
+ agentId?: string;
51
+ taskId?: string;
52
+ priority?: string;
53
+ tokensUsed?: number;
54
+ cost?: number;
55
+ }): void;
56
+ /**
57
+ * Record agent spawn/despawn
58
+ *
59
+ * @param agentType - Type of agent
60
+ * @param delta - Change in agent count (+1 for spawn, -1 for despawn)
61
+ * @param attributes - Additional attributes
62
+ */
63
+ export declare function recordAgentCount(agentType: string, delta: number, attributes?: Attributes): void;
64
+ /**
65
+ * Record model routing decision
66
+ */
67
+ export interface ModelRoutingRecord {
68
+ /** Model provider (anthropic, openai, etc.) */
69
+ provider: string;
70
+ /** Model name/ID */
71
+ model: string;
72
+ /** Model tier (fast, balanced, quality) */
73
+ tier: string;
74
+ /** Task complexity score */
75
+ complexity: number;
76
+ /** Routing latency in ms */
77
+ routingLatencyMs: number;
78
+ /** Tokens used for routing */
79
+ tokensUsed?: number;
80
+ /** Cost of the routed call */
81
+ cost?: number;
82
+ }
83
+ /**
84
+ * Create model routing metrics
85
+ *
86
+ * @param meter - OpenTelemetry Meter instance
87
+ * @returns Model routing metrics
88
+ */
89
+ export declare function createModelRoutingMetrics(meter?: Meter): {
90
+ routingCount: Counter<Attributes>;
91
+ routingLatency: Histogram<Attributes>;
92
+ modelInvocationCount: Counter<Attributes>;
93
+ modelTokensInput: Counter<Attributes>;
94
+ modelTokensOutput: Counter<Attributes>;
95
+ modelCost: Counter<Attributes>;
96
+ modelLatency: Histogram<Attributes>;
97
+ };
98
+ /**
99
+ * Learning and pattern metrics for agents
100
+ */
101
+ export declare function createLearningMetrics(meter?: Meter): {
102
+ patternMatchCount: Counter<Attributes>;
103
+ patternMatchScore: Histogram<Attributes>;
104
+ learningEpisodeCount: Counter<Attributes>;
105
+ rewardScore: Histogram<Attributes>;
106
+ experienceBufferSize: UpDownCounter<Attributes>;
107
+ };
108
+ export type { MetricRecordOptions };
109
+ //# sourceMappingURL=agent-metrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-metrics.d.ts","sourceRoot":"","sources":["../../../src/telemetry/metrics/agent-metrics.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAE1F,OAAO,EAAsC,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEnF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,+CAA+C;IAC/C,SAAS,EAAE,OAAO,CAAC;IACnB,qDAAqD;IACrD,YAAY,EAAE,SAAS,CAAC;IACxB,iCAAiC;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,6BAA6B;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,sCAAsC;IACtC,UAAU,EAAE,OAAO,CAAC;IACpB,oCAAoC;IACpC,SAAS,EAAE,OAAO,CAAC;IACnB,wCAAwC;IACxC,YAAY,EAAE,aAAa,CAAC;CAC7B;AAKD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,YAAY,CAgD9D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAK9C;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE;IACR,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GACA,IAAI,CAyCN;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,UAAU,GACtB,IAAI,CAON;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,CAAC,EAAE,KAAK;;;;;;;;EA6CtD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,CAAC,EAAE,KAAK;;;;;;EAmClD;AAGD,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,213 @@
1
+ "use strict";
2
+ /**
3
+ * Agent Performance Metrics for Agentic QE Fleet
4
+ *
5
+ * Metrics for tracking agent task execution, performance, and resource usage.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.createAgentMetrics = createAgentMetrics;
9
+ exports.getAgentMetrics = getAgentMetrics;
10
+ exports.recordAgentTask = recordAgentTask;
11
+ exports.recordAgentCount = recordAgentCount;
12
+ exports.createModelRoutingMetrics = createModelRoutingMetrics;
13
+ exports.createLearningMetrics = createLearningMetrics;
14
+ const bootstrap_1 = require("../bootstrap");
15
+ const types_1 = require("../types");
16
+ // Singleton metrics instance
17
+ let agentMetrics = null;
18
+ /**
19
+ * Initialize agent metrics
20
+ *
21
+ * @param meter - OpenTelemetry Meter instance
22
+ * @returns Agent metrics registry
23
+ */
24
+ function createAgentMetrics(meter) {
25
+ if (agentMetrics) {
26
+ return agentMetrics;
27
+ }
28
+ const m = meter || (0, bootstrap_1.getMeter)();
29
+ agentMetrics = {
30
+ taskCount: m.createCounter(types_1.METRIC_NAMES.AGENT_TASK_COUNT, {
31
+ description: 'Total number of tasks executed by agents',
32
+ unit: 'tasks',
33
+ }),
34
+ taskDuration: m.createHistogram(types_1.METRIC_NAMES.AGENT_TASK_DURATION, {
35
+ description: 'Distribution of agent task execution durations',
36
+ unit: 'ms',
37
+ advice: {
38
+ explicitBucketBoundaries: types_1.HISTOGRAM_BOUNDARIES.taskDuration,
39
+ },
40
+ }),
41
+ successCount: m.createCounter(`${types_1.METRIC_NAMES.AGENT_TASK_COUNT}.success`, {
42
+ description: 'Total number of successful agent tasks',
43
+ unit: 'tasks',
44
+ }),
45
+ errorCount: m.createCounter(types_1.METRIC_NAMES.AGENT_ERROR_COUNT, {
46
+ description: 'Total number of failed agent tasks',
47
+ unit: 'errors',
48
+ }),
49
+ tokenUsage: m.createCounter(types_1.METRIC_NAMES.AGENT_TOKEN_USAGE, {
50
+ description: 'Total tokens consumed by agents',
51
+ unit: 'tokens',
52
+ }),
53
+ costTotal: m.createCounter(types_1.METRIC_NAMES.AGENT_COST, {
54
+ description: 'Total cost incurred by agent operations',
55
+ unit: 'USD',
56
+ }),
57
+ activeAgents: m.createUpDownCounter(types_1.METRIC_NAMES.AGENT_ACTIVE_COUNT, {
58
+ description: 'Number of currently active agents in the fleet',
59
+ unit: 'agents',
60
+ }),
61
+ };
62
+ return agentMetrics;
63
+ }
64
+ /**
65
+ * Get initialized agent metrics
66
+ *
67
+ * @returns Agent metrics registry
68
+ */
69
+ function getAgentMetrics() {
70
+ if (!agentMetrics) {
71
+ return createAgentMetrics();
72
+ }
73
+ return agentMetrics;
74
+ }
75
+ /**
76
+ * Record a completed agent task
77
+ *
78
+ * @param agentType - Type of agent (e.g., test-generator, coverage-analyzer)
79
+ * @param taskType - Type of task executed
80
+ * @param durationMs - Task duration in milliseconds
81
+ * @param success - Whether the task succeeded
82
+ * @param options - Additional recording options
83
+ */
84
+ function recordAgentTask(agentType, taskType, durationMs, success, options) {
85
+ const metrics = getAgentMetrics();
86
+ const attributes = {
87
+ 'agent.type': agentType,
88
+ 'task.type': taskType,
89
+ 'task.status': success ? 'success' : 'failed',
90
+ };
91
+ if (options?.agentId) {
92
+ attributes['agent.id'] = options.agentId;
93
+ }
94
+ if (options?.taskId) {
95
+ attributes['task.id'] = options.taskId;
96
+ }
97
+ if (options?.priority) {
98
+ attributes['task.priority'] = options.priority;
99
+ }
100
+ // Record task count
101
+ metrics.taskCount.add(1, attributes);
102
+ // Record duration
103
+ metrics.taskDuration.record(durationMs, attributes);
104
+ // Record success/failure
105
+ if (success) {
106
+ metrics.successCount.add(1, attributes);
107
+ }
108
+ else {
109
+ metrics.errorCount.add(1, attributes);
110
+ }
111
+ // Record token usage if provided
112
+ if (options?.tokensUsed && options.tokensUsed > 0) {
113
+ metrics.tokenUsage.add(options.tokensUsed, attributes);
114
+ }
115
+ // Record cost if provided
116
+ if (options?.cost && options.cost > 0) {
117
+ metrics.costTotal.add(options.cost, attributes);
118
+ }
119
+ }
120
+ /**
121
+ * Record agent spawn/despawn
122
+ *
123
+ * @param agentType - Type of agent
124
+ * @param delta - Change in agent count (+1 for spawn, -1 for despawn)
125
+ * @param attributes - Additional attributes
126
+ */
127
+ function recordAgentCount(agentType, delta, attributes) {
128
+ const metrics = getAgentMetrics();
129
+ metrics.activeAgents.add(delta, {
130
+ 'agent.type': agentType,
131
+ ...attributes,
132
+ });
133
+ }
134
+ /**
135
+ * Create model routing metrics
136
+ *
137
+ * @param meter - OpenTelemetry Meter instance
138
+ * @returns Model routing metrics
139
+ */
140
+ function createModelRoutingMetrics(meter) {
141
+ const m = meter || (0, bootstrap_1.getMeter)();
142
+ return {
143
+ routingCount: m.createCounter('aqe.model.routing.count', {
144
+ description: 'Number of model routing decisions',
145
+ unit: 'routes',
146
+ }),
147
+ routingLatency: m.createHistogram('aqe.model.routing.latency', {
148
+ description: 'Model routing decision latency',
149
+ unit: 'ms',
150
+ advice: {
151
+ explicitBucketBoundaries: [1, 5, 10, 25, 50, 100, 250, 500],
152
+ },
153
+ }),
154
+ modelInvocationCount: m.createCounter('aqe.model.invocation.count', {
155
+ description: 'Number of model invocations',
156
+ unit: 'invocations',
157
+ }),
158
+ modelTokensInput: m.createCounter('aqe.model.tokens.input', {
159
+ description: 'Total input tokens sent to models',
160
+ unit: 'tokens',
161
+ }),
162
+ modelTokensOutput: m.createCounter('aqe.model.tokens.output', {
163
+ description: 'Total output tokens received from models',
164
+ unit: 'tokens',
165
+ }),
166
+ modelCost: m.createCounter('aqe.model.cost', {
167
+ description: 'Total cost of model invocations',
168
+ unit: 'USD',
169
+ }),
170
+ modelLatency: m.createHistogram('aqe.model.invocation.latency', {
171
+ description: 'Model invocation latency',
172
+ unit: 'ms',
173
+ advice: {
174
+ explicitBucketBoundaries: [100, 250, 500, 1000, 2500, 5000, 10000, 30000],
175
+ },
176
+ }),
177
+ };
178
+ }
179
+ /**
180
+ * Learning and pattern metrics for agents
181
+ */
182
+ function createLearningMetrics(meter) {
183
+ const m = meter || (0, bootstrap_1.getMeter)();
184
+ return {
185
+ patternMatchCount: m.createCounter('aqe.learning.pattern.match.count', {
186
+ description: 'Number of pattern matches found',
187
+ unit: 'matches',
188
+ }),
189
+ patternMatchScore: m.createHistogram('aqe.learning.pattern.match.score', {
190
+ description: 'Distribution of pattern match scores',
191
+ unit: 'score',
192
+ advice: {
193
+ explicitBucketBoundaries: [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0],
194
+ },
195
+ }),
196
+ learningEpisodeCount: m.createCounter('aqe.learning.episode.count', {
197
+ description: 'Number of learning episodes recorded',
198
+ unit: 'episodes',
199
+ }),
200
+ rewardScore: m.createHistogram('aqe.learning.reward.score', {
201
+ description: 'Distribution of reward scores',
202
+ unit: 'score',
203
+ advice: {
204
+ explicitBucketBoundaries: [0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0],
205
+ },
206
+ }),
207
+ experienceBufferSize: m.createUpDownCounter('aqe.learning.buffer.size', {
208
+ description: 'Current size of experience replay buffer',
209
+ unit: 'experiences',
210
+ }),
211
+ };
212
+ }
213
+ //# sourceMappingURL=agent-metrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-metrics.js","sourceRoot":"","sources":["../../../src/telemetry/metrics/agent-metrics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Metrics Index for Agentic QE Fleet Telemetry
3
+ *
4
+ * Exports all metric definitions and recording functions.
5
+ */
6
+ export { AgentMetrics, createAgentMetrics, getAgentMetrics, recordAgentTask, recordAgentCount, createModelRoutingMetrics, createLearningMetrics, ModelRoutingRecord, } from './agent-metrics';
7
+ export { QualityMetrics, createQualityMetrics, getQualityMetrics, recordTestExecution, recordCoverage, recordQualityGate, recordSecurityScan, recordFlakyTest, recordDefectDensity, createApiContractMetrics, TestExecutionResult, CoverageReport, QualityGateResult, SecurityScanResult, } from './quality-metrics';
8
+ export { SystemMetrics, createSystemMetrics, getSystemMetrics, recordDatabaseQuery, recordDatabaseConnection, recordQueueOperation, recordEventBusOperation, recordNetworkRequest, recordFileSystemOperation, recordEventLoopLag, createMemoryDetailMetrics, createFleetCoordinationMetrics, } from './system-metrics';
9
+ export { METRIC_NAMES, HISTOGRAM_BOUNDARIES, MetricRecordOptions } from '../types';
10
+ /**
11
+ * Initialize all metrics
12
+ *
13
+ * @returns Object containing all metric registries
14
+ */
15
+ export declare function initializeAllMetrics(): {
16
+ agent: any;
17
+ quality: any;
18
+ system: any;
19
+ };
20
+ /**
21
+ * Convenience function to record a complete agent task with all metrics
22
+ */
23
+ export interface CompleteTaskRecord {
24
+ agentType: string;
25
+ agentId?: string;
26
+ taskType: string;
27
+ taskId?: string;
28
+ priority?: string;
29
+ durationMs: number;
30
+ success: boolean;
31
+ tokensUsed?: number;
32
+ cost?: number;
33
+ testResults?: {
34
+ total: number;
35
+ passed: number;
36
+ failed: number;
37
+ skipped: number;
38
+ };
39
+ coverage?: {
40
+ line: number;
41
+ branch: number;
42
+ function: number;
43
+ };
44
+ }
45
+ /**
46
+ * Record a complete agent task with all relevant metrics
47
+ *
48
+ * @param record - Complete task record
49
+ */
50
+ export declare function recordCompleteTask(record: CompleteTaskRecord): void;
51
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/telemetry/metrics/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,yBAAyB,EACzB,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,cAAc,EACd,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,wBAAwB,EACxB,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,yBAAyB,EACzB,8BAA8B,GAC/B,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAEnF;;;;GAIG;AACH,wBAAgB,oBAAoB;;;;EAUnC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IAEjC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IAGjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IAGd,WAAW,CAAC,EAAE;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAEF,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAmCnE"}
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ /**
3
+ * Metrics Index for Agentic QE Fleet Telemetry
4
+ *
5
+ * Exports all metric definitions and recording functions.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.HISTOGRAM_BOUNDARIES = exports.METRIC_NAMES = exports.createFleetCoordinationMetrics = exports.createMemoryDetailMetrics = exports.recordEventLoopLag = exports.recordFileSystemOperation = exports.recordNetworkRequest = exports.recordEventBusOperation = exports.recordQueueOperation = exports.recordDatabaseConnection = exports.recordDatabaseQuery = exports.getSystemMetrics = exports.createSystemMetrics = exports.createApiContractMetrics = exports.recordDefectDensity = exports.recordFlakyTest = exports.recordSecurityScan = exports.recordQualityGate = exports.recordCoverage = exports.recordTestExecution = exports.getQualityMetrics = exports.createQualityMetrics = exports.createLearningMetrics = exports.createModelRoutingMetrics = exports.recordAgentCount = exports.recordAgentTask = exports.getAgentMetrics = exports.createAgentMetrics = void 0;
9
+ exports.initializeAllMetrics = initializeAllMetrics;
10
+ exports.recordCompleteTask = recordCompleteTask;
11
+ // Agent metrics
12
+ var agent_metrics_1 = require("./agent-metrics");
13
+ Object.defineProperty(exports, "createAgentMetrics", { enumerable: true, get: function () { return agent_metrics_1.createAgentMetrics; } });
14
+ Object.defineProperty(exports, "getAgentMetrics", { enumerable: true, get: function () { return agent_metrics_1.getAgentMetrics; } });
15
+ Object.defineProperty(exports, "recordAgentTask", { enumerable: true, get: function () { return agent_metrics_1.recordAgentTask; } });
16
+ Object.defineProperty(exports, "recordAgentCount", { enumerable: true, get: function () { return agent_metrics_1.recordAgentCount; } });
17
+ Object.defineProperty(exports, "createModelRoutingMetrics", { enumerable: true, get: function () { return agent_metrics_1.createModelRoutingMetrics; } });
18
+ Object.defineProperty(exports, "createLearningMetrics", { enumerable: true, get: function () { return agent_metrics_1.createLearningMetrics; } });
19
+ // Quality metrics
20
+ var quality_metrics_1 = require("./quality-metrics");
21
+ Object.defineProperty(exports, "createQualityMetrics", { enumerable: true, get: function () { return quality_metrics_1.createQualityMetrics; } });
22
+ Object.defineProperty(exports, "getQualityMetrics", { enumerable: true, get: function () { return quality_metrics_1.getQualityMetrics; } });
23
+ Object.defineProperty(exports, "recordTestExecution", { enumerable: true, get: function () { return quality_metrics_1.recordTestExecution; } });
24
+ Object.defineProperty(exports, "recordCoverage", { enumerable: true, get: function () { return quality_metrics_1.recordCoverage; } });
25
+ Object.defineProperty(exports, "recordQualityGate", { enumerable: true, get: function () { return quality_metrics_1.recordQualityGate; } });
26
+ Object.defineProperty(exports, "recordSecurityScan", { enumerable: true, get: function () { return quality_metrics_1.recordSecurityScan; } });
27
+ Object.defineProperty(exports, "recordFlakyTest", { enumerable: true, get: function () { return quality_metrics_1.recordFlakyTest; } });
28
+ Object.defineProperty(exports, "recordDefectDensity", { enumerable: true, get: function () { return quality_metrics_1.recordDefectDensity; } });
29
+ Object.defineProperty(exports, "createApiContractMetrics", { enumerable: true, get: function () { return quality_metrics_1.createApiContractMetrics; } });
30
+ // System metrics
31
+ var system_metrics_1 = require("./system-metrics");
32
+ Object.defineProperty(exports, "createSystemMetrics", { enumerable: true, get: function () { return system_metrics_1.createSystemMetrics; } });
33
+ Object.defineProperty(exports, "getSystemMetrics", { enumerable: true, get: function () { return system_metrics_1.getSystemMetrics; } });
34
+ Object.defineProperty(exports, "recordDatabaseQuery", { enumerable: true, get: function () { return system_metrics_1.recordDatabaseQuery; } });
35
+ Object.defineProperty(exports, "recordDatabaseConnection", { enumerable: true, get: function () { return system_metrics_1.recordDatabaseConnection; } });
36
+ Object.defineProperty(exports, "recordQueueOperation", { enumerable: true, get: function () { return system_metrics_1.recordQueueOperation; } });
37
+ Object.defineProperty(exports, "recordEventBusOperation", { enumerable: true, get: function () { return system_metrics_1.recordEventBusOperation; } });
38
+ Object.defineProperty(exports, "recordNetworkRequest", { enumerable: true, get: function () { return system_metrics_1.recordNetworkRequest; } });
39
+ Object.defineProperty(exports, "recordFileSystemOperation", { enumerable: true, get: function () { return system_metrics_1.recordFileSystemOperation; } });
40
+ Object.defineProperty(exports, "recordEventLoopLag", { enumerable: true, get: function () { return system_metrics_1.recordEventLoopLag; } });
41
+ Object.defineProperty(exports, "createMemoryDetailMetrics", { enumerable: true, get: function () { return system_metrics_1.createMemoryDetailMetrics; } });
42
+ Object.defineProperty(exports, "createFleetCoordinationMetrics", { enumerable: true, get: function () { return system_metrics_1.createFleetCoordinationMetrics; } });
43
+ // Re-export types and constants
44
+ var types_1 = require("../types");
45
+ Object.defineProperty(exports, "METRIC_NAMES", { enumerable: true, get: function () { return types_1.METRIC_NAMES; } });
46
+ Object.defineProperty(exports, "HISTOGRAM_BOUNDARIES", { enumerable: true, get: function () { return types_1.HISTOGRAM_BOUNDARIES; } });
47
+ /**
48
+ * Initialize all metrics
49
+ *
50
+ * @returns Object containing all metric registries
51
+ */
52
+ function initializeAllMetrics() {
53
+ const { createAgentMetrics } = require('./agent-metrics');
54
+ const { createQualityMetrics } = require('./quality-metrics');
55
+ const { createSystemMetrics } = require('./system-metrics');
56
+ return {
57
+ agent: createAgentMetrics(),
58
+ quality: createQualityMetrics(),
59
+ system: createSystemMetrics(),
60
+ };
61
+ }
62
+ /**
63
+ * Record a complete agent task with all relevant metrics
64
+ *
65
+ * @param record - Complete task record
66
+ */
67
+ function recordCompleteTask(record) {
68
+ const { recordAgentTask } = require('./agent-metrics');
69
+ const { recordTestExecution, recordCoverage } = require('./quality-metrics');
70
+ // Record agent task
71
+ recordAgentTask(record.agentType, record.taskType, record.durationMs, record.success, {
72
+ agentId: record.agentId,
73
+ taskId: record.taskId,
74
+ priority: record.priority,
75
+ tokensUsed: record.tokensUsed,
76
+ cost: record.cost,
77
+ });
78
+ // Record test results if provided
79
+ if (record.testResults) {
80
+ recordTestExecution({
81
+ framework: 'jest', // Default, should be configurable
82
+ suite: record.taskId || 'unknown',
83
+ total: record.testResults.total,
84
+ passed: record.testResults.passed,
85
+ failed: record.testResults.failed,
86
+ skipped: record.testResults.skipped,
87
+ durationMs: record.durationMs,
88
+ });
89
+ }
90
+ // Record coverage if provided
91
+ if (record.coverage) {
92
+ recordCoverage({
93
+ target: record.taskId || 'unknown',
94
+ line: record.coverage.line,
95
+ branch: record.coverage.branch,
96
+ function: record.coverage.function,
97
+ });
98
+ }
99
+ }
100
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/telemetry/metrics/index.ts"],"names":[],"mappings":"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"}