@plyaz/types 1.13.3 → 1.13.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.
Files changed (55) hide show
  1. package/dist/api/client/types.d.ts +3 -3
  2. package/dist/api/config/types.d.ts +62 -5
  3. package/dist/api/debugger/enums.d.ts +12 -0
  4. package/dist/api/debugger/types.d.ts +1 -1
  5. package/dist/api/errors/types.d.ts +46 -238
  6. package/dist/api/events/factories/errors/types.d.ts +26 -27
  7. package/dist/api/index.cjs +1437 -669
  8. package/dist/api/index.cjs.map +1 -1
  9. package/dist/api/index.d.ts +5 -2
  10. package/dist/api/index.js +1365 -603
  11. package/dist/api/index.js.map +1 -1
  12. package/dist/db/DatabaseAdapter.d.ts +2 -2
  13. package/dist/db/DatabaseService.d.ts +3 -3
  14. package/dist/db/config.types.d.ts +1 -1
  15. package/dist/db/database.types.d.ts +2 -2
  16. package/dist/db/index.cjs.map +1 -1
  17. package/dist/db/index.d.ts +1 -1
  18. package/dist/db/index.js.map +1 -1
  19. package/dist/errors/codes.d.ts +251 -0
  20. package/dist/errors/enums.d.ts +199 -0
  21. package/dist/errors/index.cjs +1287 -0
  22. package/dist/errors/index.cjs.map +1 -1
  23. package/dist/errors/index.d.ts +1 -0
  24. package/dist/errors/index.js +1264 -1
  25. package/dist/errors/index.js.map +1 -1
  26. package/dist/errors/types.d.ts +630 -14
  27. package/dist/index.cjs +2161 -1217
  28. package/dist/index.cjs.map +1 -1
  29. package/dist/index.d.ts +43 -1
  30. package/dist/index.js +1829 -911
  31. package/dist/index.js.map +1 -1
  32. package/dist/notifications/enums.d.ts +140 -0
  33. package/dist/notifications/index.cjs +4353 -0
  34. package/dist/notifications/index.cjs.map +1 -0
  35. package/dist/notifications/index.js +145 -0
  36. package/dist/notifications/index.js.map +1 -0
  37. package/dist/notifications/schemas.d.ts +73 -0
  38. package/dist/notifications/types.d.ts +1937 -0
  39. package/dist/payments/base-error/enum.d.ts +79 -0
  40. package/dist/payments/base-error/index.d.ts +2 -0
  41. package/dist/payments/base-error/types.d.ts +180 -0
  42. package/dist/payments/currency/enums.d.ts +37 -0
  43. package/dist/payments/currency/index.d.ts +1 -37
  44. package/dist/payments/index.cjs +40 -40
  45. package/dist/payments/index.cjs.map +1 -1
  46. package/dist/payments/index.d.ts +2 -1
  47. package/dist/payments/index.js +40 -40
  48. package/dist/payments/index.js.map +1 -1
  49. package/dist/payments/transaction/types.d.ts +3 -3
  50. package/dist/store/index.d.ts +1 -1
  51. package/dist/store/types.d.ts +2 -3
  52. package/package.json +6 -1
  53. package/dist/api/errors/enum.d.ts +0 -214
  54. package/dist/api/errors/index.d.ts +0 -6
  55. /package/dist/db/{enhanced-config.types.d.ts → features-config.types.d.ts} +0 -0
package/dist/api/index.js CHANGED
@@ -158,614 +158,85 @@ var ALL_EVENTS = {
158
158
  ...CACHE_EVENTS
159
159
  };
160
160
 
161
- // src/errors/enums.ts
162
- var ERROR_CATEGORY = {
163
- /** Client-side error (e.g., invalid request). */
164
- Client: "client",
165
- /** Server-side error (e.g., logic failure or exception). */
166
- Server: "server",
167
- /** Network-related error (e.g., unreachable endpoint). */
168
- Network: "network",
169
- /** Blockchain-related error (e.g., transaction failure, gas limit). */
170
- Blockchain: "blockchain",
171
- /** Validation-specific error (e.g., failed constraints or field errors). */
172
- Validation: "validation",
173
- /** Authentication-related error (e.g., invalid credentials, expired token). */
174
- Authentication: "authentication",
175
- /** Authorization-related error (e.g., insufficient permissions). */
176
- Authorization: "authorization",
177
- /** Resource not found error. */
178
- NotFound: "not.found",
179
- /** Rate limiting error (too many requests). */
180
- RateLimit: "rate.limit",
181
- /** External service error (e.g., third-party API failure). */
182
- ExternalService: "external.service",
183
- /** Timeout error (request exceeded time limit). */
184
- Timeout: "timeout",
185
- /** Conflict error (e.g., resource state conflict). */
186
- Conflict: "conflict",
187
- /** Cache-related error. */
188
- Cache: "cache",
189
- /** Headers-related error (e.g., missing or invalid headers). */
190
- Headers: "headers",
191
- /** Retry-related error (e.g., max retries exceeded). */
192
- Retry: "retry",
193
- /** Strategy-related error (e.g., invalid retry or caching strategy). */
194
- Strategy: "strategy",
195
- /** Regional-related error (e.g., region detection failure). */
196
- Regional: "regional",
197
- /** Unknown or unclassified error. */
198
- Unknown: "unknown"
161
+ // src/api/queue/enums.ts
162
+ var PRIORITY_LEVEL = {
163
+ /** Critical priority - highest urgency (0) */
164
+ CRITICAL: 0,
165
+ /** High priority (1) */
166
+ HIGH: 1,
167
+ /** Medium priority (2) */
168
+ MEDIUM: 2,
169
+ /** Normal priority (3) */
170
+ NORMAL: 3,
171
+ /** Low priority (4) */
172
+ LOW: 4,
173
+ /** Idle priority - lowest urgency (5) */
174
+ IDLE: 5
199
175
  };
200
176
 
201
- // src/api/errors/enum.ts
202
- var OPERATIONS = {
203
- STORAGE: "storage",
204
- RETRIEVAL: "retrieval",
205
- INVALIDATION: "invalidation",
206
- ENRICHMENT: "enrichment",
207
- VALIDATION: "validation",
208
- PRESET_LOOKUP: "preset-lookup",
209
- INITIALIZATION: "initialization",
210
- CONFIGURATION: "configuration",
211
- REQUEST: "request",
212
- RESPONSE: "response",
213
- RETRY: "retry",
214
- REVALIDATION: "revalidation",
215
- STRATEGY_EXECUTION: "strategy-execution",
216
- POLLING: "polling",
217
- SUBSCRIPTION: "subscription",
218
- PUBLICATION: "publication",
219
- DEBUG: "debug",
220
- DEBUG_TRACKING: "debug-tracking",
221
- ENDPOINT_BUILD: "endpoint-build",
222
- TRACKING: "tracking",
223
- NETWORK_CHECK: "network-check",
224
- EVENT_HANDLING: "event-handling",
225
- SERIALIZATION: "serialization",
226
- DESERIALIZATION: "deserialization",
227
- REGIONAL_DETECTION: "regional-detection",
228
- MONITORING: "monitoring",
229
- CONTEXT_SETUP: "context-setup",
230
- FALLBACK: "fallback"
177
+ // src/api/headers/enum.ts
178
+ var DATA_SAVER_PRESETS = {
179
+ performance: "offline",
180
+ cache: "aggressive",
181
+ retry: "conservative",
182
+ revalidation: "static"
231
183
  };
232
- var ERROR_FIELDS = {
233
- STORAGE: "storage",
234
- CACHE: "cache",
235
- HEADERS: "headers",
236
- PRESET_NAME: "presetName",
237
- PRESET_ID: "presetId",
238
- CONFIG: "config",
239
- URL: "url",
240
- METHOD: "method",
241
- STRATEGY: "strategy",
242
- RETRY_COUNT: "retryCount",
243
- MAX_RETRIES: "maxRetries",
244
- POLLING_INTERVAL: "pollingInterval",
245
- TOPIC: "topic",
246
- CHANNEL: "channel",
247
- ENDPOINT: "endpoint",
248
- CLIENT: "client",
249
- NETWORK_TYPE: "networkType",
250
- TIME_INTERVAL: "timeInterval"
184
+ var CLIENT_HINT_HEADERS = {
185
+ SAVE_DATA: "save-data",
186
+ ECT: "ect",
187
+ RTT: "rtt",
188
+ DOWNLINK: "downlink",
189
+ DEVICE_MEMORY: "device-memory",
190
+ ACCEPT_CH: "Accept-CH",
191
+ ACCEPT_CH_LIFETIME: "Accept-CH-Lifetime"
251
192
  };
252
- var STORAGE_TYPES = {
253
- PRIMARY: "primary",
254
- FALLBACK: "fallback",
255
- MEMORY: "memory",
256
- SESSION: "session",
257
- LOCAL: "local"
193
+ var VALIDATION_RANGES = {
194
+ RTT: { MIN: 0, MAX: 1e4 },
195
+ // 0-10 seconds
196
+ DOWNLINK: { MIN: 0, MAX: 1e4 },
197
+ // 0-10 Gbps
198
+ DEVICE_MEMORY: { MIN: 0, MAX: 128 }
199
+ // 0-128 GB
258
200
  };
259
- var API_ERROR_CODES = {
260
- // Client Configuration Errors
261
- CLIENT_INITIALIZATION_FAILED: "CLIENT_INITIALIZATION_FAILED",
262
- CLIENT_INVALID_CONFIG: "CLIENT_INVALID_CONFIG",
263
- CLIENT_MISSING_BASE_URL: "CLIENT_MISSING_BASE_URL",
264
- CLIENT_CANCELLED: "CLIENT_CANCELLED",
265
- CONFIG_VALIDATION_FAILED: "CONFIG_VALIDATION_FAILED",
266
- HEADER_PROCESSING_FAILED: "HEADER_PROCESSING_FAILED",
267
- NETWORK_OVERRIDE_FAILED: "NETWORK_OVERRIDE_FAILED",
268
- // Request Errors
269
- REQUEST_TIMEOUT: "REQUEST_TIMEOUT",
270
- REQUEST_ABORTED: "REQUEST_ABORTED",
271
- REQUEST_INVALID_PARAMS: "REQUEST_INVALID_PARAMS",
272
- REQUEST_PREPARATION_FAILED: "REQUEST_PREPARATION_FAILED",
273
- // Response Errors
274
- RESPONSE_INVALID_FORMAT: "RESPONSE_INVALID_FORMAT",
275
- RESPONSE_PARSING_FAILED: "RESPONSE_PARSING_FAILED",
276
- // Network Errors
277
- NETWORK_CONNECTION_FAILED: "NETWORK_CONNECTION_FAILED",
278
- NETWORK_OFFLINE: "NETWORK_OFFLINE",
279
- NETWORK_DNS_FAILED: "NETWORK_DNS_FAILED",
280
- NETWORK_TIMEOUT: "NETWORK_TIMEOUT",
281
- NETWORK_ERROR: "NETWORK_ERROR",
282
- NETWORK_PRESET_NOT_FOUND: "NETWORK_PRESET_NOT_FOUND",
283
- NETWORK_CONFIGURATION_INVALID: "NETWORK_CONFIGURATION_INVALID",
284
- // Regional Errors
285
- REGIONAL_PRESET_NOT_FOUND: "REGIONAL_PRESET_NOT_FOUND",
286
- REGION_DETECTION_FAILED: "REGION_DETECTION_FAILED",
287
- // Header Errors
288
- HEADERS_ENRICHMENT_FAILED: "HEADERS_ENRICHMENT_FAILED",
289
- HEADERS_VALIDATION_FAILED: "HEADERS_VALIDATION_FAILED",
290
- HEADERS_MERGE_CONFLICT: "HEADERS_MERGE_CONFLICT",
291
- // Cache Errors
292
- CACHE_STORAGE_FAILED: "CACHE_STORAGE_FAILED",
293
- CACHE_RETRIEVAL_FAILED: "CACHE_RETRIEVAL_FAILED",
294
- CACHE_INVALIDATION_FAILED: "CACHE_INVALIDATION_FAILED",
295
- // Retry Errors
296
- RETRY_EXHAUSTED: "RETRY_EXHAUSTED",
297
- RETRY_STRATEGY_INVALID: "RETRY_STRATEGY_INVALID",
298
- // Strategy Errors
299
- STRATEGY_INVALID: "STRATEGY_INVALID",
300
- STRATEGY_CONFLICT: "STRATEGY_CONFLICT",
301
- STRATEGY_EXECUTION_FAILED: "STRATEGY_EXECUTION_FAILED",
302
- // Polling Errors
303
- POLLING_TIMEOUT: "POLLING_TIMEOUT",
304
- POLLING_CANCELLED: "POLLING_CANCELLED",
305
- POLLING_INVALID_CONFIG: "POLLING_INVALID_CONFIG",
306
- // PubSub Errors
307
- PUBSUB_SUBSCRIPTION_FAILED: "PUBSUB_SUBSCRIPTION_FAILED",
308
- PUBSUB_PUBLICATION_FAILED: "PUBSUB_PUBLICATION_FAILED",
309
- PUBSUB_INVALID_TOPIC: "PUBSUB_INVALID_TOPIC",
310
- PUBSUB_CHANNEL_ERROR: "PUBSUB_CHANNEL_ERROR",
311
- // Revalidation Errors
312
- REVALIDATION_FAILED: "REVALIDATION_FAILED",
313
- REVALIDATION_IN_PROGRESS: "REVALIDATION_IN_PROGRESS",
314
- // Debugger Errors
315
- DEBUG_TRACKING_FAILED: "DEBUG_TRACKING_FAILED",
316
- DEBUG_OVERRIDE_FAILED: "DEBUG_OVERRIDE_FAILED",
317
- DEBUG_CONFLICT_DETECTED: "DEBUG_CONFLICT_DETECTED",
318
- // Endpoint Errors
319
- ENDPOINT_BUILD_FAILED: "ENDPOINT_BUILD_FAILED",
320
- ENDPOINT_NOT_FOUND: "ENDPOINT_NOT_FOUND",
321
- ENDPOINT_INVALID_CONFIG: "ENDPOINT_INVALID_CONFIG",
322
- // Event Errors
323
- EVENT_HANDLER_FAILED: "EVENT_HANDLER_FAILED",
324
- EVENT_EMISSION_FAILED: "EVENT_EMISSION_FAILED",
325
- MONITORING_FAILED: "MONITORING_FAILED",
326
- CONTEXT_OPERATION_FAILED: "CONTEXT_OPERATION_FAILED",
327
- // Authentication Errors
328
- AUTH_TOKEN_EXPIRED: "AUTH_TOKEN_EXPIRED",
329
- AUTH_UNAUTHORIZED: "AUTH_UNAUTHORIZED",
330
- AUTH_FORBIDDEN: "AUTH_FORBIDDEN",
331
- AUTH_INVALID_CREDENTIALS: "AUTH_INVALID_CREDENTIALS",
332
- // Rate Limiting
333
- RATE_LIMIT_EXCEEDED: "RATE_LIMIT_EXCEEDED",
334
- // Resource Errors
335
- RESOURCE_NOT_FOUND: "RESOURCE_NOT_FOUND",
336
- // System Errors
337
- INTERNAL_SERVER_ERROR: "INTERNAL_SERVER_ERROR",
338
- SERVICE_UNAVAILABLE: "SERVICE_UNAVAILABLE",
339
- EXTERNAL_SERVICE_ERROR: "EXTERNAL_SERVICE_ERROR",
340
- UNKNOWN_ERROR: "UNKNOWN_ERROR",
341
- // Validation Errors
342
- VALIDATION_ERROR: "VALIDATION_ERROR",
343
- VALIDATION_FAILED: "VALIDATION_FAILED",
344
- REQUIRED_FIELD_MISSING: "REQUIRED_FIELD_MISSING",
345
- INVALID_FORMAT: "INVALID_FORMAT",
346
- VALIDATION_INVALID_FORMAT: "INVALID_FORMAT",
347
- // Alias for compatibility
348
- STRING_TOO_SHORT: "STRING_TOO_SHORT",
349
- STRING_TOO_LONG: "STRING_TOO_LONG",
350
- // Generic HTTP Status Mappings
351
- CLIENT_ERROR: "CLIENT_ERROR",
352
- SERVER_ERROR: "SERVER_ERROR",
353
- // Timeout
354
- TIMEOUT: "TIMEOUT"
201
+
202
+ // src/api/network/enums.ts
203
+ var NETWORK_QUALITY = /* @__PURE__ */ ((NETWORK_QUALITY2) => {
204
+ NETWORK_QUALITY2["EXCELLENT"] = "excellent";
205
+ NETWORK_QUALITY2["GOOD"] = "good";
206
+ NETWORK_QUALITY2["FAIR"] = "fair";
207
+ NETWORK_QUALITY2["POOR"] = "poor";
208
+ NETWORK_QUALITY2["OFFLINE"] = "offline";
209
+ NETWORK_QUALITY2["UNKNOWN"] = "unknown";
210
+ return NETWORK_QUALITY2;
211
+ })(NETWORK_QUALITY || {});
212
+ var EVENT_PRIORITY_MAP = {
213
+ // Critical events
214
+ error: "critical",
215
+ onNetworkError: "critical",
216
+ critical: "critical",
217
+ // High priority events
218
+ config: "high",
219
+ auth: "high",
220
+ conflict: "high",
221
+ // Normal priority events
222
+ network: "normal",
223
+ headers: "normal",
224
+ performance: "normal",
225
+ // Low priority events
226
+ debug: "low",
227
+ metrics: "low",
228
+ tracking: "low"
355
229
  };
356
- var PACKAGE_STATUS_CODES = {
357
- // Configuration errors
358
- INVALID_CONFIGURATION: 1001,
359
- MISSING_CONFIGURATION: 1002,
360
- CONFIGURATION_CONFLICT: 1003,
361
- CONFIGURATION_TRACKING_FAILED: 1004,
362
- DEBUG_TRACKING_FAILED: 1005,
363
- // Resource errors (internal)
364
- RESOURCE_NOT_FOUND: 1010,
365
- RESOURCE_ALREADY_EXISTS: 1011,
366
- RESOURCE_UNAVAILABLE: 1012,
367
- // Validation errors (internal)
368
- INVALID_PARAMETER: 1020,
369
- MISSING_PARAMETER: 1021,
370
- PARAMETER_OUT_OF_RANGE: 1022,
371
- // Strategy/preset errors
372
- STRATEGY_NOT_FOUND: 1030,
373
- PRESET_NOT_FOUND: 1031,
374
- INVALID_STRATEGY: 1032,
375
- // Request/Response errors
376
- REQUEST_FAILED: 1035,
377
- // Internal system errors
378
- INITIALIZATION_FAILED: 1040,
379
- OPERATION_FAILED: 1041,
380
- STATE_CORRUPTION: 1042,
381
- SERIALIZATION_FAILED: 1043,
382
- DESERIALIZATION_FAILED: 1044,
383
- CONFIGURATION_INVALID: 1045,
384
- HEADER_PROCESSING_ERROR: 1046,
385
- REGION_DETECTION_ERROR: 1047,
386
- NETWORK_OVERRIDE_ERROR: 1048
387
- };
388
- var ERROR_DEFINITIONS = {
389
- // Authentication
390
- [API_ERROR_CODES.AUTH_UNAUTHORIZED]: {
391
- code: API_ERROR_CODES.AUTH_UNAUTHORIZED,
392
- status: HTTP_STATUS.UNAUTHORIZED,
393
- category: ERROR_CATEGORY.Authentication
394
- },
395
- [API_ERROR_CODES.AUTH_FORBIDDEN]: {
396
- code: API_ERROR_CODES.AUTH_FORBIDDEN,
397
- status: HTTP_STATUS.FORBIDDEN,
398
- category: ERROR_CATEGORY.Authorization
399
- },
400
- [API_ERROR_CODES.AUTH_TOKEN_EXPIRED]: {
401
- code: API_ERROR_CODES.AUTH_TOKEN_EXPIRED,
402
- status: HTTP_STATUS.UNAUTHORIZED,
403
- category: ERROR_CATEGORY.Authentication
404
- },
405
- [API_ERROR_CODES.AUTH_INVALID_CREDENTIALS]: {
406
- code: API_ERROR_CODES.AUTH_INVALID_CREDENTIALS,
407
- status: HTTP_STATUS.UNAUTHORIZED,
408
- category: ERROR_CATEGORY.Authentication
409
- },
410
- // Rate Limiting
411
- [API_ERROR_CODES.RATE_LIMIT_EXCEEDED]: {
412
- code: API_ERROR_CODES.RATE_LIMIT_EXCEEDED,
413
- status: HTTP_STATUS.TOO_MANY_REQUESTS,
414
- category: ERROR_CATEGORY.RateLimit
415
- },
416
- // Resource Errors
417
- [API_ERROR_CODES.RESOURCE_NOT_FOUND]: {
418
- code: API_ERROR_CODES.RESOURCE_NOT_FOUND,
419
- status: HTTP_STATUS.NOT_FOUND,
420
- category: ERROR_CATEGORY.NotFound
421
- },
422
- // System Errors
423
- [API_ERROR_CODES.INTERNAL_SERVER_ERROR]: {
424
- code: API_ERROR_CODES.INTERNAL_SERVER_ERROR,
425
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
426
- category: ERROR_CATEGORY.Server
427
- },
428
- [API_ERROR_CODES.SERVICE_UNAVAILABLE]: {
429
- code: API_ERROR_CODES.SERVICE_UNAVAILABLE,
430
- status: HTTP_STATUS.SERVICE_UNAVAILABLE,
431
- category: ERROR_CATEGORY.Server
432
- },
433
- [API_ERROR_CODES.EXTERNAL_SERVICE_ERROR]: {
434
- code: API_ERROR_CODES.EXTERNAL_SERVICE_ERROR,
435
- status: HTTP_STATUS.BAD_GATEWAY,
436
- category: ERROR_CATEGORY.ExternalService
437
- },
438
- // Validation
439
- [API_ERROR_CODES.VALIDATION_ERROR]: {
440
- code: API_ERROR_CODES.VALIDATION_ERROR,
441
- status: HTTP_STATUS.BAD_REQUEST,
442
- category: ERROR_CATEGORY.Validation
443
- },
444
- [API_ERROR_CODES.VALIDATION_FAILED]: {
445
- code: API_ERROR_CODES.VALIDATION_FAILED,
446
- status: HTTP_STATUS.BAD_REQUEST,
447
- category: ERROR_CATEGORY.Validation
448
- },
449
- [API_ERROR_CODES.REQUIRED_FIELD_MISSING]: {
450
- code: API_ERROR_CODES.REQUIRED_FIELD_MISSING,
451
- status: HTTP_STATUS.BAD_REQUEST,
452
- category: ERROR_CATEGORY.Validation,
453
- fieldsLeft: ["field"]
454
- },
455
- [API_ERROR_CODES.INVALID_FORMAT]: {
456
- code: API_ERROR_CODES.INVALID_FORMAT,
457
- status: HTTP_STATUS.BAD_REQUEST,
458
- category: ERROR_CATEGORY.Validation
459
- },
460
- [API_ERROR_CODES.STRING_TOO_SHORT]: {
461
- code: API_ERROR_CODES.STRING_TOO_SHORT,
462
- status: HTTP_STATUS.BAD_REQUEST,
463
- category: ERROR_CATEGORY.Validation,
464
- fieldsLeft: ["field", "minLength"]
465
- },
466
- [API_ERROR_CODES.STRING_TOO_LONG]: {
467
- code: API_ERROR_CODES.STRING_TOO_LONG,
468
- status: HTTP_STATUS.BAD_REQUEST,
469
- category: ERROR_CATEGORY.Validation,
470
- fieldsLeft: ["field", "maxLength"]
471
- },
472
- // Request Errors
473
- [API_ERROR_CODES.REQUEST_TIMEOUT]: {
474
- code: API_ERROR_CODES.REQUEST_TIMEOUT,
475
- status: HTTP_STATUS.REQUEST_TIMEOUT,
476
- category: ERROR_CATEGORY.Timeout
477
- },
478
- [API_ERROR_CODES.REQUEST_ABORTED]: {
479
- code: API_ERROR_CODES.REQUEST_ABORTED,
480
- status: 0,
481
- // No HTTP status for aborted
482
- category: ERROR_CATEGORY.Client
483
- },
484
- [API_ERROR_CODES.REQUEST_INVALID_PARAMS]: {
485
- code: API_ERROR_CODES.REQUEST_INVALID_PARAMS,
486
- status: HTTP_STATUS.BAD_REQUEST,
487
- category: ERROR_CATEGORY.Client
488
- },
489
- [API_ERROR_CODES.REQUEST_PREPARATION_FAILED]: {
490
- code: API_ERROR_CODES.REQUEST_PREPARATION_FAILED,
491
- status: HTTP_STATUS.BAD_REQUEST,
492
- category: ERROR_CATEGORY.Client
493
- },
494
- // Response Errors
495
- [API_ERROR_CODES.RESPONSE_INVALID_FORMAT]: {
496
- code: API_ERROR_CODES.RESPONSE_INVALID_FORMAT,
497
- status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
498
- category: ERROR_CATEGORY.Client
499
- },
500
- [API_ERROR_CODES.RESPONSE_PARSING_FAILED]: {
501
- code: API_ERROR_CODES.RESPONSE_PARSING_FAILED,
502
- status: HTTP_STATUS.UNPROCESSABLE_ENTITY,
503
- category: ERROR_CATEGORY.Client
504
- },
505
- // Network
506
- [API_ERROR_CODES.NETWORK_ERROR]: {
507
- code: API_ERROR_CODES.NETWORK_ERROR,
508
- status: HTTP_STATUS.BAD_GATEWAY,
509
- category: ERROR_CATEGORY.Network
510
- },
511
- [API_ERROR_CODES.NETWORK_TIMEOUT]: {
512
- code: API_ERROR_CODES.NETWORK_TIMEOUT,
513
- status: HTTP_STATUS.GATEWAY_TIMEOUT,
514
- category: ERROR_CATEGORY.Timeout
515
- },
516
- [API_ERROR_CODES.NETWORK_CONNECTION_FAILED]: {
517
- code: API_ERROR_CODES.NETWORK_CONNECTION_FAILED,
518
- status: 0,
519
- // No HTTP status for connection failure
520
- category: ERROR_CATEGORY.Network
521
- },
522
- [API_ERROR_CODES.NETWORK_OFFLINE]: {
523
- code: API_ERROR_CODES.NETWORK_OFFLINE,
524
- status: 0,
525
- // No HTTP status for offline
526
- category: ERROR_CATEGORY.Network
527
- },
528
- [API_ERROR_CODES.NETWORK_DNS_FAILED]: {
529
- code: API_ERROR_CODES.NETWORK_DNS_FAILED,
530
- status: 0,
531
- // No HTTP status for DNS failure
532
- category: ERROR_CATEGORY.Network
533
- },
534
- // Server
535
- [API_ERROR_CODES.SERVER_ERROR]: {
536
- code: API_ERROR_CODES.SERVER_ERROR,
537
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
538
- category: ERROR_CATEGORY.Server
539
- },
540
- // Client
541
- [API_ERROR_CODES.CLIENT_ERROR]: {
542
- code: API_ERROR_CODES.CLIENT_ERROR,
543
- status: HTTP_STATUS.BAD_REQUEST,
544
- category: ERROR_CATEGORY.Client
545
- },
546
- [API_ERROR_CODES.CLIENT_CANCELLED]: {
547
- code: API_ERROR_CODES.CLIENT_CANCELLED,
548
- status: 0,
549
- // No HTTP status for cancelled
550
- category: ERROR_CATEGORY.Client
551
- },
552
- [API_ERROR_CODES.CLIENT_INITIALIZATION_FAILED]: {
553
- code: API_ERROR_CODES.CLIENT_INITIALIZATION_FAILED,
554
- status: 0,
555
- // No HTTP status for initialization failure
556
- category: ERROR_CATEGORY.Client
557
- },
558
- [API_ERROR_CODES.CLIENT_INVALID_CONFIG]: {
559
- code: API_ERROR_CODES.CLIENT_INVALID_CONFIG,
560
- status: 0,
561
- // No HTTP status for configuration errors
562
- category: ERROR_CATEGORY.Client
563
- },
564
- [API_ERROR_CODES.CLIENT_MISSING_BASE_URL]: {
565
- code: API_ERROR_CODES.CLIENT_MISSING_BASE_URL,
566
- status: 0,
567
- // No HTTP status for configuration errors
568
- category: ERROR_CATEGORY.Client
569
- },
570
- [API_ERROR_CODES.CONFIG_VALIDATION_FAILED]: {
571
- code: API_ERROR_CODES.CONFIG_VALIDATION_FAILED,
572
- status: HTTP_STATUS.BAD_REQUEST,
573
- category: ERROR_CATEGORY.Validation
574
- },
575
- [API_ERROR_CODES.HEADER_PROCESSING_FAILED]: {
576
- code: API_ERROR_CODES.HEADER_PROCESSING_FAILED,
577
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
578
- category: ERROR_CATEGORY.Headers
579
- },
580
- [API_ERROR_CODES.NETWORK_OVERRIDE_FAILED]: {
581
- code: API_ERROR_CODES.NETWORK_OVERRIDE_FAILED,
582
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
583
- category: ERROR_CATEGORY.Network
584
- },
585
- // Headers
586
- [API_ERROR_CODES.HEADERS_ENRICHMENT_FAILED]: {
587
- code: API_ERROR_CODES.HEADERS_ENRICHMENT_FAILED,
588
- status: HTTP_STATUS.BAD_REQUEST,
589
- category: ERROR_CATEGORY.Headers
590
- },
591
- [API_ERROR_CODES.HEADERS_VALIDATION_FAILED]: {
592
- code: API_ERROR_CODES.HEADERS_VALIDATION_FAILED,
593
- status: HTTP_STATUS.BAD_REQUEST,
594
- category: ERROR_CATEGORY.Headers
595
- },
596
- [API_ERROR_CODES.HEADERS_MERGE_CONFLICT]: {
597
- code: API_ERROR_CODES.HEADERS_MERGE_CONFLICT,
598
- status: HTTP_STATUS.CONFLICT,
599
- category: ERROR_CATEGORY.Headers
600
- },
601
- // Cache
602
- [API_ERROR_CODES.CACHE_STORAGE_FAILED]: {
603
- code: API_ERROR_CODES.CACHE_STORAGE_FAILED,
604
- status: 0,
605
- // No HTTP status for cache failures
606
- category: ERROR_CATEGORY.Cache
607
- },
608
- [API_ERROR_CODES.CACHE_RETRIEVAL_FAILED]: {
609
- code: API_ERROR_CODES.CACHE_RETRIEVAL_FAILED,
610
- status: 0,
611
- // No HTTP status for cache failures
612
- category: ERROR_CATEGORY.Cache
613
- },
614
- [API_ERROR_CODES.CACHE_INVALIDATION_FAILED]: {
615
- code: API_ERROR_CODES.CACHE_INVALIDATION_FAILED,
616
- status: 0,
617
- // No HTTP status for cache failures
618
- category: ERROR_CATEGORY.Cache
619
- },
620
- // Retry
621
- [API_ERROR_CODES.RETRY_EXHAUSTED]: {
622
- code: API_ERROR_CODES.RETRY_EXHAUSTED,
623
- status: HTTP_STATUS.SERVICE_UNAVAILABLE,
624
- category: ERROR_CATEGORY.Retry
625
- },
626
- [API_ERROR_CODES.RETRY_STRATEGY_INVALID]: {
627
- code: API_ERROR_CODES.RETRY_STRATEGY_INVALID,
628
- status: 0,
629
- // No HTTP status for strategy errors
630
- category: ERROR_CATEGORY.Retry
631
- },
632
- // Strategy
633
- [API_ERROR_CODES.STRATEGY_INVALID]: {
634
- code: API_ERROR_CODES.STRATEGY_INVALID,
635
- status: 0,
636
- // No HTTP status for strategy errors
637
- category: ERROR_CATEGORY.Strategy
638
- },
639
- [API_ERROR_CODES.STRATEGY_CONFLICT]: {
640
- code: API_ERROR_CODES.STRATEGY_CONFLICT,
641
- status: HTTP_STATUS.CONFLICT,
642
- category: ERROR_CATEGORY.Strategy
643
- },
644
- // Regional
645
- [API_ERROR_CODES.REGIONAL_PRESET_NOT_FOUND]: {
646
- code: API_ERROR_CODES.REGIONAL_PRESET_NOT_FOUND,
647
- status: 0,
648
- // No HTTP status for regional preset errors
649
- category: ERROR_CATEGORY.Regional
650
- },
651
- [API_ERROR_CODES.REGION_DETECTION_FAILED]: {
652
- code: API_ERROR_CODES.REGION_DETECTION_FAILED,
653
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
654
- category: ERROR_CATEGORY.Regional
655
- },
656
- // Timeout
657
- [API_ERROR_CODES.TIMEOUT]: {
658
- code: API_ERROR_CODES.TIMEOUT,
659
- status: HTTP_STATUS.REQUEST_TIMEOUT,
660
- category: ERROR_CATEGORY.Timeout
661
- },
662
- // Unknown
663
- [API_ERROR_CODES.UNKNOWN_ERROR]: {
664
- code: API_ERROR_CODES.UNKNOWN_ERROR,
665
- status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
666
- category: ERROR_CATEGORY.Unknown
667
- }
668
- };
669
- var ERROR_CATEGORY_TO_EMITTER_KEY = {
670
- [ERROR_CATEGORY.Network]: "network",
671
- [ERROR_CATEGORY.Validation]: "validation",
672
- [ERROR_CATEGORY.Authentication]: "authentication",
673
- [ERROR_CATEGORY.RateLimit]: "rateLimit",
674
- [ERROR_CATEGORY.Server]: "server",
675
- [ERROR_CATEGORY.Timeout]: "timeout",
676
- [ERROR_CATEGORY.Authorization]: "authorization",
677
- [ERROR_CATEGORY.NotFound]: "notFound",
678
- [ERROR_CATEGORY.Conflict]: "conflict",
679
- [ERROR_CATEGORY.Client]: "client",
680
- [ERROR_CATEGORY.ExternalService]: "externalService",
681
- [ERROR_CATEGORY.Cache]: "cache",
682
- [ERROR_CATEGORY.Headers]: "headers",
683
- [ERROR_CATEGORY.Retry]: "retry",
684
- [ERROR_CATEGORY.Blockchain]: "blockchain",
685
- [ERROR_CATEGORY.Strategy]: "strategy",
686
- [ERROR_CATEGORY.Regional]: "regional",
687
- [ERROR_CATEGORY.Unknown]: "unknown"
688
- };
689
-
690
- // src/api/queue/enums.ts
691
- var PRIORITY_LEVEL = {
692
- /** Critical priority - highest urgency (0) */
693
- CRITICAL: 0,
694
- /** High priority (1) */
695
- HIGH: 1,
696
- /** Medium priority (2) */
697
- MEDIUM: 2,
698
- /** Normal priority (3) */
699
- NORMAL: 3,
700
- /** Low priority (4) */
701
- LOW: 4,
702
- /** Idle priority - lowest urgency (5) */
703
- IDLE: 5
704
- };
705
-
706
- // src/api/headers/enum.ts
707
- var DATA_SAVER_PRESETS = {
708
- performance: "offline",
709
- cache: "aggressive",
710
- retry: "conservative",
711
- revalidation: "static"
712
- };
713
- var CLIENT_HINT_HEADERS = {
714
- SAVE_DATA: "save-data",
715
- ECT: "ect",
716
- RTT: "rtt",
717
- DOWNLINK: "downlink",
718
- DEVICE_MEMORY: "device-memory",
719
- ACCEPT_CH: "Accept-CH",
720
- ACCEPT_CH_LIFETIME: "Accept-CH-Lifetime"
721
- };
722
- var VALIDATION_RANGES = {
723
- RTT: { MIN: 0, MAX: 1e4 },
724
- // 0-10 seconds
725
- DOWNLINK: { MIN: 0, MAX: 1e4 },
726
- // 0-10 Gbps
727
- DEVICE_MEMORY: { MIN: 0, MAX: 128 }
728
- // 0-128 GB
729
- };
730
-
731
- // src/api/network/enums.ts
732
- var NETWORK_QUALITY = /* @__PURE__ */ ((NETWORK_QUALITY2) => {
733
- NETWORK_QUALITY2["EXCELLENT"] = "excellent";
734
- NETWORK_QUALITY2["GOOD"] = "good";
735
- NETWORK_QUALITY2["FAIR"] = "fair";
736
- NETWORK_QUALITY2["POOR"] = "poor";
737
- NETWORK_QUALITY2["OFFLINE"] = "offline";
738
- NETWORK_QUALITY2["UNKNOWN"] = "unknown";
739
- return NETWORK_QUALITY2;
740
- })(NETWORK_QUALITY || {});
741
- var EVENT_PRIORITY_MAP = {
742
- // Critical events
743
- error: "critical",
744
- onNetworkError: "critical",
745
- critical: "critical",
746
- // High priority events
747
- config: "high",
748
- auth: "high",
749
- conflict: "high",
750
- // Normal priority events
751
- network: "normal",
752
- headers: "normal",
753
- performance: "normal",
754
- // Low priority events
755
- debug: "low",
756
- metrics: "low",
757
- tracking: "low"
758
- };
759
- var NetworkPresetNames = {
760
- OFFLINE_FIRST: "offline-first",
761
- DATA_SAVER: "data-saver",
762
- SLOW_CONNECTION: "slow-connection",
763
- FAIR_CONNECTION: "fair-connection",
764
- GOOD_CONNECTION: "good-connection",
765
- EXCELLENT_CONNECTION: "excellent-connection",
766
- AGGRESSIVE_CACHE: "aggressive-cache",
767
- REALTIME: "realtime",
768
- BACKGROUND_SYNC: "background-sync"
230
+ var NetworkPresetNames = {
231
+ OFFLINE_FIRST: "offline-first",
232
+ DATA_SAVER: "data-saver",
233
+ SLOW_CONNECTION: "slow-connection",
234
+ FAIR_CONNECTION: "fair-connection",
235
+ GOOD_CONNECTION: "good-connection",
236
+ EXCELLENT_CONNECTION: "excellent-connection",
237
+ AGGRESSIVE_CACHE: "aggressive-cache",
238
+ REALTIME: "realtime",
239
+ BACKGROUND_SYNC: "background-sync"
769
240
  };
770
241
  var NETWORK_CONFIDENCE_LEVELS = {
771
242
  /** Excellent confidence (90%) */
@@ -809,6 +280,12 @@ var FACTORY_OPERATIONS = {
809
280
  FACTORY_REGISTER: "factory_register",
810
281
  HANDLER_REGISTERED: "handler_registered",
811
282
  HANDLER_UNREGISTERED: "handler_unregistered",
283
+ /**
284
+ * Indicates that a specific handler instance has been removed from a factory or scope.
285
+ * Use this when removing a particular handler by reference or ID, as opposed to
286
+ * HANDLER_UNREGISTERED, which refers to unregistering a handler type or all handlers.
287
+ */
288
+ SPECIFIC_HANDLER_REMOVED: "specific_handler_removed",
812
289
  SCOPE_LISTENERS_CLEARED: "scope_listeners_cleared"
813
290
  };
814
291
  var EVENT_OPERATIONS = {
@@ -1038,6 +515,1291 @@ var PUB_SUB_EVENT = {
1038
515
  RequestAbort: "request:abort"
1039
516
  };
1040
517
 
1041
- export { ALERT_SEVERITIES, ALERT_TYPES, ALL_EVENTS, API_ERROR_CODES, CACHE_DURATION_MS, CACHE_EVENTS, CHANGE_TYPES, CLIENT_EVENTS, CLIENT_HINT_HEADERS, CONFIG_EVENTS, COORDINATES, CORRELATION_TYPE, DATA_SAVER_PRESETS, DEBUGGER_CONFIG_SOURCES, DEBUG_EVENTS, DEFAULT_THRESHOLDS, ERROR_CATEGORY_TO_EMITTER_KEY, ERROR_DEFINITIONS, ERROR_EVENTS, ERROR_FIELDS, EVENTS_CONFIG_SOURCES, EVENT_CONSTANTS, EVENT_NAMESPACES, EVENT_OPERATIONS, EVENT_PRIORITY_MAP, EVENT_SCOPES, EVENT_SCOPES_WITH_TEMPORARY, FACTORY_OPERATIONS, HANDLER_SCOPES, HEADER_EVENTS, HEADER_STAGES, HISTORY_TYPES, IMPACT_LEVELS, NETWORK_CONFIDENCE_LEVELS, NETWORK_EVENTS, NETWORK_QUALITY, NetworkPresetNames, OPERATIONS, PACKAGE_STATUS_CODES, PERFORMANCE_EVENTS, PRIORITY_LEVEL, PUB_SUB_EVENT, QUEUE_OPERATIONS, REGIONAL_CONFIDENCE_LEVELS, REGION_STORAGE_KEY, REGION_TO_PRESET, RTT_THRESHOLDS, SPEED_THRESHOLDS, STORAGE_TYPES, TRACKING_PHASES, UNIFIED_OPERATIONS, UPDATE_STRATEGIES, VALIDATION_RANGES, isValidConfigSource, isValidHistoryType, isValidOperation };
518
+ // src/errors/enums.ts
519
+ var ERROR_SEVERITY = {
520
+ /** Low severity - does not impact functionality significantly. */
521
+ Low: "low",
522
+ /** Medium severity - minor disruption or warning. */
523
+ Medium: "medium",
524
+ /** High severity - major issue requiring attention. */
525
+ High: "high",
526
+ /** Critical severity - blocking or crashing issue. */
527
+ Critical: "critical"
528
+ };
529
+ var ERROR_CATEGORY = {
530
+ /** Client-side error (e.g., invalid request). */
531
+ Client: "client",
532
+ /** Server-side error (e.g., logic failure or exception). */
533
+ Server: "server",
534
+ /** Network-related error (e.g., unreachable endpoint). */
535
+ Network: "network",
536
+ /** Blockchain-related error (e.g., transaction failure, gas limit). */
537
+ Blockchain: "blockchain",
538
+ /** Validation-specific error (e.g., failed constraints or field errors). */
539
+ Validation: "validation",
540
+ /** Authentication-related error (e.g., invalid credentials, expired token). */
541
+ Authentication: "authentication",
542
+ /** Authorization-related error (e.g., insufficient permissions). */
543
+ Authorization: "authorization",
544
+ /** Resource not found error. */
545
+ NotFound: "not.found",
546
+ /** Rate limiting error (too many requests). */
547
+ RateLimit: "rate.limit",
548
+ /** External service error (e.g., third-party API failure). */
549
+ ExternalService: "external.service",
550
+ /** Timeout error (request exceeded time limit). */
551
+ Timeout: "timeout",
552
+ /** Conflict error (e.g., resource state conflict). */
553
+ Conflict: "conflict",
554
+ /** Cache-related error. */
555
+ Cache: "cache",
556
+ /** Headers-related error (e.g., missing or invalid headers). */
557
+ Headers: "headers",
558
+ /** Retry-related error (e.g., max retries exceeded). */
559
+ Retry: "retry",
560
+ /** Strategy-related error (e.g., invalid retry or caching strategy). */
561
+ Strategy: "strategy",
562
+ /** Regional-related error (e.g., region detection failure). */
563
+ Regional: "regional",
564
+ /** Provider-related error (e.g., notification service provider failure). */
565
+ Provider: "provider",
566
+ /** Queue-related error (e.g., queue full or processing failed). */
567
+ Queue: "queue",
568
+ /** Webhook-related error (e.g., invalid signature or processing failure). */
569
+ Webhook: "webhook",
570
+ /** Template-related error (e.g., template not found or rendering failed). */
571
+ Template: "template",
572
+ /** Configuration-related error (e.g., invalid or missing configuration). */
573
+ Configuration: "configuration",
574
+ /** Unknown or unclassified error. */
575
+ Unknown: "unknown"
576
+ };
577
+ var INTERNAL_STATUS_CODES = {
578
+ // Configuration errors (1001-1009)
579
+ INVALID_CONFIGURATION: 1001,
580
+ MISSING_CONFIGURATION: 1002,
581
+ CONFIGURATION_CONFLICT: 1003,
582
+ CONFIGURATION_TRACKING_FAILED: 1004,
583
+ DEBUG_TRACKING_FAILED: 1005,
584
+ // Resource errors (1010-1019)
585
+ RESOURCE_NOT_FOUND: 1010,
586
+ RESOURCE_ALREADY_EXISTS: 1011,
587
+ RESOURCE_UNAVAILABLE: 1012,
588
+ // Validation errors (1020-1029)
589
+ INVALID_PARAMETER: 1020,
590
+ MISSING_PARAMETER: 1021,
591
+ PARAMETER_OUT_OF_RANGE: 1022,
592
+ // Strategy/preset errors (1030-1039)
593
+ STRATEGY_NOT_FOUND: 1030,
594
+ PRESET_NOT_FOUND: 1031,
595
+ INVALID_STRATEGY: 1032,
596
+ // Request/Response errors (1035-1039)
597
+ REQUEST_FAILED: 1035,
598
+ // Internal system errors (1040-1049)
599
+ INITIALIZATION_FAILED: 1040,
600
+ OPERATION_FAILED: 1041,
601
+ STATE_CORRUPTION: 1042,
602
+ SERIALIZATION_FAILED: 1043,
603
+ DESERIALIZATION_FAILED: 1044,
604
+ CONFIGURATION_INVALID: 1045,
605
+ HEADER_PROCESSING_ERROR: 1046,
606
+ REGION_DETECTION_ERROR: 1047,
607
+ NETWORK_OVERRIDE_ERROR: 1048
608
+ };
609
+ ({
610
+ [ERROR_CATEGORY.Network]: "network",
611
+ [ERROR_CATEGORY.Validation]: "validation",
612
+ [ERROR_CATEGORY.Authentication]: "authentication",
613
+ [ERROR_CATEGORY.Authorization]: "authorization",
614
+ [ERROR_CATEGORY.RateLimit]: "rateLimit",
615
+ [ERROR_CATEGORY.Server]: "server",
616
+ [ERROR_CATEGORY.Timeout]: "timeout",
617
+ [ERROR_CATEGORY.NotFound]: "notFound",
618
+ [ERROR_CATEGORY.Conflict]: "conflict",
619
+ [ERROR_CATEGORY.Client]: "client",
620
+ [ERROR_CATEGORY.ExternalService]: "externalService",
621
+ [ERROR_CATEGORY.Cache]: "cache",
622
+ [ERROR_CATEGORY.Headers]: "headers",
623
+ [ERROR_CATEGORY.Retry]: "retry",
624
+ [ERROR_CATEGORY.Blockchain]: "blockchain",
625
+ [ERROR_CATEGORY.Strategy]: "strategy",
626
+ [ERROR_CATEGORY.Regional]: "regional",
627
+ [ERROR_CATEGORY.Provider]: "provider",
628
+ [ERROR_CATEGORY.Queue]: "queue",
629
+ [ERROR_CATEGORY.Webhook]: "webhook",
630
+ [ERROR_CATEGORY.Template]: "template",
631
+ [ERROR_CATEGORY.Configuration]: "configuration",
632
+ [ERROR_CATEGORY.Unknown]: "unknown"
633
+ });
634
+ var COMMON_OPERATIONS = {
635
+ // Data operations
636
+ STORAGE: "storage",
637
+ RETRIEVAL: "retrieval",
638
+ INVALIDATION: "invalidation",
639
+ DELETION: "deletion",
640
+ // Processing operations
641
+ VALIDATION: "validation",
642
+ ENRICHMENT: "enrichment",
643
+ SERIALIZATION: "serialization",
644
+ DESERIALIZATION: "deserialization",
645
+ // API operations
646
+ REQUEST: "request",
647
+ RESPONSE: "response",
648
+ RETRY: "retry",
649
+ REVALIDATION: "revalidation",
650
+ POLLING: "polling",
651
+ // Configuration operations
652
+ INITIALIZATION: "initialization",
653
+ CONFIGURATION: "configuration",
654
+ PRESET_LOOKUP: "preset-lookup",
655
+ REGIONAL_DETECTION: "regional-detection",
656
+ // Strategy operations
657
+ STRATEGY_EXECUTION: "strategy-execution",
658
+ FALLBACK: "fallback",
659
+ // Event operations
660
+ SUBSCRIPTION: "subscription",
661
+ PUBLICATION: "publication",
662
+ EVENT_HANDLING: "event-handling",
663
+ // Debugging operations
664
+ DEBUG: "debug",
665
+ DEBUG_TRACKING: "debug-tracking",
666
+ TRACKING: "tracking",
667
+ MONITORING: "monitoring",
668
+ // Network operations
669
+ NETWORK_CHECK: "network-check",
670
+ ENDPOINT_BUILD: "endpoint-build",
671
+ CONTEXT_SETUP: "context-setup",
672
+ // Notification operations
673
+ SEND: "send",
674
+ RENDER: "render",
675
+ QUEUE: "queue",
676
+ PROCESS: "process"
677
+ };
678
+ var COMMON_FIELDS = {
679
+ // Storage fields
680
+ STORAGE: "storage",
681
+ CACHE: "cache",
682
+ // Configuration fields
683
+ CONFIG: "config",
684
+ PRESET_NAME: "presetName",
685
+ PRESET_ID: "presetId",
686
+ // HTTP fields
687
+ HEADERS: "headers",
688
+ URL: "url",
689
+ METHOD: "method",
690
+ // Strategy fields
691
+ STRATEGY: "strategy",
692
+ // Retry fields
693
+ RETRY_COUNT: "retryCount",
694
+ MAX_RETRIES: "maxRetries",
695
+ // Polling fields
696
+ POLLING_INTERVAL: "pollingInterval",
697
+ // Event fields
698
+ TOPIC: "topic",
699
+ CHANNEL: "channel",
700
+ // API fields
701
+ ENDPOINT: "endpoint",
702
+ CLIENT: "client",
703
+ // Network fields
704
+ NETWORK_TYPE: "networkType",
705
+ TIME_INTERVAL: "timeInterval",
706
+ // Notification fields
707
+ EMAIL: "email",
708
+ PHONE: "phoneNumber",
709
+ RECIPIENT: "recipient",
710
+ TEMPLATE: "template",
711
+ PROVIDER: "provider"
712
+ };
713
+ var COMMON_STORAGE_TYPES = {
714
+ PRIMARY: "primary",
715
+ FALLBACK: "fallback",
716
+ MEMORY: "memory",
717
+ SESSION: "session",
718
+ LOCAL: "local",
719
+ REDIS: "redis",
720
+ DATABASE: "database"
721
+ };
722
+ var ERROR_CODES = {
723
+ // ===== API Package Errors =====
724
+ // Client Configuration
725
+ CLIENT_INITIALIZATION_FAILED: "CLIENT_INITIALIZATION_FAILED",
726
+ CLIENT_INVALID_CONFIG: "CLIENT_INVALID_CONFIG",
727
+ CLIENT_MISSING_BASE_URL: "CLIENT_MISSING_BASE_URL",
728
+ CLIENT_CANCELLED: "CLIENT_CANCELLED",
729
+ CONFIG_VALIDATION_FAILED: "CONFIG_VALIDATION_FAILED",
730
+ HEADER_PROCESSING_FAILED: "HEADER_PROCESSING_FAILED",
731
+ NETWORK_OVERRIDE_FAILED: "NETWORK_OVERRIDE_FAILED",
732
+ // Request
733
+ REQUEST_TIMEOUT: "REQUEST_TIMEOUT",
734
+ REQUEST_ABORTED: "REQUEST_ABORTED",
735
+ REQUEST_INVALID_PARAMS: "REQUEST_INVALID_PARAMS",
736
+ REQUEST_PREPARATION_FAILED: "REQUEST_PREPARATION_FAILED",
737
+ // Response
738
+ RESPONSE_INVALID_FORMAT: "RESPONSE_INVALID_FORMAT",
739
+ RESPONSE_PARSING_FAILED: "RESPONSE_PARSING_FAILED",
740
+ // Authentication/Authorization
741
+ AUTH_UNAUTHORIZED: "AUTH_UNAUTHORIZED",
742
+ AUTH_FORBIDDEN: "AUTH_FORBIDDEN",
743
+ AUTH_TOKEN_EXPIRED: "AUTH_TOKEN_EXPIRED",
744
+ AUTH_INVALID_CREDENTIALS: "AUTH_INVALID_CREDENTIALS",
745
+ // Rate Limiting
746
+ RATE_LIMIT_EXCEEDED: "RATE_LIMIT_EXCEEDED",
747
+ // Resources
748
+ RESOURCE_NOT_FOUND: "RESOURCE_NOT_FOUND",
749
+ RESOURCE_CONFLICT: "RESOURCE_CONFLICT",
750
+ // Validation
751
+ API_VALIDATION_FAILED: "API_VALIDATION_FAILED",
752
+ API_INVALID_INPUT: "API_INVALID_INPUT",
753
+ VALIDATION_ERROR: "VALIDATION_ERROR",
754
+ REQUIRED_FIELD_MISSING: "REQUIRED_FIELD_MISSING",
755
+ INVALID_FORMAT: "INVALID_FORMAT",
756
+ VALIDATION_INVALID_FORMAT: "VALIDATION_INVALID_FORMAT",
757
+ STRING_TOO_SHORT: "STRING_TOO_SHORT",
758
+ STRING_TOO_LONG: "STRING_TOO_LONG",
759
+ // Network
760
+ NETWORK_ERROR: "NETWORK_ERROR",
761
+ CONNECTION_FAILED: "CONNECTION_FAILED",
762
+ NETWORK_CONNECTION_FAILED: "NETWORK_CONNECTION_FAILED",
763
+ NETWORK_OFFLINE: "NETWORK_OFFLINE",
764
+ NETWORK_DNS_FAILED: "NETWORK_DNS_FAILED",
765
+ NETWORK_TIMEOUT: "NETWORK_TIMEOUT",
766
+ NETWORK_PRESET_NOT_FOUND: "NETWORK_PRESET_NOT_FOUND",
767
+ NETWORK_CONFIGURATION_INVALID: "NETWORK_CONFIGURATION_INVALID",
768
+ // Server
769
+ SERVER_ERROR: "SERVER_ERROR",
770
+ INTERNAL_SERVER_ERROR: "INTERNAL_SERVER_ERROR",
771
+ SERVICE_UNAVAILABLE: "SERVICE_UNAVAILABLE",
772
+ // Cache
773
+ CACHE_READ_FAILED: "CACHE_READ_FAILED",
774
+ CACHE_WRITE_FAILED: "CACHE_WRITE_FAILED",
775
+ CACHE_INVALIDATION_FAILED: "CACHE_INVALIDATION_FAILED",
776
+ CACHE_STORAGE_FAILED: "CACHE_STORAGE_FAILED",
777
+ CACHE_RETRIEVAL_FAILED: "CACHE_RETRIEVAL_FAILED",
778
+ // Retry
779
+ RETRY_LIMIT_EXCEEDED: "RETRY_LIMIT_EXCEEDED",
780
+ RETRY_FAILED: "RETRY_FAILED",
781
+ RETRY_EXHAUSTED: "RETRY_EXHAUSTED",
782
+ RETRY_STRATEGY_INVALID: "RETRY_STRATEGY_INVALID",
783
+ // Strategy
784
+ STRATEGY_INVALID: "STRATEGY_INVALID",
785
+ STRATEGY_CONFLICT: "STRATEGY_CONFLICT",
786
+ STRATEGY_EXECUTION_FAILED: "STRATEGY_EXECUTION_FAILED",
787
+ // Headers
788
+ HEADERS_ENRICHMENT_FAILED: "HEADERS_ENRICHMENT_FAILED",
789
+ HEADERS_VALIDATION_FAILED: "HEADERS_VALIDATION_FAILED",
790
+ HEADERS_MERGE_CONFLICT: "HEADERS_MERGE_CONFLICT",
791
+ // Regional
792
+ REGION_DETECTION_FAILED: "REGION_DETECTION_FAILED",
793
+ REGIONAL_PRESET_NOT_FOUND: "REGIONAL_PRESET_NOT_FOUND",
794
+ // External Services
795
+ EXTERNAL_SERVICE_ERROR: "EXTERNAL_SERVICE_ERROR",
796
+ // Timeout (generic)
797
+ TIMEOUT: "TIMEOUT",
798
+ // Debugging
799
+ DEBUG_TRACKING_FAILED: "DEBUG_TRACKING_FAILED",
800
+ // Polling
801
+ POLLING_CANCELLED: "POLLING_CANCELLED",
802
+ POLLING_TIMEOUT: "POLLING_TIMEOUT",
803
+ POLLING_INVALID_CONFIG: "POLLING_INVALID_CONFIG",
804
+ // PubSub
805
+ PUBSUB_SUBSCRIPTION_FAILED: "PUBSUB_SUBSCRIPTION_FAILED",
806
+ PUBSUB_PUBLICATION_FAILED: "PUBSUB_PUBLICATION_FAILED",
807
+ PUBSUB_INVALID_TOPIC: "PUBSUB_INVALID_TOPIC",
808
+ PUBSUB_CHANNEL_ERROR: "PUBSUB_CHANNEL_ERROR",
809
+ // Revalidation
810
+ REVALIDATION_FAILED: "REVALIDATION_FAILED",
811
+ REVALIDATION_IN_PROGRESS: "REVALIDATION_IN_PROGRESS",
812
+ // Debugging
813
+ DEBUG_OVERRIDE_FAILED: "DEBUG_OVERRIDE_FAILED",
814
+ DEBUG_CONFLICT_DETECTED: "DEBUG_CONFLICT_DETECTED",
815
+ // Endpoint
816
+ ENDPOINT_BUILD_FAILED: "ENDPOINT_BUILD_FAILED",
817
+ ENDPOINT_NOT_FOUND: "ENDPOINT_NOT_FOUND",
818
+ ENDPOINT_INVALID_CONFIG: "ENDPOINT_INVALID_CONFIG",
819
+ // Event
820
+ EVENT_HANDLER_FAILED: "EVENT_HANDLER_FAILED",
821
+ EVENT_EMISSION_FAILED: "EVENT_EMISSION_FAILED",
822
+ MONITORING_FAILED: "MONITORING_FAILED",
823
+ // Context
824
+ CONTEXT_OPERATION_FAILED: "CONTEXT_OPERATION_FAILED",
825
+ // Generic
826
+ CLIENT_ERROR: "CLIENT_ERROR",
827
+ UNKNOWN_ERROR: "UNKNOWN_ERROR",
828
+ // ===== Notification Package Errors =====
829
+ // Provider
830
+ NOTIFICATION_PROVIDER_SEND_FAILED: "notification.provider.send.failed",
831
+ NOTIFICATION_PROVIDER_CONFIGURATION_INVALID: "notification.provider.configuration.invalid",
832
+ NOTIFICATION_PROVIDER_RATE_LIMIT: "notification.provider.rate.limit",
833
+ NOTIFICATION_PROVIDER_AUTH_FAILED: "notification.provider.auth.failed",
834
+ NOTIFICATION_PROVIDER_TIMEOUT: "notification.provider.timeout",
835
+ NOTIFICATION_PROVIDER_UNAVAILABLE: "notification.provider.unavailable",
836
+ NOTIFICATION_PROVIDER_FEATURE_NOT_SUPPORTED: "notification.provider.feature.not.supported",
837
+ NOTIFICATION_ALL_PROVIDERS_FAILED: "notification.all.providers.failed",
838
+ // Validation
839
+ NOTIFICATION_INVALID_INPUT: "notification.validation.input.invalid",
840
+ NOTIFICATION_INVALID_RECIPIENT: "notification.validation.recipient.invalid",
841
+ NOTIFICATION_INVALID_TEMPLATE: "notification.validation.template.invalid",
842
+ NOTIFICATION_INVALID_PAYLOAD: "notification.validation.payload.invalid",
843
+ NOTIFICATION_MISSING_REQUIRED_FIELD: "notification.validation.field.required",
844
+ NOTIFICATION_VALIDATION_FAILED: "notification.validation.failed",
845
+ // User Preferences
846
+ NOTIFICATION_USER_OPTED_OUT: "notification.user.opted.out",
847
+ // Queue
848
+ NOTIFICATION_QUEUE_FULL: "notification.queue.full",
849
+ NOTIFICATION_QUEUE_PROCESSING_FAILED: "notification.queue.processing.failed",
850
+ // Webhook
851
+ NOTIFICATION_WEBHOOK_SIGNATURE_INVALID: "notification.webhook.signature.invalid",
852
+ NOTIFICATION_WEBHOOK_VALIDATION_FAILED: "notification.webhook.validation.failed",
853
+ NOTIFICATION_WEBHOOK_PROCESSING_FAILED: "notification.webhook.processing.failed",
854
+ // Template
855
+ NOTIFICATION_TEMPLATE_NOT_FOUND: "notification.template.not.found",
856
+ NOTIFICATION_TEMPLATE_RENDER_FAILED: "notification.template.render.failed",
857
+ // General Notification
858
+ NOTIFICATION_UNKNOWN_ERROR: "notification.unknown.error",
859
+ NOTIFICATION_INITIALIZATION_FAILED: "notification.initialization.failed"
860
+ };
861
+ var API_ERROR_CODES = {
862
+ CLIENT_INITIALIZATION_FAILED: ERROR_CODES.CLIENT_INITIALIZATION_FAILED,
863
+ CLIENT_INVALID_CONFIG: ERROR_CODES.CLIENT_INVALID_CONFIG,
864
+ CLIENT_MISSING_BASE_URL: ERROR_CODES.CLIENT_MISSING_BASE_URL,
865
+ CLIENT_CANCELLED: ERROR_CODES.CLIENT_CANCELLED,
866
+ CONFIG_VALIDATION_FAILED: ERROR_CODES.CONFIG_VALIDATION_FAILED,
867
+ HEADER_PROCESSING_FAILED: ERROR_CODES.HEADER_PROCESSING_FAILED,
868
+ NETWORK_OVERRIDE_FAILED: ERROR_CODES.NETWORK_OVERRIDE_FAILED,
869
+ REQUEST_TIMEOUT: ERROR_CODES.REQUEST_TIMEOUT,
870
+ REQUEST_ABORTED: ERROR_CODES.REQUEST_ABORTED,
871
+ REQUEST_INVALID_PARAMS: ERROR_CODES.REQUEST_INVALID_PARAMS,
872
+ REQUEST_PREPARATION_FAILED: ERROR_CODES.REQUEST_PREPARATION_FAILED,
873
+ RESPONSE_INVALID_FORMAT: ERROR_CODES.RESPONSE_INVALID_FORMAT,
874
+ RESPONSE_PARSING_FAILED: ERROR_CODES.RESPONSE_PARSING_FAILED,
875
+ AUTH_UNAUTHORIZED: ERROR_CODES.AUTH_UNAUTHORIZED,
876
+ AUTH_FORBIDDEN: ERROR_CODES.AUTH_FORBIDDEN,
877
+ AUTH_TOKEN_EXPIRED: ERROR_CODES.AUTH_TOKEN_EXPIRED,
878
+ AUTH_INVALID_CREDENTIALS: ERROR_CODES.AUTH_INVALID_CREDENTIALS,
879
+ RATE_LIMIT_EXCEEDED: ERROR_CODES.RATE_LIMIT_EXCEEDED,
880
+ RESOURCE_NOT_FOUND: ERROR_CODES.RESOURCE_NOT_FOUND,
881
+ RESOURCE_CONFLICT: ERROR_CODES.RESOURCE_CONFLICT,
882
+ VALIDATION_FAILED: ERROR_CODES.API_VALIDATION_FAILED,
883
+ INVALID_INPUT: ERROR_CODES.API_INVALID_INPUT,
884
+ VALIDATION_ERROR: ERROR_CODES.VALIDATION_ERROR,
885
+ REQUIRED_FIELD_MISSING: ERROR_CODES.REQUIRED_FIELD_MISSING,
886
+ INVALID_FORMAT: ERROR_CODES.INVALID_FORMAT,
887
+ VALIDATION_INVALID_FORMAT: ERROR_CODES.VALIDATION_INVALID_FORMAT,
888
+ STRING_TOO_SHORT: ERROR_CODES.STRING_TOO_SHORT,
889
+ STRING_TOO_LONG: ERROR_CODES.STRING_TOO_LONG,
890
+ NETWORK_ERROR: ERROR_CODES.NETWORK_ERROR,
891
+ CONNECTION_FAILED: ERROR_CODES.CONNECTION_FAILED,
892
+ NETWORK_CONNECTION_FAILED: ERROR_CODES.NETWORK_CONNECTION_FAILED,
893
+ NETWORK_OFFLINE: ERROR_CODES.NETWORK_OFFLINE,
894
+ NETWORK_DNS_FAILED: ERROR_CODES.NETWORK_DNS_FAILED,
895
+ NETWORK_TIMEOUT: ERROR_CODES.NETWORK_TIMEOUT,
896
+ NETWORK_CONFIGURATION_INVALID: ERROR_CODES.NETWORK_CONFIGURATION_INVALID,
897
+ SERVER_ERROR: ERROR_CODES.SERVER_ERROR,
898
+ INTERNAL_SERVER_ERROR: ERROR_CODES.INTERNAL_SERVER_ERROR,
899
+ SERVICE_UNAVAILABLE: ERROR_CODES.SERVICE_UNAVAILABLE,
900
+ CACHE_READ_FAILED: ERROR_CODES.CACHE_READ_FAILED,
901
+ CACHE_WRITE_FAILED: ERROR_CODES.CACHE_WRITE_FAILED,
902
+ CACHE_INVALIDATION_FAILED: ERROR_CODES.CACHE_INVALIDATION_FAILED,
903
+ CACHE_STORAGE_FAILED: ERROR_CODES.CACHE_STORAGE_FAILED,
904
+ CACHE_RETRIEVAL_FAILED: ERROR_CODES.CACHE_RETRIEVAL_FAILED,
905
+ RETRY_LIMIT_EXCEEDED: ERROR_CODES.RETRY_LIMIT_EXCEEDED,
906
+ RETRY_FAILED: ERROR_CODES.RETRY_FAILED,
907
+ RETRY_EXHAUSTED: ERROR_CODES.RETRY_EXHAUSTED,
908
+ RETRY_STRATEGY_INVALID: ERROR_CODES.RETRY_STRATEGY_INVALID,
909
+ STRATEGY_INVALID: ERROR_CODES.STRATEGY_INVALID,
910
+ STRATEGY_CONFLICT: ERROR_CODES.STRATEGY_CONFLICT,
911
+ STRATEGY_EXECUTION_FAILED: ERROR_CODES.STRATEGY_EXECUTION_FAILED,
912
+ HEADERS_ENRICHMENT_FAILED: ERROR_CODES.HEADERS_ENRICHMENT_FAILED,
913
+ HEADERS_VALIDATION_FAILED: ERROR_CODES.HEADERS_VALIDATION_FAILED,
914
+ HEADERS_MERGE_CONFLICT: ERROR_CODES.HEADERS_MERGE_CONFLICT,
915
+ REGION_DETECTION_FAILED: ERROR_CODES.REGION_DETECTION_FAILED,
916
+ REGIONAL_PRESET_NOT_FOUND: ERROR_CODES.REGIONAL_PRESET_NOT_FOUND,
917
+ EXTERNAL_SERVICE_ERROR: ERROR_CODES.EXTERNAL_SERVICE_ERROR,
918
+ NETWORK_PRESET_NOT_FOUND: ERROR_CODES.NETWORK_PRESET_NOT_FOUND,
919
+ TIMEOUT: ERROR_CODES.TIMEOUT,
920
+ DEBUG_TRACKING_FAILED: ERROR_CODES.DEBUG_TRACKING_FAILED,
921
+ DEBUG_OVERRIDE_FAILED: ERROR_CODES.DEBUG_OVERRIDE_FAILED,
922
+ DEBUG_CONFLICT_DETECTED: ERROR_CODES.DEBUG_CONFLICT_DETECTED,
923
+ POLLING_CANCELLED: ERROR_CODES.POLLING_CANCELLED,
924
+ POLLING_TIMEOUT: ERROR_CODES.POLLING_TIMEOUT,
925
+ POLLING_INVALID_CONFIG: ERROR_CODES.POLLING_INVALID_CONFIG,
926
+ PUBSUB_SUBSCRIPTION_FAILED: ERROR_CODES.PUBSUB_SUBSCRIPTION_FAILED,
927
+ PUBSUB_PUBLICATION_FAILED: ERROR_CODES.PUBSUB_PUBLICATION_FAILED,
928
+ PUBSUB_INVALID_TOPIC: ERROR_CODES.PUBSUB_INVALID_TOPIC,
929
+ PUBSUB_CHANNEL_ERROR: ERROR_CODES.PUBSUB_CHANNEL_ERROR,
930
+ REVALIDATION_FAILED: ERROR_CODES.REVALIDATION_FAILED,
931
+ REVALIDATION_IN_PROGRESS: ERROR_CODES.REVALIDATION_IN_PROGRESS,
932
+ ENDPOINT_BUILD_FAILED: ERROR_CODES.ENDPOINT_BUILD_FAILED,
933
+ ENDPOINT_NOT_FOUND: ERROR_CODES.ENDPOINT_NOT_FOUND,
934
+ ENDPOINT_INVALID_CONFIG: ERROR_CODES.ENDPOINT_INVALID_CONFIG,
935
+ EVENT_HANDLER_FAILED: ERROR_CODES.EVENT_HANDLER_FAILED,
936
+ EVENT_EMISSION_FAILED: ERROR_CODES.EVENT_EMISSION_FAILED,
937
+ MONITORING_FAILED: ERROR_CODES.MONITORING_FAILED,
938
+ CONTEXT_OPERATION_FAILED: ERROR_CODES.CONTEXT_OPERATION_FAILED,
939
+ CLIENT_ERROR: ERROR_CODES.CLIENT_ERROR,
940
+ UNKNOWN_ERROR: ERROR_CODES.UNKNOWN_ERROR
941
+ };
942
+ var ERROR_DEFINITIONS = {
943
+ // ===== API Package Error Definitions =====
944
+ // Authentication
945
+ [ERROR_CODES.AUTH_UNAUTHORIZED]: {
946
+ code: ERROR_CODES.AUTH_UNAUTHORIZED,
947
+ status: HTTP_STATUS.UNAUTHORIZED,
948
+ category: ERROR_CATEGORY.Authentication,
949
+ userMessage: "errors.auth.unauthorized",
950
+ severity: ERROR_SEVERITY.Medium,
951
+ retryable: false
952
+ },
953
+ [ERROR_CODES.AUTH_FORBIDDEN]: {
954
+ code: ERROR_CODES.AUTH_FORBIDDEN,
955
+ status: HTTP_STATUS.FORBIDDEN,
956
+ category: ERROR_CATEGORY.Authorization,
957
+ userMessage: "errors.auth.forbidden",
958
+ severity: ERROR_SEVERITY.Medium,
959
+ retryable: false
960
+ },
961
+ [ERROR_CODES.AUTH_TOKEN_EXPIRED]: {
962
+ code: ERROR_CODES.AUTH_TOKEN_EXPIRED,
963
+ status: HTTP_STATUS.UNAUTHORIZED,
964
+ category: ERROR_CATEGORY.Authentication,
965
+ userMessage: "errors.auth.token_expired",
966
+ severity: ERROR_SEVERITY.Medium,
967
+ retryable: false
968
+ },
969
+ [ERROR_CODES.AUTH_INVALID_CREDENTIALS]: {
970
+ code: ERROR_CODES.AUTH_INVALID_CREDENTIALS,
971
+ status: HTTP_STATUS.UNAUTHORIZED,
972
+ category: ERROR_CATEGORY.Authentication,
973
+ userMessage: "errors.auth.invalid_credentials",
974
+ severity: ERROR_SEVERITY.Medium,
975
+ retryable: false
976
+ },
977
+ // Rate Limiting
978
+ [ERROR_CODES.RATE_LIMIT_EXCEEDED]: {
979
+ code: ERROR_CODES.RATE_LIMIT_EXCEEDED,
980
+ status: HTTP_STATUS.TOO_MANY_REQUESTS,
981
+ category: ERROR_CATEGORY.RateLimit,
982
+ userMessage: "errors.rate_limit.exceeded",
983
+ severity: ERROR_SEVERITY.Medium,
984
+ retryable: true
985
+ },
986
+ // Resources
987
+ [ERROR_CODES.RESOURCE_NOT_FOUND]: {
988
+ code: ERROR_CODES.RESOURCE_NOT_FOUND,
989
+ status: HTTP_STATUS.NOT_FOUND,
990
+ category: ERROR_CATEGORY.NotFound,
991
+ userMessage: "errors.resource.not_found",
992
+ severity: ERROR_SEVERITY.Medium,
993
+ retryable: false
994
+ },
995
+ [ERROR_CODES.RESOURCE_CONFLICT]: {
996
+ code: ERROR_CODES.RESOURCE_CONFLICT,
997
+ status: HTTP_STATUS.CONFLICT,
998
+ category: ERROR_CATEGORY.Conflict,
999
+ userMessage: "errors.resource.conflict",
1000
+ severity: ERROR_SEVERITY.Medium,
1001
+ retryable: false
1002
+ },
1003
+ // Validation
1004
+ [ERROR_CODES.API_VALIDATION_FAILED]: {
1005
+ code: ERROR_CODES.API_VALIDATION_FAILED,
1006
+ status: HTTP_STATUS.BAD_REQUEST,
1007
+ category: ERROR_CATEGORY.Validation,
1008
+ userMessage: "errors.validation.failed",
1009
+ severity: ERROR_SEVERITY.Medium,
1010
+ retryable: false
1011
+ },
1012
+ [ERROR_CODES.API_INVALID_INPUT]: {
1013
+ code: ERROR_CODES.API_INVALID_INPUT,
1014
+ status: HTTP_STATUS.BAD_REQUEST,
1015
+ category: ERROR_CATEGORY.Validation,
1016
+ userMessage: "errors.validation.invalid_input",
1017
+ severity: ERROR_SEVERITY.Medium,
1018
+ retryable: false
1019
+ },
1020
+ [ERROR_CODES.VALIDATION_ERROR]: {
1021
+ code: ERROR_CODES.VALIDATION_ERROR,
1022
+ status: HTTP_STATUS.BAD_REQUEST,
1023
+ category: ERROR_CATEGORY.Validation,
1024
+ userMessage: "errors.validation.error",
1025
+ severity: ERROR_SEVERITY.Medium,
1026
+ retryable: false
1027
+ },
1028
+ [ERROR_CODES.REQUIRED_FIELD_MISSING]: {
1029
+ code: ERROR_CODES.REQUIRED_FIELD_MISSING,
1030
+ status: HTTP_STATUS.BAD_REQUEST,
1031
+ category: ERROR_CATEGORY.Validation,
1032
+ userMessage: "errors.validation.required_field_missing",
1033
+ severity: ERROR_SEVERITY.Medium,
1034
+ retryable: false
1035
+ },
1036
+ [ERROR_CODES.INVALID_FORMAT]: {
1037
+ code: ERROR_CODES.INVALID_FORMAT,
1038
+ status: HTTP_STATUS.BAD_REQUEST,
1039
+ category: ERROR_CATEGORY.Validation,
1040
+ userMessage: "errors.validation.invalid_format",
1041
+ severity: ERROR_SEVERITY.Medium,
1042
+ retryable: false
1043
+ },
1044
+ [ERROR_CODES.VALIDATION_INVALID_FORMAT]: {
1045
+ code: ERROR_CODES.VALIDATION_INVALID_FORMAT,
1046
+ status: HTTP_STATUS.BAD_REQUEST,
1047
+ category: ERROR_CATEGORY.Validation,
1048
+ userMessage: "errors.validation.invalid_format",
1049
+ severity: ERROR_SEVERITY.Medium,
1050
+ retryable: false
1051
+ },
1052
+ [ERROR_CODES.STRING_TOO_SHORT]: {
1053
+ code: ERROR_CODES.STRING_TOO_SHORT,
1054
+ status: HTTP_STATUS.BAD_REQUEST,
1055
+ category: ERROR_CATEGORY.Validation,
1056
+ userMessage: "errors.validation.string_too_short",
1057
+ severity: ERROR_SEVERITY.Medium,
1058
+ retryable: false
1059
+ },
1060
+ [ERROR_CODES.STRING_TOO_LONG]: {
1061
+ code: ERROR_CODES.STRING_TOO_LONG,
1062
+ status: HTTP_STATUS.BAD_REQUEST,
1063
+ category: ERROR_CATEGORY.Validation,
1064
+ userMessage: "errors.validation.string_too_long",
1065
+ severity: ERROR_SEVERITY.Medium,
1066
+ retryable: false
1067
+ },
1068
+ // Network
1069
+ [ERROR_CODES.NETWORK_ERROR]: {
1070
+ code: ERROR_CODES.NETWORK_ERROR,
1071
+ status: HTTP_STATUS.BAD_GATEWAY,
1072
+ category: ERROR_CATEGORY.Network,
1073
+ userMessage: "errors.network.error",
1074
+ severity: ERROR_SEVERITY.High,
1075
+ retryable: true
1076
+ },
1077
+ [ERROR_CODES.CONNECTION_FAILED]: {
1078
+ code: ERROR_CODES.CONNECTION_FAILED,
1079
+ status: 0,
1080
+ category: ERROR_CATEGORY.Network,
1081
+ userMessage: "errors.network.connection_failed",
1082
+ severity: ERROR_SEVERITY.High,
1083
+ retryable: true
1084
+ },
1085
+ [ERROR_CODES.NETWORK_CONNECTION_FAILED]: {
1086
+ code: ERROR_CODES.NETWORK_CONNECTION_FAILED,
1087
+ status: 0,
1088
+ category: ERROR_CATEGORY.Network,
1089
+ userMessage: "errors.network.connection_failed",
1090
+ severity: ERROR_SEVERITY.High,
1091
+ retryable: true
1092
+ },
1093
+ [ERROR_CODES.NETWORK_OFFLINE]: {
1094
+ code: ERROR_CODES.NETWORK_OFFLINE,
1095
+ status: 0,
1096
+ category: ERROR_CATEGORY.Network,
1097
+ userMessage: "errors.network.offline",
1098
+ severity: ERROR_SEVERITY.High,
1099
+ retryable: true
1100
+ },
1101
+ [ERROR_CODES.NETWORK_DNS_FAILED]: {
1102
+ code: ERROR_CODES.NETWORK_DNS_FAILED,
1103
+ status: 0,
1104
+ category: ERROR_CATEGORY.Network,
1105
+ userMessage: "errors.network.dns_failed",
1106
+ severity: ERROR_SEVERITY.High,
1107
+ retryable: true
1108
+ },
1109
+ [ERROR_CODES.NETWORK_TIMEOUT]: {
1110
+ code: ERROR_CODES.NETWORK_TIMEOUT,
1111
+ status: 0,
1112
+ category: ERROR_CATEGORY.Network,
1113
+ userMessage: "errors.network.timeout",
1114
+ severity: ERROR_SEVERITY.High,
1115
+ retryable: true
1116
+ },
1117
+ [ERROR_CODES.NETWORK_CONFIGURATION_INVALID]: {
1118
+ code: ERROR_CODES.NETWORK_CONFIGURATION_INVALID,
1119
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1120
+ category: ERROR_CATEGORY.Configuration,
1121
+ userMessage: "errors.network.configuration_invalid",
1122
+ severity: ERROR_SEVERITY.Critical,
1123
+ retryable: true
1124
+ },
1125
+ [ERROR_CODES.NETWORK_PRESET_NOT_FOUND]: {
1126
+ code: ERROR_CODES.NETWORK_PRESET_NOT_FOUND,
1127
+ status: HTTP_STATUS.NOT_FOUND,
1128
+ category: ERROR_CATEGORY.Configuration,
1129
+ userMessage: "errors.network.preset_not_found",
1130
+ severity: ERROR_SEVERITY.High,
1131
+ retryable: true
1132
+ },
1133
+ // Server
1134
+ [ERROR_CODES.SERVER_ERROR]: {
1135
+ code: ERROR_CODES.SERVER_ERROR,
1136
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1137
+ category: ERROR_CATEGORY.Server,
1138
+ userMessage: "errors.server.error",
1139
+ severity: ERROR_SEVERITY.High,
1140
+ retryable: false
1141
+ },
1142
+ [ERROR_CODES.INTERNAL_SERVER_ERROR]: {
1143
+ code: ERROR_CODES.INTERNAL_SERVER_ERROR,
1144
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1145
+ category: ERROR_CATEGORY.Server,
1146
+ userMessage: "errors.server.internal_error",
1147
+ severity: ERROR_SEVERITY.High,
1148
+ retryable: false
1149
+ },
1150
+ [ERROR_CODES.SERVICE_UNAVAILABLE]: {
1151
+ code: ERROR_CODES.SERVICE_UNAVAILABLE,
1152
+ status: HTTP_STATUS.SERVICE_UNAVAILABLE,
1153
+ category: ERROR_CATEGORY.Server,
1154
+ userMessage: "errors.server.service_unavailable",
1155
+ severity: ERROR_SEVERITY.Medium,
1156
+ retryable: true
1157
+ },
1158
+ // Cache
1159
+ [ERROR_CODES.CACHE_READ_FAILED]: {
1160
+ code: ERROR_CODES.CACHE_READ_FAILED,
1161
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1162
+ category: ERROR_CATEGORY.Cache,
1163
+ userMessage: "errors.cache.read_failed",
1164
+ severity: ERROR_SEVERITY.Medium,
1165
+ retryable: false
1166
+ },
1167
+ [ERROR_CODES.CACHE_WRITE_FAILED]: {
1168
+ code: ERROR_CODES.CACHE_WRITE_FAILED,
1169
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1170
+ category: ERROR_CATEGORY.Cache,
1171
+ userMessage: "errors.cache.write_failed",
1172
+ severity: ERROR_SEVERITY.Medium,
1173
+ retryable: false
1174
+ },
1175
+ [ERROR_CODES.CACHE_INVALIDATION_FAILED]: {
1176
+ code: ERROR_CODES.CACHE_INVALIDATION_FAILED,
1177
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1178
+ category: ERROR_CATEGORY.Cache,
1179
+ userMessage: "errors.cache.invalidation_failed",
1180
+ severity: ERROR_SEVERITY.Medium,
1181
+ retryable: false
1182
+ },
1183
+ [ERROR_CODES.CACHE_STORAGE_FAILED]: {
1184
+ code: ERROR_CODES.CACHE_STORAGE_FAILED,
1185
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1186
+ category: ERROR_CATEGORY.Cache,
1187
+ userMessage: "errors.cache.storage_failed",
1188
+ severity: ERROR_SEVERITY.Medium,
1189
+ retryable: false
1190
+ },
1191
+ [ERROR_CODES.CACHE_RETRIEVAL_FAILED]: {
1192
+ code: ERROR_CODES.CACHE_RETRIEVAL_FAILED,
1193
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1194
+ category: ERROR_CATEGORY.Cache,
1195
+ userMessage: "errors.cache.retrieval_failed",
1196
+ severity: ERROR_SEVERITY.Medium,
1197
+ retryable: false
1198
+ },
1199
+ // Retry
1200
+ [ERROR_CODES.RETRY_LIMIT_EXCEEDED]: {
1201
+ code: ERROR_CODES.RETRY_LIMIT_EXCEEDED,
1202
+ status: HTTP_STATUS.SERVICE_UNAVAILABLE,
1203
+ category: ERROR_CATEGORY.Retry,
1204
+ userMessage: "errors.retry.limit_exceeded",
1205
+ severity: ERROR_SEVERITY.Medium,
1206
+ retryable: true
1207
+ },
1208
+ [ERROR_CODES.RETRY_FAILED]: {
1209
+ code: ERROR_CODES.RETRY_FAILED,
1210
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1211
+ category: ERROR_CATEGORY.Retry,
1212
+ userMessage: "errors.retry.failed",
1213
+ severity: ERROR_SEVERITY.Medium,
1214
+ retryable: true
1215
+ },
1216
+ [ERROR_CODES.RETRY_EXHAUSTED]: {
1217
+ code: ERROR_CODES.RETRY_EXHAUSTED,
1218
+ status: HTTP_STATUS.SERVICE_UNAVAILABLE,
1219
+ category: ERROR_CATEGORY.Retry,
1220
+ userMessage: "errors.retry.exhausted",
1221
+ severity: ERROR_SEVERITY.Medium,
1222
+ retryable: true
1223
+ },
1224
+ [ERROR_CODES.RETRY_STRATEGY_INVALID]: {
1225
+ code: ERROR_CODES.RETRY_STRATEGY_INVALID,
1226
+ status: HTTP_STATUS.BAD_REQUEST,
1227
+ category: ERROR_CATEGORY.Configuration,
1228
+ userMessage: "errors.retry.strategy_invalid",
1229
+ severity: ERROR_SEVERITY.Medium,
1230
+ retryable: true
1231
+ },
1232
+ // Strategy
1233
+ [ERROR_CODES.STRATEGY_INVALID]: {
1234
+ code: ERROR_CODES.STRATEGY_INVALID,
1235
+ status: HTTP_STATUS.BAD_REQUEST,
1236
+ category: ERROR_CATEGORY.Configuration,
1237
+ userMessage: "errors.strategy.invalid",
1238
+ severity: ERROR_SEVERITY.Medium,
1239
+ retryable: false
1240
+ },
1241
+ [ERROR_CODES.STRATEGY_CONFLICT]: {
1242
+ code: ERROR_CODES.STRATEGY_CONFLICT,
1243
+ status: HTTP_STATUS.CONFLICT,
1244
+ category: ERROR_CATEGORY.Configuration,
1245
+ userMessage: "errors.strategy.conflict",
1246
+ severity: ERROR_SEVERITY.Medium,
1247
+ retryable: false
1248
+ },
1249
+ [ERROR_CODES.STRATEGY_EXECUTION_FAILED]: {
1250
+ code: ERROR_CODES.STRATEGY_EXECUTION_FAILED,
1251
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1252
+ category: ERROR_CATEGORY.Configuration,
1253
+ userMessage: "errors.strategy.execution_failed",
1254
+ severity: ERROR_SEVERITY.Medium,
1255
+ retryable: false
1256
+ },
1257
+ // Headers
1258
+ [ERROR_CODES.HEADERS_ENRICHMENT_FAILED]: {
1259
+ code: ERROR_CODES.HEADERS_ENRICHMENT_FAILED,
1260
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1261
+ category: ERROR_CATEGORY.Headers,
1262
+ userMessage: "errors.headers.enrichment_failed",
1263
+ severity: ERROR_SEVERITY.Medium,
1264
+ retryable: false
1265
+ },
1266
+ [ERROR_CODES.HEADERS_VALIDATION_FAILED]: {
1267
+ code: ERROR_CODES.HEADERS_VALIDATION_FAILED,
1268
+ status: HTTP_STATUS.BAD_REQUEST,
1269
+ category: ERROR_CATEGORY.Headers,
1270
+ userMessage: "errors.headers.validation_failed",
1271
+ severity: ERROR_SEVERITY.Medium,
1272
+ retryable: false
1273
+ },
1274
+ [ERROR_CODES.HEADERS_MERGE_CONFLICT]: {
1275
+ code: ERROR_CODES.HEADERS_MERGE_CONFLICT,
1276
+ status: HTTP_STATUS.CONFLICT,
1277
+ category: ERROR_CATEGORY.Headers,
1278
+ userMessage: "errors.headers.merge_conflict",
1279
+ severity: ERROR_SEVERITY.Medium,
1280
+ retryable: false
1281
+ },
1282
+ // Regional
1283
+ [ERROR_CODES.REGION_DETECTION_FAILED]: {
1284
+ code: ERROR_CODES.REGION_DETECTION_FAILED,
1285
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1286
+ category: ERROR_CATEGORY.Network,
1287
+ userMessage: "errors.regional.detection_failed",
1288
+ severity: ERROR_SEVERITY.Medium,
1289
+ retryable: false
1290
+ },
1291
+ [ERROR_CODES.REGIONAL_PRESET_NOT_FOUND]: {
1292
+ code: ERROR_CODES.REGIONAL_PRESET_NOT_FOUND,
1293
+ status: HTTP_STATUS.NOT_FOUND,
1294
+ category: ERROR_CATEGORY.Configuration,
1295
+ userMessage: "errors.regional.preset_not_found",
1296
+ severity: ERROR_SEVERITY.Medium,
1297
+ retryable: false
1298
+ },
1299
+ // External Services
1300
+ [ERROR_CODES.EXTERNAL_SERVICE_ERROR]: {
1301
+ code: ERROR_CODES.EXTERNAL_SERVICE_ERROR,
1302
+ status: HTTP_STATUS.BAD_GATEWAY,
1303
+ category: ERROR_CATEGORY.Server,
1304
+ userMessage: "errors.external.service_error",
1305
+ severity: ERROR_SEVERITY.Medium,
1306
+ retryable: false
1307
+ },
1308
+ // Timeout
1309
+ [ERROR_CODES.TIMEOUT]: {
1310
+ code: ERROR_CODES.TIMEOUT,
1311
+ status: HTTP_STATUS.REQUEST_TIMEOUT,
1312
+ category: ERROR_CATEGORY.Timeout,
1313
+ userMessage: "errors.timeout.generic",
1314
+ severity: ERROR_SEVERITY.High,
1315
+ retryable: true
1316
+ },
1317
+ // Debugging
1318
+ [ERROR_CODES.DEBUG_TRACKING_FAILED]: {
1319
+ code: ERROR_CODES.DEBUG_TRACKING_FAILED,
1320
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1321
+ category: ERROR_CATEGORY.Client,
1322
+ userMessage: "errors.debug.tracking_failed",
1323
+ severity: ERROR_SEVERITY.Medium,
1324
+ retryable: false
1325
+ },
1326
+ [ERROR_CODES.DEBUG_OVERRIDE_FAILED]: {
1327
+ code: ERROR_CODES.DEBUG_OVERRIDE_FAILED,
1328
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1329
+ category: ERROR_CATEGORY.Configuration,
1330
+ userMessage: "errors.debug.override_failed",
1331
+ severity: ERROR_SEVERITY.Medium,
1332
+ retryable: false
1333
+ },
1334
+ [ERROR_CODES.DEBUG_CONFLICT_DETECTED]: {
1335
+ code: ERROR_CODES.DEBUG_CONFLICT_DETECTED,
1336
+ status: HTTP_STATUS.CONFLICT,
1337
+ category: ERROR_CATEGORY.Configuration,
1338
+ userMessage: "errors.debug.conflict_detected",
1339
+ severity: ERROR_SEVERITY.Medium,
1340
+ retryable: false
1341
+ },
1342
+ // Endpoint
1343
+ [ERROR_CODES.ENDPOINT_BUILD_FAILED]: {
1344
+ code: ERROR_CODES.ENDPOINT_BUILD_FAILED,
1345
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1346
+ category: ERROR_CATEGORY.Configuration,
1347
+ userMessage: "errors.endpoint.build_failed",
1348
+ severity: ERROR_SEVERITY.Medium,
1349
+ retryable: false
1350
+ },
1351
+ [ERROR_CODES.ENDPOINT_NOT_FOUND]: {
1352
+ code: ERROR_CODES.ENDPOINT_NOT_FOUND,
1353
+ status: HTTP_STATUS.NOT_FOUND,
1354
+ category: ERROR_CATEGORY.NotFound,
1355
+ userMessage: "errors.endpoint.not_found",
1356
+ severity: ERROR_SEVERITY.Medium,
1357
+ retryable: false
1358
+ },
1359
+ [ERROR_CODES.ENDPOINT_INVALID_CONFIG]: {
1360
+ code: ERROR_CODES.ENDPOINT_INVALID_CONFIG,
1361
+ status: HTTP_STATUS.BAD_REQUEST,
1362
+ category: ERROR_CATEGORY.Configuration,
1363
+ userMessage: "errors.endpoint.invalid_config",
1364
+ severity: ERROR_SEVERITY.Critical,
1365
+ retryable: false
1366
+ },
1367
+ // Event
1368
+ [ERROR_CODES.EVENT_HANDLER_FAILED]: {
1369
+ code: ERROR_CODES.EVENT_HANDLER_FAILED,
1370
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1371
+ category: ERROR_CATEGORY.Client,
1372
+ userMessage: "errors.event.handler_failed",
1373
+ severity: ERROR_SEVERITY.Medium,
1374
+ retryable: false
1375
+ },
1376
+ [ERROR_CODES.EVENT_EMISSION_FAILED]: {
1377
+ code: ERROR_CODES.EVENT_EMISSION_FAILED,
1378
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1379
+ category: ERROR_CATEGORY.Client,
1380
+ userMessage: "errors.event.emission_failed",
1381
+ severity: ERROR_SEVERITY.Medium,
1382
+ retryable: false
1383
+ },
1384
+ [ERROR_CODES.MONITORING_FAILED]: {
1385
+ code: ERROR_CODES.MONITORING_FAILED,
1386
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1387
+ category: ERROR_CATEGORY.Client,
1388
+ userMessage: "errors.monitoring.failed",
1389
+ severity: ERROR_SEVERITY.Medium,
1390
+ retryable: false
1391
+ },
1392
+ // Polling
1393
+ [ERROR_CODES.POLLING_CANCELLED]: {
1394
+ code: ERROR_CODES.POLLING_CANCELLED,
1395
+ status: 0,
1396
+ category: ERROR_CATEGORY.Client,
1397
+ userMessage: "errors.polling.cancelled",
1398
+ severity: ERROR_SEVERITY.Low,
1399
+ retryable: false
1400
+ },
1401
+ [ERROR_CODES.POLLING_TIMEOUT]: {
1402
+ code: ERROR_CODES.POLLING_TIMEOUT,
1403
+ status: HTTP_STATUS.REQUEST_TIMEOUT,
1404
+ category: ERROR_CATEGORY.Timeout,
1405
+ userMessage: "errors.polling.timeout",
1406
+ severity: ERROR_SEVERITY.High,
1407
+ retryable: true
1408
+ },
1409
+ [ERROR_CODES.POLLING_INVALID_CONFIG]: {
1410
+ code: ERROR_CODES.POLLING_INVALID_CONFIG,
1411
+ status: HTTP_STATUS.BAD_REQUEST,
1412
+ category: ERROR_CATEGORY.Configuration,
1413
+ userMessage: "errors.polling.invalid_config",
1414
+ severity: ERROR_SEVERITY.Critical,
1415
+ retryable: false
1416
+ },
1417
+ // PubSub
1418
+ [ERROR_CODES.PUBSUB_SUBSCRIPTION_FAILED]: {
1419
+ code: ERROR_CODES.PUBSUB_SUBSCRIPTION_FAILED,
1420
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1421
+ category: ERROR_CATEGORY.Client,
1422
+ userMessage: "errors.pubsub.subscription_failed",
1423
+ severity: ERROR_SEVERITY.Medium,
1424
+ retryable: false
1425
+ },
1426
+ [ERROR_CODES.PUBSUB_PUBLICATION_FAILED]: {
1427
+ code: ERROR_CODES.PUBSUB_PUBLICATION_FAILED,
1428
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1429
+ category: ERROR_CATEGORY.Client,
1430
+ userMessage: "errors.pubsub.publication_failed",
1431
+ severity: ERROR_SEVERITY.Medium,
1432
+ retryable: false
1433
+ },
1434
+ [ERROR_CODES.PUBSUB_INVALID_TOPIC]: {
1435
+ code: ERROR_CODES.PUBSUB_INVALID_TOPIC,
1436
+ status: HTTP_STATUS.BAD_REQUEST,
1437
+ category: ERROR_CATEGORY.Validation,
1438
+ userMessage: "errors.pubsub.invalid_topic",
1439
+ severity: ERROR_SEVERITY.Medium,
1440
+ retryable: false
1441
+ },
1442
+ [ERROR_CODES.PUBSUB_CHANNEL_ERROR]: {
1443
+ code: ERROR_CODES.PUBSUB_CHANNEL_ERROR,
1444
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1445
+ category: ERROR_CATEGORY.Client,
1446
+ userMessage: "errors.pubsub.channel_error",
1447
+ severity: ERROR_SEVERITY.Medium,
1448
+ retryable: false
1449
+ },
1450
+ // Revalidation
1451
+ [ERROR_CODES.REVALIDATION_FAILED]: {
1452
+ code: ERROR_CODES.REVALIDATION_FAILED,
1453
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1454
+ category: ERROR_CATEGORY.Cache,
1455
+ userMessage: "errors.revalidation.failed",
1456
+ severity: ERROR_SEVERITY.Medium,
1457
+ retryable: false
1458
+ },
1459
+ [ERROR_CODES.REVALIDATION_IN_PROGRESS]: {
1460
+ code: ERROR_CODES.REVALIDATION_IN_PROGRESS,
1461
+ status: HTTP_STATUS.CONFLICT,
1462
+ category: ERROR_CATEGORY.Cache,
1463
+ userMessage: "errors.revalidation.in_progress",
1464
+ severity: ERROR_SEVERITY.Medium,
1465
+ retryable: false
1466
+ },
1467
+ // Context
1468
+ [ERROR_CODES.CONTEXT_OPERATION_FAILED]: {
1469
+ code: ERROR_CODES.CONTEXT_OPERATION_FAILED,
1470
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1471
+ category: ERROR_CATEGORY.Client,
1472
+ userMessage: "errors.context.operation_failed",
1473
+ severity: ERROR_SEVERITY.Medium,
1474
+ retryable: false
1475
+ },
1476
+ // Request
1477
+ [ERROR_CODES.REQUEST_TIMEOUT]: {
1478
+ code: ERROR_CODES.REQUEST_TIMEOUT,
1479
+ status: HTTP_STATUS.REQUEST_TIMEOUT,
1480
+ category: ERROR_CATEGORY.Timeout,
1481
+ userMessage: "errors.request.timeout",
1482
+ severity: ERROR_SEVERITY.High,
1483
+ retryable: true
1484
+ },
1485
+ [ERROR_CODES.REQUEST_ABORTED]: {
1486
+ code: ERROR_CODES.REQUEST_ABORTED,
1487
+ status: 0,
1488
+ category: ERROR_CATEGORY.Client,
1489
+ userMessage: "errors.request.aborted",
1490
+ severity: ERROR_SEVERITY.Medium,
1491
+ retryable: true
1492
+ },
1493
+ [ERROR_CODES.REQUEST_INVALID_PARAMS]: {
1494
+ code: ERROR_CODES.REQUEST_INVALID_PARAMS,
1495
+ status: HTTP_STATUS.BAD_REQUEST,
1496
+ category: ERROR_CATEGORY.Validation,
1497
+ userMessage: "errors.request.invalid_params",
1498
+ severity: ERROR_SEVERITY.Medium,
1499
+ retryable: false
1500
+ },
1501
+ [ERROR_CODES.REQUEST_PREPARATION_FAILED]: {
1502
+ code: ERROR_CODES.REQUEST_PREPARATION_FAILED,
1503
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1504
+ category: ERROR_CATEGORY.Client,
1505
+ userMessage: "errors.request.preparation_failed",
1506
+ severity: ERROR_SEVERITY.Medium,
1507
+ retryable: false
1508
+ },
1509
+ // Response
1510
+ [ERROR_CODES.RESPONSE_INVALID_FORMAT]: {
1511
+ code: ERROR_CODES.RESPONSE_INVALID_FORMAT,
1512
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1513
+ category: ERROR_CATEGORY.Server,
1514
+ userMessage: "errors.response.invalid_format",
1515
+ severity: ERROR_SEVERITY.Medium,
1516
+ retryable: false
1517
+ },
1518
+ [ERROR_CODES.RESPONSE_PARSING_FAILED]: {
1519
+ code: ERROR_CODES.RESPONSE_PARSING_FAILED,
1520
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1521
+ category: ERROR_CATEGORY.Server,
1522
+ userMessage: "errors.response.parsing_failed",
1523
+ severity: ERROR_SEVERITY.Medium,
1524
+ retryable: false
1525
+ },
1526
+ // Client
1527
+ [ERROR_CODES.CLIENT_ERROR]: {
1528
+ code: ERROR_CODES.CLIENT_ERROR,
1529
+ status: HTTP_STATUS.BAD_REQUEST,
1530
+ category: ERROR_CATEGORY.Client,
1531
+ userMessage: "errors.client.error",
1532
+ severity: ERROR_SEVERITY.Medium,
1533
+ retryable: false
1534
+ },
1535
+ [ERROR_CODES.CLIENT_INITIALIZATION_FAILED]: {
1536
+ code: ERROR_CODES.CLIENT_INITIALIZATION_FAILED,
1537
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1538
+ category: ERROR_CATEGORY.Client,
1539
+ userMessage: "errors.client.initialization_failed",
1540
+ severity: ERROR_SEVERITY.Medium,
1541
+ retryable: false
1542
+ },
1543
+ [ERROR_CODES.CLIENT_INVALID_CONFIG]: {
1544
+ code: ERROR_CODES.CLIENT_INVALID_CONFIG,
1545
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1546
+ category: ERROR_CATEGORY.Client,
1547
+ userMessage: "errors.client.invalid_config",
1548
+ severity: ERROR_SEVERITY.Critical,
1549
+ retryable: false
1550
+ },
1551
+ [ERROR_CODES.CLIENT_MISSING_BASE_URL]: {
1552
+ code: ERROR_CODES.CLIENT_MISSING_BASE_URL,
1553
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1554
+ category: ERROR_CATEGORY.Configuration,
1555
+ userMessage: "errors.client.missing_base_url",
1556
+ severity: ERROR_SEVERITY.Critical,
1557
+ retryable: false
1558
+ },
1559
+ [ERROR_CODES.CLIENT_CANCELLED]: {
1560
+ code: ERROR_CODES.CLIENT_CANCELLED,
1561
+ status: 0,
1562
+ category: ERROR_CATEGORY.Client,
1563
+ userMessage: "errors.client.cancelled",
1564
+ severity: ERROR_SEVERITY.Low,
1565
+ retryable: true
1566
+ },
1567
+ // Configuration
1568
+ [ERROR_CODES.CONFIG_VALIDATION_FAILED]: {
1569
+ code: ERROR_CODES.CONFIG_VALIDATION_FAILED,
1570
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1571
+ category: ERROR_CATEGORY.Configuration,
1572
+ userMessage: "errors.config.validation_failed",
1573
+ severity: ERROR_SEVERITY.Critical,
1574
+ retryable: false
1575
+ },
1576
+ [ERROR_CODES.HEADER_PROCESSING_FAILED]: {
1577
+ code: ERROR_CODES.HEADER_PROCESSING_FAILED,
1578
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1579
+ category: ERROR_CATEGORY.Headers,
1580
+ userMessage: "errors.headers.processing_failed",
1581
+ severity: ERROR_SEVERITY.Medium,
1582
+ retryable: false
1583
+ },
1584
+ [ERROR_CODES.NETWORK_OVERRIDE_FAILED]: {
1585
+ code: ERROR_CODES.NETWORK_OVERRIDE_FAILED,
1586
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1587
+ category: ERROR_CATEGORY.Network,
1588
+ userMessage: "errors.network.override_failed",
1589
+ severity: ERROR_SEVERITY.High,
1590
+ retryable: true
1591
+ },
1592
+ // Generic
1593
+ [ERROR_CODES.UNKNOWN_ERROR]: {
1594
+ code: ERROR_CODES.UNKNOWN_ERROR,
1595
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1596
+ category: ERROR_CATEGORY.Unknown,
1597
+ userMessage: "errors.unknown",
1598
+ severity: ERROR_SEVERITY.Medium,
1599
+ retryable: false
1600
+ },
1601
+ // ===== Notification Package Error Definitions =====
1602
+ // Provider errors (retryable)
1603
+ [ERROR_CODES.NOTIFICATION_PROVIDER_SEND_FAILED]: {
1604
+ code: ERROR_CODES.NOTIFICATION_PROVIDER_SEND_FAILED,
1605
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1606
+ category: ERROR_CATEGORY.Provider,
1607
+ severity: ERROR_SEVERITY.High,
1608
+ retryable: true,
1609
+ userMessage: "errors.notification.provider.send_failed"
1610
+ },
1611
+ [ERROR_CODES.NOTIFICATION_PROVIDER_CONFIGURATION_INVALID]: {
1612
+ code: ERROR_CODES.NOTIFICATION_PROVIDER_CONFIGURATION_INVALID,
1613
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1614
+ category: ERROR_CATEGORY.Configuration,
1615
+ severity: ERROR_SEVERITY.Critical,
1616
+ retryable: false,
1617
+ userMessage: "errors.notification.provider.configuration_invalid"
1618
+ },
1619
+ [ERROR_CODES.NOTIFICATION_PROVIDER_RATE_LIMIT]: {
1620
+ code: ERROR_CODES.NOTIFICATION_PROVIDER_RATE_LIMIT,
1621
+ status: HTTP_STATUS.TOO_MANY_REQUESTS,
1622
+ category: ERROR_CATEGORY.RateLimit,
1623
+ severity: ERROR_SEVERITY.Medium,
1624
+ retryable: true,
1625
+ userMessage: "errors.notification.provider.rate_limit"
1626
+ },
1627
+ [ERROR_CODES.NOTIFICATION_PROVIDER_AUTH_FAILED]: {
1628
+ code: ERROR_CODES.NOTIFICATION_PROVIDER_AUTH_FAILED,
1629
+ status: HTTP_STATUS.UNAUTHORIZED,
1630
+ category: ERROR_CATEGORY.Provider,
1631
+ severity: ERROR_SEVERITY.Critical,
1632
+ retryable: false,
1633
+ userMessage: "errors.notification.provider.auth_failed"
1634
+ },
1635
+ [ERROR_CODES.NOTIFICATION_PROVIDER_TIMEOUT]: {
1636
+ code: ERROR_CODES.NOTIFICATION_PROVIDER_TIMEOUT,
1637
+ status: HTTP_STATUS.GATEWAY_TIMEOUT,
1638
+ category: ERROR_CATEGORY.Network,
1639
+ severity: ERROR_SEVERITY.Medium,
1640
+ retryable: true,
1641
+ userMessage: "errors.notification.provider.timeout"
1642
+ },
1643
+ [ERROR_CODES.NOTIFICATION_PROVIDER_UNAVAILABLE]: {
1644
+ code: ERROR_CODES.NOTIFICATION_PROVIDER_UNAVAILABLE,
1645
+ status: HTTP_STATUS.SERVICE_UNAVAILABLE,
1646
+ category: ERROR_CATEGORY.Provider,
1647
+ severity: ERROR_SEVERITY.High,
1648
+ retryable: true,
1649
+ userMessage: "errors.notification.provider.unavailable"
1650
+ },
1651
+ [ERROR_CODES.NOTIFICATION_PROVIDER_FEATURE_NOT_SUPPORTED]: {
1652
+ code: ERROR_CODES.NOTIFICATION_PROVIDER_FEATURE_NOT_SUPPORTED,
1653
+ status: HTTP_STATUS.NOT_IMPLEMENTED,
1654
+ category: ERROR_CATEGORY.Provider,
1655
+ severity: ERROR_SEVERITY.Low,
1656
+ retryable: false,
1657
+ userMessage: "errors.notification.provider.feature_not_supported"
1658
+ },
1659
+ [ERROR_CODES.NOTIFICATION_ALL_PROVIDERS_FAILED]: {
1660
+ code: ERROR_CODES.NOTIFICATION_ALL_PROVIDERS_FAILED,
1661
+ status: HTTP_STATUS.SERVICE_UNAVAILABLE,
1662
+ category: ERROR_CATEGORY.Provider,
1663
+ severity: ERROR_SEVERITY.Critical,
1664
+ retryable: false,
1665
+ userMessage: "errors.notification.all_providers_failed"
1666
+ },
1667
+ // Validation errors (non-retryable)
1668
+ [ERROR_CODES.NOTIFICATION_INVALID_INPUT]: {
1669
+ code: ERROR_CODES.NOTIFICATION_INVALID_INPUT,
1670
+ status: HTTP_STATUS.BAD_REQUEST,
1671
+ category: ERROR_CATEGORY.Validation,
1672
+ severity: ERROR_SEVERITY.Medium,
1673
+ retryable: false,
1674
+ userMessage: "errors.notification.validation.invalid_input"
1675
+ },
1676
+ [ERROR_CODES.NOTIFICATION_INVALID_RECIPIENT]: {
1677
+ code: ERROR_CODES.NOTIFICATION_INVALID_RECIPIENT,
1678
+ status: HTTP_STATUS.BAD_REQUEST,
1679
+ category: ERROR_CATEGORY.Validation,
1680
+ severity: ERROR_SEVERITY.Medium,
1681
+ retryable: false,
1682
+ userMessage: "errors.notification.validation.invalid_recipient"
1683
+ },
1684
+ [ERROR_CODES.NOTIFICATION_INVALID_TEMPLATE]: {
1685
+ code: ERROR_CODES.NOTIFICATION_INVALID_TEMPLATE,
1686
+ status: HTTP_STATUS.BAD_REQUEST,
1687
+ category: ERROR_CATEGORY.Template,
1688
+ severity: ERROR_SEVERITY.Medium,
1689
+ retryable: false,
1690
+ userMessage: "errors.notification.validation.invalid_template"
1691
+ },
1692
+ [ERROR_CODES.NOTIFICATION_INVALID_PAYLOAD]: {
1693
+ code: ERROR_CODES.NOTIFICATION_INVALID_PAYLOAD,
1694
+ status: HTTP_STATUS.BAD_REQUEST,
1695
+ category: ERROR_CATEGORY.Validation,
1696
+ severity: ERROR_SEVERITY.Medium,
1697
+ retryable: false,
1698
+ userMessage: "errors.notification.validation.invalid_payload"
1699
+ },
1700
+ [ERROR_CODES.NOTIFICATION_MISSING_REQUIRED_FIELD]: {
1701
+ code: ERROR_CODES.NOTIFICATION_MISSING_REQUIRED_FIELD,
1702
+ status: HTTP_STATUS.BAD_REQUEST,
1703
+ category: ERROR_CATEGORY.Validation,
1704
+ severity: ERROR_SEVERITY.Medium,
1705
+ retryable: false,
1706
+ userMessage: "errors.notification.validation.required_field_missing"
1707
+ },
1708
+ [ERROR_CODES.NOTIFICATION_VALIDATION_FAILED]: {
1709
+ code: ERROR_CODES.NOTIFICATION_VALIDATION_FAILED,
1710
+ status: HTTP_STATUS.BAD_REQUEST,
1711
+ category: ERROR_CATEGORY.Validation,
1712
+ severity: ERROR_SEVERITY.Medium,
1713
+ retryable: false,
1714
+ userMessage: "errors.notification.validation.failed"
1715
+ },
1716
+ // User Preferences
1717
+ [ERROR_CODES.NOTIFICATION_USER_OPTED_OUT]: {
1718
+ code: ERROR_CODES.NOTIFICATION_USER_OPTED_OUT,
1719
+ status: HTTP_STATUS.OK,
1720
+ category: ERROR_CATEGORY.Validation,
1721
+ severity: ERROR_SEVERITY.Low,
1722
+ retryable: false,
1723
+ userMessage: "errors.notification.user.opted_out"
1724
+ },
1725
+ // Queue errors (retryable)
1726
+ [ERROR_CODES.NOTIFICATION_QUEUE_FULL]: {
1727
+ code: ERROR_CODES.NOTIFICATION_QUEUE_FULL,
1728
+ status: HTTP_STATUS.SERVICE_UNAVAILABLE,
1729
+ category: ERROR_CATEGORY.Queue,
1730
+ severity: ERROR_SEVERITY.High,
1731
+ retryable: true,
1732
+ userMessage: "errors.notification.queue.full"
1733
+ },
1734
+ [ERROR_CODES.NOTIFICATION_QUEUE_PROCESSING_FAILED]: {
1735
+ code: ERROR_CODES.NOTIFICATION_QUEUE_PROCESSING_FAILED,
1736
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1737
+ category: ERROR_CATEGORY.Queue,
1738
+ severity: ERROR_SEVERITY.High,
1739
+ retryable: true,
1740
+ userMessage: "errors.notification.queue.processing_failed"
1741
+ },
1742
+ // Webhook errors
1743
+ [ERROR_CODES.NOTIFICATION_WEBHOOK_SIGNATURE_INVALID]: {
1744
+ code: ERROR_CODES.NOTIFICATION_WEBHOOK_SIGNATURE_INVALID,
1745
+ status: HTTP_STATUS.UNAUTHORIZED,
1746
+ category: ERROR_CATEGORY.Webhook,
1747
+ severity: ERROR_SEVERITY.High,
1748
+ retryable: false,
1749
+ userMessage: "errors.notification.webhook.signature_invalid"
1750
+ },
1751
+ [ERROR_CODES.NOTIFICATION_WEBHOOK_VALIDATION_FAILED]: {
1752
+ code: ERROR_CODES.NOTIFICATION_WEBHOOK_VALIDATION_FAILED,
1753
+ status: HTTP_STATUS.BAD_REQUEST,
1754
+ category: ERROR_CATEGORY.Webhook,
1755
+ severity: ERROR_SEVERITY.Medium,
1756
+ retryable: false,
1757
+ userMessage: "errors.notification.webhook.validation_failed"
1758
+ },
1759
+ [ERROR_CODES.NOTIFICATION_WEBHOOK_PROCESSING_FAILED]: {
1760
+ code: ERROR_CODES.NOTIFICATION_WEBHOOK_PROCESSING_FAILED,
1761
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1762
+ category: ERROR_CATEGORY.Webhook,
1763
+ severity: ERROR_SEVERITY.High,
1764
+ retryable: true,
1765
+ userMessage: "errors.notification.webhook.processing_failed"
1766
+ },
1767
+ // Template errors
1768
+ [ERROR_CODES.NOTIFICATION_TEMPLATE_NOT_FOUND]: {
1769
+ code: ERROR_CODES.NOTIFICATION_TEMPLATE_NOT_FOUND,
1770
+ status: HTTP_STATUS.NOT_FOUND,
1771
+ category: ERROR_CATEGORY.Template,
1772
+ severity: ERROR_SEVERITY.High,
1773
+ retryable: false,
1774
+ userMessage: "errors.notification.template.not_found"
1775
+ },
1776
+ [ERROR_CODES.NOTIFICATION_TEMPLATE_RENDER_FAILED]: {
1777
+ code: ERROR_CODES.NOTIFICATION_TEMPLATE_RENDER_FAILED,
1778
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1779
+ category: ERROR_CATEGORY.Template,
1780
+ severity: ERROR_SEVERITY.High,
1781
+ retryable: false,
1782
+ userMessage: "errors.notification.template.render_failed"
1783
+ },
1784
+ // General notification errors
1785
+ [ERROR_CODES.NOTIFICATION_UNKNOWN_ERROR]: {
1786
+ code: ERROR_CODES.NOTIFICATION_UNKNOWN_ERROR,
1787
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1788
+ category: ERROR_CATEGORY.Unknown,
1789
+ severity: ERROR_SEVERITY.Medium,
1790
+ retryable: false,
1791
+ userMessage: "errors.notification.unknown"
1792
+ },
1793
+ [ERROR_CODES.NOTIFICATION_INITIALIZATION_FAILED]: {
1794
+ code: ERROR_CODES.NOTIFICATION_INITIALIZATION_FAILED,
1795
+ status: HTTP_STATUS.INTERNAL_SERVER_ERROR,
1796
+ category: ERROR_CATEGORY.Configuration,
1797
+ severity: ERROR_SEVERITY.Critical,
1798
+ retryable: false,
1799
+ userMessage: "errors.notification.initialization_failed"
1800
+ }
1801
+ };
1802
+
1803
+ export { ALERT_SEVERITIES, ALERT_TYPES, ALL_EVENTS, API_ERROR_CODES, CACHE_DURATION_MS, CACHE_EVENTS, CHANGE_TYPES, CLIENT_EVENTS, CLIENT_HINT_HEADERS, COMMON_FIELDS, COMMON_OPERATIONS, COMMON_STORAGE_TYPES, CONFIG_EVENTS, COORDINATES, CORRELATION_TYPE, DATA_SAVER_PRESETS, DEBUGGER_CONFIG_SOURCES, DEBUG_EVENTS, DEFAULT_THRESHOLDS, ERROR_CATEGORY, ERROR_DEFINITIONS, ERROR_EVENTS, COMMON_FIELDS as ERROR_FIELDS, EVENTS_CONFIG_SOURCES, EVENT_CONSTANTS, EVENT_NAMESPACES, EVENT_OPERATIONS, EVENT_PRIORITY_MAP, EVENT_SCOPES, EVENT_SCOPES_WITH_TEMPORARY, FACTORY_OPERATIONS, HANDLER_SCOPES, HEADER_EVENTS, HEADER_STAGES, HISTORY_TYPES, IMPACT_LEVELS, INTERNAL_STATUS_CODES, NETWORK_CONFIDENCE_LEVELS, NETWORK_EVENTS, NETWORK_QUALITY, NetworkPresetNames, COMMON_OPERATIONS as OPERATIONS, INTERNAL_STATUS_CODES as PACKAGE_STATUS_CODES, PERFORMANCE_EVENTS, PRIORITY_LEVEL, PUB_SUB_EVENT, QUEUE_OPERATIONS, REGIONAL_CONFIDENCE_LEVELS, REGION_STORAGE_KEY, REGION_TO_PRESET, RTT_THRESHOLDS, SPEED_THRESHOLDS, COMMON_STORAGE_TYPES as STORAGE_TYPES, TRACKING_PHASES, UNIFIED_OPERATIONS, UPDATE_STRATEGIES, VALIDATION_RANGES, isValidConfigSource, isValidHistoryType, isValidOperation };
1042
1804
  //# sourceMappingURL=index.js.map
1043
1805
  //# sourceMappingURL=index.js.map