@nxuss/lemma 0.5.2 → 0.5.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 (63) hide show
  1. package/README.md +1 -1
  2. package/dashboard/dist/assets/index-0N21ZtpO.js +481 -0
  3. package/dashboard/dist/assets/index-0N21ZtpO.js.map +1 -0
  4. package/dashboard/dist/assets/index-DUOrThix.css +1 -0
  5. package/dashboard/dist/index.html +2 -2
  6. package/dist/cjs/cli/lemma-proxy.d.ts.map +1 -1
  7. package/dist/cjs/cli/lemma-proxy.js +365 -113
  8. package/dist/cjs/cli/lemma-proxy.js.map +1 -1
  9. package/dist/cjs/config/index.d.ts.map +1 -1
  10. package/dist/cjs/config/index.js +2 -1
  11. package/dist/cjs/config/index.js.map +1 -1
  12. package/dist/cjs/errors/LemmaError.d.ts +52 -0
  13. package/dist/cjs/errors/LemmaError.d.ts.map +1 -0
  14. package/dist/cjs/errors/LemmaError.js +84 -0
  15. package/dist/cjs/errors/LemmaError.js.map +1 -0
  16. package/dist/cjs/index.d.ts.map +1 -1
  17. package/dist/cjs/index.js +24 -22
  18. package/dist/cjs/index.js.map +1 -1
  19. package/dist/cjs/subconscious/SemanticCache.d.ts +4 -4
  20. package/dist/cjs/subconscious/SemanticCache.d.ts.map +1 -1
  21. package/dist/cjs/subconscious/SemanticCache.js +14 -10
  22. package/dist/cjs/subconscious/SemanticCache.js.map +1 -1
  23. package/dist/cjs/types/index.d.ts +8 -8
  24. package/dist/cjs/types/index.d.ts.map +1 -1
  25. package/dist/cjs/utils/SavingsLedger.d.ts +2 -0
  26. package/dist/cjs/utils/SavingsLedger.d.ts.map +1 -1
  27. package/dist/cjs/utils/SavingsLedger.js +49 -0
  28. package/dist/cjs/utils/SavingsLedger.js.map +1 -1
  29. package/dist/cjs/utils/logger.d.ts +27 -6
  30. package/dist/cjs/utils/logger.d.ts.map +1 -1
  31. package/dist/cjs/utils/logger.js +96 -28
  32. package/dist/cjs/utils/logger.js.map +1 -1
  33. package/dist/esm/cli/lemma-proxy.d.ts.map +1 -1
  34. package/dist/esm/cli/lemma-proxy.js +365 -113
  35. package/dist/esm/cli/lemma-proxy.js.map +1 -1
  36. package/dist/esm/config/index.d.ts.map +1 -1
  37. package/dist/esm/config/index.js +2 -1
  38. package/dist/esm/config/index.js.map +1 -1
  39. package/dist/esm/errors/LemmaError.d.ts +52 -0
  40. package/dist/esm/errors/LemmaError.d.ts.map +1 -0
  41. package/dist/esm/errors/LemmaError.js +75 -0
  42. package/dist/esm/errors/LemmaError.js.map +1 -0
  43. package/dist/esm/index.d.ts.map +1 -1
  44. package/dist/esm/index.js +24 -22
  45. package/dist/esm/index.js.map +1 -1
  46. package/dist/esm/subconscious/SemanticCache.d.ts +4 -4
  47. package/dist/esm/subconscious/SemanticCache.d.ts.map +1 -1
  48. package/dist/esm/subconscious/SemanticCache.js +14 -10
  49. package/dist/esm/subconscious/SemanticCache.js.map +1 -1
  50. package/dist/esm/types/index.d.ts +8 -8
  51. package/dist/esm/types/index.d.ts.map +1 -1
  52. package/dist/esm/utils/SavingsLedger.d.ts +2 -0
  53. package/dist/esm/utils/SavingsLedger.d.ts.map +1 -1
  54. package/dist/esm/utils/SavingsLedger.js +46 -0
  55. package/dist/esm/utils/SavingsLedger.js.map +1 -1
  56. package/dist/esm/utils/logger.d.ts +27 -6
  57. package/dist/esm/utils/logger.d.ts.map +1 -1
  58. package/dist/esm/utils/logger.js +93 -28
  59. package/dist/esm/utils/logger.js.map +1 -1
  60. package/package.json +28 -24
  61. package/dashboard/dist/assets/index-CIlkFwDs.js +0 -490
  62. package/dashboard/dist/assets/index-CIlkFwDs.js.map +0 -1
  63. package/dashboard/dist/assets/index-DNqq3gA9.css +0 -1
@@ -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}`);
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nxuss/lemma",
3
- "version": "0.5.2",
3
+ "version": "0.5.4",
4
4
  "description": "Intelligent AI Gateway for IDEs & Agents — Semantic cache, Privacy Firewall, and Autonomous Cost-Optimization.",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -102,37 +102,40 @@
102
102
  "dev": "npx tsx start-dev.ts",
103
103
  "start": "node dist/cjs/index.js",
104
104
  "test": "jest",
105
+ "type-check": "tsc --noEmit",
106
+ "format": "prettier --check 'src/**/*.ts' 'tests/**/*.ts' 'examples/**/*.ts' 'scripts/**/*.ts'",
107
+ "format:fix": "prettier --write 'src/**/*.ts' 'tests/**/*.ts' 'examples/**/*.ts' 'scripts/**/*.ts'",
105
108
  "lint": "eslint src/**/*.ts",
106
109
  "clean": "rm -rf dist sdks/langchain/dist sdks/crewai/dist",
107
110
  "prepublishOnly": "npm run clean && npm run build && npm test",
108
111
  "cloud:start": "node dist/cjs/cloud/server.js",
109
- "cloud:dev": "ts-node src/cloud/server.ts",
110
- "demo": "ts-node examples/demo-visual.ts",
111
- "demo:comparison": "ts-node examples/demo-comparison.ts",
112
- "example:simple": "ts-node examples/simple-agent.ts",
113
- "example:swarm": "ts-node examples/agent-swarm.ts",
114
- "example:secure": "ts-node examples/secure-agent.ts",
115
- "example:langchain": "ts-node examples/langchain-example.ts",
116
- "example:crewai": "ts-node examples/crewai-example.ts",
117
- "example:speculative": "ts-node examples/phase3-speculative.ts",
118
- "example:consensus": "ts-node examples/phase3-consensus.ts",
119
- "example:semantic": "ts-node examples/semantic-cache-demo.ts",
120
- "test:quick": "ts-node examples/quick-test.ts",
121
- "test:real:ollama:1min": "ts-node examples/real-world-ollama-1min.ts",
122
- "test:real:ollama": "ts-node examples/real-world-ollama.ts",
123
- "test:real:1min": "ts-node examples/real-world-1min.ts",
124
- "test:real:openai": "ts-node examples/real-world-openai.ts",
125
- "test:real:anthropic": "ts-node examples/real-world-anthropic.ts",
126
- "test:real:multi-agent": "ts-node examples/real-world-multi-agent.ts",
112
+ "cloud:dev": "npx tsx src/cloud/server.ts",
113
+ "demo": "npx tsx examples/demo-visual.ts",
114
+ "demo:comparison": "npx tsx examples/demo-comparison.ts",
115
+ "example:simple": "npx tsx examples/simple-agent.ts",
116
+ "example:swarm": "npx tsx examples/agent-swarm.ts",
117
+ "example:secure": "npx tsx examples/secure-agent.ts",
118
+ "example:langchain": "npx tsx examples/langchain-example.ts",
119
+ "example:crewai": "npx tsx examples/crewai-example.ts",
120
+ "example:speculative": "npx tsx examples/phase3-speculative.ts",
121
+ "example:consensus": "npx tsx examples/phase3-consensus.ts",
122
+ "example:semantic": "npx tsx examples/semantic-cache-demo.ts",
123
+ "test:quick": "npx tsx examples/quick-test.ts",
124
+ "test:real:ollama:1min": "npx tsx examples/real-world-ollama-1min.ts",
125
+ "test:real:ollama": "npx tsx examples/real-world-ollama.ts",
126
+ "test:real:1min": "npx tsx examples/real-world-1min.ts",
127
+ "test:real:openai": "npx tsx examples/real-world-openai.ts",
128
+ "test:real:anthropic": "npx tsx examples/real-world-anthropic.ts",
129
+ "test:real:multi-agent": "npx tsx examples/real-world-multi-agent.ts",
127
130
  "dashboard": "cd dashboard && npm run dev",
128
131
  "dashboard:build": "cd dashboard && npm run build",
129
132
  "stack:all": "bash scripts/launch-all.sh",
130
133
  "sdk:langchain:build": "cd sdks/langchain && npm run build",
131
134
  "sdk:crewai:build": "cd sdks/crewai && npm run build",
132
135
  "sdk:build": "npm run sdk:langchain:build && npm run sdk:crewai:build",
133
- "keys:generate": "ts-node scripts/manage-keys.ts generate",
134
- "keys:list": "ts-node scripts/manage-keys.ts list",
135
- "keys:revoke": "ts-node scripts/manage-keys.ts revoke"
136
+ "keys:generate": "npx tsx scripts/manage-keys.ts generate",
137
+ "keys:list": "npx tsx scripts/manage-keys.ts list",
138
+ "keys:revoke": "npx tsx scripts/manage-keys.ts revoke"
136
139
  },
137
140
  "keywords": [
138
141
  "semantic-cache",
@@ -162,8 +165,7 @@
162
165
  "dependencies": {
163
166
  "@chroma-core/default-embed": "^0.1.9",
164
167
  "@modelcontextprotocol/sdk": "^1.29.0",
165
- "@nxuss/lemma": "^0.5.2",
166
- "@types/cors": "^2.8.19",
168
+ "@nxuss/lemma": "^0.5.3",
167
169
  "axios": "^1.6.0",
168
170
  "commander": "^14.0.3",
169
171
  "cors": "^2.8.6",
@@ -180,6 +182,7 @@
180
182
  "ws": "^8.16.0"
181
183
  },
182
184
  "devDependencies": {
185
+ "@types/cors": "^2.8.19",
183
186
  "@types/express": "^4.17.21",
184
187
  "@types/jest": "^29.5.11",
185
188
  "@types/node": "^20.11.0",
@@ -187,6 +190,7 @@
187
190
  "@types/uuid": "^10.0.0",
188
191
  "@types/ws": "^8.5.10",
189
192
  "jest": "^29.7.0",
193
+ "prettier": "^3.0.0",
190
194
  "ts-jest": "^29.1.1",
191
195
  "ts-node": "^10.9.2",
192
196
  "typescript": "^5.3.3"