@kya-os/mcp-i-core 1.2.3-canary.7 → 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.
- package/.claude/settings.local.json +9 -0
- package/.turbo/turbo-build.log +4 -0
- package/.turbo/turbo-test$colon$coverage.log +4514 -0
- package/.turbo/turbo-test.log +2973 -0
- package/COMPLIANCE_IMPROVEMENT_REPORT.md +483 -0
- package/Composer 3.md +615 -0
- package/GPT-5.md +1169 -0
- package/OPUS-plan.md +352 -0
- package/PHASE_3_AND_4.1_SUMMARY.md +585 -0
- package/PHASE_3_SUMMARY.md +317 -0
- package/PHASE_4.1.3_SUMMARY.md +428 -0
- package/PHASE_4.1_COMPLETE.md +525 -0
- package/PHASE_4_USER_DID_IDENTITY_LINKING_PLAN.md +1240 -0
- package/SCHEMA_COMPLIANCE_REPORT.md +275 -0
- package/TEST_PLAN.md +571 -0
- package/coverage/coverage-final.json +57 -0
- package/dist/__tests__/utils/mock-providers.d.ts +1 -2
- package/dist/__tests__/utils/mock-providers.d.ts.map +1 -1
- package/dist/__tests__/utils/mock-providers.js.map +1 -1
- package/dist/cache/oauth-config-cache.d.ts +69 -0
- package/dist/cache/oauth-config-cache.d.ts.map +1 -0
- package/dist/cache/oauth-config-cache.js +76 -0
- package/dist/cache/oauth-config-cache.js.map +1 -0
- package/dist/identity/idp-token-resolver.d.ts +53 -0
- package/dist/identity/idp-token-resolver.d.ts.map +1 -0
- package/dist/identity/idp-token-resolver.js +108 -0
- package/dist/identity/idp-token-resolver.js.map +1 -0
- package/dist/identity/idp-token-storage.interface.d.ts +42 -0
- package/dist/identity/idp-token-storage.interface.d.ts.map +1 -0
- package/dist/identity/idp-token-storage.interface.js +12 -0
- package/dist/identity/idp-token-storage.interface.js.map +1 -0
- package/dist/identity/user-did-manager.d.ts +39 -1
- package/dist/identity/user-did-manager.d.ts.map +1 -1
- package/dist/identity/user-did-manager.js +69 -3
- package/dist/identity/user-did-manager.js.map +1 -1
- package/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +39 -1
- package/dist/index.js.map +1 -1
- package/dist/runtime/audit-logger.d.ts +37 -0
- package/dist/runtime/audit-logger.d.ts.map +1 -0
- package/dist/runtime/audit-logger.js +9 -0
- package/dist/runtime/audit-logger.js.map +1 -0
- package/dist/runtime/base.d.ts +58 -2
- package/dist/runtime/base.d.ts.map +1 -1
- package/dist/runtime/base.js +266 -11
- package/dist/runtime/base.js.map +1 -1
- package/dist/services/access-control.service.d.ts.map +1 -1
- package/dist/services/access-control.service.js +200 -35
- package/dist/services/access-control.service.js.map +1 -1
- package/dist/services/authorization/authorization-registry.d.ts +29 -0
- package/dist/services/authorization/authorization-registry.d.ts.map +1 -0
- package/dist/services/authorization/authorization-registry.js +57 -0
- package/dist/services/authorization/authorization-registry.js.map +1 -0
- package/dist/services/authorization/types.d.ts +53 -0
- package/dist/services/authorization/types.d.ts.map +1 -0
- package/dist/services/authorization/types.js +10 -0
- package/dist/services/authorization/types.js.map +1 -0
- package/dist/services/batch-delegation.service.d.ts +53 -0
- package/dist/services/batch-delegation.service.d.ts.map +1 -0
- package/dist/services/batch-delegation.service.js +95 -0
- package/dist/services/batch-delegation.service.js.map +1 -0
- package/dist/services/oauth-config.service.d.ts +53 -0
- package/dist/services/oauth-config.service.d.ts.map +1 -0
- package/dist/services/oauth-config.service.js +117 -0
- package/dist/services/oauth-config.service.js.map +1 -0
- package/dist/services/oauth-provider-registry.d.ts +77 -0
- package/dist/services/oauth-provider-registry.d.ts.map +1 -0
- package/dist/services/oauth-provider-registry.js +112 -0
- package/dist/services/oauth-provider-registry.js.map +1 -0
- package/dist/services/oauth-service.d.ts +77 -0
- package/dist/services/oauth-service.d.ts.map +1 -0
- package/dist/services/oauth-service.js +348 -0
- package/dist/services/oauth-service.js.map +1 -0
- package/dist/services/oauth-token-retrieval.service.d.ts +49 -0
- package/dist/services/oauth-token-retrieval.service.d.ts.map +1 -0
- package/dist/services/oauth-token-retrieval.service.js +150 -0
- package/dist/services/oauth-token-retrieval.service.js.map +1 -0
- package/dist/services/provider-resolver.d.ts +48 -0
- package/dist/services/provider-resolver.d.ts.map +1 -0
- package/dist/services/provider-resolver.js +120 -0
- package/dist/services/provider-resolver.js.map +1 -0
- package/dist/services/provider-validator.d.ts +55 -0
- package/dist/services/provider-validator.d.ts.map +1 -0
- package/dist/services/provider-validator.js +135 -0
- package/dist/services/provider-validator.js.map +1 -0
- package/dist/services/tool-context-builder.d.ts +57 -0
- package/dist/services/tool-context-builder.d.ts.map +1 -0
- package/dist/services/tool-context-builder.js +125 -0
- package/dist/services/tool-context-builder.js.map +1 -0
- package/dist/services/tool-protection.service.d.ts +87 -10
- package/dist/services/tool-protection.service.d.ts.map +1 -1
- package/dist/services/tool-protection.service.js +282 -112
- package/dist/services/tool-protection.service.js.map +1 -1
- package/dist/types/oauth-required-error.d.ts +40 -0
- package/dist/types/oauth-required-error.d.ts.map +1 -0
- package/dist/types/oauth-required-error.js +40 -0
- package/dist/types/oauth-required-error.js.map +1 -0
- package/dist/utils/did-helpers.d.ts +33 -0
- package/dist/utils/did-helpers.d.ts.map +1 -1
- package/dist/utils/did-helpers.js +40 -0
- package/dist/utils/did-helpers.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/docs/API_REFERENCE.md +1362 -0
- package/docs/COMPLIANCE_MATRIX.md +691 -0
- package/docs/STATUSLIST2021_GUIDE.md +696 -0
- package/docs/W3C_VC_DELEGATION_GUIDE.md +710 -0
- package/package.json +24 -50
- package/scripts/audit-compliance.ts +724 -0
- package/src/__tests__/cache/tool-protection-cache.test.ts +640 -0
- package/src/__tests__/config/provider-runtime-config.test.ts +309 -0
- package/src/__tests__/delegation-e2e.test.ts +690 -0
- package/src/__tests__/identity/user-did-manager.test.ts +213 -0
- package/src/__tests__/index.test.ts +56 -0
- package/src/__tests__/integration/full-flow.test.ts +776 -0
- package/src/__tests__/integration.test.ts +281 -0
- package/src/__tests__/providers/base.test.ts +173 -0
- package/src/__tests__/providers/memory.test.ts +319 -0
- package/src/__tests__/regression/phase2-regression.test.ts +427 -0
- package/src/__tests__/runtime/audit-logger.test.ts +154 -0
- package/src/__tests__/runtime/base-extensions.test.ts +593 -0
- package/src/__tests__/runtime/base.test.ts +869 -0
- package/src/__tests__/runtime/delegation-flow.test.ts +164 -0
- package/src/__tests__/runtime/proof-client-did.test.ts +375 -0
- package/src/__tests__/runtime/route-interception.test.ts +686 -0
- package/src/__tests__/runtime/tool-protection-enforcement.test.ts +908 -0
- package/src/__tests__/services/agentshield-integration.test.ts +784 -0
- package/src/__tests__/services/provider-resolver-edge-cases.test.ts +487 -0
- package/src/__tests__/services/tool-protection-oauth-provider.test.ts +480 -0
- package/src/__tests__/services/tool-protection.service.test.ts +1366 -0
- package/src/__tests__/utils/mock-providers.ts +340 -0
- package/src/cache/oauth-config-cache.d.ts +69 -0
- package/src/cache/oauth-config-cache.d.ts.map +1 -0
- package/src/cache/oauth-config-cache.js +71 -0
- package/src/cache/oauth-config-cache.js.map +1 -0
- package/src/cache/oauth-config-cache.ts +123 -0
- package/src/cache/tool-protection-cache.ts +171 -0
- package/src/compliance/EXAMPLE.md +412 -0
- package/src/compliance/__tests__/schema-verifier.test.ts +797 -0
- package/src/compliance/index.ts +8 -0
- package/src/compliance/schema-registry.ts +460 -0
- package/src/compliance/schema-verifier.ts +708 -0
- package/src/config/__tests__/remote-config.spec.ts +268 -0
- package/src/config/remote-config.ts +174 -0
- package/src/config.ts +309 -0
- package/src/delegation/__tests__/audience-validator.test.ts +112 -0
- package/src/delegation/__tests__/bitstring.test.ts +346 -0
- package/src/delegation/__tests__/cascading-revocation.test.ts +628 -0
- package/src/delegation/__tests__/delegation-graph.test.ts +584 -0
- package/src/delegation/__tests__/utils.test.ts +152 -0
- package/src/delegation/__tests__/vc-issuer.test.ts +442 -0
- package/src/delegation/__tests__/vc-verifier.test.ts +922 -0
- package/src/delegation/audience-validator.ts +52 -0
- package/src/delegation/bitstring.ts +278 -0
- package/src/delegation/cascading-revocation.ts +370 -0
- package/src/delegation/delegation-graph.ts +299 -0
- package/src/delegation/index.ts +14 -0
- package/src/delegation/statuslist-manager.ts +353 -0
- package/src/delegation/storage/__tests__/memory-graph-storage.test.ts +366 -0
- package/src/delegation/storage/__tests__/memory-statuslist-storage.test.ts +228 -0
- package/src/delegation/storage/index.ts +9 -0
- package/src/delegation/storage/memory-graph-storage.ts +178 -0
- package/src/delegation/storage/memory-statuslist-storage.ts +77 -0
- package/src/delegation/utils.ts +42 -0
- package/src/delegation/vc-issuer.ts +232 -0
- package/src/delegation/vc-verifier.ts +568 -0
- package/src/identity/idp-token-resolver.ts +147 -0
- package/src/identity/idp-token-storage.interface.ts +59 -0
- package/src/identity/user-did-manager.ts +370 -0
- package/src/index.ts +260 -0
- package/src/providers/base.d.ts +91 -0
- package/src/providers/base.d.ts.map +1 -0
- package/src/providers/base.js +38 -0
- package/src/providers/base.js.map +1 -0
- package/src/providers/base.ts +96 -0
- package/src/providers/memory.ts +142 -0
- package/src/runtime/audit-logger.ts +39 -0
- package/src/runtime/base.ts +1329 -0
- package/src/services/__tests__/access-control.integration.test.ts +443 -0
- package/src/services/__tests__/access-control.proof-response-validation.test.ts +578 -0
- package/src/services/__tests__/access-control.service.test.ts +970 -0
- package/src/services/__tests__/batch-delegation.service.test.ts +351 -0
- package/src/services/__tests__/crypto.service.test.ts +531 -0
- package/src/services/__tests__/oauth-provider-registry.test.ts +142 -0
- package/src/services/__tests__/proof-verifier.integration.test.ts +485 -0
- package/src/services/__tests__/proof-verifier.test.ts +489 -0
- package/src/services/__tests__/provider-resolution.integration.test.ts +198 -0
- package/src/services/__tests__/provider-resolver.test.ts +217 -0
- package/src/services/__tests__/storage.service.test.ts +358 -0
- package/src/services/access-control.service.ts +990 -0
- package/src/services/authorization/authorization-registry.ts +66 -0
- package/src/services/authorization/types.ts +71 -0
- package/src/services/batch-delegation.service.ts +137 -0
- package/src/services/crypto.service.ts +302 -0
- package/src/services/errors.ts +76 -0
- package/src/services/index.ts +9 -0
- package/src/services/oauth-config.service.d.ts +53 -0
- package/src/services/oauth-config.service.d.ts.map +1 -0
- package/src/services/oauth-config.service.js +113 -0
- package/src/services/oauth-config.service.js.map +1 -0
- package/src/services/oauth-config.service.ts +166 -0
- package/src/services/oauth-provider-registry.d.ts +57 -0
- package/src/services/oauth-provider-registry.d.ts.map +1 -0
- package/src/services/oauth-provider-registry.js +73 -0
- package/src/services/oauth-provider-registry.js.map +1 -0
- package/src/services/oauth-provider-registry.ts +123 -0
- package/src/services/oauth-service.ts +510 -0
- package/src/services/oauth-token-retrieval.service.ts +245 -0
- package/src/services/proof-verifier.ts +478 -0
- package/src/services/provider-resolver.d.ts +48 -0
- package/src/services/provider-resolver.d.ts.map +1 -0
- package/src/services/provider-resolver.js +106 -0
- package/src/services/provider-resolver.js.map +1 -0
- package/src/services/provider-resolver.ts +144 -0
- package/src/services/provider-validator.ts +170 -0
- package/src/services/storage.service.ts +566 -0
- package/src/services/tool-context-builder.ts +172 -0
- package/src/services/tool-protection.service.ts +958 -0
- package/src/types/oauth-required-error.ts +63 -0
- package/src/types/tool-protection.ts +155 -0
- package/src/utils/__tests__/did-helpers.test.ts +101 -0
- package/src/utils/base64.ts +148 -0
- package/src/utils/cors.ts +83 -0
- package/src/utils/did-helpers.ts +150 -0
- package/src/utils/index.ts +8 -0
- package/src/utils/storage-keys.ts +278 -0
- package/tsconfig.json +21 -0
- 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
|
-
//
|
|
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
|
-
|
|
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
|
-
//
|
|
303
|
-
|
|
429
|
+
// Log validation errors for wrapped response (always log errors)
|
|
430
|
+
const validationErrorLog = {
|
|
304
431
|
correlationId,
|
|
305
|
-
|
|
306
|
-
|
|
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
|
-
//
|
|
314
|
-
|
|
470
|
+
// Log detailed validation errors (always log errors)
|
|
471
|
+
const validationErrorLog = {
|
|
315
472
|
correlationId,
|
|
316
473
|
zodErrors: parsed.error.errors,
|
|
317
|
-
|
|
318
|
-
|
|
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
|
-
//
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
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":";AAAA;;;;;;;;;;;;GAYG;;;AASH,uEAM2C;AAC3C,uEAAwE;AAyDxE;;GAEG;AACH,SAAS,qBAAqB;IAC5B,4EAA4E;IAC5E,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACvD,OAAO,MAAM,CAAC,UAAU,EAAE,CAAC;IAC7B,CAAC;IACD,kCAAkC;IAClC,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;AACxE,CAAC;AAED;;;;;GAKG;AACH,MAAa,uBAAuB;IAC1B,MAAM,CAAwC;IAC9C,OAAO,CAAiC;IAEhD,YAAY,MAAqC;QAC/C,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC,MAAM,GAAG;YACZ,WAAW,EAAE;gBACX,UAAU,EAAE,WAAW,CAAC,UAAU,IAAI,CAAC;gBACvC,cAAc,EAAE,WAAW,CAAC,cAAc,IAAI,GAAG;gBACjD,UAAU,EAAE,WAAW,CAAC,UAAU,IAAI,IAAI;aAC3C;YACD,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;YACnC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,aAAa,EAAE,MAAM,CAAC,aAAa;YACnC,aAAa,EACX,MAAM,CAAC,aAAa;gBACpB,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;SACtE,CAAC;QAEF,IAAI,CAAC,OAAO,GAAG;YACb,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,UAAU,EAAE,CAAC;SACd,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,OAEjB;QACC,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACtC,MAAM,aAAa,GAAG,qBAAqB,EAAE,CAAC;YAC9C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,oCAAoC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAE7G,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,8CAA8C,OAAO,CAAC,QAAQ,EAAE,EAChE;gBACE,aAAa;gBACb,GAAG;aACJ,CACF,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC1D,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;oBAC7C,cAAc,EAAE,kBAAkB;oBAClC,cAAc,EAAE,aAAa;iBAC9B;aACF,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAEpE,yBAAyB;YACzB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YACnD,CAAC;YAED,sCAAsC;YACtC,MAAM,MAAM,GACV,uDAAqC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YAChE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,IAAI,qCAAmB,CAC3B,kBAAkB,EAClB,4BAA4B,EAC5B,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CACnC,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,6CAA6C,EAAE;gBAChE,aAAa;gBACb,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC3B,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CACpB,OAAgC,EAChC,OAGC;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACtC,MAAM,aAAa,GAAG,qBAAqB,EAAE,CAAC;YAC9C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,oCAAoC,CAAC;YAEvE,2DAA2D;YAC3D,MAAM,WAAW,GAEb;gBACF,SAAS,EAAE,OAAO,CAAC,SAAS;aAC7B,CAAC;YAEF,yCAAyC;YACzC,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;gBACjC,WAAW,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;YACtC,CAAC;YAED,6DAA6D;YAC7D,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;gBACzC,WAAW,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;YACtD,CAAC;iBAAM,IAAI,OAAO,EAAE,aAAa,EAAE,CAAC;gBAClC,WAAW,CAAC,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;YACrD,CAAC;YAED,+DAA+D;YAC/D,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;gBAC3C,WAAW,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YAC1D,CAAC;iBAAM,IAAI,OAAO,EAAE,eAAe,EAAE,CAAC;gBACpC,WAAW,CAAC,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC;YACzD,CAAC;YAED,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBACpC,WAAW,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;YAC5C,CAAC;YAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACxB,WAAW,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YAChD,CAAC;YAED,6GAA6G;YAC7G,MAAM,kBAAkB,GAAG,MAAM,CAAC,WAAW,CAC3C,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CACxE,CAAC;YAEF,oCAAoC;YACpC,iGAAiG;YACjG,wDAAwD;YACxD,MAAM,gBAAgB,GACpB,+CAA6B,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;YAC9D,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;gBAC9B,mFAAmF;gBACnF,MAAM,WAAW,GAAG,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CACpD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,UAAU,CAC7D,CAAC;gBACF,IAAI,WAAW,IAAI,CAAC,CAAC,QAAQ,IAAI,kBAAkB,CAAC,EAAE,CAAC;oBACrD,qGAAqG;oBACrG,qEAAqE;oBACrE,mEAAmE;gBACrE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,oCAAoC,EAAE;wBACvD,MAAM,EAAE,gBAAgB,CAAC,KAAK,CAAC,MAAM;wBACrC,WAAW,EAAE,WAAW;qBACzB,CAAC,CAAC;oBACH,MAAM,IAAI,qCAAmB,CAC3B,kBAAkB,EAClB,2BAA2B,EAC3B,EAAE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,CAC7C,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,mDAAmD,OAAO,CAAC,SAAS,EAAE,EACtE;gBACE,aAAa;gBACb,GAAG;gBACH,SAAS,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;aAC7C,CACF,CAAC;YAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC1D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;oBAC7C,cAAc,EAAE,kBAAkB;oBAClC,cAAc,EAAE,aAAa;iBAC9B;gBACD,4DAA4D;gBAC5D,2DAA2D;gBAC3D,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC;aACzC,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAEpE,yBAAyB;YACzB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YACnD,CAAC;YAED,sCAAsC;YACtC,MAAM,MAAM,GAAG,mDAAiC,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YACzE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,IAAI,qCAAmB,CAC3B,kBAAkB,EAClB,4BAA4B,EAC5B,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CACnC,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qCAAqC,EAAE;gBACxD,aAAa;gBACb,QAAQ,EAAE,OAAO,CAAC,SAAS;gBAC3B,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;aAC9B,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAChB,OAA+B;QAE/B,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACtC,sFAAsF;YACtF,MAAM,gBAAgB,GAAG,8CAA4B,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACzE,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;gBAC9B,sCAAsC;gBACtC,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CACjC,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAC7B,IAAI,EACJ,CAAC,CACF,CAAC;gBACF,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,qDAAqD,EACrD;oBACE,MAAM,EAAE,gBAAgB,CAAC,KAAK,CAAC,MAAM;oBACrC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;iBAC1C,CACF,CAAC;gBACF,MAAM,IAAI,qCAAmB,CAC3B,kBAAkB,EAClB,8BAA8B,YAAY,EAAE,EAC5C,EAAE,SAAS,EAAE,gBAAgB,CAAC,KAAK,CAAC,MAAM,EAAE,CAC7C,CAAC;YACJ,CAAC;YAED,yCAAyC;YACzC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,IAAI,CAAC;YAE/C,MAAM,aAAa,GAAG,qBAAqB,EAAE,CAAC;YAC9C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,wBAAwB,CAAC;YAE3D,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,8BAA8B,OAAO,CAAC,MAAM,CAAC,MAAM,WAAW,EAC9D;gBACE,aAAa;gBACb,GAAG;gBACH,SAAS,EAAE,OAAO,CAAC,UAAU;gBAC7B,YAAY,EAAE,OAAO,CAAC,aAAa;aACpC,CACF,CAAC;YAEF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC9D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;oBAC7C,cAAc,EAAE,kBAAkB;oBAClC,cAAc,EAAE,aAAa;iBAC9B;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;aACvC,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;YAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;YAExE,yBAAyB;YACzB,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;gBACrB,MAAM,SAAS,GAAG,YAGjB,CAAC;gBAEF,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;oBACpB,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,IAAI,WAAW,CAAC;oBAEtD,iFAAiF;oBACjF,IACE,SAAS,KAAK,qBAAqB;wBACnC,YAAY,CAAC,MAAM,KAAK,GAAG,EAC3B,CAAC;wBACD,8DAA8D;wBAC9D,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,OAExB,CAAC;wBACd,6DAA6D;wBAC7D,oDAAoD;wBACpD,MAAM,iBAAiB,GAAG;4BACxB,OAAO,EAAE,KAAK,EAAE,8CAA8C;4BAC9D,QAAQ,EAAE,CAAC;4BACX,QAAQ,EAAE,YAAY,EAAE,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM;4BACzD,QAAQ,EAAE;gCACR,OAAO,EAAE,CAAC;gCACV,MAAM,EAAE,CAAC;gCACT,OAAO,EAAE,CAAC;gCACV,KAAK,EAAE,YAAY,EAAE,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM;6BACvD;4BACD,MAAM,EAAE,YAAY,EAAE,MAAM;yBAC7B,CAAC;wBAEF,iDAAiD;wBACjD,MAAM,SAAS,GACb,+CAA6B,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;wBAC7D,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;4BACtB,OAAO,SAAS,CAAC,IAAI,CAAC;wBACxB,CAAC;wBAED,2CAA2C;wBAC3C,MAAM,IAAI,qCAAmB,CAC3B,kBAAkB,EAClB,kCAAkC,EAClC,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CACtC,CAAC;oBACJ,CAAC;oBAED,+DAA+D;oBAC/D,MAAM,YAAY,GAAG;wBACnB,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;wBAClC,MAAM,EAAE,YAAY,CAAC,MAAM;qBAC5B,CAAC;oBACF,MAAM,IAAI,qCAAmB,CAC3B,SAAS,EACT,SAAS,CAAC,KAAK,CAAC,OAAO,IAAI,cAAc,YAAY,CAAC,MAAM,EAAE,EAC9D,YAAY,CACb,CAAC;gBACJ,CAAC;gBAED,kCAAkC;gBAClC,IAAI,SAAS,GAAG,WAAW,CAAC;gBAC5B,IAAI,YAAY,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBAChC,SAAS,GAAG,kBAAkB,CAAC;gBACjC,CAAC;qBAAM,IAAI,YAAY,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBACvC,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC;wBACxD,CAAC,CAAC,sBAAsB;wBACxB,CAAC,CAAC,mBAAmB,CAAC;gBAC1B,CAAC;gBAED,MAAM,IAAI,qCAAmB,CAC3B,SAAS,EACT,uBAAuB,YAAY,CAAC,MAAM,IAAI,YAAY,CAAC,UAAU,EAAE,EACvE,EAAE,MAAM,EAAE,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,CAC9C,CAAC;YACJ,CAAC;YAED,8CAA8C;YAC9C,MAAM,eAAe,GAAG,YAGvB,CAAC;YACF,IAAI,eAAe,CAAC,OAAO,KAAK,SAAS,IAAI,eAAe,CAAC,IAAI,EAAE,CAAC;gBAClE,2CAA2C;gBAC3C,sEAAsE;gBACtE,MAAM,eAAe,GAAG;oBACtB,OAAO,EAAE,eAAe,CAAC,OAAO;oBAChC,GAAI,eAAe,CAAC,IAAgC;iBACrD,CAAC;gBACF,MAAM,UAAU,GACd,+CAA6B,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;gBAC3D,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;oBACvB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,+CAA+C,EAAE;wBAClE,aAAa;wBACb,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ;wBAClC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ;qBACnC,CAAC,CAAC;oBACH,OAAO,UAAU,CAAC,IAAI,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACN,uDAAuD;oBACvD,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,0EAA0E,EAC1E;wBACE,aAAa;wBACb,aAAa,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM;wBACtC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,SAAS,CAC5D,CAAC,EACD,GAAG,CACJ;qBACF,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,gDAAgD;YAChD,MAAM,MAAM,GAAG,+CAA6B,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;YACrE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,uCAAuC;gBACvC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,4CAA4C,EAAE;oBAC/D,aAAa;oBACb,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;oBAC9B,YAAY,EACV,OAAO,YAAY,KAAK,QAAQ;wBAC9B,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;wBAChD,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;oBAC5C,gBAAgB,EAAE,OAAO,YAAY;iBACtC,CAAC,CAAC;gBAEH,2EAA2E;gBAC3E,MAAM,WAAW,GAAG,YAAuC,CAAC;gBAC5D,IACE,WAAW,CAAC,MAAM,KAAK,YAAY;oBACnC,WAAW,CAAC,MAAM,KAAK,QAAQ;oBAC/B,WAAW,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC,EACpE,CAAC;oBACD,uEAAuE;oBACvE,6EAA6E;oBAC7E,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,wEAAwE,EACxE;wBACE,aAAa;wBACb,MAAM,EAAE,WAAW,CAAC,MAAM;qBAC3B,CACF,CAAC;oBACF,OAAO;wBACL,OAAO,EAAE,IAAI;wBACb,QAAQ,EAAE,CAAC;wBACX,QAAQ,EAAE,CAAC;wBACX,QAAQ,EAAE;4BACR,OAAO,EAAE,CAAC;4BACV,MAAM,EAAE,CAAC;4BACT,OAAO,EAAE,CAAC;4BACV,KAAK,EAAE,CAAC;yBACT;qBACF,CAAC;gBACJ,CAAC;gBAED,MAAM,IAAI,qCAAmB,CAC3B,kBAAkB,EAClB,4BAA4B,EAC5B,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,CACjD,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,+CAA+C,EAAE;gBAClE,aAAa;gBACb,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ;gBAC9B,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ;aAC/B,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,YAAY;QACV,IAAI,CAAC,OAAO,GAAG;YACb,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,UAAU,EAAE,CAAC;SACd,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,gBAAgB,CAC5B,SAA2B,EAC3B,UAAU,GAAG,CAAC;QAEd,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC5B,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,iDAAiD;YACjD,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACjD,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,GAC9C,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;YAE1B,IAAI,WAAW,IAAI,UAAU,GAAG,UAAU,EAAE,CAAC;gBAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CACpB,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,EACxC,UAAU,CACX,CAAC;gBAEF,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,MAAM,CAChB,kBAAkB,KAAK,eAAe,UAAU,GAAG,CAAC,IAAI,UAAU,GAAG,CACtE,CAAC;gBAEF,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACxB,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;YAC1D,CAAC;YAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YAC1B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,gBAAgB,CAAC,KAAc;QACrC,gDAAgD;QAChD,IAAI,KAAK,YAAY,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAClE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,0DAA0D;QAC1D,IAAI,KAAK,YAAY,qCAAmB,EAAE,CAAC;YACzC,qCAAqC;YACrC,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC;YACd,CAAC;YAED,6CAA6C;YAC7C,MAAM,MAAM,GAAI,KAAK,CAAC,OAA2C,EAAE,MAAM,CAAC;YAC1E,IAAI,MAAM,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;gBAC5C,OAAO,IAAI,CAAC;YACd,CAAC;YACD,wCAAwC;YACxC,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,2BAA2B;QAC3B,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACjE,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,EAAU;QACtB,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,QAAkB,EAAE,YAAoB;QAChE,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,6EAA6E;YAC7E,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC7D,MAAM,IAAI,qCAAmB,CAC3B,SAAS,EACT,uBAAuB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,EAC/D;oBACE,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,YAAY,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;iBAC7C,CACF,CAAC;YACJ,CAAC;YACD,uEAAuE;YACvE,MAAM,IAAI,qCAAmB,CAC3B,kBAAkB,EAClB,6BAA6B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EACrF,EAAE,YAAY,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CACjD,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,oBAAoB,CAAC,MAAc,EAAE,UAAU,GAAG,EAAE;QAC1D,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACnB,OAAO,kBAAkB,CAAC;QAC5B,CAAC;aAAM,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5C,OAAO,uBAAuB,CAAC;QACjC,CAAC;aAAM,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YAC1B,OAAO,kBAAkB,CAAC;QAC5B,CAAC;aAAM,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;YACzB,OAAO,cAAc,CAAC;QACxB,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACK,mBAAmB,CACzB,QAAkB,EAClB,YAAqB;QAErB,MAAM,SAAS,GAAG,YAGjB,CAAC;QAEF,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,IAAI,WAAW,CAAC;YACtD,+DAA+D;YAC/D,MAAM,YAAY,GAAG;gBACnB,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC;gBAClC,MAAM,EAAE,QAAQ,CAAC,MAAM;aACxB,CAAC;YACF,MAAM,IAAI,qCAAmB,CAC3B,SAAS,EACT,SAAS,CAAC,KAAK,CAAC,OAAO,IAAI,cAAc,QAAQ,CAAC,MAAM,EAAE,EAC1D,YAAY,CACb,CAAC;QACJ,CAAC;QAED,kCAAkC;QAClC,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CACzC,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,UAAU,CACpB,CAAC;QACF,MAAM,IAAI,qCAAmB,CAC3B,SAAS,EACT,uBAAuB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,EAC/D,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,EAAE,CAC1C,CAAC;IACJ,CAAC;CACF;AAtoBD,0DAsoBC"}
|
|
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 @@
|
|
|
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"}
|