0xray 4.0.36 → 4.0.37

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 (169) hide show
  1. package/.grok-plugin/plugin.json +1 -1
  2. package/.xray/features.json +1 -1
  3. package/dist/CHANGELOG.md +15 -0
  4. package/dist/analytics/emerging-pattern-detector.d.ts +12 -1
  5. package/dist/analytics/emerging-pattern-detector.js +37 -12
  6. package/dist/analytics/pattern-learning-engine.js +1 -9
  7. package/dist/analytics/predictive-analytics.js +51 -33
  8. package/dist/analytics/prompt-pattern-analyzer.d.ts +1 -0
  9. package/dist/analytics/prompt-pattern-analyzer.js +39 -20
  10. package/dist/analytics/routing-performance-analyzer.d.ts +2 -0
  11. package/dist/analytics/routing-performance-analyzer.js +89 -37
  12. package/dist/analytics/simple-pattern-analyzer.d.ts +4 -0
  13. package/dist/analytics/simple-pattern-analyzer.js +66 -28
  14. package/dist/architect/architect-tools.d.ts +3 -0
  15. package/dist/architect/architect-tools.js +22 -0
  16. package/dist/cli/commands/grok-install.js +1 -1
  17. package/dist/cli/commands/hermes-install.js +11 -5
  18. package/dist/cli/commands/openclaw-install.js +13 -7
  19. package/dist/cli/commands/opencode-install.js +7 -4
  20. package/dist/cli/commands/suit-monitor.d.ts +30 -0
  21. package/dist/cli/commands/suit-monitor.js +128 -0
  22. package/dist/cli/index.js +52 -15
  23. package/dist/cli/suit-pulse.d.ts +29 -0
  24. package/dist/cli/suit-pulse.js +270 -0
  25. package/dist/delegation/agent-delegator.d.ts +4 -2
  26. package/dist/delegation/agent-delegator.js +46 -27
  27. package/dist/delegation/agent-expertise.js +2 -1
  28. package/dist/delegation/analytics/outcome-tracker.d.ts +6 -0
  29. package/dist/delegation/analytics/outcome-tracker.js +17 -3
  30. package/dist/delegation/ast-code-parser.d.ts +5 -0
  31. package/dist/delegation/ast-code-parser.js +53 -48
  32. package/dist/delegation/codebase-context-analyzer.d.ts +3 -7
  33. package/dist/delegation/codebase-context-analyzer.js +188 -159
  34. package/dist/delegation/session-coordinator.js +3 -2
  35. package/dist/enforcement/loaders/codex-loader.js +18 -14
  36. package/dist/enforcement/validators/architecture-validators.js +115 -9
  37. package/dist/governance/codex-policy.service.d.ts +12 -2
  38. package/dist/governance/codex-policy.service.js +91 -16
  39. package/dist/integrations/grok/hooks/session-start.js +6 -6
  40. package/dist/integrations/hooks/goggles-pipeline.mjs +169 -28
  41. package/dist/integrations/hooks/goggles-planes.json +172 -8
  42. package/dist/integrations/hooks/plates.cjs +138 -0
  43. package/dist/integrations/hooks/station-hook-runtime.cjs +63 -5
  44. package/dist/integrations/hooks/write-home.cjs +59 -0
  45. package/dist/integrations/openclaw/plugin/xray-pre-tool/package.json +1 -1
  46. package/dist/mcps/architect-tools.server.d.ts +6 -0
  47. package/dist/mcps/architect-tools.server.js +19 -18
  48. package/dist/mcps/orchestrator/server.d.ts +4 -3
  49. package/dist/mcps/orchestrator/server.js +29 -17
  50. package/dist/memory-routing/lookup-cache.d.ts +8 -0
  51. package/dist/memory-routing/lookup-cache.js +72 -0
  52. package/dist/memory-routing/plates.d.ts +1 -1
  53. package/dist/memory-routing/plates.js +26 -0
  54. package/dist/memory-routing/provider-loader.js +3 -0
  55. package/dist/metrics/agent-metrics.d.ts +14 -5
  56. package/dist/metrics/agent-metrics.js +362 -224
  57. package/dist/nucleus/synthesis-consult-receipt.js +38 -16
  58. package/dist/orchestrator/enhanced-multi-agent-orchestrator.d.ts +5 -0
  59. package/dist/orchestrator/enhanced-multi-agent-orchestrator.js +9 -0
  60. package/dist/orchestrator/multi-agent-orchestration-coordinator.js +1 -2
  61. package/dist/orchestrator/orchestrator.js +1 -2
  62. package/dist/processors/implementations/agents-md-validation-processor.d.ts +0 -1
  63. package/dist/processors/implementations/agents-md-validation-processor.js +0 -11
  64. package/dist/processors/implementations/console-log-guard-processor.js +39 -50
  65. package/dist/processors/implementations/performance-budget-processor.d.ts +0 -5
  66. package/dist/processors/implementations/performance-budget-processor.js +29 -38
  67. package/dist/processors/implementations/storytelling-trigger-processor.d.ts +5 -0
  68. package/dist/processors/implementations/storytelling-trigger-processor.js +69 -16
  69. package/dist/processors/implementations/test-auto-creation-processor.js +39 -36
  70. package/dist/reporting/framework-reporting-system.d.ts +3 -0
  71. package/dist/reporting/framework-reporting-system.js +61 -8
  72. package/dist/reporting/log-parser.js +188 -105
  73. package/dist/reporting/metrics.js +42 -18
  74. package/dist/security/prompt-security-validator.js +8 -7
  75. package/dist/security/security-auditor.d.ts +4 -0
  76. package/dist/security/security-auditor.js +132 -57
  77. package/dist/security/security-hardener.d.ts +2 -0
  78. package/dist/security/security-hardener.js +31 -6
  79. package/dist/security/security-headers.d.ts +2 -0
  80. package/dist/security/security-headers.js +23 -21
  81. package/dist/security/security-scanner.js +18 -4
  82. package/dist/session/session-cleanup-manager.d.ts +2 -0
  83. package/dist/session/session-cleanup-manager.js +29 -8
  84. package/dist/session/session-monitor.d.ts +14 -4
  85. package/dist/session/session-monitor.js +208 -106
  86. package/dist/session/session-state-manager.d.ts +11 -0
  87. package/dist/session/session-state-manager.js +90 -8
  88. package/docs-site/docs/plates/activity-log.md +38 -0
  89. package/docs-site/docs/plates/cursor-compact.md +35 -0
  90. package/docs-site/docs/plates/grok-compact.md +35 -0
  91. package/docs-site/docs/plates/index.md +25 -3
  92. package/docs-site/docs/plates/inference-files.md +35 -0
  93. package/docs-site/docs/plates/kept-line.md +35 -0
  94. package/docs-site/docs/plates/lens-gate.md +35 -0
  95. package/docs-site/docs/plates/lens-page.md +35 -0
  96. package/docs-site/docs/plates/notes-page.md +35 -0
  97. package/docs-site/docs/plates/package-face.md +35 -0
  98. package/docs-site/docs/plates/payload-heat.md +35 -0
  99. package/docs-site/docs/plates/pickup-stamp.md +35 -0
  100. package/docs-site/docs/plates/pre-tool.md +35 -0
  101. package/docs-site/docs/plates/record-map.md +41 -0
  102. package/docs-site/docs/plates/reflection-page.md +35 -0
  103. package/docs-site/docs/plates/review.md +57 -0
  104. package/docs-site/docs/plates/session-capture.md +38 -0
  105. package/docs-site/docs/plates/site-manual.md +35 -0
  106. package/docs-site/docs/plates/stamp-plate.md +35 -0
  107. package/docs-site/docs/plates/station-card.md +35 -0
  108. package/docs-site/docs/plates/station-heat.md +35 -0
  109. package/docs-site/docs/plates/suit-organs.md +38 -0
  110. package/docs-site/docs/plates/suit-settings.md +35 -0
  111. package/docs-site/docs/plates/suit-wear.md +37 -0
  112. package/docs-site/docs/plates/trail-state.md +35 -0
  113. package/docs-site/docs/plates/work-fresh.md +35 -0
  114. package/docs-site/docs/plates/write-home.md +38 -0
  115. package/package.json +3 -2
  116. package/scripts/node/install-bridges.cjs +302 -78
  117. package/scripts/node/postinstall.cjs +14 -3
  118. package/src/integrations/openclaw/plugin/xray-pre-tool/package.json +1 -1
  119. package/src/mcps/architect-tools.server.ts +25 -20
  120. package/src/mcps/orchestrator/server.ts +33 -19
  121. package/xray/features.json +1 -1
  122. package/vendor/@0xray/repertoire/dist/RepertoireService.d.ts.map +0 -1
  123. package/vendor/@0xray/repertoire/dist/RepertoireService.js.map +0 -1
  124. package/vendor/@0xray/repertoire/dist/governance/ontological-trap-enforcer.d.ts.map +0 -1
  125. package/vendor/@0xray/repertoire/dist/governance/ontological-trap-enforcer.js.map +0 -1
  126. package/vendor/@0xray/repertoire/dist/index.d.ts.map +0 -1
  127. package/vendor/@0xray/repertoire/dist/index.js.map +0 -1
  128. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-ingester.d.ts.map +0 -1
  129. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-ingester.js.map +0 -1
  130. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-parser.d.ts.map +0 -1
  131. package/vendor/@0xray/repertoire/dist/ingestion/groover-log-parser.js.map +0 -1
  132. package/vendor/@0xray/repertoire/dist/ingestion/orchestrator-feedback-ingester.d.ts.map +0 -1
  133. package/vendor/@0xray/repertoire/dist/ingestion/orchestrator-feedback-ingester.js.map +0 -1
  134. package/vendor/@0xray/repertoire/dist/ingestion/xray-session-ingester.d.ts.map +0 -1
  135. package/vendor/@0xray/repertoire/dist/ingestion/xray-session-ingester.js.map +0 -1
  136. package/vendor/@0xray/repertoire/dist/mcp/server.d.ts.map +0 -1
  137. package/vendor/@0xray/repertoire/dist/mcp/server.js.map +0 -1
  138. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/RepertoireOrchestratorBridge.d.ts.map +0 -1
  139. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/RepertoireOrchestratorBridge.js.map +0 -1
  140. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/capability-enhancer.d.ts.map +0 -1
  141. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/capability-enhancer.js.map +0 -1
  142. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/confidence-gate.d.ts.map +0 -1
  143. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/confidence-gate.js.map +0 -1
  144. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-agent-affinity.d.ts.map +0 -1
  145. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-agent-affinity.js.map +0 -1
  146. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-injector.d.ts.map +0 -1
  147. package/vendor/@0xray/repertoire/dist/orchestrator-bridge/signal-injector.js.map +0 -1
  148. package/vendor/@0xray/repertoire/dist/paths.d.ts.map +0 -1
  149. package/vendor/@0xray/repertoire/dist/paths.js.map +0 -1
  150. package/vendor/@0xray/repertoire/dist/provider/memory-routing-provider.d.ts.map +0 -1
  151. package/vendor/@0xray/repertoire/dist/provider/memory-routing-provider.js.map +0 -1
  152. package/vendor/@0xray/repertoire/dist/registry/CuratedSignalsManager.d.ts.map +0 -1
  153. package/vendor/@0xray/repertoire/dist/registry/CuratedSignalsManager.js.map +0 -1
  154. package/vendor/@0xray/repertoire/dist/registry/InferenceStateManager.d.ts.map +0 -1
  155. package/vendor/@0xray/repertoire/dist/registry/InferenceStateManager.js.map +0 -1
  156. package/vendor/@0xray/repertoire/dist/registry/confidence-decay.d.ts.map +0 -1
  157. package/vendor/@0xray/repertoire/dist/registry/confidence-decay.js.map +0 -1
  158. package/vendor/@0xray/repertoire/dist/registry/signal-prune.d.ts.map +0 -1
  159. package/vendor/@0xray/repertoire/dist/registry/signal-prune.js.map +0 -1
  160. package/vendor/@0xray/repertoire/dist/synthesis/concrete-sections.d.ts.map +0 -1
  161. package/vendor/@0xray/repertoire/dist/synthesis/concrete-sections.js.map +0 -1
  162. package/vendor/@0xray/repertoire/dist/synthesis/meta-inference-engine.d.ts.map +0 -1
  163. package/vendor/@0xray/repertoire/dist/synthesis/meta-inference-engine.js.map +0 -1
  164. package/vendor/@0xray/repertoire/dist/synthesis/primitive-confidence-aggregator.d.ts.map +0 -1
  165. package/vendor/@0xray/repertoire/dist/synthesis/primitive-confidence-aggregator.js.map +0 -1
  166. package/vendor/@0xray/repertoire/dist/synthesis/synthesis-prompt-builder.d.ts.map +0 -1
  167. package/vendor/@0xray/repertoire/dist/synthesis/synthesis-prompt-builder.js.map +0 -1
  168. package/vendor/@0xray/repertoire/dist/types.d.ts.map +0 -1
  169. package/vendor/@0xray/repertoire/dist/types.js.map +0 -1
@@ -9,10 +9,6 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
9
9
  import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
10
10
  import * as fs from 'fs';
11
11
  import { frameworkLogger } from '../../core/framework-logger.js';
12
- import { XrayStateManager } from '../../state/state-manager.js';
13
- import { MultiAgentOrchestrationCoordinator } from '../../orchestrator/multi-agent-orchestration-coordinator.js';
14
- import { TaskHandler } from './handlers/task-handler.js';
15
- import { ComplexityHandler } from './handlers/complexity-handler.js';
16
12
  import { StatusHandler } from './handlers/status-handler.js';
17
13
  import { spawnAside, closeAside, closeAllAsides, addObservations, getActiveAsideCount, getActiveAsideIds, getAsideState, extractGovernanceObservations, } from './aside-context.js';
18
14
  /**
@@ -23,19 +19,11 @@ export class OrchestratorServer {
23
19
  server;
24
20
  activeTasks = new Map();
25
21
  taskHistory = [];
26
- // Handlers
27
- taskHandler;
28
- complexityHandler;
22
+ // Task and complexity handlers import the planner and nucleus. Load on tool call.
23
+ taskHandlerPromise = null;
24
+ complexityHandlerPromise = null;
29
25
  statusHandler;
30
- // Actual orchestration coordinator
31
- coordinator;
32
26
  constructor() {
33
- // Initialize actual coordinator
34
- const stateManager = new XrayStateManager();
35
- this.coordinator = new MultiAgentOrchestrationCoordinator(stateManager);
36
- // Initialize handlers
37
- this.taskHandler = new TaskHandler();
38
- this.complexityHandler = new ComplexityHandler();
39
27
  this.statusHandler = new StatusHandler();
40
28
  // Create MCP server
41
29
  this.server = new Server({
@@ -52,6 +40,28 @@ export class OrchestratorServer {
52
40
  message: '0xRay Orchestrator MCP Server initialized',
53
41
  });
54
42
  }
43
+ loadTaskHandler() {
44
+ if (!this.taskHandlerPromise) {
45
+ this.taskHandlerPromise = import('./handlers/task-handler.js')
46
+ .then(({ TaskHandler }) => new TaskHandler())
47
+ .catch((error) => {
48
+ this.taskHandlerPromise = null;
49
+ throw error;
50
+ });
51
+ }
52
+ return this.taskHandlerPromise;
53
+ }
54
+ loadComplexityHandler() {
55
+ if (!this.complexityHandlerPromise) {
56
+ this.complexityHandlerPromise = import('./handlers/complexity-handler.js')
57
+ .then(({ ComplexityHandler }) => new ComplexityHandler())
58
+ .catch((error) => {
59
+ this.complexityHandlerPromise = null;
60
+ throw error;
61
+ });
62
+ }
63
+ return this.complexityHandlerPromise;
64
+ }
55
65
  /**
56
66
  * Initialize tool definitions
57
67
  */
@@ -268,7 +278,8 @@ export class OrchestratorServer {
268
278
  inheritedContext: { taskCount: orchArgs.tasks?.length ?? 0, executionMode: orchArgs.executionMode ?? 'optimized' },
269
279
  });
270
280
  try {
271
- const result = await this.taskHandler.handleOrchestrateTask(orchArgs, { taskHistory: this.taskHistory, activeTasks: this.activeTasks, asideId: aside.asideId });
281
+ const taskHandler = await this.loadTaskHandler();
282
+ const result = await taskHandler.handleOrchestrateTask(orchArgs, { taskHistory: this.taskHistory, activeTasks: this.activeTasks, asideId: aside.asideId });
272
283
  return result;
273
284
  }
274
285
  finally {
@@ -348,7 +359,8 @@ export class OrchestratorServer {
348
359
  inheritedContext,
349
360
  });
350
361
  try {
351
- const result = await this.complexityHandler.handleAnalyzeComplexity({
362
+ const complexityHandler = await this.loadComplexityHandler();
363
+ const result = await complexityHandler.handleAnalyzeComplexity({
352
364
  ...complexityArgs,
353
365
  ...(sessionId ? { sessionId } : {}),
354
366
  ...(synthesisDue
@@ -0,0 +1,8 @@
1
+ import type { MemoryRoutingProvider } from './types.js';
2
+ export declare function resetOrganFileCacheStats(): void;
3
+ export declare function organFileCacheStats(): {
4
+ hits: number;
5
+ misses: number;
6
+ };
7
+ /** Attach the file cache to a loaded Repertoire provider. Other providers are left alone. */
8
+ export declare function bindOrganFileCache(provider: MemoryRoutingProvider): void;
@@ -0,0 +1,72 @@
1
+ import { statSync } from 'node:fs';
2
+ const boundStores = new WeakSet();
3
+ let cacheHits = 0;
4
+ let cacheMisses = 0;
5
+ export function resetOrganFileCacheStats() {
6
+ cacheHits = 0;
7
+ cacheMisses = 0;
8
+ }
9
+ export function organFileCacheStats() {
10
+ return { hits: cacheHits, misses: cacheMisses };
11
+ }
12
+ function stampFile(filePath) {
13
+ try {
14
+ const info = statSync(filePath);
15
+ const mtimeNs = typeof info.mtimeNs === 'bigint'
16
+ ? info.mtimeNs
17
+ : BigInt(Math.round(info.mtimeMs * 1_000_000));
18
+ return { exists: true, size: info.size, mtimeNs };
19
+ }
20
+ catch {
21
+ return { exists: false, size: 0, mtimeNs: 0n };
22
+ }
23
+ }
24
+ function sameStamp(left, right) {
25
+ return left.exists === right.exists
26
+ && left.size === right.size
27
+ && left.mtimeNs === right.mtimeNs;
28
+ }
29
+ function bindStore(store) {
30
+ if (!store || typeof store !== 'object')
31
+ return;
32
+ if (boundStores.has(store))
33
+ return;
34
+ const organ = store;
35
+ const read = organ.load;
36
+ const filePath = organ.filePath;
37
+ if (typeof read !== 'function' || typeof filePath !== 'string' || filePath.length === 0)
38
+ return;
39
+ boundStores.add(store);
40
+ let filled = false;
41
+ let cached;
42
+ let stamp = null;
43
+ organ.load = () => {
44
+ const before = stampFile(filePath);
45
+ if (filled && stamp && sameStamp(stamp, before)) {
46
+ cacheHits += 1;
47
+ return cached;
48
+ }
49
+ cacheMisses += 1;
50
+ const value = read.call(organ);
51
+ const after = stampFile(filePath);
52
+ if (sameStamp(before, after)) {
53
+ cached = value;
54
+ stamp = after;
55
+ filled = true;
56
+ }
57
+ else {
58
+ filled = false;
59
+ stamp = null;
60
+ }
61
+ return value;
62
+ };
63
+ }
64
+ /** Attach the file cache to a loaded Repertoire provider. Other providers are left alone. */
65
+ export function bindOrganFileCache(provider) {
66
+ const service = provider.service;
67
+ if (!service || typeof service !== 'object')
68
+ return;
69
+ const row = service;
70
+ bindStore(row.signalsManager);
71
+ bindStore(row.stateManager);
72
+ }
@@ -1,4 +1,4 @@
1
- export declare const PLATE_IDS: readonly ["routing", "governance", "boot", "orchestration", "processor", "reporting", "memory-recall", "house", "goggles", "suit", "kits", "host-pack", "glossary"];
1
+ export declare const PLATE_IDS: readonly ["routing", "governance", "boot", "orchestration", "processor", "reporting", "memory-recall", "stamp-plate", "house", "review", "goggles", "suit", "kits", "host-pack", "glossary", "record-map", "write-home", "activity-log", "session-capture", "suit-wear", "suit-organs", "station-card", "notes-page", "reflection-page", "site-manual", "package-face", "suit-settings", "trail-state", "inference-files", "grok-compact", "payload-heat", "station-heat", "pickup-stamp", "cursor-compact", "work-fresh", "kept-line", "lens-gate", "pre-tool", "lens-page"];
2
2
  export type PlateId = (typeof PLATE_IDS)[number];
3
3
  export interface PlateStamp {
4
4
  id: PlateId;
@@ -13,12 +13,38 @@ export const PLATE_IDS = [
13
13
  'processor',
14
14
  'reporting',
15
15
  'memory-recall',
16
+ 'stamp-plate',
16
17
  'house',
18
+ 'review',
17
19
  'goggles',
18
20
  'suit',
19
21
  'kits',
20
22
  'host-pack',
21
23
  'glossary',
24
+ 'record-map',
25
+ 'write-home',
26
+ 'activity-log',
27
+ 'session-capture',
28
+ 'suit-wear',
29
+ 'suit-organs',
30
+ 'station-card',
31
+ 'notes-page',
32
+ 'reflection-page',
33
+ 'site-manual',
34
+ 'package-face',
35
+ 'suit-settings',
36
+ 'trail-state',
37
+ 'inference-files',
38
+ 'grok-compact',
39
+ 'payload-heat',
40
+ 'station-heat',
41
+ 'pickup-stamp',
42
+ 'cursor-compact',
43
+ 'work-fresh',
44
+ 'kept-line',
45
+ 'lens-gate',
46
+ 'pre-tool',
47
+ 'lens-page',
22
48
  ];
23
49
  function isPlateId(value) {
24
50
  return PLATE_IDS.includes(value);
@@ -3,6 +3,7 @@ import { createRequire } from 'node:module';
3
3
  import { resolve, dirname, join } from 'node:path';
4
4
  import { pathToFileURL } from 'node:url';
5
5
  import { frameworkLogger } from '../core/framework-logger.js';
6
+ import { bindOrganFileCache } from './lookup-cache.js';
6
7
  import { createMemoryRoutingProvider as createNullProvider } from './null-provider.js';
7
8
  import { validateMemoryRoutingConfig } from './validate-config.js';
8
9
  // Opening the organ must not merge subject repo-* back onto the project file.
@@ -139,6 +140,7 @@ export function loadMemoryRoutingProviderSync(config, cwd = process.cwd()) {
139
140
  try {
140
141
  const mod = require(resolved.modulePath);
141
142
  const provider = providerFromModule(mod, resolved.modulePath, resolved.effective);
143
+ bindOrganFileCache(provider);
142
144
  if (!provider.isAvailable())
143
145
  return null;
144
146
  return provider;
@@ -179,6 +181,7 @@ export async function loadMemoryRoutingProvider(config, cwd = process.cwd()) {
179
181
  if (!provider?.id || typeof provider.isAvailable !== 'function') {
180
182
  throw new Error(`Invalid memory routing provider from ${modulePath}`);
181
183
  }
184
+ bindOrganFileCache(provider);
182
185
  const availabilityReason = resolveUnavailableReason(provider);
183
186
  if (!provider.isAvailable()) {
184
187
  await frameworkLogger.log('memory-routing', 'provider-unavailable', 'error', {
@@ -106,6 +106,12 @@ export declare class AgentMetricsSystem {
106
106
  private getInvocations;
107
107
  private saveInvocations;
108
108
  private generateId;
109
+ private newAgentAcc;
110
+ private addAgent;
111
+ private finishAgent;
112
+ private newCountAcc;
113
+ private addCount;
114
+ private finishCount;
109
115
  trackInvocation(params: {
110
116
  agentName: string;
111
117
  agentType: AgentType;
@@ -131,12 +137,15 @@ export declare class AgentMetricsSystem {
131
137
  getInvocationsByTimeRange(start: number, end: number): AgentInvocation[];
132
138
  filterInvocations(filter: AgentMetricsFilter): AgentInvocation[];
133
139
  aggregateMetrics(filter?: AgentMetricsFilter): AggregatedAgentMetrics;
134
- private getHourKey;
135
- private getDayKey;
136
- private getWeekKey;
137
- private getMonthKey;
138
- private getWeekNumber;
140
+ private aggregateInvocations;
141
+ private addPeriod;
142
+ private freshPeriodCursor;
143
+ private periodKeys;
144
+ private weekNumber;
139
145
  private getPeriodType;
146
+ private utcStamp;
147
+ private utcPeriodRange;
148
+ private groupNumber;
140
149
  getAgentSummary(agentName: string): AgentInvocationSummary | null;
141
150
  getTimePeriodSummary(period: string, periodType: "hour" | "day" | "week" | "month"): TimePeriodSummary | null;
142
151
  getComplexitySummary(level: ComplexityLevel): ComplexitySummary | null;