@dainprotocol/service-sdk 2.0.43 → 2.0.44

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 (77) hide show
  1. package/dist/__tests__/api-sdk.test.d.ts +1 -0
  2. package/dist/__tests__/api-sdk.test.js +102 -0
  3. package/dist/__tests__/api-sdk.test.js.map +1 -0
  4. package/dist/__tests__/auth.test.d.ts +1 -0
  5. package/dist/__tests__/auth.test.js +110 -0
  6. package/dist/__tests__/auth.test.js.map +1 -0
  7. package/dist/__tests__/citations-plugin.test.d.ts +1 -0
  8. package/dist/__tests__/citations-plugin.test.js +491 -0
  9. package/dist/__tests__/citations-plugin.test.js.map +1 -0
  10. package/dist/__tests__/context-behavior.test.d.ts +1 -0
  11. package/dist/__tests__/context-behavior.test.js +290 -0
  12. package/dist/__tests__/context-behavior.test.js.map +1 -0
  13. package/dist/__tests__/convertToVercelTool.test.d.ts +1 -0
  14. package/dist/__tests__/convertToVercelTool.test.js +527 -0
  15. package/dist/__tests__/convertToVercelTool.test.js.map +1 -0
  16. package/dist/__tests__/core.test.d.ts +1 -0
  17. package/dist/__tests__/core.test.js +154 -0
  18. package/dist/__tests__/core.test.js.map +1 -0
  19. package/dist/__tests__/crypto-plugin.test.d.ts +1 -0
  20. package/dist/__tests__/crypto-plugin.test.js +694 -0
  21. package/dist/__tests__/crypto-plugin.test.js.map +1 -0
  22. package/dist/__tests__/humanActions.test.d.ts +1 -0
  23. package/dist/__tests__/humanActions.test.js +221 -0
  24. package/dist/__tests__/humanActions.test.js.map +1 -0
  25. package/dist/__tests__/integration.test.d.ts +1 -0
  26. package/dist/__tests__/integration.test.js +1573 -0
  27. package/dist/__tests__/integration.test.js.map +1 -0
  28. package/dist/__tests__/mealMeSchemas.test.d.ts +576 -0
  29. package/dist/__tests__/mealMeSchemas.test.js +627 -0
  30. package/dist/__tests__/mealMeSchemas.test.js.map +1 -0
  31. package/dist/__tests__/oauth-context-simple.test.d.ts +1 -0
  32. package/dist/__tests__/oauth-context-simple.test.js +90 -0
  33. package/dist/__tests__/oauth-context-simple.test.js.map +1 -0
  34. package/dist/__tests__/oauth-context.test.d.ts +1 -0
  35. package/dist/__tests__/oauth-context.test.js +282 -0
  36. package/dist/__tests__/oauth-context.test.js.map +1 -0
  37. package/dist/__tests__/oauth.test.d.ts +1 -0
  38. package/dist/__tests__/oauth.test.js +378 -0
  39. package/dist/__tests__/oauth.test.js.map +1 -0
  40. package/dist/__tests__/oauth2-client-context.test.d.ts +1 -0
  41. package/dist/__tests__/oauth2-client-context.test.js +165 -0
  42. package/dist/__tests__/oauth2-client-context.test.js.map +1 -0
  43. package/dist/__tests__/oauth2-client-integration.test.d.ts +1 -0
  44. package/dist/__tests__/oauth2-client-integration.test.js +182 -0
  45. package/dist/__tests__/oauth2-client-integration.test.js.map +1 -0
  46. package/dist/__tests__/oauth2-client-simple.test.d.ts +1 -0
  47. package/dist/__tests__/oauth2-client-simple.test.js +144 -0
  48. package/dist/__tests__/oauth2-client-simple.test.js.map +1 -0
  49. package/dist/__tests__/oauth2-context.test.d.ts +1 -0
  50. package/dist/__tests__/oauth2-context.test.js +201 -0
  51. package/dist/__tests__/oauth2-context.test.js.map +1 -0
  52. package/dist/__tests__/oauth2-datasource.test.d.ts +1 -0
  53. package/dist/__tests__/oauth2-datasource.test.js +251 -0
  54. package/dist/__tests__/oauth2-datasource.test.js.map +1 -0
  55. package/dist/__tests__/plugin.test.d.ts +1 -0
  56. package/dist/__tests__/plugin.test.js +900 -0
  57. package/dist/__tests__/plugin.test.js.map +1 -0
  58. package/dist/__tests__/processes.test.d.ts +1 -0
  59. package/dist/__tests__/processes.test.js +239 -0
  60. package/dist/__tests__/processes.test.js.map +1 -0
  61. package/dist/__tests__/streaming.test.d.ts +1 -0
  62. package/dist/__tests__/streaming.test.js +592 -0
  63. package/dist/__tests__/streaming.test.js.map +1 -0
  64. package/dist/__tests__/testEnums.d.ts +1 -0
  65. package/dist/__tests__/testEnums.js +73 -0
  66. package/dist/__tests__/testEnums.js.map +1 -0
  67. package/dist/__tests__/testOptionals.test.d.ts +1 -0
  68. package/dist/__tests__/testOptionals.test.js +83 -0
  69. package/dist/__tests__/testOptionals.test.js.map +1 -0
  70. package/dist/__tests__/types.test.d.ts +1 -0
  71. package/dist/__tests__/types.test.js +98 -0
  72. package/dist/__tests__/types.test.js.map +1 -0
  73. package/dist/service/auth.js +27 -19
  74. package/dist/service/auth.js.map +1 -1
  75. package/dist/service/server.js +84 -1
  76. package/dist/service/server.js.map +1 -1
  77. package/package.json +10 -11
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const zod_1 = require("zod");
4
+ const schemaStructure_1 = require("../lib/schemaStructure");
5
+ const convertToVercelTool_1 = require("../lib/convertToVercelTool");
6
+ describe('Enum types conversion', () => {
7
+ it('should correctly convert enum types to Vercel AI Tool parameters', () => {
8
+ // Define a schema with enum fields
9
+ const testSchema = zod_1.z.object({
10
+ simpleEnum: zod_1.z.enum(['A', 'B', 'C']),
11
+ optionalEnum: zod_1.z.enum(['X', 'Y', 'Z']).optional(),
12
+ nestedEnum: zod_1.z.object({
13
+ innerEnum: zod_1.z.enum(['inner1', 'inner2', 'inner3'])
14
+ })
15
+ });
16
+ // Create a mock HTTP tool
17
+ const httpTool = {
18
+ id: 'test-enum-tool',
19
+ name: 'Test Enum Tool',
20
+ description: 'A tool to test enum field conversion',
21
+ inputSchema: (0, schemaStructure_1.getDetailedSchemaStructure)(testSchema),
22
+ outputSchema: { type: 'ZodAny' }
23
+ };
24
+ // Convert the HTTP tool to a Vercel AI Tool
25
+ const vercelAITool = (0, convertToVercelTool_1.convertHttpToolToVercelAITool)(httpTool);
26
+ // Check if the conversion was successful
27
+ expect(vercelAITool.name).toBe('test-enum-tool');
28
+ expect(vercelAITool.description).toBe('A tool to test enum field conversion');
29
+ expect(vercelAITool.parameters).toBeInstanceOf(zod_1.z.ZodObject);
30
+ // Check if the fields are correctly converted
31
+ const schemaShape = vercelAITool.parameters._def.shape();
32
+ expect(schemaShape.simpleEnum).toBeInstanceOf(zod_1.z.ZodEnum);
33
+ expect(schemaShape.optionalEnum).toBeInstanceOf(zod_1.z.ZodOptional);
34
+ expect(schemaShape.optionalEnum._def.innerType).toBeInstanceOf(zod_1.z.ZodEnum);
35
+ expect(schemaShape.nestedEnum).toBeInstanceOf(zod_1.z.ZodObject);
36
+ expect(schemaShape.nestedEnum._def.shape().innerEnum).toBeInstanceOf(zod_1.z.ZodEnum);
37
+ // Test parsing with the converted schema
38
+ const validInput = {
39
+ simpleEnum: 'B',
40
+ optionalEnum: 'Y',
41
+ numberEnum: 2,
42
+ mixedEnum: 'one',
43
+ nestedEnum: {
44
+ innerEnum: 'inner2'
45
+ }
46
+ };
47
+ const parseResult = vercelAITool.parameters.safeParse(validInput);
48
+ expect(parseResult.success).toBe(true);
49
+ // Test parsing with invalid enum values
50
+ const invalidInput = {
51
+ simpleEnum: 'D',
52
+ numberEnum: 4,
53
+ mixedEnum: false,
54
+ nestedEnum: {
55
+ innerEnum: 'inner4'
56
+ }
57
+ };
58
+ const invalidParseResult = vercelAITool.parameters.safeParse(invalidInput);
59
+ expect(invalidParseResult.success).toBe(false);
60
+ // Test parsing with missing optional enum
61
+ const minimalInput = {
62
+ simpleEnum: 'A',
63
+ numberEnum: 1,
64
+ mixedEnum: true,
65
+ nestedEnum: {
66
+ innerEnum: 'inner1'
67
+ }
68
+ };
69
+ const minimalParseResult = vercelAITool.parameters.safeParse(minimalInput);
70
+ expect(minimalParseResult.success).toBe(true);
71
+ });
72
+ });
73
+ //# sourceMappingURL=testEnums.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testEnums.js","sourceRoot":"","sources":["../../src/__tests__/testEnums.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const zod_1 = require("zod");
4
+ const schemaStructure_1 = require("../lib/schemaStructure");
5
+ const convertToVercelTool_1 = require("../lib/convertToVercelTool");
6
+ describe('Optional and default types conversion', () => {
7
+ it('should correctly convert optional and default types to Vercel AI Tool parameters', () => {
8
+ // Define a schema with optional fields and default values
9
+ const testSchema = zod_1.z.object({
10
+ requiredField: zod_1.z.string(),
11
+ optionalString: zod_1.z.string().optional(),
12
+ optionalNumberWithDefault: zod_1.z.number().optional().default(42),
13
+ optionalBoolean: zod_1.z.boolean().optional(),
14
+ defaultString: zod_1.z.string().default('default value'),
15
+ nestedOptional: zod_1.z.object({
16
+ innerOptional: zod_1.z.string().optional(),
17
+ innerDefault: zod_1.z.number().default(10)
18
+ }).optional()
19
+ });
20
+ // Create a mock HTTP tool
21
+ const httpTool = {
22
+ id: 'test-optional-default-tool',
23
+ name: 'Test Optional and Default Tool',
24
+ description: 'A tool to test optional and default field conversion',
25
+ inputSchema: (0, schemaStructure_1.getDetailedSchemaStructure)(testSchema),
26
+ outputSchema: { type: 'ZodAny' }
27
+ };
28
+ // Convert the HTTP tool to a Vercel AI Tool
29
+ const vercelAITool = (0, convertToVercelTool_1.convertHttpToolToVercelAITool)(httpTool);
30
+ // Check if the conversion was successful
31
+ expect(vercelAITool.name).toBe('test-optional-default-tool');
32
+ expect(vercelAITool.description).toBe('A tool to test optional and default field conversion');
33
+ expect(vercelAITool.parameters).toBeInstanceOf(zod_1.z.ZodObject);
34
+ // Check if the fields are correctly converted
35
+ const schemaShape = vercelAITool.parameters._def.shape();
36
+ expect(schemaShape.requiredField).toBeInstanceOf(zod_1.z.ZodString);
37
+ expect(schemaShape.optionalString).toBeInstanceOf(zod_1.z.ZodOptional);
38
+ expect(schemaShape.optionalBoolean).toBeInstanceOf(zod_1.z.ZodOptional);
39
+ // Update for fields with default values
40
+ expect(schemaShape.optionalNumberWithDefault).toBeInstanceOf(zod_1.z.ZodDefault);
41
+ expect(schemaShape.optionalNumberWithDefault._def.innerType).toBeInstanceOf(zod_1.z.ZodOptional);
42
+ expect(schemaShape.optionalNumberWithDefault._def.innerType._def.innerType).toBeInstanceOf(zod_1.z.ZodNumber);
43
+ expect(schemaShape.defaultString).toBeInstanceOf(zod_1.z.ZodDefault);
44
+ expect(schemaShape.defaultString._def.innerType).toBeInstanceOf(zod_1.z.ZodString);
45
+ expect(schemaShape.nestedOptional).toBeInstanceOf(zod_1.z.ZodOptional);
46
+ // Check nested fields
47
+ const nestedShape = schemaShape.nestedOptional._def.innerType._def.shape();
48
+ expect(nestedShape.innerOptional).toBeInstanceOf(zod_1.z.ZodOptional);
49
+ expect(nestedShape.innerDefault).toBeInstanceOf(zod_1.z.ZodDefault);
50
+ expect(nestedShape.innerDefault._def.innerType).toBeInstanceOf(zod_1.z.ZodNumber);
51
+ // Test parsing with the converted schema
52
+ const validInput = {
53
+ requiredField: 'test',
54
+ optionalString: 'optional',
55
+ nestedOptional: {
56
+ innerOptional: 'nested'
57
+ }
58
+ };
59
+ const parseResult = vercelAITool.parameters.safeParse(validInput);
60
+ expect(parseResult.success).toBe(true);
61
+ // Test parsing with missing optional fields and check default values
62
+ const minimalInput = {
63
+ requiredField: 'test'
64
+ };
65
+ const minimalParseResult = vercelAITool.parameters.safeParse(minimalInput);
66
+ expect(minimalParseResult.success).toBe(true);
67
+ if (minimalParseResult.success) {
68
+ expect(minimalParseResult.data.optionalNumberWithDefault).toBe(42);
69
+ expect(minimalParseResult.data.defaultString).toBe('default value');
70
+ }
71
+ // Test nested default values
72
+ const nestedInput = {
73
+ requiredField: 'test',
74
+ nestedOptional: {}
75
+ };
76
+ const nestedParseResult = vercelAITool.parameters.safeParse(nestedInput);
77
+ expect(nestedParseResult.success).toBe(true);
78
+ if (nestedParseResult.success) {
79
+ expect(nestedParseResult.data.nestedOptional?.innerDefault).toBe(10);
80
+ }
81
+ });
82
+ });
83
+ //# sourceMappingURL=testOptionals.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"testOptionals.test.js","sourceRoot":"","sources":["../../src/__tests__/testOptionals.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ // File: src/__tests__/types.test.ts
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const zod_1 = require("zod");
5
+ describe("DAIN Framework Types", () => {
6
+ test("AgentInfo type is correctly defined", () => {
7
+ const agentInfo = {
8
+ agentId: "test-agent",
9
+ address: "0x1234567890123456789012345678901234567890",
10
+ smartAccountPDA: "1234567890123456789012345678901234567890",
11
+ id: "dain_id_1234567890123456789012345678901234567890",
12
+ };
13
+ expect(agentInfo.agentId).toBe("test-agent");
14
+ expect(agentInfo.address).toBe("0x1234567890123456789012345678901234567890");
15
+ });
16
+ test("PricingInfo type is correctly defined", () => {
17
+ const pricingInfo = {
18
+ pricePerUse: 0.01,
19
+ currency: "USD",
20
+ };
21
+ expect(pricingInfo.pricePerUse).toBe(0.01);
22
+ expect(pricingInfo.currency).toBe("USD");
23
+ });
24
+ test("ToolConfig type is correctly defined", () => {
25
+ const toolConfig = {
26
+ id: "get-weather",
27
+ name: "Get Weather",
28
+ description: "Fetches weather for a city",
29
+ input: zod_1.z.object({ city: zod_1.z.string() }),
30
+ output: zod_1.z.object({ temperature: zod_1.z.number() }),
31
+ pricing: { pricePerUse: 0.01, currency: "USD" },
32
+ handler: async (input, agentInfo) => ({
33
+ text: `The temperature is 25°C`,
34
+ data: { temperature: 25 },
35
+ ui: null
36
+ }),
37
+ };
38
+ expect(toolConfig.id).toBe("get-weather");
39
+ expect(toolConfig.input.shape.city).toBeInstanceOf(zod_1.z.ZodString);
40
+ expect(toolConfig.output.shape.temperature).toBeInstanceOf(zod_1.z.ZodNumber);
41
+ });
42
+ test("ServiceConfig type is correctly defined", () => {
43
+ const serviceConfig = {
44
+ id: "weather-service",
45
+ name: "Weather Service",
46
+ description: "Provides weather information",
47
+ metadata: {
48
+ capabilities: ["current-weather", "forecast"],
49
+ languages: ["en", "es"],
50
+ },
51
+ recommendedPrompt: "Ask about the weather",
52
+ recommendedTools: ["get-weather", "get-forecast"],
53
+ };
54
+ expect(serviceConfig.id).toBe("weather-service");
55
+ expect(serviceConfig.metadata.capabilities).toContain("current-weather");
56
+ expect(serviceConfig.recommendedTools).toContain("get-weather");
57
+ });
58
+ test("ToolboxConfig type is correctly defined", () => {
59
+ const toolboxConfig = {
60
+ id: "weather-toolbox",
61
+ name: "Weather Toolbox",
62
+ description: "Collection of weather tools",
63
+ tools: ["get-weather", "get-forecast"],
64
+ metadata: {
65
+ complexity: "Low",
66
+ applicableFields: ["Meteorology", "Travel"],
67
+ },
68
+ recommendedPrompt: "Use these tools for weather-related tasks",
69
+ };
70
+ expect(toolboxConfig.id).toBe("weather-toolbox");
71
+ expect(toolboxConfig.tools).toContain("get-weather");
72
+ expect(toolboxConfig.metadata.applicableFields).toContain("Meteorology");
73
+ });
74
+ test("DAINServiceConfig type is correctly defined", () => {
75
+ const serviceConfig = {
76
+ metadata: {
77
+ title: "Weather Service",
78
+ description: "Provides weather information",
79
+ version: "1.0.0",
80
+ author: "DAIN Developer",
81
+ tags: ["weather", "forecast"],
82
+ },
83
+ identity: {
84
+ publicKey: "test-public-key",
85
+ agentId: "weather-agent",
86
+ orgId: "weather-org",
87
+ privateKey: "test-private",
88
+ },
89
+ services: [],
90
+ tools: [],
91
+ toolboxes: [],
92
+ contexts: [],
93
+ };
94
+ expect(serviceConfig.metadata.title).toBe("Weather Service");
95
+ expect(serviceConfig.identity.agentId).toBe("weather-agent");
96
+ });
97
+ });
98
+ //# sourceMappingURL=types.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.test.js","sourceRoot":"","sources":["../../src/__tests__/types.test.ts"],"names":[],"mappings":"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"}
@@ -129,20 +129,25 @@ function extractBearerToken(authHeader) {
129
129
  async function fetchPublicKey(dainIdUrl) {
130
130
  // SECURITY: Enforce HTTPS to prevent MITM attacks
131
131
  if (!dainIdUrl.startsWith('https://')) {
132
+ console.error(`[JWKS Fetch] ERROR: Non-HTTPS URL provided: ${dainIdUrl}`);
132
133
  throw new Error(`SECURITY: JWKS endpoint must use HTTPS. Got: ${dainIdUrl}. ` +
133
134
  `Use https://id.dain.org for production.`);
134
135
  }
135
136
  // Check cache
136
137
  const cached = jwksCache.get(dainIdUrl);
137
138
  if (cached && Date.now() - cached.timestamp < CACHE_TTL) {
139
+ console.log(`[JWKS Fetch] Using cached public key for ${dainIdUrl}`);
138
140
  return cached.publicKey;
139
141
  }
140
142
  // Fetch JWKS
141
143
  const jwksUrl = `${dainIdUrl}/api/oauth/.well-known/jwks.json`;
144
+ console.log(`[JWKS Fetch] Fetching public key from ${jwksUrl}`);
142
145
  const response = await fetch(jwksUrl);
143
146
  if (!response.ok) {
147
+ console.error(`[JWKS Fetch] ERROR: Failed to fetch JWKS - ${response.status} ${response.statusText}`);
144
148
  throw new Error(`Failed to fetch JWKS from ${jwksUrl}: ${response.status} ${response.statusText}`);
145
149
  }
150
+ console.log(`[JWKS Fetch] ✓ Successfully fetched JWKS`);
146
151
  const jwks = await response.json();
147
152
  // SECURITY: Validate JWKS structure
148
153
  if (!jwks || typeof jwks !== 'object') {
@@ -181,34 +186,30 @@ function jwkToPem(jwk) {
181
186
  }
182
187
  async function verifyJWT(token, publicKeyPEMOrUrl, options) {
183
188
  try {
189
+ // Decode token header and payload for logging (without verification)
190
+ const decoded = jsonwebtoken_1.default.decode(token, { complete: true });
191
+ console.log("[JWT Verify] Token claims:", {
192
+ iss: decoded?.payload?.iss,
193
+ aud: decoded?.payload?.aud,
194
+ sub: decoded?.payload?.sub,
195
+ exp: decoded?.payload?.exp,
196
+ expiration: decoded?.payload?.exp ? new Date(decoded.payload.exp * 1000).toISOString() : "none"
197
+ });
198
+ console.log("[JWT Verify] Verification options:", {
199
+ expectedIssuer: options?.issuer || "any",
200
+ expectedAudience: options?.audience || "any"
201
+ });
184
202
  // Fetch public key if URL provided
185
203
  const publicKey = publicKeyPEMOrUrl.startsWith("http")
186
204
  ? await fetchPublicKey(publicKeyPEMOrUrl)
187
205
  : publicKeyPEMOrUrl;
188
- // Normalize audience to accept both http:// and https://
189
- // This handles cases where tokens are issued with one protocol but services are accessed via another
190
- let normalizedAudience = options?.audience;
191
- if (options?.audience) {
192
- try {
193
- const audienceUrl = new URL(options.audience);
194
- const host = audienceUrl.host;
195
- // Accept both http:// and https:// for the same host
196
- normalizedAudience = [
197
- `http://${host}`,
198
- `https://${host}`
199
- ];
200
- }
201
- catch (e) {
202
- // If URL parsing fails, use original audience
203
- normalizedAudience = options.audience;
204
- }
205
- }
206
206
  // Verify JWT
207
207
  const payload = jsonwebtoken_1.default.verify(token, publicKey, {
208
208
  algorithms: ["RS256"],
209
209
  issuer: options?.issuer,
210
- audience: normalizedAudience,
210
+ audience: options?.audience,
211
211
  });
212
+ console.log("[JWT Verify] ✓ Token verified successfully");
212
213
  return {
213
214
  valid: true,
214
215
  payload,
@@ -217,6 +218,13 @@ async function verifyJWT(token, publicKeyPEMOrUrl, options) {
217
218
  };
218
219
  }
219
220
  catch (error) {
221
+ console.error("[JWT Verify] ERROR: Verification failed");
222
+ console.error("[JWT Verify] Error details:", {
223
+ name: error instanceof Error ? error.name : "Unknown",
224
+ message: error instanceof Error ? error.message : "Invalid token",
225
+ expectedAudience: options?.audience,
226
+ expectedIssuer: options?.issuer
227
+ });
220
228
  return {
221
229
  valid: false,
222
230
  error: error instanceof Error ? error.message : "Invalid token",
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/service/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/service/auth.ts"],"names":[],"mappings":"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"}
@@ -186,34 +186,103 @@ function setupHttpServer(config, tools, services, toolboxes, metadata, privateKe
186
186
  const jwtToken = (0, auth_1.extractBearerToken)(c.req.header("Authorization"));
187
187
  const apiKey = c.req.header("X-DAIN-API-KEY");
188
188
  if (jwtToken) {
189
+ console.log(`[JWT Auth] Starting JWT authentication for ${c.req.method} ${c.req.path}`);
189
190
  // JWT Authentication (Users)
190
191
  // Auto-detect JWT audience from Host header (works with localhost, tunnels, production)
191
192
  const host = c.req.header("x-forwarded-host") || c.req.header("host");
192
193
  if (!host) {
194
+ console.error("[JWT Auth] ERROR: Host header missing");
193
195
  throw new http_exception_1.HTTPException(400, { message: "Unable to determine service URL. Host header is required." });
194
196
  }
195
197
  // Validate host format to prevent obvious attacks
196
198
  if (host.includes(' ') || host.includes('\n') || host.includes('\r')) {
199
+ console.error(`[JWT Auth] ERROR: Invalid host header format: ${JSON.stringify(host)}`);
197
200
  throw new http_exception_1.HTTPException(400, { message: "Invalid Host header format" });
198
201
  }
202
+ // Protocol detection with multiple fallbacks
203
+ // Priority: FORCE_HTTPS env > x-forwarded-proto > x-forwarded-ssl > cloudflare headers > infer from host
199
204
  const xForwardedProto = c.req.header("x-forwarded-proto");
200
- const protocol = xForwardedProto || (host.includes("localhost") ? "http" : "https");
205
+ const xForwardedSsl = c.req.header("x-forwarded-ssl");
206
+ const cfVisitor = c.req.header("cf-visitor"); // Cloudflare
207
+ const forceHttps = process.env.FORCE_HTTPS === "true" || process.env.FORCE_HTTPS === "1";
208
+ let protocol;
209
+ let protocolSource;
210
+ if (forceHttps) {
211
+ protocol = "https";
212
+ protocolSource = "FORCE_HTTPS env var";
213
+ }
214
+ else if (xForwardedProto) {
215
+ protocol = xForwardedProto.split(',')[0].trim();
216
+ protocolSource = `x-forwarded-proto header: ${xForwardedProto}`;
217
+ }
218
+ else if (xForwardedSsl === "on") {
219
+ protocol = "https";
220
+ protocolSource = "x-forwarded-ssl: on";
221
+ }
222
+ else if (cfVisitor) {
223
+ try {
224
+ const visitor = JSON.parse(cfVisitor);
225
+ protocol = visitor.scheme || "https";
226
+ protocolSource = `cf-visitor header: ${visitor.scheme}`;
227
+ }
228
+ catch {
229
+ protocol = "https";
230
+ protocolSource = "cf-visitor header (parse failed, defaulted to https)";
231
+ }
232
+ }
233
+ else if (host.includes("localhost") || host.includes("127.0.0.1")) {
234
+ protocol = "http";
235
+ protocolSource = "localhost/127.0.0.1 detected";
236
+ }
237
+ else {
238
+ protocol = "https";
239
+ protocolSource = "default for production domain";
240
+ }
201
241
  const jwtAudience = `${protocol}://${host}`;
242
+ // Always log audience detection for debugging
243
+ console.log("[JWT Auth] Audience detection:", {
244
+ path: c.req.path,
245
+ host,
246
+ xForwardedHost: c.req.header("x-forwarded-host") || "not set",
247
+ xForwardedProto: xForwardedProto || "not set",
248
+ xForwardedSsl: xForwardedSsl || "not set",
249
+ cfVisitor: cfVisitor ? "present" : "not set",
250
+ forceHttps: forceHttps ? "enabled" : "disabled",
251
+ computedProtocol: protocol,
252
+ protocolSource,
253
+ jwtAudience
254
+ });
202
255
  const publicKeyOrUrl = config.jwtPublicKey || config.dainIdUrl || "https://id.dain.org";
203
256
  const issuer = config.jwtIssuer || "dainid-oauth";
257
+ console.log(`[JWT Auth] Verifying JWT with issuer: ${issuer}, audience: ${jwtAudience}`);
204
258
  const result = await (0, auth_1.verifyJWT)(jwtToken, publicKeyOrUrl, {
205
259
  issuer: issuer,
206
260
  audience: jwtAudience,
207
261
  });
208
262
  if (!result.valid) {
263
+ console.error(`[JWT Auth] ERROR: JWT verification failed - ${result.error}`);
264
+ console.error("[JWT Auth] Verification details:", {
265
+ expectedIssuer: issuer,
266
+ expectedAudience: jwtAudience,
267
+ publicKeySource: publicKeyOrUrl,
268
+ error: result.error
269
+ });
209
270
  throw new http_exception_1.HTTPException(401, { message: `JWT verification failed: ${result.error}` });
210
271
  }
272
+ console.log("[JWT Auth] JWT verification successful");
211
273
  // Defense in depth: double-check audience claim
212
274
  if (result.payload.aud !== jwtAudience) {
275
+ console.error("[JWT Auth] ERROR: Audience mismatch after verification");
276
+ console.error("[JWT Auth] Audience comparison:", {
277
+ expected: jwtAudience,
278
+ received: result.payload.aud,
279
+ match: result.payload.aud === jwtAudience
280
+ });
213
281
  throw new http_exception_1.HTTPException(403, {
214
282
  message: `JWT audience mismatch. Expected: ${jwtAudience}, Got: ${result.payload.aud}`
215
283
  });
216
284
  }
285
+ console.log(`[JWT Auth] ✓ Authentication successful for smart account: ${result.smartAccountId}`);
217
286
  c.set('authMethod', 'jwt');
218
287
  c.set('smartAccountId', result.smartAccountId);
219
288
  c.set('address', result.smartAccountId); // Use smartAccountId as address for JWT auth
@@ -222,18 +291,31 @@ function setupHttpServer(config, tools, services, toolboxes, metadata, privateKe
222
291
  c.set('smartAccountPDA', c.req.header("X-DAIN-SMART-ACCOUNT-PDA"));
223
292
  }
224
293
  else if (apiKey) {
294
+ console.log(`[API Key Auth] Starting API key authentication for ${c.req.method} ${c.req.path}`);
225
295
  // API Key Authentication (Services/Agents)
226
296
  const parsed = (0, auth_1.parseAPIKey)(apiKey);
227
297
  if (!parsed) {
298
+ console.error("[API Key Auth] ERROR: Invalid API key format");
228
299
  throw new http_exception_1.HTTPException(401, { message: "Invalid API key format" });
229
300
  }
301
+ console.log("[API Key Auth] Parsed API key:", {
302
+ agentId: parsed.agentId,
303
+ orgId: parsed.orgId
304
+ });
230
305
  // Validate API key with platform (skip in dev mode if no platform URL)
231
306
  if (config.platformBaseUrl) {
307
+ console.log(`[API Key Auth] Validating with platform: ${config.platformBaseUrl}`);
232
308
  const isValid = await (0, auth_1.validateAPIKeyWithPlatform)(apiKey, config.platformBaseUrl);
233
309
  if (!isValid) {
310
+ console.error("[API Key Auth] ERROR: Platform validation failed");
234
311
  throw new http_exception_1.HTTPException(401, { message: "Invalid API key" });
235
312
  }
313
+ console.log("[API Key Auth] ✓ Platform validation successful");
314
+ }
315
+ else {
316
+ console.log("[API Key Auth] Skipping platform validation (no platformBaseUrl configured)");
236
317
  }
318
+ console.log(`[API Key Auth] ✓ Authentication successful for agent: ${parsed.agentId}`);
237
319
  c.set('authMethod', 'apiKey');
238
320
  c.set('agentId', parsed.agentId);
239
321
  c.set('orgId', parsed.orgId);
@@ -241,6 +323,7 @@ function setupHttpServer(config, tools, services, toolboxes, metadata, privateKe
241
323
  c.set('smartAccountPDA', c.req.header("X-DAIN-SMART-ACCOUNT-PDA"));
242
324
  }
243
325
  else {
326
+ console.error("[Auth] ERROR: No authentication provided (no JWT or API key found)");
244
327
  throw new http_exception_1.HTTPException(401, { message: "No authentication provided" });
245
328
  }
246
329
  await next();