leap360 1.3.0 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -14,7 +14,7 @@ const program = new Command();
14
14
  program
15
15
  .name('leap360')
16
16
  .description('Leap360 AI Governance SDK CLI')
17
- .version('1.3.0');
17
+ .version('1.4.1');
18
18
  // ─── Command: setup ────────────────────────────────────────────────────────
19
19
  program
20
20
  .command('setup')
@@ -58,14 +58,47 @@ program
58
58
  if (fs.existsSync(envPath)) {
59
59
  envContent = fs.readFileSync(envPath, 'utf8');
60
60
  }
61
- // Add or update Leap360 vars
61
+ // ── Auto-detect bundler/framework to write the correct env var prefix ──
62
+ // Vite requires VITE_, Next.js requires NEXT_PUBLIC_, CRA requires REACT_APP_
63
+ let browserPrefix = '';
64
+ let bundlerName = 'Node.js / backend';
65
+ const cwd = process.cwd();
66
+ const packageJsonPath = path.join(cwd, 'package.json');
67
+ if (fs.existsSync(packageJsonPath)) {
68
+ try {
69
+ const pkg = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
70
+ const allDeps = { ...pkg.dependencies, ...pkg.devDependencies };
71
+ if (allDeps['vite'] || allDeps['@vitejs/plugin-react']) {
72
+ browserPrefix = 'VITE_';
73
+ bundlerName = 'Vite';
74
+ }
75
+ else if (allDeps['next']) {
76
+ browserPrefix = 'NEXT_PUBLIC_';
77
+ bundlerName = 'Next.js';
78
+ }
79
+ else if (allDeps['react-scripts']) {
80
+ browserPrefix = 'REACT_APP_';
81
+ bundlerName = 'Create React App';
82
+ }
83
+ }
84
+ catch { /* ignore parse errors */ }
85
+ }
86
+ // Always write the plain LEAP360_ vars (for server-side / Node use)
62
87
  const leapVars = [
63
88
  `LEAP360_API_KEY=${apiKey}`,
64
89
  `LEAP360_PROJECT_ID=${projectId}`,
65
90
  `LEAP360_SERVICE_NAME=${serviceName}`,
66
91
  `LEAP360_USER_ID=${userId}`,
67
92
  ];
68
- for (const v of leapVars) {
93
+ // If a browser bundler was detected, also write the prefixed vars
94
+ const browserVars = browserPrefix ? [
95
+ `${browserPrefix}LEAP360_API_KEY=${apiKey}`,
96
+ `${browserPrefix}LEAP360_PROJECT_ID=${projectId}`,
97
+ `${browserPrefix}LEAP360_SERVICE_NAME=${serviceName}`,
98
+ `${browserPrefix}LEAP360_USER_ID=${userId}`,
99
+ ] : [];
100
+ const allVars = [...leapVars, ...browserVars];
101
+ for (const v of allVars) {
69
102
  const key = v.split('=')[0];
70
103
  if (envContent.includes(key + '=')) {
71
104
  envContent = envContent.replace(new RegExp(`${key}=.*`, 'g'), v);
@@ -76,6 +109,9 @@ program
76
109
  }
77
110
  // Note: Customers should provide their own GEMINI_API_KEY via their environment
78
111
  fs.writeFileSync(envPath, envContent.trim() + '\n');
112
+ if (browserPrefix) {
113
+ console.log(`\n \x1b[36m📦 Detected ${bundlerName} — also wrote ${browserPrefix}LEAP360_* vars for browser bundle\x1b[0m`);
114
+ }
79
115
  console.log('\n✅ Configuration saved!\n');
80
116
  console.log(` → ~/.leap360/config.json (SDK config)`);
81
117
  console.log(` → ${envPath} (environment variables)\n`);
@@ -86,95 +122,212 @@ program
86
122
  }
87
123
  catch { /* exists */ }
88
124
  // README.md — main guide
125
+ const envVarNote = browserPrefix
126
+ ? `# Browser bundle (${bundlerName}) — use these in your frontend code\n${browserPrefix}LEAP360_API_KEY=${apiKey}\n${browserPrefix}LEAP360_PROJECT_ID=${projectId}\n${browserPrefix}LEAP360_SERVICE_NAME=${serviceName}\n\n# Server-side / Node — use these in backend/functions\nLEAP360_API_KEY=${apiKey}\nLEAP360_PROJECT_ID=${projectId}\nLEAP360_SERVICE_NAME=${serviceName}`
127
+ : `LEAP360_API_KEY=${apiKey}\nLEAP360_PROJECT_ID=${projectId}\nLEAP360_SERVICE_NAME=${serviceName}`;
128
+ const envVarRef = browserPrefix
129
+ ? `import.meta.env.${browserPrefix}LEAP360_API_KEY`
130
+ : 'process.env.LEAP360_API_KEY';
131
+ const envVarProjectRef = browserPrefix
132
+ ? `import.meta.env.${browserPrefix}LEAP360_PROJECT_ID`
133
+ : 'process.env.LEAP360_PROJECT_ID';
134
+ const envVarServiceRef = browserPrefix
135
+ ? `import.meta.env.${browserPrefix}LEAP360_SERVICE_NAME`
136
+ : 'process.env.LEAP360_SERVICE_NAME';
89
137
  const readme = `# Leap360 AI Governance — Integration Guide
90
138
 
91
139
  Your project is connected to Leap360. Every AI call is now traced, governed,
92
- and monitored in real time.
140
+ and monitored in real time — **across all LLM providers and models**.
141
+
142
+ **Dashboard:** https://leap360.ai/dashboard/
143
+ **API Key:** ${apiKey.substring(0, 20)}...
144
+ **Project:** ${projectId}
145
+ **Service:** ${serviceName}
146
+ **Bundler:** ${bundlerName}
147
+
148
+ ---
149
+
150
+ ## 🚀 Quick Start: Add Leap360 to Your App in 30 Seconds
151
+
152
+ ### Copy this prompt and send it to your AI assistant (GitHub Copilot, Claude, ChatGPT, etc.)
153
+
154
+ \`\`\`
155
+ I need to integrate Leap360 AI Governance into my application.
156
+ Leap360 traces, governs, and monitors all AI calls in real time
157
+ across any LLM provider (OpenAI, Anthropic, Google Gemini, Mistral, etc.).
158
+
159
+ Steps:
160
+ 1. The SDK is already installed: npm install leap360
161
+ 2. The env vars are already in .env.
162
+ 3. Wrap every LLM call with Leap360Client.traceCall() — this works with ANY provider.
163
+
164
+ Example pattern:
165
+ import { Leap360Client } from 'leap360';
166
+ const leap = new Leap360Client({
167
+ apiKey: ${envVarRef},
168
+ projectId: ${envVarProjectRef},
169
+ });
170
+
171
+ // Wrap your existing LLM call:
172
+ const result = await leap.traceCall({
173
+ agentName: '${serviceName}',
174
+ provider: 'google', // or 'openai', 'anthropic', 'mistral', etc.
175
+ model: 'gemini-2.0-flash',
176
+ fn: () => yourExistingLLMCall(),
177
+ });
178
+
179
+ Please find all LLM API calls in the codebase and wrap them with leap.traceCall().
180
+ \`\`\`
181
+
182
+ ---
183
+
184
+ ## 🔐 Environment Variables
185
+
186
+ \`\`\`env
187
+ ${envVarNote}
188
+ \`\`\`
189
+
190
+ ### Bundler prefix reference
93
191
 
94
- Dashboard: https://leap360.ai/dashboard/
95
- API Key: ${apiKey.substring(0, 20)}...
96
- Project: ${projectId}
97
- Service: ${serviceName}
192
+ | Bundler | Correct prefix | Example |
193
+ |---------|---------------|---------|
194
+ | **Vite** | \`VITE_\` | \`VITE_LEAP360_API_KEY\` |
195
+ | **Next.js** | \`NEXT_PUBLIC_\` | \`NEXT_PUBLIC_LEAP360_API_KEY\` |
196
+ | **Create React App** | \`REACT_APP_\` | \`REACT_APP_LEAP360_API_KEY\` |
197
+ | **Node / backend** | *(none)* | \`LEAP360_API_KEY\` |
98
198
 
99
199
  ---
100
200
 
101
- ## 1. Node.js / TypeScript (OpenAI)
201
+ ## 📚 Integration Examples
202
+
203
+ ### ✅ Method 1: traceCall() — Works with ANY LLM (Recommended)
204
+
205
+ This is the **universal method** that works with every LLM SDK without exceptions.
102
206
 
103
207
  \`\`\`typescript
104
- import { Leap360 } from 'leap360';
105
- import OpenAI from 'openai';
208
+ import { Leap360Client } from 'leap360';
106
209
 
107
- // One line wraps ALL OpenAI calls automatically
108
- Leap360.autoInit({
109
- apiKey: process.env.LEAP360_API_KEY,
210
+ const leap = new Leap360Client({
211
+ apiKey: ${envVarRef},
110
212
  projectId: '${projectId}',
111
- serviceName: '${serviceName}',
112
213
  });
113
214
 
215
+ // \u2500\u2500 Google Gemini (@google/genai \u2014 new SDK) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
216
+ import { GoogleGenAI } from '@google/genai';
217
+ const ai = new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY });
218
+
219
+ const geminiResult = await leap.traceCall({
220
+ agentName: '${serviceName}',
221
+ provider: 'google',
222
+ model: 'gemini-2.0-flash',
223
+ fn: () => ai.models.generateContent({
224
+ model: 'gemini-2.0-flash',
225
+ contents: 'Hello!',
226
+ }),
227
+ });
228
+
229
+ // \u2500\u2500 Google Gemini (@google/generative-ai \u2014 older SDK) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
230
+ import { GoogleGenerativeAI } from '@google/generative-ai';
231
+ const genAI = new GoogleGenerativeAI(process.env.GEMINI_API_KEY!);
232
+ const model = genAI.getGenerativeModel({ model: 'gemini-2.0-flash' });
233
+
234
+ const geminiResult2 = await leap.traceCall({
235
+ agentName: '${serviceName}',
236
+ provider: 'google',
237
+ model: 'gemini-2.0-flash',
238
+ fn: () => model.generateContent('Hello!'),
239
+ });
240
+
241
+ // \u2500\u2500 OpenAI \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
242
+ import OpenAI from 'openai';
114
243
  const openai = new OpenAI();
115
244
 
116
- const res = await openai.chat.completions.create({
245
+ const openaiResult = await leap.traceCall({
246
+ agentName: '${serviceName}',
247
+ provider: 'openai',
117
248
  model: 'gpt-4o',
118
- messages: [{ role: 'user', content: 'Hello!' }],
249
+ fn: () => openai.chat.completions.create({
250
+ model: 'gpt-4o',
251
+ messages: [{ role: 'user', content: 'Hello!' }],
252
+ }),
119
253
  });
120
254
 
121
- // This call is automatically traced, governed, and visible on your dashboard.
122
- // If a policy is violated → SDK throws before the call reaches OpenAI.
123
- // If kill switch is active → SDK throws GOVERNANCE_HALT immediately.
255
+ // \u2500\u2500 Anthropic Claude \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
256
+ import Anthropic from '@anthropic-ai/sdk';
257
+ const anthropic = new Anthropic();
258
+
259
+ const claudeResult = await leap.traceCall({
260
+ agentName: '${serviceName}',
261
+ provider: 'anthropic',
262
+ model: 'claude-3-5-sonnet-20241022',
263
+ fn: () => anthropic.messages.create({
264
+ model: 'claude-3-5-sonnet-20241022',
265
+ max_tokens: 1024,
266
+ messages: [{ role: 'user', content: 'Hello!' }],
267
+ }),
268
+ });
124
269
  \`\`\`
125
270
 
126
271
  ---
127
272
 
128
- ## 2. Python
273
+ ### ⚡ Method 2: autoInit() — Zero-code for OpenAI & @google/generative-ai only
129
274
 
130
- \`\`\`python
131
- from leap360 import Leap360
132
- from openai import OpenAI
133
-
134
- # Initialise — wraps the OpenAI client
135
- leap = Leap360(
136
- api_key="${apiKey.substring(0, 20)}...",
137
- project_id="${projectId}",
138
- service_name="${serviceName}",
139
- )
140
-
141
- client = leap.wrap_openai(OpenAI())
275
+ \`\`\`typescript
276
+ import { Leap360 } from 'leap360';
142
277
 
143
- response = client.chat.completions.create(
144
- model="gpt-4o",
145
- messages=[{"role": "user", "content": "Hello!"}],
146
- )
278
+ // Initialize ONCE at app entry point (main.tsx / index.ts)
279
+ Leap360.autoInit({
280
+ apiKey: ${envVarRef},
281
+ projectId: '${projectId}',
282
+ serviceName: '${serviceName}',
283
+ });
284
+ // ✅ Console: [Leap360] Tracing active \u2014 project: ${projectId}, service: ${serviceName}
147
285
 
148
- # Every call is traced. Violations are blocked before they reach OpenAI.
286
+ // Now use your LLM client normally \u2014 calls are auto-traced:
287
+ import OpenAI from 'openai';
288
+ const openai = new OpenAI();
289
+ const res = await openai.chat.completions.create({ model: 'gpt-4o', messages: [...] });
149
290
  \`\`\`
150
291
 
292
+ > **Compatibility:**
293
+ > | SDK | autoInit() | traceCall() |
294
+ > |-----|-----------|-------------|
295
+ > | \`openai\` | ✅ Auto | ✅ Manual |
296
+ > | \`@google/generative-ai\` | ✅ Auto | ✅ Manual |
297
+ > | \`@google/genai\` (new) | ❌ Use wrapGoogleGenAI() | ✅ Manual |
298
+ > | \`@anthropic-ai/sdk\` | ❌ Not supported | ✅ Manual |
299
+ > | Any other LLM | ❌ Not supported | ✅ Manual |
300
+
151
301
  ---
152
302
 
153
- ## 3. Manual trace (any language / any model)
303
+ ### Method 3: wrapGoogleGenAI() For the new @google/genai SDK
154
304
 
155
305
  \`\`\`typescript
156
306
  import { Leap360 } from 'leap360';
307
+ import { GoogleGenAI } from '@google/genai';
157
308
 
158
309
  const leap = new Leap360({
159
- apiKey: process.env.LEAP360_API_KEY,
310
+ apiKey: ${envVarRef},
160
311
  projectId: '${projectId}',
312
+ serviceName: '${serviceName}',
161
313
  });
162
314
 
163
- const result = await leap.traceCall({
164
- agentName: 'my-agent',
165
- provider: 'anthropic',
166
- model: 'claude-3-5-sonnet',
167
- fn: () => anthropic.messages.create({ ... }),
315
+ // Wrap the client once \u2014 all calls auto-traced
316
+ const ai = leap.wrapGoogleGenAI(new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY }));
317
+
318
+ const response = await ai.models.generateContent({
319
+ model: 'gemini-2.0-flash',
320
+ contents: 'Hello!',
168
321
  });
169
322
  \`\`\`
170
323
 
171
324
  ---
172
325
 
173
- ## 4. Kill Switch (emergency stop)
326
+ ## 🛑 Kill Switch (Emergency Stop)
174
327
 
175
- Via dashboard: Settings → Danger Zone → Suspend All Agents
328
+ **Via dashboard:** Settings → Danger Zone → Suspend All Agents
176
329
 
177
- Via API:
330
+ **Suspend via API:**
178
331
  \`\`\`bash
179
332
  curl -X POST https://b0vyk178b7.execute-api.us-east-1.amazonaws.com/v1/projects/${projectId}/status \\
180
333
  -H "x-api-key: ${apiKey}" \\
@@ -182,7 +335,7 @@ curl -X POST https://b0vyk178b7.execute-api.us-east-1.amazonaws.com/v1/projects/
182
335
  -d '{"status":"SUSPENDED"}'
183
336
  \`\`\`
184
337
 
185
- Resume:
338
+ **Resume:**
186
339
  \`\`\`bash
187
340
  curl -X POST https://b0vyk178b7.execute-api.us-east-1.amazonaws.com/v1/projects/${projectId}/status \\
188
341
  -H "x-api-key: ${apiKey}" \\
@@ -192,41 +345,64 @@ curl -X POST https://b0vyk178b7.execute-api.us-east-1.amazonaws.com/v1/projects/
192
345
 
193
346
  ---
194
347
 
195
- ## 5. Policy enforcement
348
+ ## 🎯 Policy Enforcement
196
349
 
197
350
  Create a policy on the dashboard (Policies & Rules page), then every agent
198
351
  response is evaluated by the LLM Judge. Actions:
199
352
 
200
- - warn → logs the violation, allows the response through
201
- - ask_admin → flags for human review in the Approval Queue
202
- - block → hard-rejects the response, SDK receives POLICY_VIOLATION_BLOCKED
353
+ | Action | Behavior |
354
+ |--------|----------|
355
+ | **warn** | Logs the violation, allows response through |
356
+ | **ask_admin** | Flags for human review in Approval Queue |
357
+ | **block** | Hard-rejects response \u2014 SDK throws \`POLICY_VIOLATION_BLOCKED\` |
203
358
 
204
359
  ---
205
360
 
206
361
  Generated by \`npx leap360 setup\` on ${new Date().toISOString().split('T')[0]}
207
362
  `;
208
363
  // sample-node.ts
209
- const sampleNode = `import { Leap360 } from 'leap360';
210
- import OpenAI from 'openai';
211
-
212
- Leap360.autoInit({
364
+ const sampleNode = `/**
365
+ * Leap360 sample — Node.js / TypeScript
366
+ *
367
+ * traceCall() is the RECOMMENDED method — works with ANY LLM provider.
368
+ * No SDK compatibility issues. No silent failures.
369
+ */
370
+ import { Leap360Client } from 'leap360';
371
+
372
+ const leap = new Leap360Client({
213
373
  apiKey: process.env.LEAP360_API_KEY!,
214
374
  projectId: '${projectId}',
215
- serviceName: '${serviceName}',
216
375
  });
217
376
 
218
- const openai = new OpenAI();
219
-
220
- async function main() {
221
- const res = await openai.chat.completions.create({
222
- model: 'gpt-4o',
223
- messages: [{ role: 'user', content: 'What is the capital of France?' }],
224
- });
225
- console.log(res.choices[0].message.content);
226
- // Check your dashboard: https://leap360.ai/dashboard/
227
- }
228
-
229
- main();
377
+ // ── Example 1: Google Gemini (new @google/genai SDK) ───────────────────────
378
+ import { GoogleGenAI } from '@google/genai';
379
+ const ai = new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY! });
380
+
381
+ const geminiResult = await leap.traceCall({
382
+ agentName: '${serviceName}',
383
+ provider: 'google',
384
+ model: 'gemini-2.0-flash',
385
+ fn: () => ai.models.generateContent({
386
+ model: 'gemini-2.0-flash',
387
+ contents: 'What is the capital of France?',
388
+ }),
389
+ });
390
+ console.log(geminiResult);
391
+
392
+ // ── Example 2: OpenAI ──────────────────────────────────────────────────────
393
+ // import OpenAI from 'openai';
394
+ // const openai = new OpenAI();
395
+ // const openaiResult = await leap.traceCall({
396
+ // agentName: '${serviceName}',
397
+ // provider: 'openai',
398
+ // model: 'gpt-4o',
399
+ // fn: () => openai.chat.completions.create({
400
+ // model: 'gpt-4o',
401
+ // messages: [{ role: 'user', content: 'What is the capital of France?' }],
402
+ // }),
403
+ // });
404
+
405
+ // Check your dashboard: https://leap360.ai/dashboard/
230
406
  `;
231
407
  // sample-python.py
232
408
  const samplePython = `from leap360 import Leap360
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/sdk.d.ts CHANGED
@@ -1,30 +1,50 @@
1
1
  /**
2
- * leap360 — Leap360Client + Leap360 (auto-wrap) class
2
+ * leap360 — Universal AI Governance SDK
3
3
  *
4
- * Usage:
5
- * import { Leap360 } from 'leap360';
6
- * const leap = new Leap360();
4
+ * ─────────────────────────────────────────────────────────────────────────
5
+ * RECOMMENDED: Manual trace — works with ANY LLM, ANY SDK, ANY language
6
+ * ─────────────────────────────────────────────────────────────────────────
7
7
  *
8
- * const openai = leap.wrapOpenAI(new OpenAI());
8
+ * import { Leap360Client } from 'leap360';
9
9
  *
10
- * leap.wrapGemini(genAI); // wraps genAI.getGenerativeModel(...)
11
- *
12
- * // Group calls into a named agent run
13
- * const agent = leap.createAgent({ name: 'Support Bot' });
14
- * await agent.run(async (client) => {
15
- * await client.chat.completions.create({ ... });
10
+ * const leap = new Leap360Client({
11
+ * apiKey: process.env.LEAP360_API_KEY,
12
+ * projectId: 'my-project',
16
13
  * });
17
14
  *
18
- * ── Style 2: Manual trace (maximum flexibility) ────────────────────────────
19
- * import { Leap360Client } from 'leap360-sdk';
20
- * const leap = new Leap360Client(); // reads from ~/.leap360/config.json
21
- *
15
+ * // Works with OpenAI, Gemini, Anthropic, Mistral, or any LLM:
22
16
  * const result = await leap.traceCall({
23
- * agentName: 'My Bot',
24
- * provider: 'openai',
25
- * model: 'gpt-4o',
26
- * fn: () => openai.chat.completions.create({ ... }),
17
+ * agentName: 'my-agent',
18
+ * provider: 'google', // or 'openai', 'anthropic', 'mistral', etc.
19
+ * model: 'gemini-2.0-flash',
20
+ * fn: () => model.generateContent('Hello!'),
27
21
  * });
22
+ *
23
+ * ─────────────────────────────────────────────────────────────────────────
24
+ * ⚡ AUTO-WRAP: Zero-code tracing for supported SDKs
25
+ * ─────────────────────────────────────────────────────────────────────────
26
+ *
27
+ * SDK Compatibility Matrix:
28
+ * ┌─────────────────────────────┬────────────────────────────┬────────────┐
29
+ * │ Your LLM SDK │ Method │ Status │
30
+ * ├─────────────────────────────┼────────────────────────────┼────────────┤
31
+ * │ openai │ Leap360.autoInit() │ ✅ Auto │
32
+ * │ @google/generative-ai │ Leap360.autoInit() │ ✅ Auto │
33
+ * │ @google/genai (new SDK) │ leap.wrapGoogleGenAI() │ ✅ Wrap │
34
+ * │ @anthropic-ai/sdk │ leap.traceCall() │ ⚠️ Manual │
35
+ * │ mistralai │ leap.traceCall() │ ⚠️ Manual │
36
+ * │ Any other LLM │ leap.traceCall() │ ✅ Manual │
37
+ * └─────────────────────────────┴────────────────────────────┴────────────┘
38
+ *
39
+ * Auto-wrap example (OpenAI or @google/generative-ai):
40
+ * Leap360.autoInit({ apiKey, projectId, serviceName });
41
+ * const openai = new OpenAI(); // ← all calls auto-traced
42
+ *
43
+ * Wrap example (@google/genai new SDK):
44
+ * import { GoogleGenAI } from '@google/genai';
45
+ * const leap = new Leap360({ apiKey, projectId, serviceName });
46
+ * const ai = leap.wrapGoogleGenAI(new GoogleGenAI({ apiKey: GEMINI_KEY }));
47
+ * await ai.models.generateContent({ model: 'gemini-2.0-flash', contents: 'Hello!' });
28
48
  */
29
49
  export interface TracePayload {
30
50
  /** Display name of your agent */
@@ -99,19 +119,33 @@ export declare class Leap360 {
99
119
  static isHalted: boolean;
100
120
  constructor(config: Leap360Config);
101
121
  /**
102
- * Initializes Leap360 globally. All subsequent OpenAI or Gemini
122
+ * Initializes Leap360 globally. All subsequent OpenAI or @google/generative-ai
103
123
  * clients created will be automatically traced.
124
+ *
125
+ * ⚠️ Compatibility note:
126
+ * - openai SDK → ✅ auto-traced
127
+ * - @google/generative-ai → ✅ auto-traced
128
+ * - @google/genai (new SDK) → use leap.wrapGoogleGenAI(client) instead
129
+ * - @anthropic-ai/sdk → use leap.traceCall() instead
130
+ * - Any other LLM → use leap.traceCall() instead
104
131
  */
105
132
  static autoInit(config: Leap360Config): Leap360;
106
133
  /**
107
- * Polls the Cloud API periodically to check if the project has been
108
- * suspended by the Kill Switch. This blocks LLM calls BEFORE they happen.
134
+ * Polls the Cloud API periodically to check if the project OR this specific
135
+ * agent/service has been suspended by the Kill Switch.
136
+ * This blocks LLM calls BEFORE they happen (pre-flight check).
109
137
  */
110
138
  private startPollingStatus;
111
139
  /**
112
140
  * Patches common AI library prototypes to ensure all instances
113
141
  * are automatically traced without manual wrapping.
114
142
  * Supports both CommonJS (require) and ESM environments.
143
+ *
144
+ * Supported by autoInit:
145
+ * ✅ openai
146
+ * ✅ @google/generative-ai
147
+ * ❌ @google/genai (new SDK) — use wrapGoogleGenAI() instead
148
+ * ❌ @anthropic-ai/sdk — use traceCall() instead
115
149
  */
116
150
  private patchGlobalPrototypes;
117
151
  private wrapOpenAIPrototype;
@@ -146,16 +180,23 @@ export declare class Leap360 {
146
180
  */
147
181
  wrapGemini<GeminiClient>(client: GeminiClient): GeminiClient;
148
182
  /**
149
- * Wraps the new `google-genai` Client instance so every
150
- * `models.generate_content` call is traced automatically.
183
+ * Wraps the new `@google/genai` GoogleGenAI client so every
184
+ * `models.generateContent` / `models.generateContentStream` call is traced.
185
+ *
186
+ * Use this when you are on the NEW @google/genai package (not @google/generative-ai).
151
187
  *
152
188
  * @example
153
- * import genai from 'google-genai';
154
- * const client = leap.wrapGoogleGenAI(new genai.Client());
155
- * const response = await client.models.generate_content({
156
- * model: 'gemini-3-flash-preview',
157
- * contents: 'Explain how AI works'
189
+ * import { GoogleGenAI } from '@google/genai';
190
+ * const leap = new Leap360({ apiKey, projectId, serviceName });
191
+ * const ai = leap.wrapGoogleGenAI(new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY }));
192
+ *
193
+ * const response = await ai.models.generateContent({
194
+ * model: 'gemini-2.0-flash',
195
+ * contents: 'Explain AI governance.',
158
196
  * });
197
+ *
198
+ * ⚠️ The new SDK uses camelCase (generateContent), not snake_case (generate_content).
199
+ * Both variants are supported by this wrapper.
159
200
  */
160
201
  wrapGoogleGenAI<GenAIClient>(client: GenAIClient): GenAIClient;
161
202
  /**
package/dist/sdk.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
package/dist/sdk.js CHANGED
@@ -1,30 +1,50 @@
1
1
  /**
2
- * leap360 — Leap360Client + Leap360 (auto-wrap) class
2
+ * leap360 — Universal AI Governance SDK
3
3
  *
4
- * Usage:
5
- * import { Leap360 } from 'leap360';
6
- * const leap = new Leap360();
4
+ * ─────────────────────────────────────────────────────────────────────────
5
+ * RECOMMENDED: Manual trace — works with ANY LLM, ANY SDK, ANY language
6
+ * ─────────────────────────────────────────────────────────────────────────
7
7
  *
8
- * const openai = leap.wrapOpenAI(new OpenAI());
8
+ * import { Leap360Client } from 'leap360';
9
9
  *
10
- * leap.wrapGemini(genAI); // wraps genAI.getGenerativeModel(...)
11
- *
12
- * // Group calls into a named agent run
13
- * const agent = leap.createAgent({ name: 'Support Bot' });
14
- * await agent.run(async (client) => {
15
- * await client.chat.completions.create({ ... });
10
+ * const leap = new Leap360Client({
11
+ * apiKey: process.env.LEAP360_API_KEY,
12
+ * projectId: 'my-project',
16
13
  * });
17
14
  *
18
- * ── Style 2: Manual trace (maximum flexibility) ────────────────────────────
19
- * import { Leap360Client } from 'leap360-sdk';
20
- * const leap = new Leap360Client(); // reads from ~/.leap360/config.json
21
- *
15
+ * // Works with OpenAI, Gemini, Anthropic, Mistral, or any LLM:
22
16
  * const result = await leap.traceCall({
23
- * agentName: 'My Bot',
24
- * provider: 'openai',
25
- * model: 'gpt-4o',
26
- * fn: () => openai.chat.completions.create({ ... }),
17
+ * agentName: 'my-agent',
18
+ * provider: 'google', // or 'openai', 'anthropic', 'mistral', etc.
19
+ * model: 'gemini-2.0-flash',
20
+ * fn: () => model.generateContent('Hello!'),
27
21
  * });
22
+ *
23
+ * ─────────────────────────────────────────────────────────────────────────
24
+ * ⚡ AUTO-WRAP: Zero-code tracing for supported SDKs
25
+ * ─────────────────────────────────────────────────────────────────────────
26
+ *
27
+ * SDK Compatibility Matrix:
28
+ * ┌─────────────────────────────┬────────────────────────────┬────────────┐
29
+ * │ Your LLM SDK │ Method │ Status │
30
+ * ├─────────────────────────────┼────────────────────────────┼────────────┤
31
+ * │ openai │ Leap360.autoInit() │ ✅ Auto │
32
+ * │ @google/generative-ai │ Leap360.autoInit() │ ✅ Auto │
33
+ * │ @google/genai (new SDK) │ leap.wrapGoogleGenAI() │ ✅ Wrap │
34
+ * │ @anthropic-ai/sdk │ leap.traceCall() │ ⚠️ Manual │
35
+ * │ mistralai │ leap.traceCall() │ ⚠️ Manual │
36
+ * │ Any other LLM │ leap.traceCall() │ ✅ Manual │
37
+ * └─────────────────────────────┴────────────────────────────┴────────────┘
38
+ *
39
+ * Auto-wrap example (OpenAI or @google/generative-ai):
40
+ * Leap360.autoInit({ apiKey, projectId, serviceName });
41
+ * const openai = new OpenAI(); // ← all calls auto-traced
42
+ *
43
+ * Wrap example (@google/genai new SDK):
44
+ * import { GoogleGenAI } from '@google/genai';
45
+ * const leap = new Leap360({ apiKey, projectId, serviceName });
46
+ * const ai = leap.wrapGoogleGenAI(new GoogleGenAI({ apiKey: GEMINI_KEY }));
47
+ * await ai.models.generateContent({ model: 'gemini-2.0-flash', contents: 'Hello!' });
28
48
  */
29
49
  // Universal imports/fallbacks
30
50
  import { loadCredentials } from './auth.js';
@@ -119,63 +139,109 @@ export class Leap360 {
119
139
  Leap360.instance = this;
120
140
  }
121
141
  /**
122
- * Initializes Leap360 globally. All subsequent OpenAI or Gemini
142
+ * Initializes Leap360 globally. All subsequent OpenAI or @google/generative-ai
123
143
  * clients created will be automatically traced.
144
+ *
145
+ * ⚠️ Compatibility note:
146
+ * - openai SDK → ✅ auto-traced
147
+ * - @google/generative-ai → ✅ auto-traced
148
+ * - @google/genai (new SDK) → use leap.wrapGoogleGenAI(client) instead
149
+ * - @anthropic-ai/sdk → use leap.traceCall() instead
150
+ * - Any other LLM → use leap.traceCall() instead
124
151
  */
125
152
  static autoInit(config) {
126
153
  const inst = new Leap360(config);
127
154
  inst.patchGlobalPrototypes();
128
155
  inst.startPollingStatus();
156
+ // Startup confirmation — so developers know tracing is active
157
+ console.log(`[Leap360] ✅ Tracing active — project: ${config.projectId}, service: ${config.serviceName}`);
129
158
  return inst;
130
159
  }
131
160
  /**
132
- * Polls the Cloud API periodically to check if the project has been
133
- * suspended by the Kill Switch. This blocks LLM calls BEFORE they happen.
161
+ * Polls the Cloud API periodically to check if the project OR this specific
162
+ * agent/service has been suspended by the Kill Switch.
163
+ * This blocks LLM calls BEFORE they happen (pre-flight check).
134
164
  */
135
165
  startPollingStatus() {
136
- setInterval(async () => {
166
+ const poll = async () => {
137
167
  try {
138
- const url = `${this.config.baseUrl.replace(/\/$/, '')}/v1/projects/${this.config.projectId}/status`;
139
- const res = await fetch(url, { headers: { 'x-api-key': this.config.apiKey } });
140
- if (res.ok) {
141
- const data = await res.json();
142
- const previousState = Leap360.isHalted;
168
+ const base = this.config.baseUrl.replace(/\/$/, '');
169
+ // 1. Check global project kill switch
170
+ const projectUrl = `${base}/v1/projects/${this.config.projectId}/status`;
171
+ const projectRes = await fetch(projectUrl, { headers: { 'x-api-key': this.config.apiKey } });
172
+ if (projectRes.ok) {
173
+ const data = await projectRes.json();
174
+ const wasHalted = Leap360.isHalted;
143
175
  Leap360.isHalted = data.status === 'SUSPENDED';
144
- if (Leap360.isHalted && !previousState) {
145
- console.error('[Leap360] 🛡️ ! CRITICAL: PROJECT SUSPENDED. KILL SWITCH ENGAGED.');
176
+ if (Leap360.isHalted && !wasHalted) {
177
+ console.error('[Leap360] 🛡️ CRITICAL: PROJECT SUSPENDED. All AI calls are blocked.');
146
178
  }
147
- else if (!Leap360.isHalted && previousState) {
179
+ else if (!Leap360.isHalted && wasHalted) {
148
180
  console.log('[Leap360] 🟢 Project resumed. Agents are back online.');
149
181
  }
150
182
  }
183
+ // 2. Check per-agent / per-service kill switch
184
+ // The agent name is serviceName (set by autoInit) or a custom agentName
185
+ const agentId = encodeURIComponent(this.config.serviceName);
186
+ const agentUrl = `${base}/v1/agents/${agentId}/status`;
187
+ const agentRes = await fetch(agentUrl, { headers: { 'x-api-key': this.config.apiKey } });
188
+ if (agentRes.ok) {
189
+ const agentData = await agentRes.json();
190
+ const wasHalted = Leap360.isHalted;
191
+ const agentSuspended = agentData.status === 'SUSPENDED';
192
+ if (agentSuspended && !wasHalted) {
193
+ Leap360.isHalted = true;
194
+ console.error(`[Leap360] 🛡️ AGENT SUSPENDED: "${this.config.serviceName}" has been halted. AI calls are blocked.`);
195
+ }
196
+ else if (!agentSuspended && wasHalted && agentData.status === 'ACTIVE') {
197
+ // Only resume if the project is also not suspended
198
+ Leap360.isHalted = false;
199
+ console.log(`[Leap360] 🟢 Agent "${this.config.serviceName}" resumed.`);
200
+ }
201
+ }
151
202
  }
152
203
  catch (err) {
153
- console.warn(`[Leap360] Poller error: ${err.message}`);
204
+ console.warn(`[Leap360] Status poller error: ${err.message}`);
154
205
  }
155
- }, 30_000); // Check every 30 seconds
206
+ };
207
+ poll(); // immediate first check
208
+ setInterval(poll, 15_000); // Check every 15 seconds (was 30s)
156
209
  }
157
210
  /**
158
211
  * Patches common AI library prototypes to ensure all instances
159
212
  * are automatically traced without manual wrapping.
160
213
  * Supports both CommonJS (require) and ESM environments.
214
+ *
215
+ * Supported by autoInit:
216
+ * ✅ openai
217
+ * ✅ @google/generative-ai
218
+ * ❌ @google/genai (new SDK) — use wrapGoogleGenAI() instead
219
+ * ❌ @anthropic-ai/sdk — use traceCall() instead
161
220
  */
162
221
  patchGlobalPrototypes() {
222
+ let patchedCount = 0;
163
223
  // --- Strategy 1: Direct prototype patch if class is on globalThis ---
164
224
  const tryPatchFromGlobal = () => {
165
225
  const OpenAI = globalThis.OpenAI;
166
- if (OpenAI?.prototype)
226
+ if (OpenAI?.prototype) {
167
227
  this.wrapOpenAIPrototype(OpenAI);
228
+ patchedCount++;
229
+ }
168
230
  const GAI = globalThis.GoogleGenerativeAI;
169
- if (GAI?.prototype)
231
+ if (GAI?.prototype) {
170
232
  this.wrapGooglePrototype(GAI);
233
+ patchedCount++;
234
+ }
171
235
  };
172
236
  tryPatchFromGlobal();
173
237
  // --- Strategy 2: Dynamic import (ESM) — patch after module loads ---
174
238
  // Wrap @google/generative-ai via dynamic import
175
239
  import('@google/generative-ai').then((mod) => {
176
240
  const GAI = mod.GoogleGenerativeAI;
177
- if (GAI?.prototype)
241
+ if (GAI?.prototype) {
178
242
  this.wrapGooglePrototype(GAI);
243
+ patchedCount++;
244
+ }
179
245
  }).catch(() => { });
180
246
  // Wrap openai via dynamic import (optional peer dep - ignore TS errors)
181
247
  // eslint-disable-next-line @typescript-eslint/no-var-requires
@@ -184,11 +250,22 @@ export class Leap360 {
184
250
  // Use Function to avoid TypeScript resolving the module at compile time
185
251
  const mod = await (new Function("s", "return import(s)"))('openai');
186
252
  const OpenAI = mod.default || mod.OpenAI;
187
- if (OpenAI?.prototype)
253
+ if (OpenAI?.prototype) {
188
254
  this.wrapOpenAIPrototype(OpenAI);
255
+ patchedCount++;
256
+ }
189
257
  }
190
258
  catch { /* openai not installed */ }
191
259
  })();
260
+ // Warn after a short delay if nothing was patched — helps catch silent failures
261
+ setTimeout(() => {
262
+ if (patchedCount === 0) {
263
+ console.warn('[Leap360] ⚠️ autoInit() did not detect a supported LLM SDK (openai or @google/generative-ai).\n' +
264
+ ' If you are using @google/genai (new SDK): use leap.wrapGoogleGenAI(client) instead.\n' +
265
+ ' If you are using Anthropic, Mistral, or another LLM: use leap.traceCall() instead.\n' +
266
+ ' See: https://leap360.ai/docs/sdk-compatibility');
267
+ }
268
+ }, 3000);
192
269
  }
193
270
  wrapOpenAIPrototype(OpenAIClass) {
194
271
  const self = this;
@@ -359,7 +436,9 @@ export class Leap360 {
359
436
  const traceBody = buildTraceBody({
360
437
  projectId: this.config.projectId,
361
438
  serviceName: this.config.serviceName,
362
- agentName: runCtx?.agentName ?? null,
439
+ // Use explicit agentName from createAgent context, or fall back to serviceName
440
+ // so per-agent suspend works for autoInit users who never call createAgent
441
+ agentName: runCtx?.agentName ?? this.config.serviceName,
363
442
  runId: runCtx?.runId,
364
443
  provider,
365
444
  model,
@@ -401,7 +480,8 @@ export class Leap360 {
401
480
  const traceBody = buildTraceBody({
402
481
  projectId: this.config.projectId,
403
482
  serviceName: this.config.serviceName,
404
- agentName: runCtx?.agentName ?? null,
483
+ // Use explicit agentName from createAgent context, or fall back to serviceName
484
+ agentName: runCtx?.agentName ?? this.config.serviceName,
405
485
  runId: runCtx?.runId,
406
486
  provider,
407
487
  model,
@@ -431,6 +511,12 @@ export class Leap360 {
431
511
  violation
432
512
  };
433
513
  }
514
+ // Check for per-agent halt
515
+ if (res && res.code === 'AGENT_HALT') {
516
+ const serverMessage = res.message || 'Agent is suspended';
517
+ console.error(`[Leap360] 🛡️ AGENT SUSPENDED: ${serverMessage}`);
518
+ return { blocked: true, message: serverMessage };
519
+ }
434
520
  return { blocked: false };
435
521
  }
436
522
  catch (e) {
@@ -613,31 +699,55 @@ export class Leap360 {
613
699
  };
614
700
  return client;
615
701
  }
616
- // ── Google GenAI (new format) auto-wrap ────────────────────────────────────
702
+ // ── Google GenAI (new SDK: @google/genai) auto-wrap ──────────────────────
617
703
  /**
618
- * Wraps the new `google-genai` Client instance so every
619
- * `models.generate_content` call is traced automatically.
704
+ * Wraps the new `@google/genai` GoogleGenAI client so every
705
+ * `models.generateContent` / `models.generateContentStream` call is traced.
706
+ *
707
+ * Use this when you are on the NEW @google/genai package (not @google/generative-ai).
620
708
  *
621
709
  * @example
622
- * import genai from 'google-genai';
623
- * const client = leap.wrapGoogleGenAI(new genai.Client());
624
- * const response = await client.models.generate_content({
625
- * model: 'gemini-3-flash-preview',
626
- * contents: 'Explain how AI works'
710
+ * import { GoogleGenAI } from '@google/genai';
711
+ * const leap = new Leap360({ apiKey, projectId, serviceName });
712
+ * const ai = leap.wrapGoogleGenAI(new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY }));
713
+ *
714
+ * const response = await ai.models.generateContent({
715
+ * model: 'gemini-2.0-flash',
716
+ * contents: 'Explain AI governance.',
627
717
  * });
718
+ *
719
+ * ⚠️ The new SDK uses camelCase (generateContent), not snake_case (generate_content).
720
+ * Both variants are supported by this wrapper.
628
721
  */
629
722
  wrapGoogleGenAI(client) {
630
723
  const self = this;
631
724
  const c = client;
632
- // Wrap generate_content
633
- const originalGenerate = c.models.generate_content.bind(c.models);
634
- c.models.generate_content = async (params) => {
725
+ if (!c.models || typeof c.models !== 'object') {
726
+ console.warn('[Leap360] wrapGoogleGenAI: client.models is undefined. Ensure you are passing a GoogleGenAI instance.');
727
+ return client;
728
+ }
729
+ // Support both camelCase (new @google/genai) and snake_case (older variants)
730
+ const generateFnName = typeof c.models.generateContent === 'function' ? 'generateContent' :
731
+ typeof c.models.generate_content === 'function' ? 'generate_content' :
732
+ null;
733
+ const streamFnName = typeof c.models.generateContentStream === 'function' ? 'generateContentStream' :
734
+ typeof c.models.generate_content_stream === 'function' ? 'generate_content_stream' :
735
+ null;
736
+ if (!generateFnName) {
737
+ console.warn('[Leap360] wrapGoogleGenAI: could not find generateContent or generate_content on client.models.\n' +
738
+ ' Ensure you are passing a GoogleGenAI instance from @google/genai.\n' +
739
+ ' Falling back to untraced client.');
740
+ return client;
741
+ }
742
+ // Wrap generateContent / generate_content
743
+ const originalGenerate = c.models[generateFnName].bind(c.models);
744
+ c.models[generateFnName] = async (params) => {
635
745
  if (Leap360.isHalted) {
636
746
  throw new Error('[Leap360] 🛡️ GOVERNANCE_HALT: Project is SUSPENDED. AI calls are blocked.');
637
747
  }
638
748
  const startTime = Date.now();
639
749
  const runCtx = getRunContextStorage().getStore();
640
- const modelName = (params?.model ?? 'gemini-3-flash-preview');
750
+ const modelName = (params?.model ?? 'gemini');
641
751
  let response = null;
642
752
  let error = null;
643
753
  try {
@@ -649,58 +759,59 @@ export class Leap360 {
649
759
  }
650
760
  // Synchronous trace with policy blocking check
651
761
  try {
652
- const blockResult = await self.sendTraceAndCheckBlock('google', { contents: params.contents }, response, null, startTime, runCtx, modelName);
762
+ const blockResult = await self.sendTraceAndCheckBlock('google', { contents: params.contents ?? params.prompt ?? params }, response, error, startTime, runCtx, modelName);
653
763
  if (blockResult?.blocked) {
654
764
  throw new Error(`[Leap360] 🛡️ POLICY_BLOCKED: ${blockResult.message}`);
655
765
  }
656
766
  }
657
767
  catch (traceErr) {
658
- if (traceErr.message?.includes('POLICY_BLOCKED')) {
768
+ if (traceErr.message?.includes('POLICY_BLOCKED'))
659
769
  throw traceErr;
660
- }
661
770
  console.warn('[Leap360] Trace failed:', traceErr.message);
662
771
  }
663
772
  return response;
664
773
  };
665
- // Wrap generate_content_stream
666
- const originalStream = c.models.generate_content_stream.bind(c.models);
667
- c.models.generate_content_stream = async (params) => {
668
- if (Leap360.isHalted) {
669
- throw new Error('[Leap360] 🛡️ GOVERNANCE_HALT: Project is SUSPENDED. AI calls are blocked.');
670
- }
671
- const startTime = Date.now();
672
- const runCtx = getRunContextStorage().getStore();
673
- const modelName = (params?.model ?? 'gemini-3-flash-preview');
674
- let error = null;
675
- let result = null;
676
- try {
677
- result = await originalStream(params);
678
- }
679
- catch (err) {
680
- error = err;
681
- throw err;
682
- }
683
- finally {
684
- const latencyMs = Date.now() - startTime;
685
- const traceBody = buildTraceBody({
686
- projectId: self.config.projectId,
687
- serviceName: self.config.serviceName,
688
- agentName: runCtx?.agentName ?? null,
689
- runId: runCtx?.runId,
690
- provider: 'google',
691
- model: modelName,
692
- request: { contents: params.contents },
693
- response: null,
694
- latencyMs,
695
- usage: { prompt_tokens: 0, completion_tokens: 0, total_tokens: 0 },
696
- timestamp: new Date(startTime).toISOString(),
697
- error: error ? (error instanceof Error ? error.message : String(error)) : null,
698
- });
699
- postTrace(self.config.baseUrl, self.config.apiKey, traceBody, false)
700
- .catch(e => console.error('[Leap360]', e));
701
- }
702
- return result;
703
- };
774
+ // Wrap generateContentStream / generate_content_stream if present
775
+ if (streamFnName) {
776
+ const originalStream = c.models[streamFnName].bind(c.models);
777
+ c.models[streamFnName] = async (params) => {
778
+ if (Leap360.isHalted) {
779
+ throw new Error('[Leap360] 🛡️ GOVERNANCE_HALT: Project is SUSPENDED. AI calls are blocked.');
780
+ }
781
+ const startTime = Date.now();
782
+ const runCtx = getRunContextStorage().getStore();
783
+ const modelName = (params?.model ?? 'gemini');
784
+ let error = null;
785
+ let result = null;
786
+ try {
787
+ result = await originalStream(params);
788
+ }
789
+ catch (err) {
790
+ error = err;
791
+ throw err;
792
+ }
793
+ finally {
794
+ const latencyMs = Date.now() - startTime;
795
+ const traceBody = buildTraceBody({
796
+ projectId: self.config.projectId,
797
+ serviceName: self.config.serviceName,
798
+ agentName: runCtx?.agentName ?? self.config.serviceName,
799
+ runId: runCtx?.runId,
800
+ provider: 'google',
801
+ model: modelName,
802
+ request: { contents: params.contents ?? params.prompt ?? params },
803
+ response: null,
804
+ latencyMs,
805
+ usage: { prompt_tokens: 0, completion_tokens: 0, total_tokens: 0 },
806
+ timestamp: new Date(startTime).toISOString(),
807
+ error: error ? (error instanceof Error ? error.message : String(error)) : null,
808
+ });
809
+ postTrace(self.config.baseUrl, self.config.apiKey, traceBody, false)
810
+ .catch(e => console.error('[Leap360]', e));
811
+ }
812
+ return result;
813
+ };
814
+ }
704
815
  return client;
705
816
  }
706
817
  // ── createAgent ─────────────────────────────────────────────────────────
package/dist/sdk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,8BAA8B;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C;;GAEG;AACH,MAAM,wBAAwB;IACpB,KAAK,GAAa,IAAI,CAAC;IAC/B,QAAQ,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACjC,GAAG,CAAC,KAAQ,EAAE,EAAa;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,MAAM,MAAM,GAAG,EAAE,EAAE,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,wEAAwE;AACxE,IAAI,OAAO,GAAQ,IAAI,wBAAwB,EAAE,CAAC;AAElD,wDAAwD;AACxD,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC7D,MAAM,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;QAClC,OAAO,GAAG,IAAI,CAAC,CAAC,iBAAiB,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACZ,uBAAuB;IACzB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC;AAE3C,mBAAmB;AACnB,MAAM,OAAO,GAAQ,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAQ,UAAkB,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAE,UAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;IACrJ,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE;CACnD,CAAC,CAAC;AA2EH,gCAAgC;AAEhC,6EAA6E;AAE7E,SAAS,cAAc,CACrB,IAaC;IAED,OAAO;QACL,UAAU,EAAI,IAAI,CAAC,SAAS;QAC5B,YAAY,EAAE,IAAI,CAAC,WAAW;QAC9B,UAAU,EAAI,IAAI,CAAC,SAAS,IAAI,IAAI;QACpC,MAAM,EAAQ,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,UAAU,EAAE;QAChD,QAAQ,EAAM,IAAI,CAAC,QAAQ;QAC3B,KAAK,EAAS,IAAI,CAAC,KAAK;QACxB,OAAO,EAAO,IAAI,CAAC,OAAO,IAAK,EAAE;QACjC,QAAQ,EAAM,IAAI,CAAC,QAAQ,IAAI,IAAI;QACnC,UAAU,EAAI,IAAI,CAAC,SAAS;QAC5B,KAAK,EAAS,IAAI,CAAC,KAAK;QACxB,SAAS,EAAK,IAAI,CAAC,SAAS;QAC5B,KAAK,EAAS,IAAI,CAAC,KAAK;KACzB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,GAAW,EAAE,MAAc,EAAE,IAA6B,EAAE,MAAe;IAClG,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,EAAE;YAC7D,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAG,kBAAkB;gBACnC,WAAW,EAAE,MAAM;aACpB;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QAEH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAS,CAAC;YACrC,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACpC,OAAO,IAAI,CAAC,CAAC,iBAAiB;YAChC,CAAC;QACH,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,6BAA6B,GAAG,CAAC,MAAM,MAAM,IAAI,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,mCAAmC,GAAG,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,oEAAoE;AACpE,8EAA8E;AAE9E,MAAM,OAAO,OAAO;IACV,MAAM,CAA0B;IAChC,mBAAmB,GAAY,IAAI,CAAC;IACpC,MAAM,CAAC,QAAQ,GAAmB,IAAI,CAAC;IAC/C,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,2CAA2C;IAEpE,YAAY,MAAqB;QAC/B,IAAI,CAAC,MAAM,GAAG;YACZ,GAAG,MAAM;YACT,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,aAAa;SACzC,CAAC;QACF,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,MAAqB;QACnC,MAAM,IAAI,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACK,kBAAkB;QACxB,WAAW,CAAC,KAAK,IAAI,EAAE;YACrB,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,IAAI,CAAC,MAAM,CAAC,SAAS,SAAS,CAAC;gBACpG,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC/E,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;oBACX,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAwB,CAAC;oBACpD,MAAM,aAAa,GAAG,OAAO,CAAC,QAAQ,CAAC;oBACvC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC;oBAE/C,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,aAAa,EAAE,CAAC;wBACvC,OAAO,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;oBACtF,CAAC;yBAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,aAAa,EAAE,CAAC;wBAC9C,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;oBACvE,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,2BAA2B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,yBAAyB;IACvC,CAAC;IAGD;;;;OAIG;IACK,qBAAqB;QAC3B,uEAAuE;QACvE,MAAM,kBAAkB,GAAG,GAAG,EAAE;YAC9B,MAAM,MAAM,GAAI,UAAkB,CAAC,MAAM,CAAC;YAC1C,IAAI,MAAM,EAAE,SAAS;gBAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAExD,MAAM,GAAG,GAAI,UAAkB,CAAC,kBAAkB,CAAC;YACnD,IAAI,GAAG,EAAE,SAAS;gBAAE,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACpD,CAAC,CAAC;QACF,kBAAkB,EAAE,CAAC;QAErB,sEAAsE;QACtE,gDAAgD;QAChD,MAAM,CAAC,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC,GAAQ,EAAE,EAAE;YAChD,MAAM,GAAG,GAAG,GAAG,CAAC,kBAAkB,CAAC;YACnC,IAAI,GAAG,EAAE,SAAS;gBAAE,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAA+B,CAAC,CAAC,CAAC;QAEhD,wEAAwE;QACxE,8DAA8D;QAC9D,CAAC,KAAK,IAAI,EAAE;YACV,IAAI,CAAC;gBACH,wEAAwE;gBACxE,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBACpE,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC;gBACzC,IAAI,MAAM,EAAE,SAAS;oBAAE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAC1D,CAAC;YAAC,MAAM,CAAC,CAAC,0BAA0B,CAAC,CAAC;QACxC,CAAC,CAAC,EAAE,CAAC;IACP,CAAC;IAEO,mBAAmB,CAAC,WAAgB;QAC1C,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,cAAc,GAAG,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC;QACxE,IAAI,cAAc,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC;YACpD,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,GAAG,KAAK,WAAU,IAAS,EAAE,OAAY;gBACpF,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YAC9E,CAAC,CAAC;YACF,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;QACrE,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,QAAa;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,SAAS,CAAC,kBAAkB,CAAC;QAC/D,IAAI,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC;YACxD,QAAQ,CAAC,SAAS,CAAC,kBAAkB,GAAG,UAAS,IAAS,EAAE,GAAG,IAAW;gBACxE,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;gBAC5D,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,QAAQ,CAAC,CAAC;YAC9D,CAAC,CAAC;YACF,QAAQ,CAAC,SAAS,CAAC,kBAAkB,CAAC,aAAa,GAAG,IAAI,CAAC;QAC7D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,MAAW,EAAE,cAAwB,EAAE,IAAS,EAAE,OAAY;QAC1F,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;QAChG,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAM,oBAAoB,EAAE,CAAC,QAAQ,EAAE,CAAC;QACpD,IAAI,QAAQ,GAAQ,IAAI,CAAC;QACzB,IAAI,KAAK,GAAQ,IAAI,CAAC;QAEtB,iEAAiE;QACjE,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBACrG,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;oBACzB,MAAM,IAAI,KAAK,CAAC,qCAAqC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,oBAAoB,CAAC;oBAAE,MAAM,GAAG,CAAC;gBAC3D,OAAO,CAAC,IAAI,CAAC,oCAAoC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAClE,CAAC;YAED,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACjD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,KAAK,GAAG,GAAG,CAAC;gBACZ,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YACvE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,GAAG,GAAG,CAAC;YACZ,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,+CAA+C;QAC/C,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;YAC1G,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,iCAAiC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QAAC,OAAO,QAAa,EAAE,CAAC;YACvB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBAClD,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,CAAC;YACjB,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,eAAe,CAAC,KAAU,EAAE,SAAiB;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,OAAO,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClD,kCAAkC;QAClC,IAAI,OAAO,KAAK,CAAC,qBAAqB,KAAK,UAAU,EAAE,CAAC;YACtD,MAAM,UAAU,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3D,KAAK,CAAC,qBAAqB,GAAG,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;gBACrD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;gBAChG,CAAC;gBACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC,QAAQ,EAAE,CAAC;gBAEjD,+BAA+B;gBAC/B,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;oBAC/H,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;wBACzB,MAAM,IAAI,KAAK,CAAC,qCAAqC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC9E,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,oBAAoB,CAAC;wBAAE,MAAM,GAAG,CAAC;oBAC3D,OAAO,CAAC,IAAI,CAAC,oCAAoC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAClE,CAAC;gBAED,IAAI,GAAG,GAAQ,IAAI,CAAC;gBAAC,IAAI,GAAG,GAAQ,IAAI,CAAC;gBACzC,IAAI,CAAC;oBAAC,GAAG,GAAG,MAAM,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;gBAAC,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBAAC,GAAG,GAAG,CAAC,CAAC;oBAAC,MAAM,CAAC,CAAC;gBAAC,CAAC;wBAChE,CAAC;oBAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;gBAAC,CAAC;gBACtG,OAAO,GAAG,CAAC;YACb,CAAC,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,eAAe,GAAG,KAAK,EAAE,GAAG,IAAW,EAAE,EAAE;YAC/C,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;YAChG,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC,QAAQ,EAAE,CAAC;YACjD,IAAI,GAAG,GAAQ,IAAI,CAAC;YACpB,IAAI,GAAG,GAAQ,IAAI,CAAC;YACpB,IAAI,CAAC;gBACH,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,GAAG,GAAG,CAAC,CAAC;gBACR,MAAM,CAAC,CAAC;YACV,CAAC;YAED,+CAA+C;YAC/C,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;gBAC9H,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;oBACzB,MAAM,IAAI,KAAK,CAAC,iCAAiC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;YAAC,OAAO,QAAa,EAAE,CAAC;gBACvB,gEAAgE;gBAChE,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBAClD,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;gBAC5D,CAAC;qBAAM,CAAC;oBACN,MAAM,QAAQ,CAAC,CAAC,wBAAwB;gBAC1C,CAAC;YACH,CAAC;YAED,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,aAAa,CAAC,QAAgB,EAAE,OAAY,EAAE,QAAa,EAAE,KAAU,EAAE,SAAiB,EAAE,MAAW,EAAE,SAAkB;QACjI,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACzC,MAAM,KAAK,GAAG,SAAS,IAAI,QAAQ,EAAE,KAAK,IAAI,OAAO,EAAE,KAAK,IAAI,SAAS,CAAC;QAE1E,4BAA4B;QAC5B,IAAI,KAAK,GAAG,EAAE,aAAa,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;QACxE,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,EAAE,KAAK,EAAE,CAAC;YAC7C,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QACzB,CAAC;aAAM,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;YACtE,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;YAC3C,KAAK,GAAG;gBACN,aAAa,EAAE,EAAE,CAAC,gBAAgB,IAAI,CAAC;gBACvC,iBAAiB,EAAE,EAAE,CAAC,oBAAoB,IAAI,CAAC;gBAC/C,YAAY,EAAE,EAAE,CAAC,eAAe,IAAI,CAAC;aACtC,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,cAAc,CAAC;YAC/B,SAAS,EAAI,IAAI,CAAC,MAAM,CAAC,SAAS;YAClC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,SAAS,EAAI,MAAM,EAAE,SAAS,IAAI,IAAI;YACtC,KAAK,EAAQ,MAAM,EAAE,KAAK;YAC1B,QAAQ;YACR,KAAK;YACL,OAAO;YACP,QAAQ;YACR,SAAS;YACT,KAAK;YACL,SAAS,EAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;YAC9C,KAAK,EAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACrF,CAAC,CAAC;QAEH,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC;aACjE,IAAI,CAAC,GAAG,CAAC,EAAE;YACV,IAAI,GAAG,IAAK,GAAW,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACnD,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACxB,OAAO,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;YACjF,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,CAAC,EAAE,GAAE,CAAC,CAAC,CAAC;IACpB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,sBAAsB,CAClC,QAAgB,EAChB,OAAY,EACZ,QAAa,EACb,KAAU,EACV,SAAiB,EACjB,MAAW,EACX,SAAkB;QAElB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACzC,MAAM,KAAK,GAAG,SAAS,IAAI,QAAQ,EAAE,KAAK,IAAI,OAAO,EAAE,KAAK,IAAI,SAAS,CAAC;QAE1E,IAAI,KAAK,GAAG,EAAE,aAAa,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;QACxE,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,EAAE,KAAK,EAAE,CAAC;YAC7C,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QACzB,CAAC;aAAM,IAAI,QAAQ,KAAK,QAAQ,IAAI,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;YACtE,MAAM,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;YAC3C,KAAK,GAAG;gBACN,aAAa,EAAE,EAAE,CAAC,gBAAgB,IAAI,CAAC;gBACvC,iBAAiB,EAAE,EAAE,CAAC,oBAAoB,IAAI,CAAC;gBAC/C,YAAY,EAAE,EAAE,CAAC,eAAe,IAAI,CAAC;aACtC,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,cAAc,CAAC;YAC/B,SAAS,EAAI,IAAI,CAAC,MAAM,CAAC,SAAS;YAClC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;YACpC,SAAS,EAAI,MAAM,EAAE,SAAS,IAAI,IAAI;YACtC,KAAK,EAAQ,MAAM,EAAE,KAAK;YAC1B,QAAQ;YACR,KAAK;YACL,OAAO;YACP,QAAQ;YACR,SAAS;YACT,KAAK;YACL,SAAS,EAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;YAC9C,KAAK,EAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;SACrF,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YAEvF,wBAAwB;YACxB,IAAI,GAAG,IAAK,GAAW,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACnD,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACxB,OAAO,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;gBAC/E,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAC;YACxE,CAAC;YAED,mCAAmC;YACnC,IAAI,GAAG,IAAK,GAAW,CAAC,IAAI,KAAK,0BAA0B,EAAE,CAAC;gBAC5D,MAAM,SAAS,GAAI,GAAW,CAAC,SAAS,CAAC;gBACzC,MAAM,aAAa,GAAI,GAAW,CAAC,OAAO,IAAI,sBAAsB,SAAS,CAAC,UAAU,MAAM,SAAS,CAAC,SAAS,EAAE,CAAC;gBACpH,OAAO,CAAC,KAAK,CAAC,iCAAiC,SAAS,CAAC,UAAU,MAAM,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;gBAChG,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,aAAa;oBACtB,SAAS;iBACV,CAAC;YACJ,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,0DAA0D;YAC1D,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACzD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,2EAA2E;IAE3E;;;;;;;;OAQG;IACH,UAAU,CAAe,MAAoB;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,cAAc,GAAI,MAAwG,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAC1J,MAAuE,CAAC,IAAI,CAAC,WAAW,CAC1F,CAAC;QAED,MAAmF,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,KAAK,EAAE,IAA6B,EAAE,OAAiB,EAAE,EAAE;YACxK,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;YACjG,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAM,oBAAoB,EAAE,CAAC,QAAQ,EAAE,CAAC;YAEpD,IAAI,QAAQ,GAAmC,IAAI,CAAC;YACpD,IAAI,KAAK,GAAY,IAAI,CAAC;YAE1B,oDAAoD;YACpD,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;gBACjB,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAG,IAAI,EAAE,KAAgB,IAAI,SAAS,CAAC,CAAC;oBAC3I,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;wBACzB,MAAM,IAAI,KAAK,CAAC,qCAAqC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC9E,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAQ,EAAE,CAAC;oBAClB,IAAI,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,oBAAoB,CAAC;wBAAE,MAAM,GAAG,CAAC;oBAC3D,OAAO,CAAC,IAAI,CAAC,oCAAoC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;gBAClE,CAAC;gBAED,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAO,cAA+E,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACnH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,KAAK,GAAG,GAAG,CAAC;oBACZ,MAAM,GAAG,CAAC;gBACZ,CAAC;gBACD,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBACvE,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAO,cAA+E,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACnH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,KAAK,GAAG,GAAG,CAAC;gBACZ,MAAM,GAAG,CAAC;YACZ,CAAC;YAED,+CAA+C;YAC/C,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACzC,MAAM,KAAK,GAAG,CAAC,QAAQ,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI,SAAS,CAAW,CAAC;gBACtE,MAAM,KAAK,GAAG,QAAQ,EAAE,KAA+F,CAAC;gBAExH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,CACnD,QAAQ,EACR,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EACnD,QAAQ,EACR,IAAI,EACJ,SAAS,EACT,MAAM,EACN,KAAK,CACN,CAAC;gBAEF,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;oBACzB,MAAM,IAAI,KAAK,CAAC,iCAAiC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;YAAC,OAAO,QAAa,EAAE,CAAC;gBACvB,IAAI,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACjD,MAAM,QAAQ,CAAC;gBACjB,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC5D,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC;QAEF,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC;QAClC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2EAA2E;IAE3E;;;;;;;;;OASG;IACH,UAAU,CAAe,MAAoB;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,CAAC,GAAG,MAET,CAAC;QACF,MAAM,gBAAgB,GAAG,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEtD,CAAC,CAAC,kBAAkB,GAAG,CAAC,IAA6B,EAAE,GAAG,IAAe,EAAE,EAAE;YAC3E,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,EAAE,GAAG,IAAI,CAG3C,CAAC;YACF,MAAM,SAAS,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,QAAQ,CAAW,CAAC;YAEtD,uBAAuB;YACvB,MAAM,cAAc,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzD,KAAK,CAAC,eAAe,GAAG,KAAK,EAAE,GAAG,QAAmB,EAAE,EAAE;gBACvD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;gBACjG,CAAC;gBACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAM,oBAAoB,EAAE,CAAC,QAAQ,EAAE,CAAC;gBACpD,IAAI,QAAQ,GAAmC,IAAI,CAAC;gBACpD,IAAI,KAAK,GAAY,IAAI,CAAC;gBAC1B,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAM,cAAc,CAAC,GAAG,QAAQ,CAAC,CAAC;gBAC/C,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,KAAK,GAAG,GAAG,CAAC;oBACZ,MAAM,GAAG,CAAC;gBACZ,CAAC;wBAAS,CAAC;oBACT,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;oBACzC,MAAM,aAAa,GAAI,QAA6E,EAAE,QAAQ,EAAE,aAAmD,CAAC;oBACpK,MAAM,KAAK,GAAG,aAAa;wBACzB,CAAC,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,iBAAiB,EAAE,aAAa,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE;wBAC/K,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;oBAEhE,MAAM,SAAS,GAAG,cAAc,CAAC;wBAC/B,SAAS,EAAI,IAAI,CAAC,MAAM,CAAC,SAAS;wBAClC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;wBACpC,SAAS,EAAI,MAAM,EAAE,SAAS,IAAI,IAAI;wBACtC,KAAK,EAAQ,MAAM,EAAE,KAAK;wBAC1B,QAAQ,EAAK,QAAQ;wBACrB,KAAK,EAAQ,SAAS;wBACtB,OAAO,EAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE;wBACpC,QAAQ,EAAK,QAAQ,IAAI,SAAS;wBAClC,SAAS;wBACT,KAAK;wBACL,SAAS,EAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;wBAC9C,KAAK,EAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;qBACrF,CAAC,CAAC;oBACH,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC;yBACjE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC/C,CAAC;gBACD,OAAO,QAAS,CAAC;YACnB,CAAC,CAAC;YAEF,uEAAuE;YACvE,MAAM,UAAU,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3D,KAAK,CAAC,qBAAqB,GAAG,KAAK,EAAE,GAAG,QAAmB,EAAE,EAAE;gBAC7D,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;gBACjG,CAAC;gBACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAM,oBAAoB,EAAE,CAAC,QAAQ,EAAE,CAAC;gBACpD,IAAI,KAAK,GAAY,IAAI,CAAC;gBAC1B,IAAI,MAAM,GAAmC,IAAI,CAAC;gBAClD,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC;gBACzC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,KAAK,GAAG,GAAG,CAAC;oBACZ,MAAM,GAAG,CAAC;gBACZ,CAAC;wBAAS,CAAC;oBACT,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;oBACzC,MAAM,SAAS,GAAG,cAAc,CAAC;wBAC/B,SAAS,EAAI,IAAI,CAAC,MAAM,CAAC,SAAS;wBAClC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;wBACpC,SAAS,EAAI,MAAM,EAAE,SAAS,IAAI,IAAI;wBACtC,KAAK,EAAQ,MAAM,EAAE,KAAK;wBAC1B,QAAQ,EAAK,QAAQ;wBACrB,KAAK,EAAQ,SAAS;wBACtB,OAAO,EAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE;wBACpC,QAAQ,EAAK,IAAI;wBACjB,SAAS;wBACT,KAAK,EAAQ,EAAE,aAAa,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;wBACxE,SAAS,EAAI,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;wBAC9C,KAAK,EAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;qBACrF,CAAC,CAAC;oBACH,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC;yBACjE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC/C,CAAC;gBACD,OAAO,MAAO,CAAC;YACjB,CAAC,CAAC;YAEF,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8EAA8E;IAE9E;;;;;;;;;;;OAWG;IACH,eAAe,CAAc,MAAmB;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,CAAC,GAAG,MAKT,CAAC;QAEF,wBAAwB;QACxB,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAClE,CAAC,CAAC,MAAM,CAAC,gBAAgB,GAAG,KAAK,EAAE,MAA+B,EAAE,EAAE;YACpE,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;YACjG,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC,QAAQ,EAAE,CAAC;YACjD,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,KAAK,IAAI,wBAAwB,CAAW,CAAC;YAExE,IAAI,QAAQ,GAAmC,IAAI,CAAC;YACpD,IAAI,KAAK,GAAY,IAAI,CAAC;YAE1B,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAC;YAC5C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,KAAK,GAAG,GAAG,CAAC;gBACZ,MAAM,GAAG,CAAC;YACZ,CAAC;YAED,+CAA+C;YAC/C,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,CACnD,QAAQ,EACR,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,EAC7B,QAAQ,EACR,IAAI,EACJ,SAAS,EACT,MAAM,EACN,SAAS,CACV,CAAC;gBAEF,IAAI,WAAW,EAAE,OAAO,EAAE,CAAC;oBACzB,MAAM,IAAI,KAAK,CAAC,iCAAiC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;YAAC,OAAO,QAAa,EAAE,CAAC;gBACvB,IAAI,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACjD,MAAM,QAAQ,CAAC;gBACjB,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,yBAAyB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC5D,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC;QAEF,+BAA+B;QAC/B,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QACvE,CAAC,CAAC,MAAM,CAAC,uBAAuB,GAAG,KAAK,EAAE,MAA+B,EAAE,EAAE;YAC3E,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;YACjG,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,oBAAoB,EAAE,CAAC,QAAQ,EAAE,CAAC;YACjD,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,KAAK,IAAI,wBAAwB,CAAW,CAAC;YAExE,IAAI,KAAK,GAAY,IAAI,CAAC;YAC1B,IAAI,MAAM,GAAmC,IAAI,CAAC;YAElD,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,KAAK,GAAG,GAAG,CAAC;gBACZ,MAAM,GAAG,CAAC;YACZ,CAAC;oBAAS,CAAC;gBACT,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACzC,MAAM,SAAS,GAAG,cAAc,CAAC;oBAC/B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;oBAChC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;oBACpC,SAAS,EAAE,MAAM,EAAE,SAAS,IAAI,IAAI;oBACpC,KAAK,EAAE,MAAM,EAAE,KAAK;oBACpB,QAAQ,EAAE,QAAQ;oBAClB,KAAK,EAAE,SAAS;oBAChB,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;oBACtC,QAAQ,EAAE,IAAI;oBACd,SAAS;oBACT,KAAK,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;oBAClE,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;oBAC5C,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;iBAC/E,CAAC,CAAC;gBACH,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC;qBACjE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/C,CAAC;YAED,OAAO,MAAO,CAAC;QACjB,CAAC,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,2EAA2E;IAE3E;;;;;;;;;OASG;IACH,WAAW,CAAC,IAAsB;QAChC,OAAO;YACL,GAAG,EAAE,KAAK,EAAK,EAAmC,EAAc,EAAE;gBAChE,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,EAAY,CAAC;gBAC7C,OAAO,oBAAoB,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,KAAK,IAAI,EAAE;oBAC5E,OAAO,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;;AAGH,8EAA8E;AAC9E,+DAA+D;AAC/D,8EAA8E;AAE9E,MAAM,OAAO,aAAa;IAChB,MAAM,CAAY;IAClB,MAAM,CAAY;IAClB,MAAM,CAAa;IACnB,SAAS,CAAS;IAE1B,YAAY,UAAgC,EAAE;QAC5C,IAAI,CAAC,MAAM,GAAM,OAAO,CAAC,MAAM,IAAO,aAAa,CAAC;QACpD,IAAI,CAAC,MAAM,GAAM,OAAO,CAAC,MAAM,IAAO,IAAI,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,SAAS,CAAC;QAEhD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC/B,CAAC;aAAM,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC1C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;YAChC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,GAAG,GAAG,0EAA0E,CAAC;gBACvF,IAAI,CAAC,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;gBACvC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;YACnB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAI,OAA4B;QAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,MAAU,CAAC;QACf,IAAI,KAAK,GAAkB,IAAI,CAAC;QAEhC,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,OAAO,CAAC,EAAE,EAAE,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACzD,MAAM,IAAI,CAAC,SAAS,CAAC;gBACnB,SAAS,EAAI,OAAO,CAAC,SAAS;gBAC9B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS;gBAC7C,KAAK,EAAQ,OAAO,CAAC,KAAK;gBAC1B,QAAQ,EAAK,OAAO,CAAC,QAAQ;gBAC7B,KAAK,EAAQ,OAAO,CAAC,KAAK;gBAC1B,OAAO,EAAM,OAAO,CAAC,QAAQ,IAAI,EAAE;gBACnC,SAAS,EAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC/B,KAAK;aACN,CAAC,CAAC;YACH,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,MAAM,IAAI,CAAC,SAAS,CAAC;YACnB,SAAS,EAAI,OAAO,CAAC,SAAS;YAC9B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS;YAC7C,KAAK,EAAQ,OAAO,CAAC,KAAK;YAC1B,QAAQ,EAAK,OAAO,CAAC,QAAQ;YAC7B,KAAK,EAAQ,OAAO,CAAC,KAAK;YAC1B,OAAO,EAAM,OAAO,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,IAAI,EAAE;YACvE,QAAQ,EAAK,OAAO,CAAC,eAAe,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE;YACpD,SAAS,EAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;YAC/B,KAAK,EAAQ,OAAO,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC;YAC3C,KAAK,EAAQ,IAAI;SAClB,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,SAAS,CAAC,OAAqB;QACnC,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QAEzB,MAAM,IAAI,GAAG,cAAc,CAAC;YAC1B,SAAS,EAAI,IAAI,CAAC,SAAS;YAC3B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS;YAC7C,SAAS,EAAI,OAAO,CAAC,SAAS,IAAM,IAAI;YACxC,KAAK,EAAQ,OAAO,CAAC,KAAK;YAC1B,QAAQ,EAAK,OAAO,CAAC,QAAQ;YAC7B,KAAK,EAAQ,OAAO,CAAC,KAAK;YAC1B,OAAO,EAAM,OAAO,CAAC,OAAO,IAAK,EAAE;YACnC,QAAQ,EAAK,OAAO,CAAC,QAAQ,IAAI,IAAI;YACrC,SAAS,EAAI,OAAO,CAAC,SAAS,IAAI,CAAC;YACnC,KAAK,EAAQ,OAAO,CAAC,KAAK,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE;YACzF,SAAS,EAAI,OAAO,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YAC1D,KAAK,EAAQ,OAAO,CAAC,KAAK,IAAI,IAAI;SACnC,CAAC,CAAC;QAEH,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "leap360",
3
- "version": "1.3.0",
4
- "description": "Leap360 AI Governance SDK — monitor, trace, and govern your AI agents in real-time",
3
+ "version": "1.4.1",
4
+ "description": "Leap360 AI Governance SDK — trace, govern, and monitor AI agents across OpenAI, Gemini, Anthropic, Mistral, and any LLM",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
@@ -29,15 +29,19 @@
29
29
  "agents",
30
30
  "observability",
31
31
  "openai",
32
- "gemini-1.5-flash-latest",
32
+ "gemini",
33
+ "anthropic",
34
+ "mistral",
35
+ "google-genai",
36
+ "ai-safety",
37
+ "kill-switch",
38
+ "policy-enforcement",
33
39
  "leap360"
34
40
  ],
35
41
  "author": "Leap360",
36
42
  "license": "Apache-2.0",
37
43
  "dependencies": {
38
- "@aws-sdk/client-cognito-identity-provider": "^3.1026.0",
39
- "commander": "^12.0.0",
40
- "open": "^10.0.0"
44
+ "commander": "^12.0.0"
41
45
  },
42
46
  "devDependencies": {
43
47
  "@types/node": "^20.0.0",