@kya-os/mcp-i-core 1.2.3-canary.6 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (231) hide show
  1. package/.claude/settings.local.json +9 -0
  2. package/.turbo/turbo-build.log +4 -0
  3. package/.turbo/turbo-test$colon$coverage.log +4514 -0
  4. package/.turbo/turbo-test.log +2973 -0
  5. package/COMPLIANCE_IMPROVEMENT_REPORT.md +483 -0
  6. package/Composer 3.md +615 -0
  7. package/GPT-5.md +1169 -0
  8. package/OPUS-plan.md +352 -0
  9. package/PHASE_3_AND_4.1_SUMMARY.md +585 -0
  10. package/PHASE_3_SUMMARY.md +317 -0
  11. package/PHASE_4.1.3_SUMMARY.md +428 -0
  12. package/PHASE_4.1_COMPLETE.md +525 -0
  13. package/PHASE_4_USER_DID_IDENTITY_LINKING_PLAN.md +1240 -0
  14. package/SCHEMA_COMPLIANCE_REPORT.md +275 -0
  15. package/TEST_PLAN.md +571 -0
  16. package/coverage/coverage-final.json +57 -0
  17. package/dist/__tests__/utils/mock-providers.d.ts +1 -2
  18. package/dist/__tests__/utils/mock-providers.d.ts.map +1 -1
  19. package/dist/__tests__/utils/mock-providers.js.map +1 -1
  20. package/dist/cache/oauth-config-cache.d.ts +69 -0
  21. package/dist/cache/oauth-config-cache.d.ts.map +1 -0
  22. package/dist/cache/oauth-config-cache.js +76 -0
  23. package/dist/cache/oauth-config-cache.js.map +1 -0
  24. package/dist/identity/idp-token-resolver.d.ts +53 -0
  25. package/dist/identity/idp-token-resolver.d.ts.map +1 -0
  26. package/dist/identity/idp-token-resolver.js +108 -0
  27. package/dist/identity/idp-token-resolver.js.map +1 -0
  28. package/dist/identity/idp-token-storage.interface.d.ts +42 -0
  29. package/dist/identity/idp-token-storage.interface.d.ts.map +1 -0
  30. package/dist/identity/idp-token-storage.interface.js +12 -0
  31. package/dist/identity/idp-token-storage.interface.js.map +1 -0
  32. package/dist/identity/user-did-manager.d.ts +39 -1
  33. package/dist/identity/user-did-manager.d.ts.map +1 -1
  34. package/dist/identity/user-did-manager.js +69 -3
  35. package/dist/identity/user-did-manager.js.map +1 -1
  36. package/dist/index.d.ts +22 -0
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.js +39 -1
  39. package/dist/index.js.map +1 -1
  40. package/dist/runtime/audit-logger.d.ts +37 -0
  41. package/dist/runtime/audit-logger.d.ts.map +1 -0
  42. package/dist/runtime/audit-logger.js +9 -0
  43. package/dist/runtime/audit-logger.js.map +1 -0
  44. package/dist/runtime/base.d.ts +58 -2
  45. package/dist/runtime/base.d.ts.map +1 -1
  46. package/dist/runtime/base.js +266 -11
  47. package/dist/runtime/base.js.map +1 -1
  48. package/dist/services/access-control.service.d.ts.map +1 -1
  49. package/dist/services/access-control.service.js +200 -35
  50. package/dist/services/access-control.service.js.map +1 -1
  51. package/dist/services/authorization/authorization-registry.d.ts +29 -0
  52. package/dist/services/authorization/authorization-registry.d.ts.map +1 -0
  53. package/dist/services/authorization/authorization-registry.js +57 -0
  54. package/dist/services/authorization/authorization-registry.js.map +1 -0
  55. package/dist/services/authorization/types.d.ts +53 -0
  56. package/dist/services/authorization/types.d.ts.map +1 -0
  57. package/dist/services/authorization/types.js +10 -0
  58. package/dist/services/authorization/types.js.map +1 -0
  59. package/dist/services/batch-delegation.service.d.ts +53 -0
  60. package/dist/services/batch-delegation.service.d.ts.map +1 -0
  61. package/dist/services/batch-delegation.service.js +95 -0
  62. package/dist/services/batch-delegation.service.js.map +1 -0
  63. package/dist/services/oauth-config.service.d.ts +53 -0
  64. package/dist/services/oauth-config.service.d.ts.map +1 -0
  65. package/dist/services/oauth-config.service.js +117 -0
  66. package/dist/services/oauth-config.service.js.map +1 -0
  67. package/dist/services/oauth-provider-registry.d.ts +77 -0
  68. package/dist/services/oauth-provider-registry.d.ts.map +1 -0
  69. package/dist/services/oauth-provider-registry.js +112 -0
  70. package/dist/services/oauth-provider-registry.js.map +1 -0
  71. package/dist/services/oauth-service.d.ts +77 -0
  72. package/dist/services/oauth-service.d.ts.map +1 -0
  73. package/dist/services/oauth-service.js +348 -0
  74. package/dist/services/oauth-service.js.map +1 -0
  75. package/dist/services/oauth-token-retrieval.service.d.ts +49 -0
  76. package/dist/services/oauth-token-retrieval.service.d.ts.map +1 -0
  77. package/dist/services/oauth-token-retrieval.service.js +150 -0
  78. package/dist/services/oauth-token-retrieval.service.js.map +1 -0
  79. package/dist/services/provider-resolver.d.ts +48 -0
  80. package/dist/services/provider-resolver.d.ts.map +1 -0
  81. package/dist/services/provider-resolver.js +120 -0
  82. package/dist/services/provider-resolver.js.map +1 -0
  83. package/dist/services/provider-validator.d.ts +55 -0
  84. package/dist/services/provider-validator.d.ts.map +1 -0
  85. package/dist/services/provider-validator.js +135 -0
  86. package/dist/services/provider-validator.js.map +1 -0
  87. package/dist/services/tool-context-builder.d.ts +57 -0
  88. package/dist/services/tool-context-builder.d.ts.map +1 -0
  89. package/dist/services/tool-context-builder.js +125 -0
  90. package/dist/services/tool-context-builder.js.map +1 -0
  91. package/dist/services/tool-protection.service.d.ts +87 -10
  92. package/dist/services/tool-protection.service.d.ts.map +1 -1
  93. package/dist/services/tool-protection.service.js +282 -112
  94. package/dist/services/tool-protection.service.js.map +1 -1
  95. package/dist/types/oauth-required-error.d.ts +40 -0
  96. package/dist/types/oauth-required-error.d.ts.map +1 -0
  97. package/dist/types/oauth-required-error.js +40 -0
  98. package/dist/types/oauth-required-error.js.map +1 -0
  99. package/dist/utils/did-helpers.d.ts +33 -0
  100. package/dist/utils/did-helpers.d.ts.map +1 -1
  101. package/dist/utils/did-helpers.js +40 -0
  102. package/dist/utils/did-helpers.js.map +1 -1
  103. package/dist/utils/index.d.ts +1 -0
  104. package/dist/utils/index.d.ts.map +1 -1
  105. package/dist/utils/index.js +1 -0
  106. package/dist/utils/index.js.map +1 -1
  107. package/docs/API_REFERENCE.md +1362 -0
  108. package/docs/COMPLIANCE_MATRIX.md +691 -0
  109. package/docs/STATUSLIST2021_GUIDE.md +696 -0
  110. package/docs/W3C_VC_DELEGATION_GUIDE.md +710 -0
  111. package/package.json +24 -50
  112. package/scripts/audit-compliance.ts +724 -0
  113. package/src/__tests__/cache/tool-protection-cache.test.ts +640 -0
  114. package/src/__tests__/config/provider-runtime-config.test.ts +309 -0
  115. package/src/__tests__/delegation-e2e.test.ts +690 -0
  116. package/src/__tests__/identity/user-did-manager.test.ts +213 -0
  117. package/src/__tests__/index.test.ts +56 -0
  118. package/src/__tests__/integration/full-flow.test.ts +776 -0
  119. package/src/__tests__/integration.test.ts +281 -0
  120. package/src/__tests__/providers/base.test.ts +173 -0
  121. package/src/__tests__/providers/memory.test.ts +319 -0
  122. package/src/__tests__/regression/phase2-regression.test.ts +427 -0
  123. package/src/__tests__/runtime/audit-logger.test.ts +154 -0
  124. package/src/__tests__/runtime/base-extensions.test.ts +593 -0
  125. package/src/__tests__/runtime/base.test.ts +869 -0
  126. package/src/__tests__/runtime/delegation-flow.test.ts +164 -0
  127. package/src/__tests__/runtime/proof-client-did.test.ts +375 -0
  128. package/src/__tests__/runtime/route-interception.test.ts +686 -0
  129. package/src/__tests__/runtime/tool-protection-enforcement.test.ts +908 -0
  130. package/src/__tests__/services/agentshield-integration.test.ts +784 -0
  131. package/src/__tests__/services/provider-resolver-edge-cases.test.ts +487 -0
  132. package/src/__tests__/services/tool-protection-oauth-provider.test.ts +480 -0
  133. package/src/__tests__/services/tool-protection.service.test.ts +1366 -0
  134. package/src/__tests__/utils/mock-providers.ts +340 -0
  135. package/src/cache/oauth-config-cache.d.ts +69 -0
  136. package/src/cache/oauth-config-cache.d.ts.map +1 -0
  137. package/src/cache/oauth-config-cache.js +71 -0
  138. package/src/cache/oauth-config-cache.js.map +1 -0
  139. package/src/cache/oauth-config-cache.ts +123 -0
  140. package/src/cache/tool-protection-cache.ts +171 -0
  141. package/src/compliance/EXAMPLE.md +412 -0
  142. package/src/compliance/__tests__/schema-verifier.test.ts +797 -0
  143. package/src/compliance/index.ts +8 -0
  144. package/src/compliance/schema-registry.ts +460 -0
  145. package/src/compliance/schema-verifier.ts +708 -0
  146. package/src/config/__tests__/remote-config.spec.ts +268 -0
  147. package/src/config/remote-config.ts +174 -0
  148. package/src/config.ts +309 -0
  149. package/src/delegation/__tests__/audience-validator.test.ts +112 -0
  150. package/src/delegation/__tests__/bitstring.test.ts +346 -0
  151. package/src/delegation/__tests__/cascading-revocation.test.ts +628 -0
  152. package/src/delegation/__tests__/delegation-graph.test.ts +584 -0
  153. package/src/delegation/__tests__/utils.test.ts +152 -0
  154. package/src/delegation/__tests__/vc-issuer.test.ts +442 -0
  155. package/src/delegation/__tests__/vc-verifier.test.ts +922 -0
  156. package/src/delegation/audience-validator.ts +52 -0
  157. package/src/delegation/bitstring.ts +278 -0
  158. package/src/delegation/cascading-revocation.ts +370 -0
  159. package/src/delegation/delegation-graph.ts +299 -0
  160. package/src/delegation/index.ts +14 -0
  161. package/src/delegation/statuslist-manager.ts +353 -0
  162. package/src/delegation/storage/__tests__/memory-graph-storage.test.ts +366 -0
  163. package/src/delegation/storage/__tests__/memory-statuslist-storage.test.ts +228 -0
  164. package/src/delegation/storage/index.ts +9 -0
  165. package/src/delegation/storage/memory-graph-storage.ts +178 -0
  166. package/src/delegation/storage/memory-statuslist-storage.ts +77 -0
  167. package/src/delegation/utils.ts +42 -0
  168. package/src/delegation/vc-issuer.ts +232 -0
  169. package/src/delegation/vc-verifier.ts +568 -0
  170. package/src/identity/idp-token-resolver.ts +147 -0
  171. package/src/identity/idp-token-storage.interface.ts +59 -0
  172. package/src/identity/user-did-manager.ts +370 -0
  173. package/src/index.ts +260 -0
  174. package/src/providers/base.d.ts +91 -0
  175. package/src/providers/base.d.ts.map +1 -0
  176. package/src/providers/base.js +38 -0
  177. package/src/providers/base.js.map +1 -0
  178. package/src/providers/base.ts +96 -0
  179. package/src/providers/memory.ts +142 -0
  180. package/src/runtime/audit-logger.ts +39 -0
  181. package/src/runtime/base.ts +1329 -0
  182. package/src/services/__tests__/access-control.integration.test.ts +443 -0
  183. package/src/services/__tests__/access-control.proof-response-validation.test.ts +578 -0
  184. package/src/services/__tests__/access-control.service.test.ts +970 -0
  185. package/src/services/__tests__/batch-delegation.service.test.ts +351 -0
  186. package/src/services/__tests__/crypto.service.test.ts +531 -0
  187. package/src/services/__tests__/oauth-provider-registry.test.ts +142 -0
  188. package/src/services/__tests__/proof-verifier.integration.test.ts +485 -0
  189. package/src/services/__tests__/proof-verifier.test.ts +489 -0
  190. package/src/services/__tests__/provider-resolution.integration.test.ts +198 -0
  191. package/src/services/__tests__/provider-resolver.test.ts +217 -0
  192. package/src/services/__tests__/storage.service.test.ts +358 -0
  193. package/src/services/access-control.service.ts +990 -0
  194. package/src/services/authorization/authorization-registry.ts +66 -0
  195. package/src/services/authorization/types.ts +71 -0
  196. package/src/services/batch-delegation.service.ts +137 -0
  197. package/src/services/crypto.service.ts +302 -0
  198. package/src/services/errors.ts +76 -0
  199. package/src/services/index.ts +9 -0
  200. package/src/services/oauth-config.service.d.ts +53 -0
  201. package/src/services/oauth-config.service.d.ts.map +1 -0
  202. package/src/services/oauth-config.service.js +113 -0
  203. package/src/services/oauth-config.service.js.map +1 -0
  204. package/src/services/oauth-config.service.ts +166 -0
  205. package/src/services/oauth-provider-registry.d.ts +57 -0
  206. package/src/services/oauth-provider-registry.d.ts.map +1 -0
  207. package/src/services/oauth-provider-registry.js +73 -0
  208. package/src/services/oauth-provider-registry.js.map +1 -0
  209. package/src/services/oauth-provider-registry.ts +123 -0
  210. package/src/services/oauth-service.ts +510 -0
  211. package/src/services/oauth-token-retrieval.service.ts +245 -0
  212. package/src/services/proof-verifier.ts +478 -0
  213. package/src/services/provider-resolver.d.ts +48 -0
  214. package/src/services/provider-resolver.d.ts.map +1 -0
  215. package/src/services/provider-resolver.js +106 -0
  216. package/src/services/provider-resolver.js.map +1 -0
  217. package/src/services/provider-resolver.ts +144 -0
  218. package/src/services/provider-validator.ts +170 -0
  219. package/src/services/storage.service.ts +566 -0
  220. package/src/services/tool-context-builder.ts +172 -0
  221. package/src/services/tool-protection.service.ts +958 -0
  222. package/src/types/oauth-required-error.ts +63 -0
  223. package/src/types/tool-protection.ts +155 -0
  224. package/src/utils/__tests__/did-helpers.test.ts +101 -0
  225. package/src/utils/base64.ts +148 -0
  226. package/src/utils/cors.ts +83 -0
  227. package/src/utils/did-helpers.ts +150 -0
  228. package/src/utils/index.ts +8 -0
  229. package/src/utils/storage-keys.ts +278 -0
  230. package/tsconfig.json +21 -0
  231. package/vitest.config.ts +56 -0
@@ -228,7 +228,26 @@ class AccessControlApiService {
228
228
  body: JSON.stringify(validatedRequest),
229
229
  });
230
230
  const responseText = await httpResponse.text();
231
+ // CRITICAL: Log raw response IMMEDIATELY before parsing/validation
232
+ // This will help us debug validation failures
233
+ console.error(`[AccessControl] 🔍 RAW API RESPONSE (before parsing):`, {
234
+ correlationId,
235
+ status: httpResponse.status,
236
+ statusText: httpResponse.statusText,
237
+ headers: Object.fromEntries(httpResponse.headers.entries()),
238
+ responseTextLength: responseText.length,
239
+ responseTextPreview: responseText.substring(0, 500),
240
+ fullResponseText: responseText, // Full response for debugging
241
+ });
231
242
  const responseData = this.parseResponseJSON(httpResponse, responseText);
243
+ // Log parsed response immediately after parsing
244
+ console.error(`[AccessControl] 🔍 PARSED RESPONSE DATA:`, {
245
+ correlationId,
246
+ status: httpResponse.status,
247
+ responseDataType: typeof responseData,
248
+ responseDataKeys: Object.keys(responseData || {}),
249
+ responseData: JSON.stringify(responseData, null, 2),
250
+ });
232
251
  // Handle error responses
233
252
  if (!httpResponse.ok) {
234
253
  const errorData = responseData;
@@ -282,16 +301,124 @@ class AccessControlApiService {
282
301
  }
283
302
  // Try to handle wrapped response format first
284
303
  const wrappedResponse = responseData;
304
+ // Log raw response for debugging (always log full response on first submission)
305
+ const rawResponseLog = {
306
+ correlationId,
307
+ hasSuccess: wrappedResponse.success !== undefined,
308
+ hasData: wrappedResponse.data !== undefined,
309
+ responseType: typeof responseData,
310
+ responseKeys: Object.keys(responseData || {}),
311
+ responseData: JSON.stringify(responseData, null, 2).substring(0, 2000), // Increased limit for debugging
312
+ };
313
+ this.config.logger(`[AccessControl] Raw response received`, rawResponseLog);
314
+ // Also log to console.error for visibility (especially for first proof submission errors)
315
+ console.error(`[AccessControl] Raw response received:`, JSON.stringify(responseData, null, 2));
285
316
  if (wrappedResponse.success !== undefined && wrappedResponse.data) {
286
317
  // Response is wrapped in { success, data }
287
- // Add success field from wrapper to data object for schema validation
318
+ // Extract data and add success field if missing (for schema validation)
319
+ // CRITICAL: Use JSON.parse(JSON.stringify()) to create a clean object
320
+ // This handles edge cases in Cloudflare Workers where response.json()
321
+ // might return objects with proxy/getter issues that prevent property access
322
+ let dataToValidate;
323
+ try {
324
+ // Deep clone via JSON to ensure we have a plain JavaScript object
325
+ // This is the most reliable way to handle potential proxy/getter issues
326
+ const rawData = wrappedResponse.data;
327
+ const clonedData = JSON.parse(JSON.stringify(rawData));
328
+ if (typeof clonedData !== "object" || clonedData === null) {
329
+ throw new agentshield_api_2.AgentShieldAPIError("invalid_response", "Response data is not an object after cloning", {
330
+ originalType: typeof rawData,
331
+ clonedType: typeof clonedData,
332
+ clonedValue: clonedData,
333
+ });
334
+ }
335
+ dataToValidate = clonedData;
336
+ }
337
+ catch (cloneError) {
338
+ if (cloneError instanceof agentshield_api_2.AgentShieldAPIError) {
339
+ throw cloneError;
340
+ }
341
+ throw new agentshield_api_2.AgentShieldAPIError("invalid_response", "Failed to clone response data", {
342
+ error: cloneError instanceof Error
343
+ ? cloneError.message
344
+ : String(cloneError),
345
+ dataType: typeof wrappedResponse.data,
346
+ });
347
+ }
348
+ // CRITICAL: Log the actual data structure for debugging
349
+ console.error(`[AccessControl] 🔍 DATA OBJECT STRUCTURE (after deep clone):`, {
350
+ correlationId,
351
+ dataKeys: Object.keys(dataToValidate),
352
+ hasAccepted: "accepted" in dataToValidate,
353
+ hasRejected: "rejected" in dataToValidate,
354
+ hasOutcomes: "outcomes" in dataToValidate,
355
+ hasErrors: "errors" in dataToValidate,
356
+ acceptedType: typeof dataToValidate.accepted,
357
+ acceptedValue: dataToValidate.accepted,
358
+ rejectedType: typeof dataToValidate.rejected,
359
+ rejectedValue: dataToValidate.rejected,
360
+ outcomesType: typeof dataToValidate.outcomes,
361
+ outcomesValue: dataToValidate.outcomes,
362
+ errorsType: typeof dataToValidate.errors,
363
+ errorsIsArray: Array.isArray(dataToValidate.errors),
364
+ fullData: JSON.stringify(dataToValidate, null, 2),
365
+ });
366
+ // Ensure success field is present (required by schema)
367
+ // wrappedResponse.success should be true since we checked it exists
368
+ // CRITICAL: Construct from the cloned data to ensure all fields are present
288
369
  const dataWithSuccess = {
289
- success: wrappedResponse.success,
290
- ...wrappedResponse.data,
370
+ success: wrappedResponse.success === true,
371
+ accepted: dataToValidate.accepted,
372
+ rejected: dataToValidate.rejected,
291
373
  };
374
+ // Add optional fields if present
375
+ if ("outcomes" in dataToValidate &&
376
+ dataToValidate.outcomes !== undefined) {
377
+ dataWithSuccess.outcomes = dataToValidate.outcomes;
378
+ }
379
+ if ("errors" in dataToValidate && dataToValidate.errors !== undefined) {
380
+ dataWithSuccess.errors = dataToValidate.errors;
381
+ }
382
+ // CRITICAL: Log what we're validating
383
+ console.error(`[AccessControl] 🔍 VALIDATING DATA WITH SUCCESS:`, {
384
+ correlationId,
385
+ dataWithSuccessKeys: Object.keys(dataWithSuccess),
386
+ hasSuccess: "success" in dataWithSuccess,
387
+ successValue: dataWithSuccess.success,
388
+ hasAccepted: "accepted" in dataWithSuccess,
389
+ acceptedValue: dataWithSuccess.accepted,
390
+ hasRejected: "rejected" in dataWithSuccess,
391
+ rejectedValue: dataWithSuccess.rejected,
392
+ hasOutcomes: "outcomes" in dataWithSuccess,
393
+ outcomesValue: dataWithSuccess.outcomes,
394
+ fullDataWithSuccess: JSON.stringify(dataWithSuccess, null, 2),
395
+ });
396
+ // CRITICAL: Ensure all required fields are present before validation
397
+ if (typeof dataWithSuccess.accepted !== "number" ||
398
+ typeof dataWithSuccess.rejected !== "number") {
399
+ console.error(`[AccessControl] ❌ MISSING REQUIRED FIELDS AFTER CONSTRUCTION:`, {
400
+ correlationId,
401
+ hasAccepted: "accepted" in dataWithSuccess,
402
+ acceptedType: typeof dataWithSuccess.accepted,
403
+ acceptedValue: dataWithSuccess.accepted,
404
+ hasRejected: "rejected" in dataWithSuccess,
405
+ rejectedType: typeof dataWithSuccess.rejected,
406
+ rejectedValue: dataWithSuccess.rejected,
407
+ dataWithSuccessKeys: Object.keys(dataWithSuccess),
408
+ fullDataWithSuccess: JSON.stringify(dataWithSuccess, null, 2),
409
+ dataToValidateKeys: Object.keys(dataToValidate),
410
+ fullDataToValidate: JSON.stringify(dataToValidate, null, 2),
411
+ originalResponseData: JSON.stringify(responseData, null, 2),
412
+ });
413
+ throw new agentshield_api_2.AgentShieldAPIError("invalid_response", "Response data missing required fields (accepted/rejected)", {
414
+ responseData,
415
+ dataToValidate,
416
+ dataWithSuccess,
417
+ });
418
+ }
292
419
  const dataParsed = agentshield_api_1.proofSubmissionResponseSchema.safeParse(dataWithSuccess);
293
420
  if (dataParsed.success) {
294
- this.config.logger(`[AccessControl] Proofs submitted successfully`, {
421
+ this.config.logger(`[AccessControl] Proofs submitted successfully (wrapped)`, {
295
422
  correlationId,
296
423
  accepted: dataParsed.data.accepted,
297
424
  rejected: dataParsed.data.rejected,
@@ -299,49 +426,87 @@ class AccessControlApiService {
299
426
  return dataParsed.data;
300
427
  }
301
428
  else {
302
- // Wrapped format failed validation - log for debugging
303
- this.config.logger(`[AccessControl] Wrapped response validation failed, trying direct format`, {
429
+ // Log validation errors for wrapped response (always log errors)
430
+ const validationErrorLog = {
304
431
  correlationId,
305
- wrappedErrors: dataParsed.error.errors,
306
- responseDataPreview: JSON.stringify(dataWithSuccess).substring(0, 500),
432
+ zodErrors: dataParsed.error.errors,
433
+ zodErrorDetails: JSON.stringify(dataParsed.error.errors, null, 2),
434
+ dataToValidate: JSON.stringify(dataToValidate, null, 2).substring(0, 2000),
435
+ dataWithSuccess: JSON.stringify(dataWithSuccess, null, 2).substring(0, 2000),
436
+ dataKeys: Object.keys(dataToValidate),
437
+ dataWithSuccessKeys: Object.keys(dataWithSuccess),
438
+ originalResponse: JSON.stringify(responseData, null, 2).substring(0, 2000),
439
+ };
440
+ this.config.logger(`[AccessControl] Wrapped response validation failed`, validationErrorLog);
441
+ // Also log to console.error for visibility in production
442
+ console.error(`[AccessControl] Wrapped response validation failed`, validationErrorLog);
443
+ console.error(`[AccessControl] Original wrapped response:`, JSON.stringify(responseData, null, 2));
444
+ // CRITICAL: Log each zod error individually for easier debugging
445
+ console.error(`[AccessControl] ❌ ZOD VALIDATION FAILED - ${dataParsed.error.errors.length} error(s):`);
446
+ dataParsed.error.errors.forEach((err, idx) => {
447
+ const errorDetails = {
448
+ path: err.path.join(".") || "(root)",
449
+ message: err.message,
450
+ code: err.code,
451
+ };
452
+ // Only include properties that exist on specific error types
453
+ if ("received" in err)
454
+ errorDetails.received = err.received;
455
+ if ("expected" in err)
456
+ errorDetails.expected = err.expected;
457
+ if ("input" in err)
458
+ errorDetails.input = err.input;
459
+ console.error(`[AccessControl] Error ${idx + 1}:`, JSON.stringify(errorDetails, null, 2));
307
460
  });
461
+ console.error(`[AccessControl] ❌ Full ZOD errors JSON:`, JSON.stringify(dataParsed.error.errors, null, 2));
462
+ // CRITICAL: Throw error instead of falling through to direct parsing
463
+ // The response is wrapped, so direct parsing will also fail
464
+ throw new agentshield_api_2.AgentShieldAPIError("invalid_response", "Response validation failed", { zodErrors: dataParsed.error.errors, responseData });
308
465
  }
309
466
  }
310
467
  // Try parsing as direct ProofSubmissionResponse
311
468
  const parsed = agentshield_api_1.proofSubmissionResponseSchema.safeParse(responseData);
312
469
  if (!parsed.success) {
313
- // Enhanced error logging for debugging
314
- this.config.logger(`[AccessControl] Response validation failed`, {
470
+ // Log detailed validation errors (always log errors)
471
+ const validationErrorLog = {
315
472
  correlationId,
316
473
  zodErrors: parsed.error.errors,
317
- responseData: typeof responseData === "object"
318
- ? JSON.stringify(responseData).substring(0, 500)
319
- : String(responseData).substring(0, 500),
474
+ zodErrorDetails: JSON.stringify(parsed.error.errors, null, 2),
475
+ responseData: JSON.stringify(responseData, null, 2),
320
476
  responseDataType: typeof responseData,
477
+ responseKeys: Object.keys(responseData || {}),
478
+ httpStatus: httpResponse.status,
479
+ httpStatusText: httpResponse.statusText,
480
+ };
481
+ this.config.logger(`[AccessControl] Response validation failed`, validationErrorLog);
482
+ // CRITICAL: Log to console.error with full details for debugging
483
+ // This format matches test expectations: single call with message and error object
484
+ // This log must include 'Response validation failed' in the message for test compatibility
485
+ console.error(`[AccessControl] Response validation failed`, {
486
+ zodErrors: parsed.error.errors,
487
+ responseData: responseData,
321
488
  });
322
- // Check if response indicates a temporary issue (e.g., processing, queued)
323
- const responseObj = responseData;
324
- if (responseObj.status === "processing" ||
325
- responseObj.status === "queued" ||
326
- responseObj.message?.toString().toLowerCase().includes("processing")) {
327
- // Temporary state - return a success response with 0 accepted/rejected
328
- // This allows the system to continue functioning while AgentShield processes
329
- this.config.logger(`[AccessControl] Response indicates processing state, returning success`, {
330
- correlationId,
331
- status: responseObj.status,
332
- });
333
- return {
334
- success: true,
335
- accepted: 0,
336
- rejected: 0,
337
- outcomes: {
338
- success: 0,
339
- failed: 0,
340
- blocked: 0,
341
- error: 0,
342
- },
489
+ // Additional detailed logging for debugging
490
+ console.error(`[AccessControl] Response validation failed`, validationErrorLog);
491
+ // CRITICAL: Log each zod error individually for easier debugging
492
+ console.error(`[AccessControl] ZOD VALIDATION FAILED (direct) - ${parsed.error.errors.length} error(s):`);
493
+ parsed.error.errors.forEach((err, idx) => {
494
+ const errorDetails = {
495
+ path: err.path.join(".") || "(root)",
496
+ message: err.message,
497
+ code: err.code,
343
498
  };
344
- }
499
+ // Only include properties that exist on specific error types
500
+ if ("received" in err)
501
+ errorDetails.received = err.received;
502
+ if ("expected" in err)
503
+ errorDetails.expected = err.expected;
504
+ if ("input" in err)
505
+ errorDetails.input = err.input;
506
+ console.error(`[AccessControl] Error ${idx + 1}:`, errorDetails);
507
+ });
508
+ console.error(`[AccessControl] ❌ Full ZOD errors JSON:`, JSON.stringify(parsed.error.errors, null, 2));
509
+ console.error(`[AccessControl] ❌ ACTUAL RESPONSE DATA:`, JSON.stringify(responseData, null, 2));
345
510
  throw new agentshield_api_2.AgentShieldAPIError("invalid_response", "Response validation failed", { zodErrors: parsed.error.errors, responseData });
346
511
  }
347
512
  this.config.logger(`[AccessControl] Proofs submitted successfully`, {
@@ -1 +1 @@
1
- {"version":3,"file":"access-control.service.js","sourceRoot":"","sources":["../../src/services/access-control.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"access-control.service.js","sourceRoot":"","sources":["../../src/services/access-control.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Authorization Registry
3
+ *
4
+ * Registry for managing available authorization services.
5
+ * Allows looking up the appropriate service for a given authorization type.
6
+ *
7
+ * @package @kya-os/mcp-i-core
8
+ */
9
+ import type { AuthorizationService } from "./types.js";
10
+ import type { ToolProtection, AuthorizationRequirement } from "@kya-os/contracts/tool-protection";
11
+ export declare class AuthorizationRegistry {
12
+ private services;
13
+ /**
14
+ * Register an authorization service
15
+ */
16
+ register(service: AuthorizationService): void;
17
+ /**
18
+ * Get an authorization service by type
19
+ */
20
+ getService(type: string): AuthorizationService | null;
21
+ /**
22
+ * Resolve authorization requirement for a tool
23
+ *
24
+ * Determines the authorization requirement based on the tool protection config.
25
+ * Handles backward compatibility with legacy `oauthProvider` field.
26
+ */
27
+ resolveRequirement(toolProtection: ToolProtection): AuthorizationRequirement | null;
28
+ }
29
+ //# sourceMappingURL=authorization-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorization-registry.d.ts","sourceRoot":"","sources":["../../../src/services/authorization/authorization-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAElG,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAgD;IAEhE;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI;IAI7C;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,GAAG,IAAI;IAIrD;;;;;OAKG;IACH,kBAAkB,CAChB,cAAc,EAAE,cAAc,GAC7B,wBAAwB,GAAG,IAAI;CA2BnC"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ /**
3
+ * Authorization Registry
4
+ *
5
+ * Registry for managing available authorization services.
6
+ * Allows looking up the appropriate service for a given authorization type.
7
+ *
8
+ * @package @kya-os/mcp-i-core
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.AuthorizationRegistry = void 0;
12
+ class AuthorizationRegistry {
13
+ services = new Map();
14
+ /**
15
+ * Register an authorization service
16
+ */
17
+ register(service) {
18
+ this.services.set(service.type, service);
19
+ }
20
+ /**
21
+ * Get an authorization service by type
22
+ */
23
+ getService(type) {
24
+ return this.services.get(type) || null;
25
+ }
26
+ /**
27
+ * Resolve authorization requirement for a tool
28
+ *
29
+ * Determines the authorization requirement based on the tool protection config.
30
+ * Handles backward compatibility with legacy `oauthProvider` field.
31
+ */
32
+ resolveRequirement(toolProtection) {
33
+ if (!toolProtection.requiresDelegation) {
34
+ return null;
35
+ }
36
+ // Use the explicit authorization field if present
37
+ if (toolProtection.authorization) {
38
+ return toolProtection.authorization;
39
+ }
40
+ // Legacy fallback: oauthProvider field
41
+ if (toolProtection.oauthProvider) {
42
+ return {
43
+ type: 'oauth',
44
+ provider: toolProtection.oauthProvider,
45
+ };
46
+ }
47
+ // If requiresDelegation is true but no auth specified, default to 'none' (consent only)
48
+ // UNLESS we are in a transition period where ProviderResolver might infer scopes.
49
+ // This logic will be refined as we move logic from ProviderResolver to here.
50
+ // For now, return null to let downstream logic handle fallbacks if needed,
51
+ // or return 'none' if we want to enforce explicit config.
52
+ // Returning null allows the legacy ProviderResolver to attempt scope inference
53
+ return null;
54
+ }
55
+ }
56
+ exports.AuthorizationRegistry = AuthorizationRegistry;
57
+ //# sourceMappingURL=authorization-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authorization-registry.js","sourceRoot":"","sources":["../../../src/services/authorization/authorization-registry.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAKH,MAAa,qBAAqB;IACxB,QAAQ,GAAsC,IAAI,GAAG,EAAE,CAAC;IAEhE;;OAEG;IACH,QAAQ,CAAC,OAA6B;QACpC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,IAAY;QACrB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IACzC,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAChB,cAA8B;QAE9B,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,kDAAkD;QAClD,IAAI,cAAc,CAAC,aAAa,EAAE,CAAC;YACjC,OAAO,cAAc,CAAC,aAAa,CAAC;QACtC,CAAC;QAED,uCAAuC;QACvC,IAAI,cAAc,CAAC,aAAa,EAAE,CAAC;YACjC,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,QAAQ,EAAE,cAAc,CAAC,aAAa;aACvC,CAAC;QACJ,CAAC;QAED,wFAAwF;QACxF,kFAAkF;QAClF,6EAA6E;QAC7E,2EAA2E;QAC3E,0DAA0D;QAE1D,+EAA+E;QAC/E,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AApDD,sDAoDC"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Authorization Service Types
3
+ *
4
+ * Shared types for authorization services and flows.
5
+ *
6
+ * @package @kya-os/mcp-i-core
7
+ */
8
+ import type { ToolProtection } from "@kya-os/contracts/tool-protection";
9
+ /**
10
+ * Authorization Flow Result
11
+ */
12
+ export interface AuthorizationResult {
13
+ success: boolean;
14
+ credential?: unknown;
15
+ userDid?: string;
16
+ metadata?: Record<string, unknown>;
17
+ error?: Error;
18
+ }
19
+ /**
20
+ * Authorization Flow
21
+ * Represents an initiated authorization flow
22
+ */
23
+ export interface AuthorizationFlow {
24
+ /** URL to redirect the user to */
25
+ url: string;
26
+ /** Unique identifier for this flow */
27
+ flowId?: string;
28
+ /** Metadata about the flow */
29
+ metadata?: Record<string, unknown>;
30
+ }
31
+ /**
32
+ * Authorization Service Interface
33
+ * Each authorization type implements this
34
+ */
35
+ export interface AuthorizationService {
36
+ /** Unique type identifier (e.g., 'oauth', 'mdl', 'idv') */
37
+ type: string;
38
+ /**
39
+ * Check if authorization is required for the given tool protection
40
+ */
41
+ isRequired(toolProtection: ToolProtection): boolean;
42
+ /**
43
+ * Initiate authorization flow
44
+ * Returns URL or flow identifier
45
+ */
46
+ initiateFlow(toolProtection: ToolProtection, sessionId: string, projectId: string, agentDid: string, serverUrl: string): Promise<AuthorizationFlow>;
47
+ /**
48
+ * Verify authorization result
49
+ * Called after user completes flow
50
+ */
51
+ verifyAuthorization(flowId: string, result: unknown): Promise<AuthorizationResult>;
52
+ }
53
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/authorization/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAExE;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,KAAK,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,kCAAkC;IAClC,GAAG,EAAE,MAAM,CAAC;IAEZ,sCAAsC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,2DAA2D;IAC3D,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,UAAU,CAAC,cAAc,EAAE,cAAc,GAAG,OAAO,CAAC;IAEpD;;;OAGG;IACH,YAAY,CACV,cAAc,EAAE,cAAc,EAC9B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAE9B;;;OAGG;IACH,mBAAmB,CACjB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,OAAO,GACd,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACjC"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ /**
3
+ * Authorization Service Types
4
+ *
5
+ * Shared types for authorization services and flows.
6
+ *
7
+ * @package @kya-os/mcp-i-core
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/services/authorization/types.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Batch Delegation Service
3
+ *
4
+ * Groups tools by OAuth provider for batch delegation flows.
5
+ * Enables single OAuth flow for multiple tools requiring the same provider.
6
+ *
7
+ * @package @kya-os/mcp-i-core
8
+ */
9
+ import type { ProviderResolver } from "./provider-resolver.js";
10
+ import type { ToolProtectionService } from "./tool-protection.service.js";
11
+ /**
12
+ * Tool group by provider
13
+ */
14
+ export interface ToolGroup {
15
+ /** OAuth provider name */
16
+ provider: string;
17
+ /** Tool names in this group */
18
+ tools: string[];
19
+ /** Merged scopes from all tools in group */
20
+ scopes: string[];
21
+ /** Highest risk level in group */
22
+ riskLevel: "low" | "medium" | "high";
23
+ }
24
+ /**
25
+ * Service for grouping tools by OAuth provider
26
+ */
27
+ export declare class BatchDelegationService {
28
+ private providerResolver;
29
+ private toolProtectionService;
30
+ constructor(providerResolver: ProviderResolver, toolProtectionService: ToolProtectionService);
31
+ /**
32
+ * Group tools by OAuth provider
33
+ *
34
+ * Returns a map of provider → tools that require that provider.
35
+ * Tools that don't require delegation are skipped.
36
+ *
37
+ * @param toolNames - Array of tool names to group
38
+ * @param projectId - Project ID for provider resolution
39
+ * @param agentDid - Agent DID for fetching tool protections
40
+ * @returns Map of provider name to ToolGroup
41
+ */
42
+ groupToolsByProvider(toolNames: string[], projectId: string, agentDid: string): Promise<Map<string, ToolGroup>>;
43
+ /**
44
+ * Get all tools that require a specific provider
45
+ *
46
+ * @param provider - Provider name to filter by
47
+ * @param projectId - Project ID for provider resolution
48
+ * @param agentDid - Agent DID for fetching tool protections
49
+ * @returns Array of tool names requiring the specified provider
50
+ */
51
+ getToolsForProvider(provider: string, projectId: string, agentDid: string): Promise<string[]>;
52
+ }
53
+ //# sourceMappingURL=batch-delegation.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batch-delegation.service.d.ts","sourceRoot":"","sources":["../../src/services/batch-delegation.service.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,0BAA0B;IAC1B,QAAQ,EAAE,MAAM,CAAC;IAEjB,+BAA+B;IAC/B,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,EAAE,CAAC;IAEjB,kCAAkC;IAClC,SAAS,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;CACtC;AAED;;GAEG;AACH,qBAAa,sBAAsB;IAE/B,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,qBAAqB;gBADrB,gBAAgB,EAAE,gBAAgB,EAClC,qBAAqB,EAAE,qBAAqB;IAGtD;;;;;;;;;;OAUG;IACG,oBAAoB,CACxB,SAAS,EAAE,MAAM,EAAE,EACnB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IA+DlC;;;;;;;OAOG;IACG,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,EAAE,CAAC;CAMrB"}