@nxuss/lemma 0.5.2 → 0.5.3

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 (48) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/cli/lemma-proxy.d.ts.map +1 -1
  3. package/dist/cjs/cli/lemma-proxy.js +187 -98
  4. package/dist/cjs/cli/lemma-proxy.js.map +1 -1
  5. package/dist/cjs/config/index.d.ts.map +1 -1
  6. package/dist/cjs/config/index.js +2 -1
  7. package/dist/cjs/config/index.js.map +1 -1
  8. package/dist/cjs/errors/LemmaError.d.ts +52 -0
  9. package/dist/cjs/errors/LemmaError.d.ts.map +1 -0
  10. package/dist/cjs/errors/LemmaError.js +84 -0
  11. package/dist/cjs/errors/LemmaError.js.map +1 -0
  12. package/dist/cjs/index.d.ts.map +1 -1
  13. package/dist/cjs/index.js +24 -22
  14. package/dist/cjs/index.js.map +1 -1
  15. package/dist/cjs/subconscious/SemanticCache.d.ts +4 -4
  16. package/dist/cjs/subconscious/SemanticCache.d.ts.map +1 -1
  17. package/dist/cjs/subconscious/SemanticCache.js +14 -10
  18. package/dist/cjs/subconscious/SemanticCache.js.map +1 -1
  19. package/dist/cjs/types/index.d.ts +8 -8
  20. package/dist/cjs/types/index.d.ts.map +1 -1
  21. package/dist/cjs/utils/logger.d.ts +27 -6
  22. package/dist/cjs/utils/logger.d.ts.map +1 -1
  23. package/dist/cjs/utils/logger.js +96 -28
  24. package/dist/cjs/utils/logger.js.map +1 -1
  25. package/dist/esm/cli/lemma-proxy.d.ts.map +1 -1
  26. package/dist/esm/cli/lemma-proxy.js +187 -98
  27. package/dist/esm/cli/lemma-proxy.js.map +1 -1
  28. package/dist/esm/config/index.d.ts.map +1 -1
  29. package/dist/esm/config/index.js +2 -1
  30. package/dist/esm/config/index.js.map +1 -1
  31. package/dist/esm/errors/LemmaError.d.ts +52 -0
  32. package/dist/esm/errors/LemmaError.d.ts.map +1 -0
  33. package/dist/esm/errors/LemmaError.js +75 -0
  34. package/dist/esm/errors/LemmaError.js.map +1 -0
  35. package/dist/esm/index.d.ts.map +1 -1
  36. package/dist/esm/index.js +24 -22
  37. package/dist/esm/index.js.map +1 -1
  38. package/dist/esm/subconscious/SemanticCache.d.ts +4 -4
  39. package/dist/esm/subconscious/SemanticCache.d.ts.map +1 -1
  40. package/dist/esm/subconscious/SemanticCache.js +14 -10
  41. package/dist/esm/subconscious/SemanticCache.js.map +1 -1
  42. package/dist/esm/types/index.d.ts +8 -8
  43. package/dist/esm/types/index.d.ts.map +1 -1
  44. package/dist/esm/utils/logger.d.ts +27 -6
  45. package/dist/esm/utils/logger.d.ts.map +1 -1
  46. package/dist/esm/utils/logger.js +93 -28
  47. package/dist/esm/utils/logger.js.map +1 -1
  48. package/package.json +27 -24
package/dist/esm/index.js CHANGED
@@ -8,6 +8,7 @@ import { WebSocketServer } from './core/WebSocketServer';
8
8
  import { AgentRegistry } from './core/AgentRegistry';
9
9
  import { Router } from './core/router';
10
10
  import { IdeContextSync } from './observability/IdeContextSync';
11
+ import { logger } from './utils/logger';
11
12
  /**
12
13
  * Subconscious Router Hub
13
14
  * Orchestrates WebSocket connections, agent registry, and message routing
@@ -28,30 +29,30 @@ export class SubconsciousHub {
28
29
  setupEventHandlers() {
29
30
  // WebSocket events
30
31
  this.wsServer.on('ready', () => {
31
- console.log('WebSocket server ready');
32
+ logger.info('WebSocket server ready');
32
33
  });
33
34
  this.wsServer.on('error', (error) => {
34
- console.error('WebSocket server error:', error);
35
+ logger.error('WebSocket server error', error);
35
36
  });
36
37
  // Agent registry events
37
38
  this.agentRegistry.on('agentRegistered', (agent) => {
38
- console.log(`✓ Agent registered: ${agent.agentId}`);
39
+ logger.info(`Agent registered: ${agent.agentId}`);
39
40
  });
40
41
  this.agentRegistry.on('agentUnregistered', (agent) => {
41
- console.log(`✗ Agent unregistered: ${agent.agentId}`);
42
+ logger.info(`Agent unregistered: ${agent.agentId}`);
42
43
  });
43
44
  this.agentRegistry.on('agentReconnected', (agent) => {
44
- console.log(`↻ Agent reconnected: ${agent.agentId}`);
45
+ logger.info(`Agent reconnected: ${agent.agentId}`);
45
46
  });
46
47
  // Router events
47
48
  this.router.on('taskRouted', ({ taskId, routingDecision }) => {
48
- console.log(`→ Task ${taskId} routed to ${routingDecision.selectedAgent?.agentId}`);
49
+ logger.info(`Task ${taskId} routed to ${routingDecision.selectedAgent?.agentId}`);
49
50
  });
50
51
  this.router.on('taskCompleted', ({ taskId, responseTime }) => {
51
- console.log(`✓ Task ${taskId} completed in ${responseTime}ms`);
52
+ logger.info(`Task ${taskId} completed in ${responseTime}ms`);
52
53
  });
53
54
  this.router.on('taskFailed', ({ taskId, reason }) => {
54
- console.log(`✗ Task ${taskId} failed: ${reason}`);
55
+ logger.error(`Task ${taskId} failed: ${reason}`);
55
56
  this.ideContextSync.intercept({
56
57
  type: 'agent_failure',
57
58
  message: `Task ${taskId} failed: ${reason}`,
@@ -67,17 +68,18 @@ export class SubconsciousHub {
67
68
  timestamp: new Date().toISOString(),
68
69
  stackTrace: error.stack,
69
70
  }).finally(() => {
70
- console.error('Uncaught Exception:', error);
71
+ logger.error('Uncaught Exception', error);
71
72
  });
72
73
  });
73
74
  process.on('unhandledRejection', (reason, promise) => {
75
+ const error = reason instanceof Error ? reason : new Error(String(reason));
74
76
  this.ideContextSync.intercept({
75
77
  type: 'unhandled_rejection',
76
- message: reason instanceof Error ? reason.message : String(reason),
78
+ message: error.message,
77
79
  timestamp: new Date().toISOString(),
78
- stackTrace: reason instanceof Error ? reason.stack : undefined,
80
+ stackTrace: error.stack,
79
81
  }).finally(() => {
80
- console.error('Unhandled Rejection at:', promise, 'reason:', reason);
82
+ logger.error('Unhandled Rejection at Promise', error);
81
83
  });
82
84
  });
83
85
  }
@@ -88,10 +90,10 @@ export class SubconsciousHub {
88
90
  if (this.isRunning) {
89
91
  throw new Error('Hub is already running');
90
92
  }
91
- console.log('Starting Subconscious Router Hub...');
93
+ logger.info('Starting Subconscious Router Hub...');
92
94
  await this.wsServer.start();
93
95
  this.isRunning = true;
94
- console.log('Hub is running');
96
+ logger.info('Hub is running');
95
97
  this.printStatus();
96
98
  }
97
99
  /**
@@ -101,12 +103,12 @@ export class SubconsciousHub {
101
103
  if (!this.isRunning) {
102
104
  return;
103
105
  }
104
- console.log('Stopping Subconscious Router Hub...');
106
+ logger.info('Stopping Subconscious Router Hub...');
105
107
  this.router.stop();
106
108
  this.agentRegistry.stop();
107
109
  await this.wsServer.stop();
108
110
  this.isRunning = false;
109
- console.log('Hub stopped');
111
+ logger.info('Hub stopped');
110
112
  }
111
113
  /**
112
114
  * Get hub statistics
@@ -119,12 +121,12 @@ export class SubconsciousHub {
119
121
  */
120
122
  printStatus() {
121
123
  const stats = this.getStats();
122
- console.log('\n=== Hub Status ===');
123
- console.log(`Active Connections: ${stats.connectionStats.activeConnections}`);
124
- console.log(`Online Agents: ${stats.agentStats.onlineAgents}`);
125
- console.log(`Pending Tasks: ${stats.pendingTasks}`);
126
- console.log(`Total Tasks Completed: ${stats.agentStats.totalTasksCompleted}`);
127
- console.log('==================\n');
124
+ logger.info('Hub Status', {
125
+ activeConnections: stats.connectionStats.activeConnections,
126
+ onlineAgents: stats.agentStats.onlineAgents,
127
+ pendingTasks: stats.pendingTasks,
128
+ totalTasksCompleted: stats.agentStats.totalTasksCompleted
129
+ });
128
130
  }
129
131
  /**
130
132
  * Get WebSocket server instance
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,9 @@ import { EmbeddingService } from './EmbeddingService';
3
3
  /**
4
4
  * Result of a cache lookup operation.
5
5
  */
6
- export interface CacheResult {
6
+ export interface CacheResult<T = any> {
7
7
  hit: boolean;
8
- result?: any;
8
+ result?: T;
9
9
  similarity?: number;
10
10
  taskId?: string;
11
11
  latencyMs: number;
@@ -28,7 +28,7 @@ export declare class SemanticCache {
28
28
  * @param taskDescription - Description of the task to check
29
29
  * @returns CacheResult with hit status and cached data if found
30
30
  */
31
- check(taskDescription: string): Promise<CacheResult>;
31
+ check<T = any>(taskDescription: string): Promise<CacheResult<T>>;
32
32
  /**
33
33
  * Store a task result in the cache for future lookups.
34
34
  *
@@ -37,7 +37,7 @@ export declare class SemanticCache {
37
37
  * @param result - Result to cache
38
38
  * @param metadata - Additional metadata to store
39
39
  */
40
- store(taskId: string, taskDescription: string, result: any, metadata?: Record<string, any>): Promise<void>;
40
+ store<T = any>(taskId: string, taskDescription: string, result: T, metadata?: Record<string, any>): Promise<void>;
41
41
  /**
42
42
  * Calculate cosine similarity between two task descriptions.
43
43
  * Useful for debugging and testing.
@@ -1 +1 @@
1
- {"version":3,"file":"SemanticCache.d.ts","sourceRoot":"","sources":["../../../src/subconscious/SemanticCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,WAAW,CAAa;gBAG9B,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,GAAE,MAAa;IAO1B;;;;;;OAMG;IACG,KAAK,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAwD1D;;;;;;;OAOG;IACG,KAAK,CACT,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,GAAG,EACX,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GACjC,OAAO,CAAC,IAAI,CAAC;IAqBhB;;;;;;;OAOG;IACG,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAcxE;;OAEG;IACH,UAAU,IAAI;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACjB;IAYD;;OAEG;IACH,YAAY,IAAI,IAAI;IAMpB;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQrC;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAIrC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAK7B"}
1
+ {"version":3,"file":"SemanticCache.d.ts","sourceRoot":"","sources":["../../../src/subconscious/SemanticCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAKtD;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,WAAW,CAAa;gBAG9B,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB,EAClC,SAAS,GAAE,MAAa;IAO1B;;;;;;OAMG;IACG,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAwDtE;;;;;;;OAOG;IACG,KAAK,CAAC,CAAC,GAAG,GAAG,EACjB,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,CAAC,EACT,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GACjC,OAAO,CAAC,IAAI,CAAC;IAqBhB;;;;;;;OAOG;IACG,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAcxE;;OAEG;IACH,UAAU,IAAI;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACjB;IAYD;;OAEG;IACH,YAAY,IAAI,IAAI;IAMpB;;;;OAIG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQrC;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAIrC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAK7B"}
@@ -1,4 +1,6 @@
1
1
  import { EmbeddingService } from './EmbeddingService';
2
+ import { createLogger } from '../utils/logger';
3
+ const logger = createLogger('SemanticCache');
2
4
  /**
3
5
  * SemanticCache implements the "short-circuit" logic for semantic caching.
4
6
  * It checks if a similar task has been resolved before and returns cached results.
@@ -31,8 +33,10 @@ export class SemanticCache {
31
33
  // Cache hit!
32
34
  this.cacheHits++;
33
35
  const match = matches[0];
34
- console.log(`[SemanticCache] HIT (similarity: ${match.similarity.toFixed(4)}, ` +
35
- `latency: ${latencyMs}ms)`);
36
+ logger.info('Cache hit', {
37
+ similarity: match.similarity,
38
+ latencyMs,
39
+ });
36
40
  return {
37
41
  hit: true,
38
42
  result: match.result,
@@ -44,7 +48,7 @@ export class SemanticCache {
44
48
  else {
45
49
  // Cache miss
46
50
  this.cacheMisses++;
47
- console.log(`[SemanticCache] MISS (latency: ${latencyMs}ms)`);
51
+ logger.info('Cache miss', { latencyMs });
48
52
  return {
49
53
  hit: false,
50
54
  latencyMs,
@@ -52,7 +56,7 @@ export class SemanticCache {
52
56
  }
53
57
  }
54
58
  catch (error) {
55
- console.error('[SemanticCache] Error during cache check:', error);
59
+ logger.error('Error during cache check', error);
56
60
  // On error, treat as cache miss
57
61
  this.cacheMisses++;
58
62
  return {
@@ -75,10 +79,10 @@ export class SemanticCache {
75
79
  const embedding = await this.embeddingService.generateEmbedding(taskDescription);
76
80
  // Store in vector database
77
81
  await this.vectorStore.insertVector(taskId, embedding, taskDescription, result, metadata);
78
- console.log(`[SemanticCache] Stored result for task: ${taskId}`);
82
+ logger.info('Result stored in cache', { taskId });
79
83
  }
80
84
  catch (error) {
81
- console.error('[SemanticCache] Error storing result:', error);
85
+ logger.error('Error storing result', error);
82
86
  throw error;
83
87
  }
84
88
  }
@@ -99,7 +103,7 @@ export class SemanticCache {
99
103
  return EmbeddingService.cosineSimilarity(embeddingA, embeddingB);
100
104
  }
101
105
  catch (error) {
102
- console.error('[SemanticCache] Error calculating similarity:', error);
106
+ logger.error('Error calculating similarity', error);
103
107
  throw error;
104
108
  }
105
109
  }
@@ -122,7 +126,7 @@ export class SemanticCache {
122
126
  resetMetrics() {
123
127
  this.cacheHits = 0;
124
128
  this.cacheMisses = 0;
125
- console.log('[SemanticCache] Metrics reset');
129
+ logger.info('Metrics reset');
126
130
  }
127
131
  /**
128
132
  * Update the similarity threshold.
@@ -134,7 +138,7 @@ export class SemanticCache {
134
138
  throw new Error('Threshold must be between 0 and 1');
135
139
  }
136
140
  this.threshold = threshold;
137
- console.log(`[SemanticCache] Threshold updated to ${threshold}`);
141
+ logger.info(`Threshold updated to ${threshold}`);
138
142
  }
139
143
  /**
140
144
  * Get the current similarity threshold.
@@ -154,7 +158,7 @@ export class SemanticCache {
154
158
  async clear() {
155
159
  await this.vectorStore.clear();
156
160
  this.resetMetrics();
157
- console.log('[SemanticCache] Cache cleared');
161
+ logger.info('Cache cleared');
158
162
  }
159
163
  }
160
164
  //# sourceMappingURL=SemanticCache.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SemanticCache.js","sourceRoot":"","sources":["../../../src/subconscious/SemanticCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SemanticCache.js","sourceRoot":"","sources":["../../../src/subconscious/SemanticCache.ts"],"names":[],"mappings":"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"}
@@ -116,12 +116,12 @@ export declare enum IAPMessageType {
116
116
  /**
117
117
  * Base I.A.P. Message Structure
118
118
  */
119
- export interface IAPMessage {
119
+ export interface IAPMessage<T = any> {
120
120
  type: IAPMessageType;
121
121
  id?: string;
122
122
  messageId?: string;
123
123
  timestamp: number;
124
- payload: any;
124
+ payload: T;
125
125
  }
126
126
  /**
127
127
  * Task Request Payload
@@ -139,10 +139,10 @@ export interface TaskRequest {
139
139
  /**
140
140
  * Task Response Payload
141
141
  */
142
- export interface TaskResponse {
142
+ export interface TaskResponse<R = any> {
143
143
  taskId: string;
144
144
  success: boolean;
145
- result?: any;
145
+ result?: R;
146
146
  error?: string;
147
147
  executionTime?: number;
148
148
  tokensUsed?: number;
@@ -180,11 +180,11 @@ export interface ErrorPayload {
180
180
  /**
181
181
  * Cache Entry for Semantic Cache
182
182
  */
183
- export interface CacheEntry {
183
+ export interface CacheEntry<T = any> {
184
184
  id: string;
185
185
  query: string;
186
186
  embedding: number[];
187
- response: any;
187
+ response: T;
188
188
  metadata: {
189
189
  agentId: string;
190
190
  timestamp: number;
@@ -247,10 +247,10 @@ export declare const MessageType: typeof IAPMessageType;
247
247
  /**
248
248
  * Semantic Match Result
249
249
  */
250
- export interface SemanticMatch {
250
+ export interface SemanticMatch<T = any> {
251
251
  id: string;
252
252
  similarity: number;
253
- response: any;
253
+ response: T;
254
254
  metadata: {
255
255
  agentId: string;
256
256
  timestamp: number;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,IAAI,CAAC;AAE3B;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,OAAO,GAAG,KAAK,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,SAAS,CAAC;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE;QACR,EAAE,CAAC,EAAE,MAAM,CAAC;QACZ,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,OAAO,EAAE,YAAY,CAAC;CACvB;AAED;;GAEG;AACH,oBAAY,cAAc;IAExB,SAAS,cAAc;IACvB,aAAa,kBAAkB;IAC/B,SAAS,cAAc;IACvB,aAAa,kBAAkB;IAC/B,IAAI,SAAS;IACb,IAAI,SAAS;IAGb,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,WAAW,gBAAgB;IAC3B,WAAW,gBAAgB;IAG3B,gBAAgB,qBAAqB;IACrC,mBAAmB,wBAAwB;IAC3C,QAAQ,aAAa;IACrB,iBAAiB,sBAAsB;IAGvC,KAAK,UAAU;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,cAAc,CAAC;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,GAAG,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,GAAG,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,CAAC,EAAE,SAAS,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,eAAe,EAAE,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,uBAAiB,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE;QACR,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,OAAO,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAElB,YAAY,EAAE,OAAO,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,8BAA8B,EAAE,MAAM,CAAC;IACvC,4BAA4B,EAAE,MAAM,CAAC;IACrC,yBAAyB,EAAE,MAAM,CAAC;IAClC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,8BAA8B,EAAE,MAAM,CAAC;IACvC,6BAA6B,EAAE,MAAM,CAAC;IACtC,6BAA6B,EAAE,MAAM,CAAC;IAGtC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,aAAa,EAAE,MAAM,CAAC;CACvB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -8,24 +8,45 @@ export declare enum LogLevel {
8
8
  DEBUG = 3
9
9
  }
10
10
  /**
11
- * Simple structured logger with color support
11
+ * Structured Logger Entry Schema
12
+ */
13
+ export interface LogEntry {
14
+ timestamp: string;
15
+ level: string;
16
+ context: string;
17
+ message: string;
18
+ meta?: any;
19
+ error?: {
20
+ message: string;
21
+ stack?: string;
22
+ };
23
+ }
24
+ /**
25
+ * Enterprise Structured Logger supporting standard console and file output streams.
12
26
  */
13
27
  declare class Logger {
14
28
  private level;
15
29
  private context;
30
+ private format;
31
+ private logFilePath;
32
+ private disableConsole;
16
33
  constructor(context?: string);
17
34
  /**
18
35
  * Parse log level from string
19
36
  */
20
37
  private parseLogLevel;
21
38
  /**
22
- * Format timestamp
39
+ * Format text log line with color
23
40
  */
24
- private getTimestamp;
41
+ private formatText;
25
42
  /**
26
- * Format log message
43
+ * Safe file appending utility
27
44
  */
28
- private format;
45
+ private appendToFile;
46
+ /**
47
+ * Unified writer for standard and file streams
48
+ */
49
+ private log;
29
50
  /**
30
51
  * Log error message
31
52
  */
@@ -47,7 +68,7 @@ declare class Logger {
47
68
  */
48
69
  metric(name: string, value: number, unit?: string): void;
49
70
  /**
50
- * Create child logger with different context
71
+ * Create child logger with parent context chaining
51
72
  */
52
73
  child(context: string): Logger;
53
74
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,oBAAY,QAAQ;IAClB,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;CACV;AAcD;;GAEG;AACH,cAAM,MAAM;IACV,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,GAAE,MAAc;IAKnC;;OAEG;IACH,OAAO,CAAC,aAAa;IAerB;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACH,OAAO,CAAC,MAAM;IAMd;;OAEG;IACI,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,GAAG,GAAG,IAAI;IAYxD;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAO9C;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAO9C;;OAEG;IACI,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAO/C;;OAEG;IACI,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,MAAa,GAAG,IAAI;IAOrE;;OAEG;IACI,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAGtC;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,GAAE,MAAc,GAAG,MAAM,CAE5D;AAED;;GAEG;AACH,eAAO,MAAM,MAAM,QAAqC,CAAC"}
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,oBAAY,QAAQ;IAClB,KAAK,IAAI;IACT,IAAI,IAAI;IACR,IAAI,IAAI;IACR,KAAK,IAAI;CACV;AAcD;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE;QACN,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED;;GAEG;AACH,cAAM,MAAM;IACV,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,cAAc,CAAkB;gBAE5B,OAAO,GAAE,MAAc;IAsBnC;;OAEG;IACH,OAAO,CAAC,aAAa;IAerB;;OAEG;IACH,OAAO,CAAC,UAAU;IAKlB;;OAEG;IACH,OAAO,CAAC,YAAY;IAWpB;;OAEG;IACH,OAAO,CAAC,GAAG;IAkDX;;OAEG;IACI,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,GAAG,GAAG,IAAI;IAIxD;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAI9C;;OAEG;IACI,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAI9C;;OAEG;IACI,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,GAAG,GAAG,IAAI;IAI/C;;OAEG;IACI,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,MAAa,GAAG,IAAI;IAKrE;;OAEG;IACI,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAGtC;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,OAAO,GAAE,MAAc,GAAG,MAAM,CAE5D;AAED;;GAEG;AACH,eAAO,MAAM,MAAM,QAAqC,CAAC"}
@@ -1,3 +1,5 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
1
3
  import { config } from '../config';
2
4
  /**
3
5
  * Log levels
@@ -21,12 +23,29 @@ const colors = {
21
23
  gray: '\x1b[90m',
22
24
  };
23
25
  /**
24
- * Simple structured logger with color support
26
+ * Enterprise Structured Logger supporting standard console and file output streams.
25
27
  */
26
28
  class Logger {
27
29
  constructor(context = 'App') {
30
+ this.logFilePath = null;
31
+ this.disableConsole = false;
28
32
  this.context = context;
29
- this.level = this.parseLogLevel(config.logLevel || 'info');
33
+ // Resolve runtime settings dynamically
34
+ const rawLevel = process.env.LEMMA_LOG_LEVEL || process.env.LOG_LEVEL || config?.logLevel || 'info';
35
+ this.level = this.parseLogLevel(rawLevel);
36
+ this.format = (process.env.LEMMA_LOG_FORMAT || process.env.LOG_FORMAT || 'text').toLowerCase() === 'json' ? 'json' : 'text';
37
+ this.logFilePath = process.env.LEMMA_LOG_FILE || process.env.LOG_FILE || null;
38
+ this.disableConsole = (process.env.LEMMA_LOG_DISABLE_CONSOLE || 'false').toLowerCase() === 'true';
39
+ // Proactively construct base directory for log files if specified
40
+ if (this.logFilePath) {
41
+ try {
42
+ const dir = path.dirname(path.resolve(this.logFilePath));
43
+ if (!fs.existsSync(dir)) {
44
+ fs.mkdirSync(dir, { recursive: true });
45
+ }
46
+ }
47
+ catch { }
48
+ }
30
49
  }
31
50
  /**
32
51
  * Parse log level from string
@@ -46,64 +65,110 @@ class Logger {
46
65
  }
47
66
  }
48
67
  /**
49
- * Format timestamp
68
+ * Format text log line with color
50
69
  */
51
- getTimestamp() {
52
- return new Date().toISOString();
70
+ formatText(level, message, metaStr, colorCode) {
71
+ const timestamp = new Date().toISOString();
72
+ return `${colorCode}[${timestamp}] [${level}] [${this.context}] ${message}${metaStr}${colors.reset}`;
53
73
  }
54
74
  /**
55
- * Format log message
75
+ * Safe file appending utility
56
76
  */
57
- format(level, message, meta) {
58
- const timestamp = this.getTimestamp();
59
- const metaStr = meta ? ` ${JSON.stringify(meta)}` : '';
60
- return `[${timestamp}] [${level}] [${this.context}] ${message}${metaStr}`;
77
+ appendToFile(entry) {
78
+ if (!this.logFilePath)
79
+ return;
80
+ try {
81
+ const line = this.format === 'json'
82
+ ? JSON.stringify(entry)
83
+ : `[${entry.timestamp}] [${entry.level}] [${entry.context}] ${entry.message}${entry.meta ? ' ' + JSON.stringify(entry.meta) : ''}${entry.error ? ' error: ' + entry.error.message + '\n' + (entry.error.stack || '') : ''}`;
84
+ fs.appendFileSync(this.logFilePath, line + '\n', 'utf8');
85
+ }
86
+ catch { }
87
+ }
88
+ /**
89
+ * Unified writer for standard and file streams
90
+ */
91
+ log(levelStr, levelVal, message, colorCode, meta, errObj) {
92
+ if (levelVal > this.level)
93
+ return;
94
+ const timestamp = new Date().toISOString();
95
+ const entry = {
96
+ timestamp,
97
+ level: levelStr,
98
+ context: this.context,
99
+ message,
100
+ };
101
+ if (meta !== undefined) {
102
+ entry.meta = meta;
103
+ }
104
+ if (errObj) {
105
+ entry.error = {
106
+ message: errObj instanceof Error ? errObj.message : String(errObj),
107
+ stack: errObj instanceof Error ? errObj.stack : undefined,
108
+ };
109
+ }
110
+ // Output to Console
111
+ if (!this.disableConsole) {
112
+ if (this.format === 'json') {
113
+ const jsonLine = JSON.stringify(entry);
114
+ if (levelVal === LogLevel.ERROR) {
115
+ console.error(jsonLine);
116
+ }
117
+ else {
118
+ console.log(jsonLine);
119
+ }
120
+ }
121
+ else {
122
+ const metaStr = meta ? ` ${JSON.stringify(meta)}` : '';
123
+ const colorLine = this.formatText(levelStr, message, metaStr, colorCode);
124
+ if (levelVal === LogLevel.ERROR) {
125
+ console.error(colorLine);
126
+ if (errObj && errObj.stack) {
127
+ console.error(`${colors.red}${errObj.stack}${colors.reset}`);
128
+ }
129
+ }
130
+ else {
131
+ console.log(colorLine);
132
+ }
133
+ }
134
+ }
135
+ // Write to File Sink
136
+ this.appendToFile(entry);
61
137
  }
62
138
  /**
63
139
  * Log error message
64
140
  */
65
141
  error(message, error) {
66
- if (this.level < LogLevel.ERROR)
67
- return;
68
- const meta = error instanceof Error
69
- ? { error: error.message, stack: error.stack }
70
- : error;
71
- console.error(`${colors.red}${this.format('ERROR', message, meta)}${colors.reset}`);
142
+ this.log('ERROR', LogLevel.ERROR, message, colors.red, undefined, error);
72
143
  }
73
144
  /**
74
145
  * Log warning message
75
146
  */
76
147
  warn(message, meta) {
77
- if (this.level < LogLevel.WARN)
78
- return;
79
- console.warn(`${colors.yellow}${this.format('WARN', message, meta)}${colors.reset}`);
148
+ this.log('WARN', LogLevel.WARN, message, colors.yellow, meta);
80
149
  }
81
150
  /**
82
151
  * Log info message
83
152
  */
84
153
  info(message, meta) {
85
- if (this.level < LogLevel.INFO)
86
- return;
87
- console.log(`${colors.blue}${this.format('INFO', message, meta)}${colors.reset}`);
154
+ this.log('INFO', LogLevel.INFO, message, colors.blue, meta);
88
155
  }
89
156
  /**
90
157
  * Log debug message
91
158
  */
92
159
  debug(message, meta) {
93
- if (this.level < LogLevel.DEBUG)
94
- return;
95
- console.log(`${colors.gray}${this.format('DEBUG', message, meta)}${colors.reset}`);
160
+ this.log('DEBUG', LogLevel.DEBUG, message, colors.gray, meta);
96
161
  }
97
162
  /**
98
163
  * Log performance metric
99
164
  */
100
165
  metric(name, value, unit = 'ms') {
101
- if (this.level < LogLevel.INFO)
166
+ if (LogLevel.INFO > this.level)
102
167
  return;
103
- console.log(`${colors.cyan}${this.format('METRIC', `${name}: ${value}${unit}`)}${colors.reset}`);
168
+ this.log('METRIC', LogLevel.INFO, `${name}: ${value}${unit}`, colors.cyan);
104
169
  }
105
170
  /**
106
- * Create child logger with different context
171
+ * Create child logger with parent context chaining
107
172
  */
108
173
  child(context) {
109
174
  return new Logger(`${this.context}:${context}`);