@adaptic/backend-legacy 0.0.953 → 0.0.954

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 (262) hide show
  1. package/ABTest.cjs +207 -36
  2. package/Account.cjs +207 -36
  3. package/AccountDecisionRecord.cjs +207 -36
  4. package/AccountLinkingRequest.cjs +207 -36
  5. package/Action.cjs +207 -36
  6. package/Alert.cjs +207 -36
  7. package/Allocation.cjs +207 -36
  8. package/AlpacaAccount.cjs +207 -36
  9. package/AnalyticsConfiguration.cjs +207 -36
  10. package/AnalyticsSnapshot.cjs +207 -36
  11. package/Asset.cjs +207 -36
  12. package/AuditLog.cjs +207 -36
  13. package/Authenticator.cjs +207 -36
  14. package/Configuration.cjs +207 -36
  15. package/ConflictEvent.cjs +207 -36
  16. package/ConnectionHealthSnapshot.cjs +207 -36
  17. package/Customer.cjs +207 -36
  18. package/DeadLetterMessage.cjs +207 -36
  19. package/DecisionMemorySummary.cjs +207 -36
  20. package/EconomicEvent.cjs +207 -36
  21. package/EquityBar.cjs +207 -36
  22. package/Event.cjs +207 -36
  23. package/EventSnapshot.cjs +207 -36
  24. package/FeatureImportanceAnalysis.cjs +207 -36
  25. package/InstitutionalFlowSignal.cjs +207 -36
  26. package/InstitutionalHolding.cjs +207 -36
  27. package/InstitutionalSentimentAlerts.cjs +207 -36
  28. package/InstitutionalSentimentErrors.cjs +207 -36
  29. package/InstitutionalSentimentHistory.cjs +207 -36
  30. package/InstitutionalSentimentMetrics.cjs +207 -36
  31. package/InviteToken.cjs +207 -36
  32. package/LinkedProvider.cjs +207 -36
  33. package/LlmConfiguration.cjs +207 -36
  34. package/MLModelVersion.cjs +207 -36
  35. package/MLTrainingData.cjs +207 -36
  36. package/MarketSentiment.cjs +207 -36
  37. package/ModelArtifact.cjs +207 -36
  38. package/ModelVersion.cjs +207 -36
  39. package/ModelVersionArtifact.cjs +207 -36
  40. package/NewsArticle.cjs +207 -36
  41. package/NewsArticleAssetSentiment.cjs +207 -36
  42. package/OptionsContract.cjs +207 -36
  43. package/OptionsGreeksHistory.cjs +207 -36
  44. package/OptionsPosition.cjs +207 -36
  45. package/OptionsPositionEvent.cjs +207 -36
  46. package/OptionsTradeExecution.cjs +207 -36
  47. package/PolicyOverlay.cjs +207 -36
  48. package/PortfolioGreeksHistory.cjs +207 -36
  49. package/ScheduledOptionOrder.cjs +207 -36
  50. package/Session.cjs +207 -36
  51. package/SignalGeneratorMetrics.cjs +207 -36
  52. package/SignalLineage.cjs +207 -36
  53. package/SignalOutcome.cjs +207 -36
  54. package/SignalPriorityQueue.cjs +207 -36
  55. package/SyncEvent.cjs +207 -36
  56. package/SystemAlert.cjs +207 -36
  57. package/Trade.cjs +207 -36
  58. package/TradeAuditEvent.cjs +207 -36
  59. package/TradeExecutionHistory.cjs +207 -36
  60. package/TradeOutcome.cjs +207 -36
  61. package/TradingPolicy.cjs +207 -36
  62. package/User.cjs +207 -36
  63. package/VerificationToken.cjs +207 -36
  64. package/WaitlistEntry.cjs +207 -36
  65. package/client.cjs +2 -0
  66. package/esm/ABTest.d.ts.map +1 -1
  67. package/esm/ABTest.js.map +1 -1
  68. package/esm/ABTest.mjs +189 -18
  69. package/esm/Account.d.ts.map +1 -1
  70. package/esm/Account.js.map +1 -1
  71. package/esm/Account.mjs +189 -18
  72. package/esm/AccountDecisionRecord.d.ts.map +1 -1
  73. package/esm/AccountDecisionRecord.js.map +1 -1
  74. package/esm/AccountDecisionRecord.mjs +189 -18
  75. package/esm/AccountLinkingRequest.d.ts.map +1 -1
  76. package/esm/AccountLinkingRequest.js.map +1 -1
  77. package/esm/AccountLinkingRequest.mjs +189 -18
  78. package/esm/Action.d.ts.map +1 -1
  79. package/esm/Action.js.map +1 -1
  80. package/esm/Action.mjs +189 -18
  81. package/esm/Alert.d.ts.map +1 -1
  82. package/esm/Alert.js.map +1 -1
  83. package/esm/Alert.mjs +189 -18
  84. package/esm/Allocation.d.ts.map +1 -1
  85. package/esm/Allocation.js.map +1 -1
  86. package/esm/Allocation.mjs +189 -18
  87. package/esm/AlpacaAccount.d.ts.map +1 -1
  88. package/esm/AlpacaAccount.js.map +1 -1
  89. package/esm/AlpacaAccount.mjs +189 -18
  90. package/esm/AnalyticsConfiguration.d.ts.map +1 -1
  91. package/esm/AnalyticsConfiguration.js.map +1 -1
  92. package/esm/AnalyticsConfiguration.mjs +189 -18
  93. package/esm/AnalyticsSnapshot.d.ts.map +1 -1
  94. package/esm/AnalyticsSnapshot.js.map +1 -1
  95. package/esm/AnalyticsSnapshot.mjs +189 -18
  96. package/esm/Asset.d.ts.map +1 -1
  97. package/esm/Asset.js.map +1 -1
  98. package/esm/Asset.mjs +189 -18
  99. package/esm/AuditLog.d.ts.map +1 -1
  100. package/esm/AuditLog.js.map +1 -1
  101. package/esm/AuditLog.mjs +189 -18
  102. package/esm/Authenticator.d.ts.map +1 -1
  103. package/esm/Authenticator.js.map +1 -1
  104. package/esm/Authenticator.mjs +189 -18
  105. package/esm/Configuration.d.ts.map +1 -1
  106. package/esm/Configuration.js.map +1 -1
  107. package/esm/Configuration.mjs +189 -18
  108. package/esm/ConflictEvent.d.ts.map +1 -1
  109. package/esm/ConflictEvent.js.map +1 -1
  110. package/esm/ConflictEvent.mjs +189 -18
  111. package/esm/ConnectionHealthSnapshot.d.ts.map +1 -1
  112. package/esm/ConnectionHealthSnapshot.js.map +1 -1
  113. package/esm/ConnectionHealthSnapshot.mjs +189 -18
  114. package/esm/Customer.d.ts.map +1 -1
  115. package/esm/Customer.js.map +1 -1
  116. package/esm/Customer.mjs +189 -18
  117. package/esm/DeadLetterMessage.d.ts.map +1 -1
  118. package/esm/DeadLetterMessage.js.map +1 -1
  119. package/esm/DeadLetterMessage.mjs +189 -18
  120. package/esm/DecisionMemorySummary.d.ts.map +1 -1
  121. package/esm/DecisionMemorySummary.js.map +1 -1
  122. package/esm/DecisionMemorySummary.mjs +189 -18
  123. package/esm/EconomicEvent.d.ts.map +1 -1
  124. package/esm/EconomicEvent.js.map +1 -1
  125. package/esm/EconomicEvent.mjs +189 -18
  126. package/esm/EquityBar.d.ts.map +1 -1
  127. package/esm/EquityBar.js.map +1 -1
  128. package/esm/EquityBar.mjs +189 -18
  129. package/esm/Event.d.ts.map +1 -1
  130. package/esm/Event.js.map +1 -1
  131. package/esm/Event.mjs +189 -18
  132. package/esm/EventSnapshot.d.ts.map +1 -1
  133. package/esm/EventSnapshot.js.map +1 -1
  134. package/esm/EventSnapshot.mjs +189 -18
  135. package/esm/FeatureImportanceAnalysis.d.ts.map +1 -1
  136. package/esm/FeatureImportanceAnalysis.js.map +1 -1
  137. package/esm/FeatureImportanceAnalysis.mjs +189 -18
  138. package/esm/InstitutionalFlowSignal.d.ts.map +1 -1
  139. package/esm/InstitutionalFlowSignal.js.map +1 -1
  140. package/esm/InstitutionalFlowSignal.mjs +189 -18
  141. package/esm/InstitutionalHolding.d.ts.map +1 -1
  142. package/esm/InstitutionalHolding.js.map +1 -1
  143. package/esm/InstitutionalHolding.mjs +189 -18
  144. package/esm/InstitutionalSentimentAlerts.d.ts.map +1 -1
  145. package/esm/InstitutionalSentimentAlerts.js.map +1 -1
  146. package/esm/InstitutionalSentimentAlerts.mjs +189 -18
  147. package/esm/InstitutionalSentimentErrors.d.ts.map +1 -1
  148. package/esm/InstitutionalSentimentErrors.js.map +1 -1
  149. package/esm/InstitutionalSentimentErrors.mjs +189 -18
  150. package/esm/InstitutionalSentimentHistory.d.ts.map +1 -1
  151. package/esm/InstitutionalSentimentHistory.js.map +1 -1
  152. package/esm/InstitutionalSentimentHistory.mjs +189 -18
  153. package/esm/InstitutionalSentimentMetrics.d.ts.map +1 -1
  154. package/esm/InstitutionalSentimentMetrics.js.map +1 -1
  155. package/esm/InstitutionalSentimentMetrics.mjs +189 -18
  156. package/esm/InviteToken.d.ts.map +1 -1
  157. package/esm/InviteToken.js.map +1 -1
  158. package/esm/InviteToken.mjs +189 -18
  159. package/esm/LinkedProvider.d.ts.map +1 -1
  160. package/esm/LinkedProvider.js.map +1 -1
  161. package/esm/LinkedProvider.mjs +189 -18
  162. package/esm/LlmConfiguration.d.ts.map +1 -1
  163. package/esm/LlmConfiguration.js.map +1 -1
  164. package/esm/LlmConfiguration.mjs +189 -18
  165. package/esm/MLModelVersion.d.ts.map +1 -1
  166. package/esm/MLModelVersion.js.map +1 -1
  167. package/esm/MLModelVersion.mjs +189 -18
  168. package/esm/MLTrainingData.d.ts.map +1 -1
  169. package/esm/MLTrainingData.js.map +1 -1
  170. package/esm/MLTrainingData.mjs +189 -18
  171. package/esm/MarketSentiment.d.ts.map +1 -1
  172. package/esm/MarketSentiment.js.map +1 -1
  173. package/esm/MarketSentiment.mjs +189 -18
  174. package/esm/ModelArtifact.d.ts.map +1 -1
  175. package/esm/ModelArtifact.js.map +1 -1
  176. package/esm/ModelArtifact.mjs +189 -18
  177. package/esm/ModelVersion.d.ts.map +1 -1
  178. package/esm/ModelVersion.js.map +1 -1
  179. package/esm/ModelVersion.mjs +189 -18
  180. package/esm/ModelVersionArtifact.d.ts.map +1 -1
  181. package/esm/ModelVersionArtifact.js.map +1 -1
  182. package/esm/ModelVersionArtifact.mjs +189 -18
  183. package/esm/NewsArticle.d.ts.map +1 -1
  184. package/esm/NewsArticle.js.map +1 -1
  185. package/esm/NewsArticle.mjs +189 -18
  186. package/esm/NewsArticleAssetSentiment.d.ts.map +1 -1
  187. package/esm/NewsArticleAssetSentiment.js.map +1 -1
  188. package/esm/NewsArticleAssetSentiment.mjs +189 -18
  189. package/esm/OptionsContract.d.ts.map +1 -1
  190. package/esm/OptionsContract.js.map +1 -1
  191. package/esm/OptionsContract.mjs +189 -18
  192. package/esm/OptionsGreeksHistory.d.ts.map +1 -1
  193. package/esm/OptionsGreeksHistory.js.map +1 -1
  194. package/esm/OptionsGreeksHistory.mjs +189 -18
  195. package/esm/OptionsPosition.d.ts.map +1 -1
  196. package/esm/OptionsPosition.js.map +1 -1
  197. package/esm/OptionsPosition.mjs +189 -18
  198. package/esm/OptionsPositionEvent.d.ts.map +1 -1
  199. package/esm/OptionsPositionEvent.js.map +1 -1
  200. package/esm/OptionsPositionEvent.mjs +189 -18
  201. package/esm/OptionsTradeExecution.d.ts.map +1 -1
  202. package/esm/OptionsTradeExecution.js.map +1 -1
  203. package/esm/OptionsTradeExecution.mjs +189 -18
  204. package/esm/PolicyOverlay.d.ts.map +1 -1
  205. package/esm/PolicyOverlay.js.map +1 -1
  206. package/esm/PolicyOverlay.mjs +189 -18
  207. package/esm/PortfolioGreeksHistory.d.ts.map +1 -1
  208. package/esm/PortfolioGreeksHistory.js.map +1 -1
  209. package/esm/PortfolioGreeksHistory.mjs +189 -18
  210. package/esm/ScheduledOptionOrder.d.ts.map +1 -1
  211. package/esm/ScheduledOptionOrder.js.map +1 -1
  212. package/esm/ScheduledOptionOrder.mjs +189 -18
  213. package/esm/Session.d.ts.map +1 -1
  214. package/esm/Session.js.map +1 -1
  215. package/esm/Session.mjs +189 -18
  216. package/esm/SignalGeneratorMetrics.d.ts.map +1 -1
  217. package/esm/SignalGeneratorMetrics.js.map +1 -1
  218. package/esm/SignalGeneratorMetrics.mjs +189 -18
  219. package/esm/SignalLineage.d.ts.map +1 -1
  220. package/esm/SignalLineage.js.map +1 -1
  221. package/esm/SignalLineage.mjs +189 -18
  222. package/esm/SignalOutcome.d.ts.map +1 -1
  223. package/esm/SignalOutcome.js.map +1 -1
  224. package/esm/SignalOutcome.mjs +189 -18
  225. package/esm/SignalPriorityQueue.d.ts.map +1 -1
  226. package/esm/SignalPriorityQueue.js.map +1 -1
  227. package/esm/SignalPriorityQueue.mjs +189 -18
  228. package/esm/SyncEvent.d.ts.map +1 -1
  229. package/esm/SyncEvent.js.map +1 -1
  230. package/esm/SyncEvent.mjs +189 -18
  231. package/esm/SystemAlert.d.ts.map +1 -1
  232. package/esm/SystemAlert.js.map +1 -1
  233. package/esm/SystemAlert.mjs +189 -18
  234. package/esm/Trade.d.ts.map +1 -1
  235. package/esm/Trade.js.map +1 -1
  236. package/esm/Trade.mjs +189 -18
  237. package/esm/TradeAuditEvent.d.ts.map +1 -1
  238. package/esm/TradeAuditEvent.js.map +1 -1
  239. package/esm/TradeAuditEvent.mjs +189 -18
  240. package/esm/TradeExecutionHistory.d.ts.map +1 -1
  241. package/esm/TradeExecutionHistory.js.map +1 -1
  242. package/esm/TradeExecutionHistory.mjs +189 -18
  243. package/esm/TradeOutcome.d.ts.map +1 -1
  244. package/esm/TradeOutcome.js.map +1 -1
  245. package/esm/TradeOutcome.mjs +189 -18
  246. package/esm/TradingPolicy.d.ts.map +1 -1
  247. package/esm/TradingPolicy.js.map +1 -1
  248. package/esm/TradingPolicy.mjs +189 -18
  249. package/esm/User.d.ts.map +1 -1
  250. package/esm/User.js.map +1 -1
  251. package/esm/User.mjs +189 -18
  252. package/esm/VerificationToken.d.ts.map +1 -1
  253. package/esm/VerificationToken.js.map +1 -1
  254. package/esm/VerificationToken.mjs +189 -18
  255. package/esm/WaitlistEntry.d.ts.map +1 -1
  256. package/esm/WaitlistEntry.js.map +1 -1
  257. package/esm/WaitlistEntry.mjs +189 -18
  258. package/esm/client.d.ts.map +1 -1
  259. package/esm/client.js.map +1 -1
  260. package/esm/client.mjs +2 -0
  261. package/esm/index.d.ts.map +1 -1
  262. package/package.json +1 -1
@@ -100,12 +100,31 @@ export const EventSnapshot = {
100
100
  });
101
101
  throw error;
102
102
  }
103
- // Check if this is a database connection error that we should retry
103
+ // Check if this is a database connection error that we should retry.
104
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
105
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
106
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
104
107
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
105
108
  error.message?.includes('Cannot reach database server') ||
106
109
  error.message?.includes('Connection timed out') ||
110
+ error.message?.includes('aborted due to timeout') ||
111
+ error.message?.includes('TimeoutError') ||
112
+ error.message?.includes('fetch failed') ||
113
+ error.message?.includes('socket hang up') ||
114
+ error.message?.includes('ECONNRESET') ||
115
+ error.message?.includes('ECONNREFUSED') ||
116
+ error.message?.includes('ETIMEDOUT') ||
117
+ error.message?.includes('Connection pool timeout') ||
118
+ error.message?.includes('P2024') ||
119
+ error.message?.includes('status code 408') ||
120
+ error.message?.includes('status code 502') ||
121
+ error.message?.includes('status code 503') ||
122
+ error.message?.includes('status code 504') ||
107
123
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
108
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
124
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
125
+ error.networkError.message?.includes('fetch failed') ||
126
+ error.networkError.message?.includes('aborted due to timeout') ||
127
+ error.networkError.message?.includes('TimeoutError')));
109
128
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
110
129
  retryCount++;
111
130
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -208,12 +227,31 @@ export const EventSnapshot = {
208
227
  });
209
228
  throw error;
210
229
  }
211
- // Check if this is a database connection error that we should retry
230
+ // Check if this is a database connection error that we should retry.
231
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
232
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
233
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
212
234
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
213
235
  error.message?.includes('Cannot reach database server') ||
214
236
  error.message?.includes('Connection timed out') ||
237
+ error.message?.includes('aborted due to timeout') ||
238
+ error.message?.includes('TimeoutError') ||
239
+ error.message?.includes('fetch failed') ||
240
+ error.message?.includes('socket hang up') ||
241
+ error.message?.includes('ECONNRESET') ||
242
+ error.message?.includes('ECONNREFUSED') ||
243
+ error.message?.includes('ETIMEDOUT') ||
244
+ error.message?.includes('Connection pool timeout') ||
245
+ error.message?.includes('P2024') ||
246
+ error.message?.includes('status code 408') ||
247
+ error.message?.includes('status code 502') ||
248
+ error.message?.includes('status code 503') ||
249
+ error.message?.includes('status code 504') ||
215
250
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
216
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
251
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
252
+ error.networkError.message?.includes('fetch failed') ||
253
+ error.networkError.message?.includes('aborted due to timeout') ||
254
+ error.networkError.message?.includes('TimeoutError')));
217
255
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
218
256
  retryCount++;
219
257
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -336,12 +374,31 @@ export const EventSnapshot = {
336
374
  });
337
375
  throw error;
338
376
  }
339
- // Check if this is a database connection error that we should retry
377
+ // Check if this is a database connection error that we should retry.
378
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
379
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
380
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
340
381
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
341
382
  error.message?.includes('Cannot reach database server') ||
342
383
  error.message?.includes('Connection timed out') ||
384
+ error.message?.includes('aborted due to timeout') ||
385
+ error.message?.includes('TimeoutError') ||
386
+ error.message?.includes('fetch failed') ||
387
+ error.message?.includes('socket hang up') ||
388
+ error.message?.includes('ECONNRESET') ||
389
+ error.message?.includes('ECONNREFUSED') ||
390
+ error.message?.includes('ETIMEDOUT') ||
391
+ error.message?.includes('Connection pool timeout') ||
392
+ error.message?.includes('P2024') ||
393
+ error.message?.includes('status code 408') ||
394
+ error.message?.includes('status code 502') ||
395
+ error.message?.includes('status code 503') ||
396
+ error.message?.includes('status code 504') ||
343
397
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
344
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
398
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
399
+ error.networkError.message?.includes('fetch failed') ||
400
+ error.networkError.message?.includes('aborted due to timeout') ||
401
+ error.networkError.message?.includes('TimeoutError')));
345
402
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
346
403
  retryCount++;
347
404
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -467,12 +524,31 @@ export const EventSnapshot = {
467
524
  });
468
525
  throw error;
469
526
  }
470
- // Check if this is a database connection error that we should retry
527
+ // Check if this is a database connection error that we should retry.
528
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
529
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
530
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
471
531
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
472
532
  error.message?.includes('Cannot reach database server') ||
473
533
  error.message?.includes('Connection timed out') ||
534
+ error.message?.includes('aborted due to timeout') ||
535
+ error.message?.includes('TimeoutError') ||
536
+ error.message?.includes('fetch failed') ||
537
+ error.message?.includes('socket hang up') ||
538
+ error.message?.includes('ECONNRESET') ||
539
+ error.message?.includes('ECONNREFUSED') ||
540
+ error.message?.includes('ETIMEDOUT') ||
541
+ error.message?.includes('Connection pool timeout') ||
542
+ error.message?.includes('P2024') ||
543
+ error.message?.includes('status code 408') ||
544
+ error.message?.includes('status code 502') ||
545
+ error.message?.includes('status code 503') ||
546
+ error.message?.includes('status code 504') ||
474
547
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
475
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
548
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
549
+ error.networkError.message?.includes('fetch failed') ||
550
+ error.networkError.message?.includes('aborted due to timeout') ||
551
+ error.networkError.message?.includes('TimeoutError')));
476
552
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
477
553
  retryCount++;
478
554
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -596,12 +672,31 @@ export const EventSnapshot = {
596
672
  });
597
673
  throw error;
598
674
  }
599
- // Check if this is a database connection error that we should retry
675
+ // Check if this is a database connection error that we should retry.
676
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
677
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
678
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
600
679
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
601
680
  error.message?.includes('Cannot reach database server') ||
602
681
  error.message?.includes('Connection timed out') ||
682
+ error.message?.includes('aborted due to timeout') ||
683
+ error.message?.includes('TimeoutError') ||
684
+ error.message?.includes('fetch failed') ||
685
+ error.message?.includes('socket hang up') ||
686
+ error.message?.includes('ECONNRESET') ||
687
+ error.message?.includes('ECONNREFUSED') ||
688
+ error.message?.includes('ETIMEDOUT') ||
689
+ error.message?.includes('Connection pool timeout') ||
690
+ error.message?.includes('P2024') ||
691
+ error.message?.includes('status code 408') ||
692
+ error.message?.includes('status code 502') ||
693
+ error.message?.includes('status code 503') ||
694
+ error.message?.includes('status code 504') ||
603
695
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
604
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
696
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
697
+ error.networkError.message?.includes('fetch failed') ||
698
+ error.networkError.message?.includes('aborted due to timeout') ||
699
+ error.networkError.message?.includes('TimeoutError')));
605
700
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
606
701
  retryCount++;
607
702
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -703,12 +798,31 @@ export const EventSnapshot = {
703
798
  });
704
799
  throw error;
705
800
  }
706
- // Check if this is a database connection error that we should retry
801
+ // Check if this is a database connection error that we should retry.
802
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
803
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
804
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
707
805
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
708
806
  error.message?.includes('Cannot reach database server') ||
709
807
  error.message?.includes('Connection timed out') ||
808
+ error.message?.includes('aborted due to timeout') ||
809
+ error.message?.includes('TimeoutError') ||
810
+ error.message?.includes('fetch failed') ||
811
+ error.message?.includes('socket hang up') ||
812
+ error.message?.includes('ECONNRESET') ||
813
+ error.message?.includes('ECONNREFUSED') ||
814
+ error.message?.includes('ETIMEDOUT') ||
815
+ error.message?.includes('Connection pool timeout') ||
816
+ error.message?.includes('P2024') ||
817
+ error.message?.includes('status code 408') ||
818
+ error.message?.includes('status code 502') ||
819
+ error.message?.includes('status code 503') ||
820
+ error.message?.includes('status code 504') ||
710
821
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
711
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
822
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
823
+ error.networkError.message?.includes('fetch failed') ||
824
+ error.networkError.message?.includes('aborted due to timeout') ||
825
+ error.networkError.message?.includes('TimeoutError')));
712
826
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
713
827
  retryCount++;
714
828
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -789,12 +903,31 @@ export const EventSnapshot = {
789
903
  if (error.message === 'No EventSnapshot found') {
790
904
  return null;
791
905
  }
792
- // Check if this is a database connection error that we should retry
906
+ // Check if this is a database connection error that we should retry.
907
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
908
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
909
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
793
910
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
794
911
  error.message?.includes('Cannot reach database server') ||
795
912
  error.message?.includes('Connection timed out') ||
913
+ error.message?.includes('aborted due to timeout') ||
914
+ error.message?.includes('TimeoutError') ||
915
+ error.message?.includes('fetch failed') ||
916
+ error.message?.includes('socket hang up') ||
917
+ error.message?.includes('ECONNRESET') ||
918
+ error.message?.includes('ECONNREFUSED') ||
919
+ error.message?.includes('ETIMEDOUT') ||
920
+ error.message?.includes('Connection pool timeout') ||
921
+ error.message?.includes('P2024') ||
922
+ error.message?.includes('status code 408') ||
923
+ error.message?.includes('status code 502') ||
924
+ error.message?.includes('status code 503') ||
925
+ error.message?.includes('status code 504') ||
796
926
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
797
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
927
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
928
+ error.networkError.message?.includes('fetch failed') ||
929
+ error.networkError.message?.includes('aborted due to timeout') ||
930
+ error.networkError.message?.includes('TimeoutError')));
798
931
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
799
932
  retryCount++;
800
933
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -861,12 +994,31 @@ export const EventSnapshot = {
861
994
  if (error.message === 'No EventSnapshot found') {
862
995
  return null;
863
996
  }
864
- // Check if this is a database connection error that we should retry
997
+ // Check if this is a database connection error that we should retry.
998
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
999
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1000
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
865
1001
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
866
1002
  error.message?.includes('Cannot reach database server') ||
867
1003
  error.message?.includes('Connection timed out') ||
1004
+ error.message?.includes('aborted due to timeout') ||
1005
+ error.message?.includes('TimeoutError') ||
1006
+ error.message?.includes('fetch failed') ||
1007
+ error.message?.includes('socket hang up') ||
1008
+ error.message?.includes('ECONNRESET') ||
1009
+ error.message?.includes('ECONNREFUSED') ||
1010
+ error.message?.includes('ETIMEDOUT') ||
1011
+ error.message?.includes('Connection pool timeout') ||
1012
+ error.message?.includes('P2024') ||
1013
+ error.message?.includes('status code 408') ||
1014
+ error.message?.includes('status code 502') ||
1015
+ error.message?.includes('status code 503') ||
1016
+ error.message?.includes('status code 504') ||
868
1017
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
869
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
1018
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
1019
+ error.networkError.message?.includes('fetch failed') ||
1020
+ error.networkError.message?.includes('aborted due to timeout') ||
1021
+ error.networkError.message?.includes('TimeoutError')));
870
1022
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
871
1023
  retryCount++;
872
1024
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -957,12 +1109,31 @@ export const EventSnapshot = {
957
1109
  if (error.message === 'No EventSnapshot found') {
958
1110
  return null;
959
1111
  }
960
- // Check if this is a database connection error that we should retry
1112
+ // Check if this is a database connection error that we should retry.
1113
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
1114
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1115
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
961
1116
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
962
1117
  error.message?.includes('Cannot reach database server') ||
963
1118
  error.message?.includes('Connection timed out') ||
1119
+ error.message?.includes('aborted due to timeout') ||
1120
+ error.message?.includes('TimeoutError') ||
1121
+ error.message?.includes('fetch failed') ||
1122
+ error.message?.includes('socket hang up') ||
1123
+ error.message?.includes('ECONNRESET') ||
1124
+ error.message?.includes('ECONNREFUSED') ||
1125
+ error.message?.includes('ETIMEDOUT') ||
1126
+ error.message?.includes('Connection pool timeout') ||
1127
+ error.message?.includes('P2024') ||
1128
+ error.message?.includes('status code 408') ||
1129
+ error.message?.includes('status code 502') ||
1130
+ error.message?.includes('status code 503') ||
1131
+ error.message?.includes('status code 504') ||
964
1132
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
965
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
1133
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
1134
+ error.networkError.message?.includes('fetch failed') ||
1135
+ error.networkError.message?.includes('aborted due to timeout') ||
1136
+ error.networkError.message?.includes('TimeoutError')));
966
1137
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
967
1138
  retryCount++;
968
1139
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -1 +1 @@
1
- {"version":3,"file":"FeatureImportanceAnalysis.d.ts","sourceRoot":"","sources":["../../src/FeatureImportanceAnalysis.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,IAAI,6BAA6B,EAAE,MAAM,iEAAiE,CAAC;AAC7I,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AAqGpG,eAAO,MAAM,yBAAyB;IAEpC;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,6BAA6B,CAAC;IA45BpJ;;;;;;;OAOG;sBACqB,6BAA6B,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,YAAY;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IA2H3L;;;;;;OAMG;kBACiB,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAuyGlJ;;;;;;OAMG;kBACiB,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAilIlJ;;;;;;OAMG;sBACqB,6BAA6B,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAsyGnJ;;;;;;OAMG;kBACiB,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAmHlJ;;;;;;;OAOG;eACc,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,6BAA6B,GAAG,IAAI,CAAC;IAuFxK;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,6BAA6B,EAAE,GAAG,IAAI,CAAC;IA4ErH;;;;;;;OAOG;oBACmB,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,6BAA6B,EAAE,GAAG,IAAI,CAAC;CAmGhL,CAAC"}
1
+ {"version":3,"file":"FeatureImportanceAnalysis.d.ts","sourceRoot":"","sources":["../../src/FeatureImportanceAnalysis.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,IAAI,6BAA6B,EAAE,MAAM,iEAAiE,CAAC;AAC7I,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AAqGpG,eAAO,MAAM,yBAAyB;IAEpC;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAi7BpJ;;;;;;;OAOG;sBACqB,6BAA6B,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,YAAY;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAgJ3L;;;;;;OAMG;kBACiB,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,6BAA6B,CAAC;IA4zGlJ;;;;;;OAMG;kBACiB,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAsmIlJ;;;;;;OAMG;sBACqB,6BAA6B,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IA2zGnJ;;;;;;OAMG;kBACiB,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,6BAA6B,CAAC;IAwIlJ;;;;;;;OAOG;eACc,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,6BAA6B,GAAG,IAAI,CAAC;IA4GxK;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,6BAA6B,EAAE,GAAG,IAAI,CAAC;IAiGrH;;;;;;;OAOG;oBACmB,6BAA6B,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,6BAA6B,EAAE,GAAG,IAAI,CAAC;CAwHhL,CAAC"}