@optimizely-opal/opal-tool-ocp-sdk 1.0.0-beta.2 → 1.0.0-beta.4
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/README.md +114 -0
- package/dist/auth/AuthUtils.d.ts +5 -5
- package/dist/auth/AuthUtils.d.ts.map +1 -1
- package/dist/auth/AuthUtils.js +53 -25
- package/dist/auth/AuthUtils.js.map +1 -1
- package/dist/auth/AuthUtils.test.js +62 -117
- package/dist/auth/AuthUtils.test.js.map +1 -1
- package/dist/function/GlobalToolFunction.d.ts +2 -1
- package/dist/function/GlobalToolFunction.d.ts.map +1 -1
- package/dist/function/GlobalToolFunction.js +25 -4
- package/dist/function/GlobalToolFunction.js.map +1 -1
- package/dist/function/GlobalToolFunction.test.js +57 -8
- package/dist/function/GlobalToolFunction.test.js.map +1 -1
- package/dist/function/ToolFunction.d.ts +8 -2
- package/dist/function/ToolFunction.d.ts.map +1 -1
- package/dist/function/ToolFunction.js +31 -5
- package/dist/function/ToolFunction.js.map +1 -1
- package/dist/function/ToolFunction.test.js +57 -8
- package/dist/function/ToolFunction.test.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/logging/ToolLogger.d.ts +34 -0
- package/dist/logging/ToolLogger.d.ts.map +1 -0
- package/dist/logging/ToolLogger.js +153 -0
- package/dist/logging/ToolLogger.js.map +1 -0
- package/dist/logging/ToolLogger.test.d.ts +2 -0
- package/dist/logging/ToolLogger.test.d.ts.map +1 -0
- package/dist/logging/ToolLogger.test.js +646 -0
- package/dist/logging/ToolLogger.test.js.map +1 -0
- package/dist/service/Service.d.ts +15 -2
- package/dist/service/Service.d.ts.map +1 -1
- package/dist/service/Service.js +43 -17
- package/dist/service/Service.js.map +1 -1
- package/dist/service/Service.test.js +84 -2
- package/dist/service/Service.test.js.map +1 -1
- package/dist/types/ToolError.d.ts +59 -0
- package/dist/types/ToolError.d.ts.map +1 -0
- package/dist/types/ToolError.js +79 -0
- package/dist/types/ToolError.js.map +1 -0
- package/dist/types/ToolError.test.d.ts +2 -0
- package/dist/types/ToolError.test.d.ts.map +1 -0
- package/dist/types/ToolError.test.js +161 -0
- package/dist/types/ToolError.test.js.map +1 -0
- package/dist/validation/ParameterValidator.d.ts +5 -16
- package/dist/validation/ParameterValidator.d.ts.map +1 -1
- package/dist/validation/ParameterValidator.js +10 -3
- package/dist/validation/ParameterValidator.js.map +1 -1
- package/dist/validation/ParameterValidator.test.js +186 -146
- package/dist/validation/ParameterValidator.test.js.map +1 -1
- package/package.json +1 -1
- package/src/auth/AuthUtils.test.ts +62 -157
- package/src/auth/AuthUtils.ts +66 -32
- package/src/function/GlobalToolFunction.test.ts +57 -8
- package/src/function/GlobalToolFunction.ts +37 -6
- package/src/function/ToolFunction.test.ts +57 -8
- package/src/function/ToolFunction.ts +45 -7
- package/src/index.ts +1 -0
- package/src/logging/ToolLogger.test.ts +753 -0
- package/src/logging/ToolLogger.ts +177 -0
- package/src/service/Service.test.ts +103 -2
- package/src/service/Service.ts +45 -17
- package/src/types/ToolError.test.ts +192 -0
- package/src/types/ToolError.ts +95 -0
- package/src/validation/ParameterValidator.test.ts +185 -158
- package/src/validation/ParameterValidator.ts +17 -20
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
4
4
|
const app_sdk_1 = require("@zaiusinc/app-sdk");
|
|
5
5
|
const TokenVerifier_1 = require("./TokenVerifier");
|
|
6
6
|
const AuthUtils_1 = require("./AuthUtils");
|
|
7
|
+
const ToolError_1 = require("../types/ToolError");
|
|
7
8
|
// Mock the dependencies
|
|
8
9
|
jest.mock('./TokenVerifier', () => ({
|
|
9
10
|
getTokenVerifier: jest.fn(),
|
|
@@ -43,25 +44,23 @@ describe('AuthUtils', () => {
|
|
|
43
44
|
mockTokenVerifier.verify.mockResolvedValue(true);
|
|
44
45
|
});
|
|
45
46
|
describe('when request is for discovery endpoint', () => {
|
|
46
|
-
it('should
|
|
47
|
+
it('should succeed without authentication', async () => {
|
|
47
48
|
const request = { path: '/discovery' };
|
|
48
|
-
|
|
49
|
-
expect(result).toBe(true);
|
|
49
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).resolves.toBeUndefined();
|
|
50
50
|
expect(mockGetTokenVerifier).not.toHaveBeenCalled();
|
|
51
51
|
expect(mockTokenVerifier.verify).not.toHaveBeenCalled();
|
|
52
52
|
});
|
|
53
53
|
});
|
|
54
54
|
describe('when request is for ready endpoint', () => {
|
|
55
|
-
it('should
|
|
55
|
+
it('should succeed without authentication', async () => {
|
|
56
56
|
const request = { path: '/ready' };
|
|
57
|
-
|
|
58
|
-
expect(result).toBe(true);
|
|
57
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).resolves.toBeUndefined();
|
|
59
58
|
expect(mockGetTokenVerifier).not.toHaveBeenCalled();
|
|
60
59
|
expect(mockTokenVerifier.verify).not.toHaveBeenCalled();
|
|
61
60
|
});
|
|
62
61
|
});
|
|
63
62
|
describe('when request has valid authentication', () => {
|
|
64
|
-
it('should
|
|
63
|
+
it('should succeed for valid OptiID token with matching organization', async () => {
|
|
65
64
|
const request = {
|
|
66
65
|
path: '/some-tool',
|
|
67
66
|
bodyJSON: {
|
|
@@ -74,8 +73,7 @@ describe('AuthUtils', () => {
|
|
|
74
73
|
}
|
|
75
74
|
}
|
|
76
75
|
};
|
|
77
|
-
|
|
78
|
-
expect(result).toBe(true);
|
|
76
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).resolves.toBeUndefined();
|
|
79
77
|
expect(mockGetTokenVerifier).toHaveBeenCalled();
|
|
80
78
|
expect(mockTokenVerifier.verify).toHaveBeenCalledWith('valid-token-123');
|
|
81
79
|
});
|
|
@@ -92,8 +90,7 @@ describe('AuthUtils', () => {
|
|
|
92
90
|
}
|
|
93
91
|
}
|
|
94
92
|
};
|
|
95
|
-
|
|
96
|
-
expect(result).toBe(true);
|
|
93
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).resolves.toBeUndefined();
|
|
97
94
|
expect(mockTokenVerifier.verify).toHaveBeenCalledWith('valid-token-123');
|
|
98
95
|
});
|
|
99
96
|
it('should handle mixed case provider names', async () => {
|
|
@@ -109,31 +106,26 @@ describe('AuthUtils', () => {
|
|
|
109
106
|
}
|
|
110
107
|
}
|
|
111
108
|
};
|
|
112
|
-
|
|
113
|
-
expect(result).toBe(true);
|
|
109
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).resolves.toBeUndefined();
|
|
114
110
|
expect(mockTokenVerifier.verify).toHaveBeenCalledWith('valid-token-123');
|
|
115
111
|
});
|
|
116
112
|
});
|
|
117
113
|
describe('when authentication fails', () => {
|
|
118
|
-
it('should
|
|
114
|
+
it('should throw ToolError when auth data is missing', async () => {
|
|
119
115
|
const request = {
|
|
120
116
|
path: '/some-tool',
|
|
121
117
|
bodyJSON: {}
|
|
122
118
|
};
|
|
123
|
-
|
|
124
|
-
expect(result).toBe(false);
|
|
125
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
119
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
126
120
|
expect(mockTokenVerifier.verify).not.toHaveBeenCalled();
|
|
127
121
|
});
|
|
128
|
-
it('should
|
|
122
|
+
it('should throw ToolError when bodyJSON is missing', async () => {
|
|
129
123
|
const request = {
|
|
130
124
|
path: '/some-tool'
|
|
131
125
|
};
|
|
132
|
-
|
|
133
|
-
expect(result).toBe(false);
|
|
134
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
126
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
135
127
|
});
|
|
136
|
-
it('should
|
|
128
|
+
it('should throw ToolError when provider is not OptiID', async () => {
|
|
137
129
|
const request = {
|
|
138
130
|
path: '/some-tool',
|
|
139
131
|
bodyJSON: {
|
|
@@ -146,11 +138,9 @@ describe('AuthUtils', () => {
|
|
|
146
138
|
}
|
|
147
139
|
}
|
|
148
140
|
};
|
|
149
|
-
|
|
150
|
-
expect(result).toBe(false);
|
|
151
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
141
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
152
142
|
});
|
|
153
|
-
it('should
|
|
143
|
+
it('should throw ToolError when access token is missing', async () => {
|
|
154
144
|
const request = {
|
|
155
145
|
path: '/some-tool',
|
|
156
146
|
bodyJSON: {
|
|
@@ -163,11 +153,9 @@ describe('AuthUtils', () => {
|
|
|
163
153
|
}
|
|
164
154
|
}
|
|
165
155
|
};
|
|
166
|
-
|
|
167
|
-
expect(result).toBe(false);
|
|
168
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
156
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
169
157
|
});
|
|
170
|
-
it('should
|
|
158
|
+
it('should throw ToolError when access token is empty string', async () => {
|
|
171
159
|
const request = {
|
|
172
160
|
path: '/some-tool',
|
|
173
161
|
bodyJSON: {
|
|
@@ -180,11 +168,9 @@ describe('AuthUtils', () => {
|
|
|
180
168
|
}
|
|
181
169
|
}
|
|
182
170
|
};
|
|
183
|
-
|
|
184
|
-
expect(result).toBe(false);
|
|
185
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
171
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
186
172
|
});
|
|
187
|
-
it('should
|
|
173
|
+
it('should throw ToolError when access token is undefined', async () => {
|
|
188
174
|
const request = {
|
|
189
175
|
path: '/some-tool',
|
|
190
176
|
bodyJSON: {
|
|
@@ -197,13 +183,11 @@ describe('AuthUtils', () => {
|
|
|
197
183
|
}
|
|
198
184
|
}
|
|
199
185
|
};
|
|
200
|
-
|
|
201
|
-
expect(result).toBe(false);
|
|
202
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
186
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
203
187
|
});
|
|
204
188
|
});
|
|
205
189
|
describe('when organization validation fails', () => {
|
|
206
|
-
it('should
|
|
190
|
+
it('should throw ToolError when customer_id does not match app organization', async () => {
|
|
207
191
|
const request = {
|
|
208
192
|
path: '/some-tool',
|
|
209
193
|
bodyJSON: {
|
|
@@ -216,12 +200,10 @@ describe('AuthUtils', () => {
|
|
|
216
200
|
}
|
|
217
201
|
}
|
|
218
202
|
};
|
|
219
|
-
|
|
220
|
-
expect(result).toBe(false);
|
|
221
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('Invalid organisation ID: expected test-org-123, received different-org-456');
|
|
203
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
222
204
|
expect(mockTokenVerifier.verify).not.toHaveBeenCalled();
|
|
223
205
|
});
|
|
224
|
-
it('should
|
|
206
|
+
it('should throw ToolError when customer_id is missing', async () => {
|
|
225
207
|
const request = {
|
|
226
208
|
path: '/some-tool',
|
|
227
209
|
bodyJSON: {
|
|
@@ -234,11 +216,9 @@ describe('AuthUtils', () => {
|
|
|
234
216
|
}
|
|
235
217
|
}
|
|
236
218
|
};
|
|
237
|
-
|
|
238
|
-
expect(result).toBe(false);
|
|
239
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('Organisation ID is required but not provided');
|
|
219
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
240
220
|
});
|
|
241
|
-
it('should
|
|
221
|
+
it('should throw ToolError when customer_id is empty string', async () => {
|
|
242
222
|
const request = {
|
|
243
223
|
path: '/some-tool',
|
|
244
224
|
bodyJSON: {
|
|
@@ -251,9 +231,7 @@ describe('AuthUtils', () => {
|
|
|
251
231
|
}
|
|
252
232
|
}
|
|
253
233
|
};
|
|
254
|
-
|
|
255
|
-
expect(result).toBe(false);
|
|
256
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('Organisation ID is required but not provided');
|
|
234
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
257
235
|
});
|
|
258
236
|
it('should handle case when app context has no account', async () => {
|
|
259
237
|
mockGetAppContext.mockReturnValue({});
|
|
@@ -269,9 +247,7 @@ describe('AuthUtils', () => {
|
|
|
269
247
|
}
|
|
270
248
|
}
|
|
271
249
|
};
|
|
272
|
-
|
|
273
|
-
expect(result).toBe(false);
|
|
274
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('Invalid organisation ID: expected undefined, received some-org-123');
|
|
250
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
275
251
|
});
|
|
276
252
|
it('should handle case when app context is null', async () => {
|
|
277
253
|
mockGetAppContext.mockReturnValue(null);
|
|
@@ -287,13 +263,11 @@ describe('AuthUtils', () => {
|
|
|
287
263
|
}
|
|
288
264
|
}
|
|
289
265
|
};
|
|
290
|
-
|
|
291
|
-
expect(result).toBe(false);
|
|
292
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('Invalid organisation ID: expected undefined, received some-org-123');
|
|
266
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
293
267
|
});
|
|
294
268
|
});
|
|
295
269
|
describe('when token validation fails', () => {
|
|
296
|
-
it('should
|
|
270
|
+
it('should throw ToolError when token verifier returns false', async () => {
|
|
297
271
|
mockTokenVerifier.verify.mockResolvedValue(false);
|
|
298
272
|
const request = {
|
|
299
273
|
path: '/some-tool',
|
|
@@ -307,11 +281,10 @@ describe('AuthUtils', () => {
|
|
|
307
281
|
}
|
|
308
282
|
}
|
|
309
283
|
};
|
|
310
|
-
|
|
311
|
-
expect(result).toBe(false);
|
|
284
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
312
285
|
expect(mockTokenVerifier.verify).toHaveBeenCalledWith('invalid-token');
|
|
313
286
|
});
|
|
314
|
-
it('should
|
|
287
|
+
it('should throw ToolError when token verification throws an error', async () => {
|
|
315
288
|
const verificationError = new Error('Token verification failed');
|
|
316
289
|
mockTokenVerifier.verify.mockRejectedValue(verificationError);
|
|
317
290
|
const request = {
|
|
@@ -326,11 +299,9 @@ describe('AuthUtils', () => {
|
|
|
326
299
|
}
|
|
327
300
|
}
|
|
328
301
|
};
|
|
329
|
-
|
|
330
|
-
expect(result).toBe(false);
|
|
331
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token validation failed:', verificationError);
|
|
302
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
332
303
|
});
|
|
333
|
-
it('should
|
|
304
|
+
it('should throw ToolError when getTokenVerifier throws an error', async () => {
|
|
334
305
|
const verifierError = new Error('Failed to get token verifier');
|
|
335
306
|
mockGetTokenVerifier.mockRejectedValue(verifierError);
|
|
336
307
|
const request = {
|
|
@@ -345,9 +316,7 @@ describe('AuthUtils', () => {
|
|
|
345
316
|
}
|
|
346
317
|
}
|
|
347
318
|
};
|
|
348
|
-
|
|
349
|
-
expect(result).toBe(false);
|
|
350
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token validation failed:', verifierError);
|
|
319
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
351
320
|
});
|
|
352
321
|
});
|
|
353
322
|
});
|
|
@@ -357,25 +326,23 @@ describe('AuthUtils', () => {
|
|
|
357
326
|
mockTokenVerifier.verify.mockResolvedValue(true);
|
|
358
327
|
});
|
|
359
328
|
describe('when request is for discovery endpoint', () => {
|
|
360
|
-
it('should
|
|
329
|
+
it('should succeed without authentication', async () => {
|
|
361
330
|
const request = { path: '/discovery' };
|
|
362
|
-
|
|
363
|
-
expect(result).toBe(true);
|
|
331
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).resolves.toBeUndefined();
|
|
364
332
|
expect(mockGetTokenVerifier).not.toHaveBeenCalled();
|
|
365
333
|
expect(mockTokenVerifier.verify).not.toHaveBeenCalled();
|
|
366
334
|
});
|
|
367
335
|
});
|
|
368
336
|
describe('when request is for ready endpoint', () => {
|
|
369
|
-
it('should
|
|
337
|
+
it('should succeed without authentication', async () => {
|
|
370
338
|
const request = { path: '/ready' };
|
|
371
|
-
|
|
372
|
-
expect(result).toBe(true);
|
|
339
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).resolves.toBeUndefined();
|
|
373
340
|
expect(mockGetTokenVerifier).not.toHaveBeenCalled();
|
|
374
341
|
expect(mockTokenVerifier.verify).not.toHaveBeenCalled();
|
|
375
342
|
});
|
|
376
343
|
});
|
|
377
344
|
describe('when request has valid authentication', () => {
|
|
378
|
-
it('should
|
|
345
|
+
it('should succeed for valid OptiID token regardless of organization', async () => {
|
|
379
346
|
const request = {
|
|
380
347
|
path: '/global-tool',
|
|
381
348
|
bodyJSON: {
|
|
@@ -388,13 +355,12 @@ describe('AuthUtils', () => {
|
|
|
388
355
|
}
|
|
389
356
|
}
|
|
390
357
|
};
|
|
391
|
-
|
|
392
|
-
expect(result).toBe(true);
|
|
358
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).resolves.toBeUndefined();
|
|
393
359
|
expect(mockTokenVerifier.verify).toHaveBeenCalledWith('valid-token-123');
|
|
394
360
|
// Should not log organization validation errors for global requests
|
|
395
361
|
expect(app_sdk_1.logger.error).not.toHaveBeenCalledWith(expect.stringContaining('Invalid organisation ID'));
|
|
396
362
|
});
|
|
397
|
-
it('should
|
|
363
|
+
it('should succeed even without customer_id', async () => {
|
|
398
364
|
const request = {
|
|
399
365
|
path: '/global-tool',
|
|
400
366
|
bodyJSON: {
|
|
@@ -407,8 +373,7 @@ describe('AuthUtils', () => {
|
|
|
407
373
|
}
|
|
408
374
|
}
|
|
409
375
|
};
|
|
410
|
-
|
|
411
|
-
expect(result).toBe(true);
|
|
376
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).resolves.toBeUndefined();
|
|
412
377
|
expect(mockTokenVerifier.verify).toHaveBeenCalledWith('valid-token-123');
|
|
413
378
|
});
|
|
414
379
|
it('should handle case-insensitive provider names', async () => {
|
|
@@ -424,22 +389,19 @@ describe('AuthUtils', () => {
|
|
|
424
389
|
}
|
|
425
390
|
}
|
|
426
391
|
};
|
|
427
|
-
|
|
428
|
-
expect(result).toBe(true);
|
|
392
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).resolves.toBeUndefined();
|
|
429
393
|
expect(mockTokenVerifier.verify).toHaveBeenCalledWith('valid-token-123');
|
|
430
394
|
});
|
|
431
395
|
});
|
|
432
396
|
describe('when authentication fails', () => {
|
|
433
|
-
it('should
|
|
397
|
+
it('should throw ToolError when auth data is missing', async () => {
|
|
434
398
|
const request = {
|
|
435
399
|
path: '/global-tool',
|
|
436
400
|
bodyJSON: {}
|
|
437
401
|
};
|
|
438
|
-
|
|
439
|
-
expect(result).toBe(false);
|
|
440
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
402
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
441
403
|
});
|
|
442
|
-
it('should
|
|
404
|
+
it('should throw ToolError when provider is not OptiID', async () => {
|
|
443
405
|
const request = {
|
|
444
406
|
path: '/global-tool',
|
|
445
407
|
bodyJSON: {
|
|
@@ -452,11 +414,9 @@ describe('AuthUtils', () => {
|
|
|
452
414
|
}
|
|
453
415
|
}
|
|
454
416
|
};
|
|
455
|
-
|
|
456
|
-
expect(result).toBe(false);
|
|
457
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
417
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
458
418
|
});
|
|
459
|
-
it('should
|
|
419
|
+
it('should throw ToolError when access token is missing', async () => {
|
|
460
420
|
const request = {
|
|
461
421
|
path: '/global-tool',
|
|
462
422
|
bodyJSON: {
|
|
@@ -469,11 +429,9 @@ describe('AuthUtils', () => {
|
|
|
469
429
|
}
|
|
470
430
|
}
|
|
471
431
|
};
|
|
472
|
-
|
|
473
|
-
expect(result).toBe(false);
|
|
474
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
432
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
475
433
|
});
|
|
476
|
-
it('should
|
|
434
|
+
it('should throw ToolError when access token is empty', async () => {
|
|
477
435
|
const request = {
|
|
478
436
|
path: '/global-tool',
|
|
479
437
|
bodyJSON: {
|
|
@@ -486,13 +444,11 @@ describe('AuthUtils', () => {
|
|
|
486
444
|
}
|
|
487
445
|
}
|
|
488
446
|
};
|
|
489
|
-
|
|
490
|
-
expect(result).toBe(false);
|
|
491
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
447
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
492
448
|
});
|
|
493
449
|
});
|
|
494
450
|
describe('when token validation fails', () => {
|
|
495
|
-
it('should
|
|
451
|
+
it('should throw ToolError when token verifier returns false', async () => {
|
|
496
452
|
mockTokenVerifier.verify.mockResolvedValue(false);
|
|
497
453
|
const request = {
|
|
498
454
|
path: '/global-tool',
|
|
@@ -506,11 +462,10 @@ describe('AuthUtils', () => {
|
|
|
506
462
|
}
|
|
507
463
|
}
|
|
508
464
|
};
|
|
509
|
-
|
|
510
|
-
expect(result).toBe(false);
|
|
465
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
511
466
|
expect(mockTokenVerifier.verify).toHaveBeenCalledWith('invalid-token');
|
|
512
467
|
});
|
|
513
|
-
it('should
|
|
468
|
+
it('should throw ToolError when token verification throws an error', async () => {
|
|
514
469
|
const verificationError = new Error('Global token verification failed');
|
|
515
470
|
mockTokenVerifier.verify.mockRejectedValue(verificationError);
|
|
516
471
|
const request = {
|
|
@@ -525,9 +480,7 @@ describe('AuthUtils', () => {
|
|
|
525
480
|
}
|
|
526
481
|
}
|
|
527
482
|
};
|
|
528
|
-
|
|
529
|
-
expect(result).toBe(false);
|
|
530
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token validation failed:', verificationError);
|
|
483
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
531
484
|
});
|
|
532
485
|
});
|
|
533
486
|
describe('organization validation differences from authenticateRegularRequest', () => {
|
|
@@ -544,8 +497,7 @@ describe('AuthUtils', () => {
|
|
|
544
497
|
}
|
|
545
498
|
}
|
|
546
499
|
};
|
|
547
|
-
|
|
548
|
-
expect(result).toBe(true);
|
|
500
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).resolves.toBeUndefined();
|
|
549
501
|
expect(mockTokenVerifier.verify).toHaveBeenCalledWith('valid-token-123');
|
|
550
502
|
// Should NOT log organization validation errors
|
|
551
503
|
expect(app_sdk_1.logger.error).not.toHaveBeenCalledWith(expect.stringContaining('Invalid organisation ID'));
|
|
@@ -565,8 +517,7 @@ describe('AuthUtils', () => {
|
|
|
565
517
|
}
|
|
566
518
|
}
|
|
567
519
|
};
|
|
568
|
-
|
|
569
|
-
expect(result).toBe(true);
|
|
520
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).resolves.toBeUndefined();
|
|
570
521
|
expect(mockTokenVerifier.verify).toHaveBeenCalledWith('valid-token-123');
|
|
571
522
|
});
|
|
572
523
|
});
|
|
@@ -577,11 +528,8 @@ describe('AuthUtils', () => {
|
|
|
577
528
|
path: '/some-tool',
|
|
578
529
|
bodyJSON: null
|
|
579
530
|
};
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
expect(result1).toBe(false);
|
|
583
|
-
expect(result2).toBe(false);
|
|
584
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
531
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
532
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
585
533
|
});
|
|
586
534
|
it('should handle malformed auth objects', async () => {
|
|
587
535
|
const request = {
|
|
@@ -590,11 +538,8 @@ describe('AuthUtils', () => {
|
|
|
590
538
|
auth: 'invalid-auth-format'
|
|
591
539
|
}
|
|
592
540
|
};
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
expect(result1).toBe(false);
|
|
596
|
-
expect(result2).toBe(false);
|
|
597
|
-
expect(app_sdk_1.logger.error).toHaveBeenCalledWith('OptiID token is required but not provided');
|
|
541
|
+
await expect((0, AuthUtils_1.authenticateRegularRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
542
|
+
await expect((0, AuthUtils_1.authenticateGlobalRequest)(request)).rejects.toThrow(ToolError_1.ToolError);
|
|
598
543
|
});
|
|
599
544
|
});
|
|
600
545
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthUtils.test.js","sourceRoot":"","sources":["../../src/auth/AuthUtils.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AuthUtils.test.js","sourceRoot":"","sources":["../../src/auth/AuthUtils.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,10 +17,11 @@ export declare abstract class GlobalToolFunction extends GlobalFunction {
|
|
|
17
17
|
* @returns Response as the HTTP response
|
|
18
18
|
*/
|
|
19
19
|
perform(): Promise<Response>;
|
|
20
|
+
private handleRequest;
|
|
20
21
|
/**
|
|
21
22
|
* Authenticate the incoming request by validating only the OptiID token
|
|
22
23
|
*
|
|
23
|
-
* @
|
|
24
|
+
* @throws {ToolError} If authentication fails
|
|
24
25
|
*/
|
|
25
26
|
private authorizeRequest;
|
|
26
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalToolFunction.d.ts","sourceRoot":"","sources":["../../src/function/GlobalToolFunction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"GlobalToolFunction.d.ts","sourceRoot":"","sources":["../../src/function/GlobalToolFunction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAA4B,MAAM,mBAAmB,CAAC;AAMvF;;;GAGG;AACH,8BAAsB,kBAAmB,SAAQ,cAAc;IAE7D;;;;;OAKG;IACH,SAAS,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC;IAInC;;;;OAIG;IACU,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC;YAmB3B,aAAa;IAgC3B;;;;OAIG;YACW,gBAAgB;CAG/B"}
|
|
@@ -4,6 +4,8 @@ exports.GlobalToolFunction = void 0;
|
|
|
4
4
|
const app_sdk_1 = require("@zaiusinc/app-sdk");
|
|
5
5
|
const AuthUtils_1 = require("../auth/AuthUtils");
|
|
6
6
|
const Service_1 = require("../service/Service");
|
|
7
|
+
const ToolLogger_1 = require("../logging/ToolLogger");
|
|
8
|
+
const ToolError_1 = require("../types/ToolError");
|
|
7
9
|
/**
|
|
8
10
|
* Abstract base class for global tool-based function execution
|
|
9
11
|
* Provides a standard interface for processing requests through registered tools
|
|
@@ -24,6 +26,7 @@ class GlobalToolFunction extends app_sdk_1.GlobalFunction {
|
|
|
24
26
|
* @returns Response as the HTTP response
|
|
25
27
|
*/
|
|
26
28
|
async perform() {
|
|
29
|
+
const startTime = Date.now();
|
|
27
30
|
// Extract customer_id from auth data for global context attribution
|
|
28
31
|
const authInfo = (0, AuthUtils_1.extractAuthData)(this.request);
|
|
29
32
|
const customerId = authInfo?.authData?.credentials?.customer_id;
|
|
@@ -31,8 +34,26 @@ class GlobalToolFunction extends app_sdk_1.GlobalFunction {
|
|
|
31
34
|
opalThreadId: this.request.headers.get('x-opal-thread-id') || '',
|
|
32
35
|
customerId: customerId || ''
|
|
33
36
|
});
|
|
34
|
-
|
|
35
|
-
|
|
37
|
+
ToolLogger_1.ToolLogger.logRequest(this.request);
|
|
38
|
+
const response = await this.handleRequest();
|
|
39
|
+
ToolLogger_1.ToolLogger.logResponse(this.request, response, Date.now() - startTime);
|
|
40
|
+
return response;
|
|
41
|
+
}
|
|
42
|
+
async handleRequest() {
|
|
43
|
+
try {
|
|
44
|
+
await this.authorizeRequest();
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
if (error instanceof ToolError_1.ToolError) {
|
|
48
|
+
return new app_sdk_1.Response(error.status, error.toProblemDetails(this.request.path), new app_sdk_1.Headers([['content-type', 'application/problem+json']]));
|
|
49
|
+
}
|
|
50
|
+
// Fallback for unexpected errors
|
|
51
|
+
return new app_sdk_1.Response(500, {
|
|
52
|
+
title: 'Internal Server Error',
|
|
53
|
+
status: 500,
|
|
54
|
+
detail: 'An unexpected error occurred during authentication',
|
|
55
|
+
instance: this.request.path
|
|
56
|
+
}, new app_sdk_1.Headers([['content-type', 'application/problem+json']]));
|
|
36
57
|
}
|
|
37
58
|
if (this.request.path === '/ready') {
|
|
38
59
|
const isReady = await this.ready();
|
|
@@ -43,10 +64,10 @@ class GlobalToolFunction extends app_sdk_1.GlobalFunction {
|
|
|
43
64
|
/**
|
|
44
65
|
* Authenticate the incoming request by validating only the OptiID token
|
|
45
66
|
*
|
|
46
|
-
* @
|
|
67
|
+
* @throws {ToolError} If authentication fails
|
|
47
68
|
*/
|
|
48
69
|
async authorizeRequest() {
|
|
49
|
-
|
|
70
|
+
await (0, AuthUtils_1.authenticateGlobalRequest)(this.request);
|
|
50
71
|
}
|
|
51
72
|
}
|
|
52
73
|
exports.GlobalToolFunction = GlobalToolFunction;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GlobalToolFunction.js","sourceRoot":"","sources":["../../src/function/GlobalToolFunction.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"GlobalToolFunction.js","sourceRoot":"","sources":["../../src/function/GlobalToolFunction.ts"],"names":[],"mappings":";;;AAAA,+CAAuF;AACvF,iDAA+E;AAC/E,gDAAkD;AAClD,sDAAmD;AACnD,kDAA+C;AAE/C;;;GAGG;AACH,MAAsB,kBAAmB,SAAQ,wBAAc;IAE7D;;;;;OAKG;IACO,KAAK;QACb,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,OAAO;QAClB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,oEAAoE;QACpE,MAAM,QAAQ,GAAG,IAAA,2BAAe,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,CAAC;QAEhE,IAAA,yBAAe,EAAC;YACd,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,EAAE;YAChE,UAAU,EAAE,UAAU,IAAI,EAAE;SAC7B,CAAC,CAAC;QAEH,uBAAU,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC5C,uBAAU,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;QACvE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAChC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,qBAAS,EAAE,CAAC;gBAC/B,OAAO,IAAI,kBAAQ,CACjB,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EACzC,IAAI,iBAAO,CAAC,CAAC,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAC5D,CAAC;YACJ,CAAC;YACD,iCAAiC;YACjC,OAAO,IAAI,kBAAQ,CACjB,GAAG,EACH;gBACE,KAAK,EAAE,uBAAuB;gBAC9B,MAAM,EAAE,GAAG;gBACX,MAAM,EAAE,oDAAoD;gBAC5D,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;aAC5B,EACD,IAAI,iBAAO,CAAC,CAAC,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAC5D,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YACnC,OAAO,IAAI,kBAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,sBAAY,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACzD,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,gBAAgB;QAC5B,MAAM,IAAA,qCAAyB,EAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;CACF;AA5ED,gDA4EC"}
|