@kya-os/mcp-i-cloudflare 1.6.12 → 1.6.14

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.
@@ -13,8 +13,8 @@ export interface HonoContext {
13
13
  json: (object: any, status?: number) => Response;
14
14
  header: (name: string, value: string) => void;
15
15
  }
16
- import type { ConsentService } from '../services/consent.service';
17
- import type { OAuthSecurityService } from '../services/oauth-security.service';
16
+ import type { ConsentService } from "../services/consent.service";
17
+ import type { OAuthSecurityService } from "../services/oauth-security.service";
18
18
  export interface OAuthCallbackConfig {
19
19
  /**
20
20
  * AgentShield API URL (defaults to AGENTSHIELD_API_URL env var)
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-handler.d.ts","sourceRoot":"","sources":["../../src/runtime/oauth-handler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,GAAG,CAAC;IACT,GAAG,EAAE;QACH,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;QAC3C,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;KAC9C,CAAC;IACF,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,QAAQ,CAAC;IAClD,IAAI,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,QAAQ,CAAC;IACjD,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C;AAID,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAElE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,iBAAiB,CAAC,EAAE,WAAW,CAAC;IAEhC;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC;;OAEG;IACH,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAE5C;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,MAAM,CAAC;IAErD;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,MAAM,CAAC;IAElD;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA8KD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,GAAE,mBAAwB,IAC3D,GAAG,WAAW,uBAgyB7B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAoBpE"}
1
+ {"version":3,"file":"oauth-handler.d.ts","sourceRoot":"","sources":["../../src/runtime/oauth-handler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,GAAG,CAAC;IACT,GAAG,EAAE;QACH,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;QAC3C,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;KAC9C,CAAC;IACF,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,QAAQ,CAAC;IAClD,IAAI,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,QAAQ,CAAC;IACjD,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C;AAID,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAElE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B;;OAEG;IACH,iBAAiB,CAAC,EAAE,WAAW,CAAC;IAEhC;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC;;OAEG;IACH,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAE5C;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,MAAM,CAAC;IAErD;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,MAAM,CAAC;IAElD;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA8KD;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,GAAE,mBAAwB,IAC3D,GAAG,WAAW,uBAk6B7B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAoBpE"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Provides reusable OAuth callback handler for agents using delegation flow
5
5
  */
6
- import { STORAGE_KEYS } from '../constants/storage-keys';
6
+ import { STORAGE_KEYS } from "../constants/storage-keys";
7
7
  /**
8
8
  * Default success page template
9
9
  */
@@ -94,7 +94,7 @@ const defaultSuccessTemplate = (data) => `
94
94
 
95
95
  <div class="info">
96
96
  <p>Authorized Scopes:</p>
97
- <div class="code">${data.scopes.join(', ')}</div>
97
+ <div class="code">${data.scopes.join(", ")}</div>
98
98
  </div>
99
99
 
100
100
  <p>You can now close this window and return to Claude Desktop. The authorized tools are ready to use.</p>
@@ -184,39 +184,39 @@ export function createOAuthCallbackHandler(config = {}) {
184
184
  return async (c) => {
185
185
  const env = c.env;
186
186
  // Get configuration with defaults
187
- const { agentShieldApiUrl = env.AGENTSHIELD_API_URL || 'https://hobbs.work', delegationStorage, consentService, oauthSecurityService, successTemplate = defaultSuccessTemplate, errorTemplate = defaultErrorTemplate, autoClose = true, autoCloseDelay = 5000, agentName, // MCP Server name for delegation notifications
187
+ const { agentShieldApiUrl = env.AGENTSHIELD_API_URL || "https://hobbs.work", delegationStorage, consentService, oauthSecurityService, successTemplate = defaultSuccessTemplate, errorTemplate = defaultErrorTemplate, autoClose = true, autoCloseDelay = 5000, agentName, // MCP Server name for delegation notifications
188
188
  } = config;
189
189
  // Get query parameters
190
- const code = c.req.query('code');
191
- const stateParam = c.req.query('state');
192
- const error = c.req.query('error');
190
+ const code = c.req.query("code");
191
+ const stateParam = c.req.query("state");
192
+ const error = c.req.query("error");
193
193
  // Handle OAuth errors
194
194
  if (error) {
195
- const errorDescription = c.req.query('error_description') || 'Authorization failed';
196
- console.error('[OAuth] 🔒 SECURITY EVENT: Error from provider:', {
195
+ const errorDescription = c.req.query("error_description") || "Authorization failed";
196
+ console.error("[OAuth] 🔒 SECURITY EVENT: Error from provider:", {
197
197
  error,
198
198
  errorDescription,
199
199
  timestamp: new Date().toISOString(),
200
- eventType: 'oauth_provider_error'
200
+ eventType: "oauth_provider_error",
201
201
  });
202
202
  const html = errorTemplate({
203
203
  error,
204
- description: errorDescription
204
+ description: errorDescription,
205
205
  });
206
206
  return c.html(html, 400);
207
207
  }
208
208
  // Validate required parameters
209
209
  if (!code || !stateParam) {
210
- console.error('[OAuth] 🔒 SECURITY EVENT: Missing required parameters:', {
210
+ console.error("[OAuth] 🔒 SECURITY EVENT: Missing required parameters:", {
211
211
  hasCode: !!code,
212
212
  hasState: !!stateParam,
213
213
  timestamp: new Date().toISOString(),
214
- eventType: 'oauth_validation_failed',
215
- reason: 'missing_parameters'
214
+ eventType: "oauth_validation_failed",
215
+ reason: "missing_parameters",
216
216
  });
217
217
  const html = errorTemplate({
218
- error: 'invalid_request',
219
- description: 'Missing authorization code or state parameter'
218
+ error: "invalid_request",
219
+ description: "Missing authorization code or state parameter",
220
220
  });
221
221
  return c.html(html, 400);
222
222
  }
@@ -228,15 +228,15 @@ export function createOAuthCallbackHandler(config = {}) {
228
228
  try {
229
229
  stateData = await oauthSecurityService.getOAuthState(stateParam);
230
230
  if (!stateData) {
231
- console.error('[OAuth] 🔒 SECURITY EVENT: State validation failed - state not found or expired:', {
232
- stateParam: stateParam.substring(0, 20) + '...',
231
+ console.error("[OAuth] 🔒 SECURITY EVENT: State validation failed - state not found or expired:", {
232
+ stateParam: stateParam.substring(0, 20) + "...",
233
233
  timestamp: new Date().toISOString(),
234
- eventType: 'csrf_protection_failed',
235
- reason: 'state_not_found_or_expired'
234
+ eventType: "csrf_protection_failed",
235
+ reason: "state_not_found_or_expired",
236
236
  });
237
237
  const html = errorTemplate({
238
- error: 'invalid_state',
239
- description: 'Invalid or expired state parameter. This may be a CSRF attack or the authorization request has expired.'
238
+ error: "invalid_state",
239
+ description: "Invalid or expired state parameter. This may be a CSRF attack or the authorization request has expired.",
240
240
  });
241
241
  return c.html(html, 400);
242
242
  }
@@ -247,46 +247,46 @@ export function createOAuthCallbackHandler(config = {}) {
247
247
  session_id: stateData.session_id,
248
248
  delegation_id: stateData.delegation_id,
249
249
  };
250
- console.log('[OAuth] 🔒 SECURITY EVENT: State validated successfully:', {
250
+ console.log("[OAuth] 🔒 SECURITY EVENT: State validated successfully:", {
251
251
  projectId: state.project_id,
252
- agentDid: state.agent_did.substring(0, 20) + '...',
253
- sessionId: state.session_id?.substring(0, 20) + '...',
252
+ agentDid: state.agent_did.substring(0, 20) + "...",
253
+ sessionId: state.session_id?.substring(0, 20) + "...",
254
254
  timestamp: new Date().toISOString(),
255
- eventType: 'csrf_protection_success',
256
- stateStoredAt: stateData.storedAt
255
+ eventType: "csrf_protection_success",
256
+ stateStoredAt: stateData.storedAt,
257
257
  });
258
258
  }
259
259
  catch (err) {
260
- console.error('[OAuth] 🔒 SECURITY EVENT: State validation error:', {
260
+ console.error("[OAuth] 🔒 SECURITY EVENT: State validation error:", {
261
261
  error: err instanceof Error ? err.message : String(err),
262
- stateParam: stateParam.substring(0, 20) + '...',
262
+ stateParam: stateParam.substring(0, 20) + "...",
263
263
  timestamp: new Date().toISOString(),
264
- eventType: 'csrf_protection_error',
265
- reason: 'validation_exception'
264
+ eventType: "csrf_protection_error",
265
+ reason: "validation_exception",
266
266
  });
267
267
  const html = errorTemplate({
268
- error: 'invalid_state',
269
- description: 'Failed to validate state parameter'
268
+ error: "invalid_state",
269
+ description: "Failed to validate state parameter",
270
270
  });
271
271
  return c.html(html, 400);
272
272
  }
273
273
  }
274
274
  else {
275
275
  // Fallback: Decode state parameter directly (less secure, but backward compatible)
276
- console.warn('[OAuth] ⚠️ SECURITY WARNING: OAuthSecurityService not provided, using insecure state decoding');
276
+ console.warn("[OAuth] ⚠️ SECURITY WARNING: OAuthSecurityService not provided, using insecure state decoding");
277
277
  try {
278
278
  state = JSON.parse(atob(stateParam));
279
279
  }
280
280
  catch (err) {
281
- console.error('[OAuth] 🔒 SECURITY EVENT: Failed to decode state:', {
281
+ console.error("[OAuth] 🔒 SECURITY EVENT: Failed to decode state:", {
282
282
  error: err instanceof Error ? err.message : String(err),
283
283
  timestamp: new Date().toISOString(),
284
- eventType: 'oauth_validation_failed',
285
- reason: 'state_decode_error'
284
+ eventType: "oauth_validation_failed",
285
+ reason: "state_decode_error",
286
286
  });
287
287
  const html = errorTemplate({
288
- error: 'invalid_state',
289
- description: 'Invalid state parameter'
288
+ error: "invalid_state",
289
+ description: "Invalid state parameter",
290
290
  });
291
291
  return c.html(html, 400);
292
292
  }
@@ -294,10 +294,10 @@ export function createOAuthCallbackHandler(config = {}) {
294
294
  const { project_id, agent_did, session_id, delegation_id } = state;
295
295
  // Validate session ID
296
296
  if (!session_id) {
297
- console.error('[OAuth] No session ID in state');
297
+ console.error("[OAuth] No session ID in state");
298
298
  const html = errorTemplate({
299
- error: 'missing_session',
300
- description: 'No session ID provided in OAuth state'
299
+ error: "missing_session",
300
+ description: "No session ID provided in OAuth state",
301
301
  });
302
302
  return c.html(html, 400);
303
303
  }
@@ -307,13 +307,13 @@ export function createOAuthCallbackHandler(config = {}) {
307
307
  const codeVerifier = stateData?.code_verifier;
308
308
  const redirectUri = stateData?.redirect_uri;
309
309
  const requestedScopes = stateData?.scopes || [];
310
- console.log('[OAuth] 🔒 SECURITY EVENT: Processing authorization code exchange:', {
310
+ console.log("[OAuth] 🔒 SECURITY EVENT: Processing authorization code exchange:", {
311
311
  projectId: project_id,
312
- agentDid: agent_did.substring(0, 20) + '...',
313
- sessionId: session_id?.substring(0, 20) + '...',
312
+ agentDid: agent_did.substring(0, 20) + "...",
313
+ sessionId: session_id?.substring(0, 20) + "...",
314
314
  delegationId: delegation_id,
315
315
  timestamp: new Date().toISOString(),
316
- eventType: 'oauth_code_exchange_start',
316
+ eventType: "oauth_code_exchange_start",
317
317
  hasSecureState: !!oauthSecurityService,
318
318
  isDirectPKCE,
319
319
  provider: stateProvider,
@@ -323,27 +323,35 @@ export function createOAuthCallbackHandler(config = {}) {
323
323
  try {
324
324
  // Check if this is a direct PKCE flow (exchange with provider directly)
325
325
  if (isDirectPKCE && stateProvider && codeVerifier && redirectUri) {
326
- console.log('[OAuth] 🔐 Direct PKCE flow detected, exchanging with provider directly:', {
326
+ console.log("[OAuth] 🔐 Direct PKCE flow detected, exchanging with provider directly:", {
327
327
  provider: stateProvider,
328
328
  redirectUri,
329
329
  projectId: project_id,
330
330
  });
331
331
  // Import services for direct PKCE flow
332
- const { OAuthService, OAuthConfigService } = await import('@kya-os/mcp-i-core');
333
- const { KVOAuthConfigCache } = await import('../cache/kv-oauth-config-cache.js');
332
+ const { OAuthService, OAuthConfigService } = await import("@kya-os/mcp-i-core");
333
+ const { KVOAuthConfigCache } = await import("../cache/kv-oauth-config-cache.js");
334
334
  // Create fetch provider for OAuth services
335
335
  const fetchProvider = {
336
336
  fetch: globalThis.fetch.bind(globalThis),
337
337
  // These methods are not needed for PKCE token exchange, stub them
338
- resolveDID: async () => { throw new Error('Not implemented'); },
339
- fetchStatusList: async () => { throw new Error('Not implemented'); },
340
- fetchDelegationChain: async () => { throw new Error('Not implemented'); },
338
+ resolveDID: async () => {
339
+ throw new Error("Not implemented");
340
+ },
341
+ fetchStatusList: async () => {
342
+ throw new Error("Not implemented");
343
+ },
344
+ fetchDelegationChain: async () => {
345
+ throw new Error("Not implemented");
346
+ },
341
347
  };
342
348
  // Initialize OAuth services
343
- const oauthConfigCache = new KVOAuthConfigCache({ kv: delegationStorage });
344
- const apiKey = env.AGENTSHIELD_API_KEY || '';
349
+ const oauthConfigCache = new KVOAuthConfigCache({
350
+ kv: delegationStorage,
351
+ });
352
+ const apiKey = env.AGENTSHIELD_API_KEY || "";
345
353
  const oauthConfigService = new OAuthConfigService({
346
- baseUrl: env.AGENTSHIELD_API_URL || 'https://kya.vouched.id',
354
+ baseUrl: env.AGENTSHIELD_API_URL || "https://kya.vouched.id",
347
355
  apiKey: apiKey,
348
356
  fetchProvider: fetchProvider,
349
357
  cache: oauthConfigCache,
@@ -351,14 +359,14 @@ export function createOAuthCallbackHandler(config = {}) {
351
359
  const oauthService = new OAuthService({
352
360
  configService: oauthConfigService,
353
361
  fetchProvider: fetchProvider,
354
- agentShieldApiUrl: env.AGENTSHIELD_API_URL || 'https://kya.vouched.id',
362
+ agentShieldApiUrl: env.AGENTSHIELD_API_URL || "https://kya.vouched.id",
355
363
  agentShieldApiKey: apiKey,
356
364
  projectId: project_id,
357
365
  logger: (msg, data) => console.log(`[OAuthService] ${msg}`, data),
358
366
  });
359
367
  // Step 1: Exchange authorization code with OAuth provider (GitHub) directly
360
368
  const idpTokens = await oauthService.exchangeToken(stateProvider, code, codeVerifier, redirectUri);
361
- console.log('[OAuth] ✅ Direct PKCE token exchange successful:', {
369
+ console.log("[OAuth] ✅ Direct PKCE token exchange successful:", {
362
370
  provider: stateProvider,
363
371
  hasAccessToken: !!idpTokens.access_token,
364
372
  expiresAt: new Date(idpTokens.expires_at).toISOString(),
@@ -371,13 +379,13 @@ export function createOAuthCallbackHandler(config = {}) {
371
379
  try {
372
380
  const userInfoResponse = await fetch(providerConfig.userInfoUrl, {
373
381
  headers: {
374
- 'Authorization': `Bearer ${idpTokens.access_token}`,
375
- 'Accept': 'application/json',
382
+ Authorization: `Bearer ${idpTokens.access_token}`,
383
+ Accept: "application/json",
376
384
  },
377
385
  });
378
386
  if (userInfoResponse.ok) {
379
387
  userInfo = await userInfoResponse.json();
380
- console.log('[OAuth] ✅ User info retrieved:', {
388
+ console.log("[OAuth] ✅ User info retrieved:", {
381
389
  provider: stateProvider,
382
390
  hasEmail: !!userInfo?.email,
383
391
  hasName: !!userInfo?.name,
@@ -385,7 +393,7 @@ export function createOAuthCallbackHandler(config = {}) {
385
393
  }
386
394
  }
387
395
  catch (err) {
388
- console.warn('[OAuth] Failed to get user info (non-fatal):', err);
396
+ console.warn("[OAuth] Failed to get user info (non-fatal):", err);
389
397
  }
390
398
  }
391
399
  // Step 3: Create delegation on AgentShield
@@ -393,11 +401,11 @@ export function createOAuthCallbackHandler(config = {}) {
393
401
  // Build user identifier from OAuth user info
394
402
  const userIdentifier = userInfo?.email || userInfo?.login || userInfo?.sub || userInfo?.id;
395
403
  const delegationResponse = await fetch(delegationEndpoint, {
396
- method: 'POST',
404
+ method: "POST",
397
405
  headers: {
398
- 'Content-Type': 'application/json',
399
- 'Authorization': `Bearer ${env.AGENTSHIELD_API_KEY}`,
400
- 'X-Project-Id': project_id,
406
+ "Content-Type": "application/json",
407
+ Authorization: `Bearer ${env.AGENTSHIELD_API_KEY}`,
408
+ "X-Project-Id": project_id,
401
409
  },
402
410
  body: JSON.stringify({
403
411
  agent_did: agent_did,
@@ -408,34 +416,39 @@ export function createOAuthCallbackHandler(config = {}) {
408
416
  // Include OAuth metadata for audit trail
409
417
  metadata: {
410
418
  oauth_provider: stateProvider,
411
- oauth_flow: 'direct_pkce',
419
+ oauth_flow: "direct_pkce",
412
420
  oauth_user_id: userInfo?.sub || userInfo?.id || userInfo?.login,
413
421
  },
414
422
  }),
415
423
  });
416
424
  if (!delegationResponse.ok) {
417
425
  const errorText = await delegationResponse.text();
418
- console.error('[OAuth] 🔒 SECURITY EVENT: Delegation creation failed:', {
426
+ console.error("[OAuth] 🔒 SECURITY EVENT: Delegation creation failed:", {
419
427
  status: delegationResponse.status,
420
428
  error: errorText.substring(0, 200),
421
429
  projectId: project_id,
422
- agentDid: agent_did.substring(0, 20) + '...',
430
+ agentDid: agent_did.substring(0, 20) + "...",
423
431
  timestamp: new Date().toISOString(),
424
- eventType: 'delegation_creation_failed',
432
+ eventType: "delegation_creation_failed",
425
433
  });
426
434
  const html = errorTemplate({
427
- error: 'delegation_failed',
428
- description: 'Failed to create delegation after OAuth authorization'
435
+ error: "delegation_failed",
436
+ description: "Failed to create delegation after OAuth authorization",
429
437
  });
430
438
  return c.html(html, delegationResponse.status);
431
439
  }
432
440
  const delegationData = await delegationResponse.json();
433
441
  // Map delegation response to TokenExchangeResponse format
434
442
  tokenData = {
435
- delegation_token: delegationData.data?.delegation_token || delegationData.delegation_token,
436
- token_type: 'Bearer',
437
- expires_in: delegationData.data?.expires_in || delegationData.expires_in || 3600,
438
- delegation_id: delegationData.data?.delegation_id || delegationData.delegation_id || `del_${Date.now()}`,
443
+ delegation_token: delegationData.data?.delegation_token ||
444
+ delegationData.delegation_token,
445
+ token_type: "Bearer",
446
+ expires_in: delegationData.data?.expires_in ||
447
+ delegationData.expires_in ||
448
+ 3600,
449
+ delegation_id: delegationData.data?.delegation_id ||
450
+ delegationData.delegation_id ||
451
+ `del_${Date.now()}`,
439
452
  scopes: requestedScopes,
440
453
  session_id: session_id,
441
454
  };
@@ -443,7 +456,7 @@ export function createOAuthCallbackHandler(config = {}) {
443
456
  tokenData.provider = stateProvider;
444
457
  tokenData.idp_tokens = idpTokens;
445
458
  tokenData.user_info = userInfo;
446
- console.log('[OAuth] ✅ Direct PKCE flow complete:', {
459
+ console.log("[OAuth] ✅ Direct PKCE flow complete:", {
447
460
  delegationId: tokenData.delegation_id,
448
461
  provider: stateProvider,
449
462
  hasIdpTokens: true,
@@ -453,34 +466,34 @@ export function createOAuthCallbackHandler(config = {}) {
453
466
  else {
454
467
  // Bouncer flow: Exchange via AgentShield's OAuth token endpoint
455
468
  // This is the legacy flow for proxy mode or when PKCE is not available
456
- console.log('[OAuth] 📡 Using bouncer flow for token exchange');
469
+ console.log("[OAuth] 📡 Using bouncer flow for token exchange");
457
470
  const tokenEndpoint = `${agentShieldApiUrl}/api/v1/bouncer/oauth/token`;
458
471
  const tokenResponse = await fetch(tokenEndpoint, {
459
- method: 'POST',
472
+ method: "POST",
460
473
  headers: {
461
- 'Content-Type': 'application/json',
462
- 'Accept': 'application/json'
474
+ "Content-Type": "application/json",
475
+ Accept: "application/json",
463
476
  },
464
477
  body: JSON.stringify({
465
- grant_type: 'authorization_code',
478
+ grant_type: "authorization_code",
466
479
  code: code,
467
480
  agent_did: agent_did,
468
- project_id: project_id
469
- })
481
+ project_id: project_id,
482
+ }),
470
483
  });
471
484
  if (!tokenResponse.ok) {
472
485
  const errorText = await tokenResponse.text();
473
- console.error('[OAuth] 🔒 SECURITY EVENT: Token exchange failed:', {
486
+ console.error("[OAuth] 🔒 SECURITY EVENT: Token exchange failed:", {
474
487
  status: tokenResponse.status,
475
488
  error: errorText.substring(0, 200),
476
489
  projectId: project_id,
477
- agentDid: agent_did.substring(0, 20) + '...',
490
+ agentDid: agent_did.substring(0, 20) + "...",
478
491
  timestamp: new Date().toISOString(),
479
- eventType: 'oauth_token_exchange_failed'
492
+ eventType: "oauth_token_exchange_failed",
480
493
  });
481
494
  const html = errorTemplate({
482
- error: 'token_exchange_failed',
483
- description: 'Failed to exchange authorization code for delegation token'
495
+ error: "token_exchange_failed",
496
+ description: "Failed to exchange authorization code for delegation token",
484
497
  });
485
498
  return c.html(html, tokenResponse.status);
486
499
  }
@@ -488,26 +501,26 @@ export function createOAuthCallbackHandler(config = {}) {
488
501
  }
489
502
  // Validate token response
490
503
  if (!tokenData.delegation_token) {
491
- console.error('[OAuth] 🔒 SECURITY EVENT: Invalid token response:', {
504
+ console.error("[OAuth] 🔒 SECURITY EVENT: Invalid token response:", {
492
505
  hasDelegationToken: !!tokenData.delegation_token,
493
506
  responseKeys: Object.keys(tokenData),
494
507
  projectId: project_id,
495
508
  timestamp: new Date().toISOString(),
496
- eventType: 'oauth_invalid_token_response'
509
+ eventType: "oauth_invalid_token_response",
497
510
  });
498
511
  const html = errorTemplate({
499
- error: 'invalid_response',
500
- description: 'Invalid token response from authorization server'
512
+ error: "invalid_response",
513
+ description: "Invalid token response from authorization server",
501
514
  });
502
515
  return c.html(html, 500);
503
516
  }
504
- console.log('[OAuth] 🔒 SECURITY EVENT: Token exchange successful:', {
517
+ console.log("[OAuth] 🔒 SECURITY EVENT: Token exchange successful:", {
505
518
  delegationId: tokenData.delegation_id,
506
519
  sessionId: tokenData.session_id || session_id,
507
520
  expiresIn: tokenData.expires_in,
508
521
  scopes: tokenData.scopes,
509
522
  timestamp: new Date().toISOString(),
510
- eventType: 'oauth_token_exchange_success'
523
+ eventType: "oauth_token_exchange_success",
511
524
  });
512
525
  // Phase 4 PR #3: Extract OAuth user info and link to User DID
513
526
  let oauthIdentity = null;
@@ -523,13 +536,15 @@ export function createOAuthCallbackHandler(config = {}) {
523
536
  // 2. State parameter (if stored during OAuth initiation)
524
537
  // 3. Environment variable (if configured)
525
538
  // 4. Default fallback ('google')
526
- const provider = tokenData.provider
527
- || state.provider
528
- || env.DEFAULT_OAUTH_PROVIDER
529
- || 'google';
539
+ const provider = tokenData.provider ||
540
+ state.provider ||
541
+ env.DEFAULT_OAUTH_PROVIDER ||
542
+ "google";
530
543
  oauthIdentity = {
531
544
  provider: provider,
532
- subject: userInfoFromToken.sub || userInfoFromToken.id || userInfoFromToken.email,
545
+ subject: userInfoFromToken.sub ||
546
+ userInfoFromToken.id ||
547
+ userInfoFromToken.email,
533
548
  email: userInfoFromToken.email,
534
549
  name: userInfoFromToken.name || userInfoFromToken.display_name,
535
550
  };
@@ -539,8 +554,8 @@ export function createOAuthCallbackHandler(config = {}) {
539
554
  // This requires an access_token from the token exchange
540
555
  // For now, we'll log a warning and skip OAuth linking
541
556
  // TODO: Implement userinfo endpoint call if access_token is available
542
- console.warn('[OAuth] User info not available in token response. OAuth linking skipped.');
543
- console.warn('[OAuth] To enable OAuth linking, ensure AgentShield returns user info or access_token in token response.');
557
+ console.warn("[OAuth] User info not available in token response. OAuth linking skipped.");
558
+ console.warn("[OAuth] To enable OAuth linking, ensure AgentShield returns user info or access_token in token response.");
544
559
  }
545
560
  // Link OAuth identity to User DID if we have it
546
561
  if (oauthIdentity && oauthIdentity.subject) {
@@ -548,25 +563,25 @@ export function createOAuthCallbackHandler(config = {}) {
548
563
  // Set OAuth identity cookie for consent page
549
564
  const cookieValue = encodeURIComponent(JSON.stringify(oauthIdentity));
550
565
  c.header("Set-Cookie", `oauth_identity=${cookieValue}; HttpOnly; Secure; SameSite=Lax; Max-Age=604800; Path=/`);
551
- console.log('[OAuth] 🔒 SECURITY EVENT: OAuth identity linked and cookie set:', {
566
+ console.log("[OAuth] 🔒 SECURITY EVENT: OAuth identity linked and cookie set:", {
552
567
  provider: oauthIdentity.provider,
553
- subject: oauthIdentity.subject.substring(0, 20) + '...',
554
- userDid: userDid.substring(0, 20) + '...',
555
- sessionId: session_id?.substring(0, 20) + '...',
568
+ subject: oauthIdentity.subject.substring(0, 20) + "...",
569
+ userDid: userDid.substring(0, 20) + "...",
570
+ sessionId: session_id?.substring(0, 20) + "...",
556
571
  timestamp: new Date().toISOString(),
557
- eventType: 'oauth_identity_linked',
558
- cookieSet: true
572
+ eventType: "oauth_identity_linked",
573
+ cookieSet: true,
559
574
  });
560
575
  }
561
576
  }
562
577
  catch (error) {
563
578
  // OAuth linking errors are non-fatal - log but continue
564
- console.error('[OAuth] 🔒 SECURITY EVENT: Failed to link OAuth identity (non-fatal):', {
579
+ console.error("[OAuth] 🔒 SECURITY EVENT: Failed to link OAuth identity (non-fatal):", {
565
580
  error: error instanceof Error ? error.message : String(error),
566
- sessionId: session_id?.substring(0, 20) + '...',
581
+ sessionId: session_id?.substring(0, 20) + "...",
567
582
  timestamp: new Date().toISOString(),
568
- eventType: 'oauth_identity_linking_failed',
569
- severity: 'warning'
583
+ eventType: "oauth_identity_linking_failed",
584
+ severity: "warning",
570
585
  });
571
586
  }
572
587
  }
@@ -574,7 +589,9 @@ export function createOAuthCallbackHandler(config = {}) {
574
589
  // After receiving delegation token, retrieve OAuth tokens separately
575
590
  // Note: userDid may not be available if OAuth linking failed, but we still need to store tokens
576
591
  // For PKCE flows, we can use session-based userDid lookup if needed
577
- if (delegationStorage && oauthSecurityService && tokenData.delegation_id) {
592
+ if (delegationStorage &&
593
+ oauthSecurityService &&
594
+ tokenData.delegation_id) {
578
595
  try {
579
596
  // Extract provider from state or token response
580
597
  const provider = tokenData.provider ||
@@ -594,7 +611,8 @@ export function createOAuthCallbackHandler(config = {}) {
594
611
  let effectiveUserDid = userDid;
595
612
  if (!effectiveUserDid && session_id && consentService) {
596
613
  try {
597
- effectiveUserDid = await consentService.getUserDidForSession(session_id);
614
+ effectiveUserDid =
615
+ await consentService.getUserDidForSession(session_id);
598
616
  }
599
617
  catch (error) {
600
618
  console.warn("[OAuth] Failed to get userDid from session, skipping token storage:", {
@@ -709,47 +727,49 @@ export function createOAuthCallbackHandler(config = {}) {
709
727
  if (delegationStorage) {
710
728
  // Use != null to properly handle expires_in: 0 (immediate expiration)
711
729
  // Truthiness check would incorrectly treat 0 as missing
712
- const ttl = tokenData.expires_in != null ? tokenData.expires_in : (7 * 24 * 60 * 60); // Default 7 days
730
+ const ttl = tokenData.expires_in != null
731
+ ? tokenData.expires_in
732
+ : 7 * 24 * 60 * 60; // Default 7 days
713
733
  try {
714
734
  // Get userDID from session if available (Phase 4)
715
735
  // Use linked userDid if available, otherwise check session
716
736
  let sessionUserDid = userDid;
717
737
  const sessionKey = STORAGE_KEYS.session(session_id);
718
738
  if (!sessionUserDid) {
719
- const sessionData = await delegationStorage.get(sessionKey, "json");
739
+ const sessionData = (await delegationStorage.get(sessionKey, "json"));
720
740
  sessionUserDid = sessionData?.userDid;
721
741
  }
722
742
  // Primary: User+Agent scoped (no conflicts) - Phase 4
723
743
  if (sessionUserDid) {
724
744
  const userAgentKey = STORAGE_KEYS.delegation(sessionUserDid, agent_did);
725
745
  await delegationStorage.put(userAgentKey, tokenData.delegation_token, {
726
- expirationTtl: ttl
746
+ expirationTtl: ttl,
727
747
  });
728
- console.log('[OAuth] 🔒 SECURITY EVENT: Delegation token stored with user+agent DID:', {
729
- key: userAgentKey.substring(0, 50) + '...',
748
+ console.log("[OAuth] 🔒 SECURITY EVENT: Delegation token stored with user+agent DID:", {
749
+ key: userAgentKey.substring(0, 50) + "...",
730
750
  ttl,
731
- agentDid: agent_did.substring(0, 20) + '...',
732
- userDid: sessionUserDid.substring(0, 20) + '...',
751
+ agentDid: agent_did.substring(0, 20) + "...",
752
+ userDid: sessionUserDid.substring(0, 20) + "...",
733
753
  delegationId: tokenData.delegation_id,
734
754
  timestamp: new Date().toISOString(),
735
- eventType: 'delegation_token_stored',
736
- storageType: 'user_agent_scoped'
755
+ eventType: "delegation_token_stored",
756
+ storageType: "user_agent_scoped",
737
757
  });
738
758
  }
739
759
  // Backward compatibility: Agent-only key (24 hour TTL)
740
760
  const legacyKey = STORAGE_KEYS.legacyDelegation(agent_did);
741
761
  await delegationStorage.put(legacyKey, tokenData.delegation_token, {
742
- expirationTtl: 24 * 60 * 60 // 24 hours only
762
+ expirationTtl: 24 * 60 * 60, // 24 hours only
743
763
  });
744
- console.log('[OAuth] 🔒 SECURITY EVENT: Delegation token stored with legacy agent key:', {
745
- key: legacyKey.substring(0, 50) + '...',
764
+ console.log("[OAuth] 🔒 SECURITY EVENT: Delegation token stored with legacy agent key:", {
765
+ key: legacyKey.substring(0, 50) + "...",
746
766
  ttl: 24 * 60 * 60,
747
- agentDid: agent_did.substring(0, 20) + '...',
767
+ agentDid: agent_did.substring(0, 20) + "...",
748
768
  delegationId: tokenData.delegation_id,
749
769
  timestamp: new Date().toISOString(),
750
- eventType: 'delegation_token_stored',
751
- storageType: 'legacy_agent_scoped',
752
- warning: 'Legacy format - migrate to user+agent scoped tokens'
770
+ eventType: "delegation_token_stored",
771
+ storageType: "legacy_agent_scoped",
772
+ warning: "Legacy format - migrate to user+agent scoped tokens",
753
773
  });
754
774
  // Session cache for fast lookup (shorter TTL for performance)
755
775
  await delegationStorage.put(sessionKey, JSON.stringify({
@@ -758,16 +778,16 @@ export function createOAuthCallbackHandler(config = {}) {
758
778
  delegationToken: tokenData.delegation_token,
759
779
  cachedAt: Date.now(),
760
780
  }), {
761
- expirationTtl: Math.min(ttl, 1800) // 30 minutes or token TTL, whichever is shorter
781
+ expirationTtl: Math.min(ttl, 1800), // 30 minutes or token TTL, whichever is shorter
762
782
  });
763
- console.log('[OAuth] 🔒 SECURITY EVENT: Delegation token cached for session:', {
764
- key: sessionKey.substring(0, 50) + '...',
783
+ console.log("[OAuth] 🔒 SECURITY EVENT: Delegation token cached for session:", {
784
+ key: sessionKey.substring(0, 50) + "...",
765
785
  ttl: Math.min(ttl, 1800),
766
- sessionId: session_id?.substring(0, 20) + '...',
767
- userDid: sessionUserDid?.substring(0, 20) + '...',
786
+ sessionId: session_id?.substring(0, 20) + "...",
787
+ userDid: sessionUserDid?.substring(0, 20) + "...",
768
788
  timestamp: new Date().toISOString(),
769
- eventType: 'delegation_token_cached',
770
- storageType: 'session_cache'
789
+ eventType: "delegation_token_cached",
790
+ storageType: "session_cache",
771
791
  });
772
792
  // Fire-and-forget notification to AgentShield for audit trail
773
793
  // This enables dashboard visibility into delegations created via direct OAuth flow
@@ -777,13 +797,13 @@ export function createOAuthCallbackHandler(config = {}) {
777
797
  // Use != null to properly handle expires_in: 0 (immediate expiration)
778
798
  // Truthiness check would incorrectly treat 0 as missing
779
799
  const expiresAt = tokenData.expires_in != null
780
- ? new Date(Date.now() + (tokenData.expires_in * 1000)).toISOString()
800
+ ? new Date(Date.now() + tokenData.expires_in * 1000).toISOString()
781
801
  : null;
782
802
  fetch(delegationNotifyUrl, {
783
- method: 'POST',
803
+ method: "POST",
784
804
  headers: {
785
- 'Content-Type': 'application/json',
786
- 'X-AgentShield-Key': env.AGENTSHIELD_API_KEY || '',
805
+ "Content-Type": "application/json",
806
+ "X-AgentShield-Key": env.AGENTSHIELD_API_KEY || "",
787
807
  },
788
808
  // AgentShield notifyDelegationSchema uses snake_case
789
809
  body: JSON.stringify({
@@ -803,28 +823,30 @@ export function createOAuthCallbackHandler(config = {}) {
803
823
  expires_at: expiresAt || undefined,
804
824
  // Metadata for audit trail and debugging
805
825
  metadata: {
806
- source: 'mcp-i-direct-oauth',
807
- oauth_flow: 'pkce',
826
+ source: "mcp-i-direct-oauth",
827
+ oauth_flow: "pkce",
808
828
  mcp_server_name: agentName || undefined,
809
829
  session_id: session_id || undefined,
810
830
  },
811
831
  }),
812
- }).then(response => {
832
+ })
833
+ .then((response) => {
813
834
  if (response.ok) {
814
- console.log('[OAuth] Delegation notification sent to AgentShield:', {
835
+ console.log("[OAuth] Delegation notification sent to AgentShield:", {
815
836
  delegation_id: tokenData.delegation_id,
816
837
  project_id: project_id,
817
838
  agent_name: agentName,
818
839
  });
819
840
  }
820
841
  else {
821
- console.warn('[OAuth] Delegation notification failed (non-blocking):', {
842
+ console.warn("[OAuth] Delegation notification failed (non-blocking):", {
822
843
  status: response.status,
823
844
  delegation_id: tokenData.delegation_id,
824
845
  });
825
846
  }
826
- }).catch(err => {
827
- console.warn('[OAuth] Delegation notification failed (non-blocking):', {
847
+ })
848
+ .catch((err) => {
849
+ console.warn("[OAuth] Delegation notification failed (non-blocking):", {
828
850
  error: err instanceof Error ? err.message : String(err),
829
851
  delegation_id: tokenData.delegation_id,
830
852
  });
@@ -832,12 +854,14 @@ export function createOAuthCallbackHandler(config = {}) {
832
854
  }
833
855
  catch (storageError) {
834
856
  // Storage errors are non-fatal - log but continue
835
- console.error('[OAuth] 🔒 SECURITY EVENT: Storage error (non-fatal):', {
836
- error: storageError instanceof Error ? storageError.message : String(storageError),
837
- sessionId: session_id?.substring(0, 20) + '...',
857
+ console.error("[OAuth] 🔒 SECURITY EVENT: Storage error (non-fatal):", {
858
+ error: storageError instanceof Error
859
+ ? storageError.message
860
+ : String(storageError),
861
+ sessionId: session_id?.substring(0, 20) + "...",
838
862
  timestamp: new Date().toISOString(),
839
- eventType: 'delegation_storage_error',
840
- severity: 'warning'
863
+ eventType: "delegation_storage_error",
864
+ severity: "warning",
841
865
  });
842
866
  }
843
867
  }
@@ -846,21 +870,23 @@ export function createOAuthCallbackHandler(config = {}) {
846
870
  delegationId: tokenData.delegation_id || delegation_id,
847
871
  sessionId: session_id,
848
872
  scopes: tokenData.scopes || [],
849
- expiresIn: autoClose ? autoCloseDelay : 0
873
+ expiresIn: autoClose ? autoCloseDelay : 0,
850
874
  });
851
875
  return c.html(html);
852
876
  }
853
877
  catch (error) {
854
- console.error('[OAuth] 🔒 SECURITY EVENT: Unexpected error:', {
878
+ console.error("[OAuth] 🔒 SECURITY EVENT: Unexpected error:", {
855
879
  error: error instanceof Error ? error.message : String(error),
856
880
  stack: error instanceof Error ? error.stack : undefined,
857
881
  timestamp: new Date().toISOString(),
858
- eventType: 'oauth_unexpected_error',
859
- severity: 'error'
882
+ eventType: "oauth_unexpected_error",
883
+ severity: "error",
860
884
  });
861
885
  const html = errorTemplate({
862
- error: 'internal_error',
863
- description: error instanceof Error ? error.message : 'An unexpected error occurred'
886
+ error: "internal_error",
887
+ description: error instanceof Error
888
+ ? error.message
889
+ : "An unexpected error occurred",
864
890
  });
865
891
  return c.html(html, 500);
866
892
  }
@@ -879,17 +905,17 @@ export function createOAuthCallbackHandler(config = {}) {
879
905
  */
880
906
  export function extractDelegationToken(c) {
881
907
  // Check Authorization header
882
- const authHeader = c.req.header('Authorization');
883
- if (authHeader?.startsWith('Bearer ')) {
908
+ const authHeader = c.req.header("Authorization");
909
+ if (authHeader?.startsWith("Bearer ")) {
884
910
  return authHeader.substring(7);
885
911
  }
886
912
  // Check custom header
887
- const customHeader = c.req.header('x-delegation-token');
913
+ const customHeader = c.req.header("x-delegation-token");
888
914
  if (customHeader) {
889
915
  return customHeader;
890
916
  }
891
917
  // Check query parameter
892
- const queryParam = c.req.query('delegation_token');
918
+ const queryParam = c.req.query("delegation_token");
893
919
  if (queryParam) {
894
920
  return queryParam;
895
921
  }
@@ -1 +1 @@
1
- {"version":3,"file":"oauth-handler.js","sourceRoot":"","sources":["../../src/runtime/oauth-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oauth-handler.js","sourceRoot":"","sources":["../../src/runtime/oauth-handler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kya-os/mcp-i-cloudflare",
3
- "version": "1.6.12",
3
+ "version": "1.6.14",
4
4
  "description": "Cloudflare Workers adapter for MCP-I framework",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -18,7 +18,7 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "@kya-os/contracts": "^1.6.1",
21
- "@kya-os/mcp-i-core": "^1.3.4",
21
+ "@kya-os/mcp-i-core": "^1.3.6",
22
22
  "@modelcontextprotocol/sdk": "^1.22.0",
23
23
  "agents": "^0.2.21",
24
24
  "base-x": "^5.0.0",
@@ -1,37 +0,0 @@
1
- /**
2
- * E2E Test Configuration
3
- *
4
- * This file contains configuration for end-to-end tests that use real AgentShield API.
5
- * Set these environment variables before running E2E tests:
6
- *
7
- * ```bash
8
- * export E2E_AGENTSHIELD_API_KEY="sk_test_..."
9
- * export E2E_AGENTSHIELD_PROJECT_ID="test-project-id"
10
- * export E2E_AGENTSHIELD_API_URL="https://kya.vouched.id" # Optional, defaults to production
11
- * ```
12
- *
13
- * Or create a `.env.e2e` file in the package root:
14
- * ```
15
- * E2E_AGENTSHIELD_API_KEY=sk_test_...
16
- * E2E_AGENTSHIELD_PROJECT_ID=test-project-id
17
- * ```
18
- */
19
- export interface E2ETestConfig {
20
- apiKey: string;
21
- projectId: string;
22
- apiUrl: string;
23
- enabled: boolean;
24
- }
25
- /**
26
- * Load E2E test configuration from environment variables
27
- */
28
- export declare function loadE2EConfig(): E2ETestConfig | null;
29
- /**
30
- * Check if E2E tests should run
31
- */
32
- export declare function shouldRunE2ETests(): boolean;
33
- /**
34
- * Get E2E test configuration or throw if not configured
35
- */
36
- export declare function getE2EConfig(): E2ETestConfig;
37
- //# sourceMappingURL=test-config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-config.d.ts","sourceRoot":"","sources":["../../../src/__tests__/e2e/test-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAWH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,aAAa,GAAG,IAAI,CAyBpD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAG3C;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,aAAa,CAU5C"}
@@ -1,62 +0,0 @@
1
- /**
2
- * E2E Test Configuration
3
- *
4
- * This file contains configuration for end-to-end tests that use real AgentShield API.
5
- * Set these environment variables before running E2E tests:
6
- *
7
- * ```bash
8
- * export E2E_AGENTSHIELD_API_KEY="sk_test_..."
9
- * export E2E_AGENTSHIELD_PROJECT_ID="test-project-id"
10
- * export E2E_AGENTSHIELD_API_URL="https://kya.vouched.id" # Optional, defaults to production
11
- * ```
12
- *
13
- * Or create a `.env.e2e` file in the package root:
14
- * ```
15
- * E2E_AGENTSHIELD_API_KEY=sk_test_...
16
- * E2E_AGENTSHIELD_PROJECT_ID=test-project-id
17
- * ```
18
- */
19
- /**
20
- * Load E2E test configuration from environment variables
21
- */
22
- export function loadE2EConfig() {
23
- // Access environment variables - works in Node.js (vitest) environment
24
- const apiKey = typeof process !== "undefined" && process.env
25
- ? process.env.E2E_AGENTSHIELD_API_KEY
26
- : undefined;
27
- const projectId = typeof process !== "undefined" && process.env
28
- ? process.env.E2E_AGENTSHIELD_PROJECT_ID
29
- : undefined;
30
- const apiUrl = typeof process !== "undefined" && process.env
31
- ? process.env.E2E_AGENTSHIELD_API_URL || "https://kya.vouched.id"
32
- : "https://kya.vouched.id";
33
- if (!apiKey || !projectId) {
34
- return null;
35
- }
36
- return {
37
- apiKey,
38
- projectId,
39
- apiUrl,
40
- enabled: true,
41
- };
42
- }
43
- /**
44
- * Check if E2E tests should run
45
- */
46
- export function shouldRunE2ETests() {
47
- const config = loadE2EConfig();
48
- return config !== null && config.enabled;
49
- }
50
- /**
51
- * Get E2E test configuration or throw if not configured
52
- */
53
- export function getE2EConfig() {
54
- const config = loadE2EConfig();
55
- if (!config) {
56
- throw new Error("E2E tests require E2E_AGENTSHIELD_API_KEY and E2E_AGENTSHIELD_PROJECT_ID environment variables.\n" +
57
- "Set them in your environment or create a .env.e2e file.\n" +
58
- "See packages/mcp-i-cloudflare/src/__tests__/e2e/test-config.ts for details.");
59
- }
60
- return config;
61
- }
62
- //# sourceMappingURL=test-config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test-config.js","sourceRoot":"","sources":["../../../src/__tests__/e2e/test-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAkBH;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,uEAAuE;IACvE,MAAM,MAAM,GACV,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG;QAC3C,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB;QACrC,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,SAAS,GACb,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG;QAC3C,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B;QACxC,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,MAAM,GACV,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,GAAG;QAC3C,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,wBAAwB;QACjE,CAAC,CAAC,wBAAwB,CAAC;IAE/B,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,MAAM;QACN,SAAS;QACT,MAAM;QACN,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,OAAO,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY;IAC1B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,mGAAmG;YACjG,2DAA2D;YAC3D,6EAA6E,CAChF,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}