@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
package/esm/Action.mjs CHANGED
@@ -160,12 +160,31 @@ export const Action = {
160
160
  });
161
161
  throw error;
162
162
  }
163
- // Check if this is a database connection error that we should retry
163
+ // Check if this is a database connection error that we should retry.
164
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
165
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
166
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
164
167
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
165
168
  error.message?.includes('Cannot reach database server') ||
166
169
  error.message?.includes('Connection timed out') ||
170
+ error.message?.includes('aborted due to timeout') ||
171
+ error.message?.includes('TimeoutError') ||
172
+ error.message?.includes('fetch failed') ||
173
+ error.message?.includes('socket hang up') ||
174
+ error.message?.includes('ECONNRESET') ||
175
+ error.message?.includes('ECONNREFUSED') ||
176
+ error.message?.includes('ETIMEDOUT') ||
177
+ error.message?.includes('Connection pool timeout') ||
178
+ error.message?.includes('P2024') ||
179
+ error.message?.includes('status code 408') ||
180
+ error.message?.includes('status code 502') ||
181
+ error.message?.includes('status code 503') ||
182
+ error.message?.includes('status code 504') ||
167
183
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
168
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
184
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
185
+ error.networkError.message?.includes('fetch failed') ||
186
+ error.networkError.message?.includes('aborted due to timeout') ||
187
+ error.networkError.message?.includes('TimeoutError')));
169
188
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
170
189
  retryCount++;
171
190
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -273,12 +292,31 @@ export const Action = {
273
292
  });
274
293
  throw error;
275
294
  }
276
- // Check if this is a database connection error that we should retry
295
+ // Check if this is a database connection error that we should retry.
296
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
297
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
298
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
277
299
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
278
300
  error.message?.includes('Cannot reach database server') ||
279
301
  error.message?.includes('Connection timed out') ||
302
+ error.message?.includes('aborted due to timeout') ||
303
+ error.message?.includes('TimeoutError') ||
304
+ error.message?.includes('fetch failed') ||
305
+ error.message?.includes('socket hang up') ||
306
+ error.message?.includes('ECONNRESET') ||
307
+ error.message?.includes('ECONNREFUSED') ||
308
+ error.message?.includes('ETIMEDOUT') ||
309
+ error.message?.includes('Connection pool timeout') ||
310
+ error.message?.includes('P2024') ||
311
+ error.message?.includes('status code 408') ||
312
+ error.message?.includes('status code 502') ||
313
+ error.message?.includes('status code 503') ||
314
+ error.message?.includes('status code 504') ||
280
315
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
281
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
316
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
317
+ error.networkError.message?.includes('fetch failed') ||
318
+ error.networkError.message?.includes('aborted due to timeout') ||
319
+ error.networkError.message?.includes('TimeoutError')));
282
320
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
283
321
  retryCount++;
284
322
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -560,12 +598,31 @@ export const Action = {
560
598
  });
561
599
  throw error;
562
600
  }
563
- // Check if this is a database connection error that we should retry
601
+ // Check if this is a database connection error that we should retry.
602
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
603
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
604
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
564
605
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
565
606
  error.message?.includes('Cannot reach database server') ||
566
607
  error.message?.includes('Connection timed out') ||
608
+ error.message?.includes('aborted due to timeout') ||
609
+ error.message?.includes('TimeoutError') ||
610
+ error.message?.includes('fetch failed') ||
611
+ error.message?.includes('socket hang up') ||
612
+ error.message?.includes('ECONNRESET') ||
613
+ error.message?.includes('ECONNREFUSED') ||
614
+ error.message?.includes('ETIMEDOUT') ||
615
+ error.message?.includes('Connection pool timeout') ||
616
+ error.message?.includes('P2024') ||
617
+ error.message?.includes('status code 408') ||
618
+ error.message?.includes('status code 502') ||
619
+ error.message?.includes('status code 503') ||
620
+ error.message?.includes('status code 504') ||
567
621
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
568
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
622
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
623
+ error.networkError.message?.includes('fetch failed') ||
624
+ error.networkError.message?.includes('aborted due to timeout') ||
625
+ error.networkError.message?.includes('TimeoutError')));
569
626
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
570
627
  retryCount++;
571
628
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -912,12 +969,31 @@ export const Action = {
912
969
  });
913
970
  throw error;
914
971
  }
915
- // Check if this is a database connection error that we should retry
972
+ // Check if this is a database connection error that we should retry.
973
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
974
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
975
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
916
976
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
917
977
  error.message?.includes('Cannot reach database server') ||
918
978
  error.message?.includes('Connection timed out') ||
979
+ error.message?.includes('aborted due to timeout') ||
980
+ error.message?.includes('TimeoutError') ||
981
+ error.message?.includes('fetch failed') ||
982
+ error.message?.includes('socket hang up') ||
983
+ error.message?.includes('ECONNRESET') ||
984
+ error.message?.includes('ECONNREFUSED') ||
985
+ error.message?.includes('ETIMEDOUT') ||
986
+ error.message?.includes('Connection pool timeout') ||
987
+ error.message?.includes('P2024') ||
988
+ error.message?.includes('status code 408') ||
989
+ error.message?.includes('status code 502') ||
990
+ error.message?.includes('status code 503') ||
991
+ error.message?.includes('status code 504') ||
919
992
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
920
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
993
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
994
+ error.networkError.message?.includes('fetch failed') ||
995
+ error.networkError.message?.includes('aborted due to timeout') ||
996
+ error.networkError.message?.includes('TimeoutError')));
921
997
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
922
998
  retryCount++;
923
999
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -1200,12 +1276,31 @@ export const Action = {
1200
1276
  });
1201
1277
  throw error;
1202
1278
  }
1203
- // Check if this is a database connection error that we should retry
1279
+ // Check if this is a database connection error that we should retry.
1280
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
1281
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1282
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
1204
1283
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
1205
1284
  error.message?.includes('Cannot reach database server') ||
1206
1285
  error.message?.includes('Connection timed out') ||
1286
+ error.message?.includes('aborted due to timeout') ||
1287
+ error.message?.includes('TimeoutError') ||
1288
+ error.message?.includes('fetch failed') ||
1289
+ error.message?.includes('socket hang up') ||
1290
+ error.message?.includes('ECONNRESET') ||
1291
+ error.message?.includes('ECONNREFUSED') ||
1292
+ error.message?.includes('ETIMEDOUT') ||
1293
+ error.message?.includes('Connection pool timeout') ||
1294
+ error.message?.includes('P2024') ||
1295
+ error.message?.includes('status code 408') ||
1296
+ error.message?.includes('status code 502') ||
1297
+ error.message?.includes('status code 503') ||
1298
+ error.message?.includes('status code 504') ||
1207
1299
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
1208
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
1300
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
1301
+ error.networkError.message?.includes('fetch failed') ||
1302
+ error.networkError.message?.includes('aborted due to timeout') ||
1303
+ error.networkError.message?.includes('TimeoutError')));
1209
1304
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
1210
1305
  retryCount++;
1211
1306
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -1307,12 +1402,31 @@ export const Action = {
1307
1402
  });
1308
1403
  throw error;
1309
1404
  }
1310
- // Check if this is a database connection error that we should retry
1405
+ // Check if this is a database connection error that we should retry.
1406
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
1407
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1408
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
1311
1409
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
1312
1410
  error.message?.includes('Cannot reach database server') ||
1313
1411
  error.message?.includes('Connection timed out') ||
1412
+ error.message?.includes('aborted due to timeout') ||
1413
+ error.message?.includes('TimeoutError') ||
1414
+ error.message?.includes('fetch failed') ||
1415
+ error.message?.includes('socket hang up') ||
1416
+ error.message?.includes('ECONNRESET') ||
1417
+ error.message?.includes('ECONNREFUSED') ||
1418
+ error.message?.includes('ETIMEDOUT') ||
1419
+ error.message?.includes('Connection pool timeout') ||
1420
+ error.message?.includes('P2024') ||
1421
+ error.message?.includes('status code 408') ||
1422
+ error.message?.includes('status code 502') ||
1423
+ error.message?.includes('status code 503') ||
1424
+ error.message?.includes('status code 504') ||
1314
1425
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
1315
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
1426
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
1427
+ error.networkError.message?.includes('fetch failed') ||
1428
+ error.networkError.message?.includes('aborted due to timeout') ||
1429
+ error.networkError.message?.includes('TimeoutError')));
1316
1430
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
1317
1431
  retryCount++;
1318
1432
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -1400,12 +1514,31 @@ export const Action = {
1400
1514
  if (error.message === 'No Action found') {
1401
1515
  return null;
1402
1516
  }
1403
- // Check if this is a database connection error that we should retry
1517
+ // Check if this is a database connection error that we should retry.
1518
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
1519
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1520
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
1404
1521
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
1405
1522
  error.message?.includes('Cannot reach database server') ||
1406
1523
  error.message?.includes('Connection timed out') ||
1524
+ error.message?.includes('aborted due to timeout') ||
1525
+ error.message?.includes('TimeoutError') ||
1526
+ error.message?.includes('fetch failed') ||
1527
+ error.message?.includes('socket hang up') ||
1528
+ error.message?.includes('ECONNRESET') ||
1529
+ error.message?.includes('ECONNREFUSED') ||
1530
+ error.message?.includes('ETIMEDOUT') ||
1531
+ error.message?.includes('Connection pool timeout') ||
1532
+ error.message?.includes('P2024') ||
1533
+ error.message?.includes('status code 408') ||
1534
+ error.message?.includes('status code 502') ||
1535
+ error.message?.includes('status code 503') ||
1536
+ error.message?.includes('status code 504') ||
1407
1537
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
1408
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
1538
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
1539
+ error.networkError.message?.includes('fetch failed') ||
1540
+ error.networkError.message?.includes('aborted due to timeout') ||
1541
+ error.networkError.message?.includes('TimeoutError')));
1409
1542
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
1410
1543
  retryCount++;
1411
1544
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -1472,12 +1605,31 @@ export const Action = {
1472
1605
  if (error.message === 'No Action found') {
1473
1606
  return null;
1474
1607
  }
1475
- // Check if this is a database connection error that we should retry
1608
+ // Check if this is a database connection error that we should retry.
1609
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
1610
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1611
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
1476
1612
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
1477
1613
  error.message?.includes('Cannot reach database server') ||
1478
1614
  error.message?.includes('Connection timed out') ||
1615
+ error.message?.includes('aborted due to timeout') ||
1616
+ error.message?.includes('TimeoutError') ||
1617
+ error.message?.includes('fetch failed') ||
1618
+ error.message?.includes('socket hang up') ||
1619
+ error.message?.includes('ECONNRESET') ||
1620
+ error.message?.includes('ECONNREFUSED') ||
1621
+ error.message?.includes('ETIMEDOUT') ||
1622
+ error.message?.includes('Connection pool timeout') ||
1623
+ error.message?.includes('P2024') ||
1624
+ error.message?.includes('status code 408') ||
1625
+ error.message?.includes('status code 502') ||
1626
+ error.message?.includes('status code 503') ||
1627
+ error.message?.includes('status code 504') ||
1479
1628
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
1480
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
1629
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
1630
+ error.networkError.message?.includes('fetch failed') ||
1631
+ error.networkError.message?.includes('aborted due to timeout') ||
1632
+ error.networkError.message?.includes('TimeoutError')));
1481
1633
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
1482
1634
  retryCount++;
1483
1635
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -1574,12 +1726,31 @@ export const Action = {
1574
1726
  if (error.message === 'No Action found') {
1575
1727
  return null;
1576
1728
  }
1577
- // Check if this is a database connection error that we should retry
1729
+ // Check if this is a database connection error that we should retry.
1730
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
1731
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1732
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
1578
1733
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
1579
1734
  error.message?.includes('Cannot reach database server') ||
1580
1735
  error.message?.includes('Connection timed out') ||
1736
+ error.message?.includes('aborted due to timeout') ||
1737
+ error.message?.includes('TimeoutError') ||
1738
+ error.message?.includes('fetch failed') ||
1739
+ error.message?.includes('socket hang up') ||
1740
+ error.message?.includes('ECONNRESET') ||
1741
+ error.message?.includes('ECONNREFUSED') ||
1742
+ error.message?.includes('ETIMEDOUT') ||
1743
+ error.message?.includes('Connection pool timeout') ||
1744
+ error.message?.includes('P2024') ||
1745
+ error.message?.includes('status code 408') ||
1746
+ error.message?.includes('status code 502') ||
1747
+ error.message?.includes('status code 503') ||
1748
+ error.message?.includes('status code 504') ||
1581
1749
  error.message?.includes('Accelerate') || // Prisma Accelerate proxy errors
1582
- (error.networkError && error.networkError.message?.includes('Failed to fetch'));
1750
+ (error.networkError && (error.networkError.message?.includes('Failed to fetch') ||
1751
+ error.networkError.message?.includes('fetch failed') ||
1752
+ error.networkError.message?.includes('aborted due to timeout') ||
1753
+ error.networkError.message?.includes('TimeoutError')));
1583
1754
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
1584
1755
  retryCount++;
1585
1756
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../src/Alert.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AA2BpG,eAAO,MAAM,KAAK;IAEhB;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAkjB5G;;;;;;;OAOG;sBACqB,SAAS,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;IAyHvK;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IA2yD1G;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAovE1G;;;;;;OAMG;sBACqB,SAAS,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IA0yD/H;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAmH1G;;;;;;;OAOG;eACc,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAgGhI;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC;IA4EjG;;;;;;;OAOG;oBACmB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC;CA4GxI,CAAC"}
1
+ {"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../src/Alert.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AA2BpG,eAAO,MAAM,KAAK;IAEhB;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAukB5G;;;;;;;OAOG;sBACqB,SAAS,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;IA8IvK;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAg0D1G;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAywE1G;;;;;;OAMG;sBACqB,SAAS,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IA+zD/H;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAwI1G;;;;;;;OAOG;eACc,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAqHhI;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC;IAiGjG;;;;;;;OAOG;oBACmB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC;CAiIxI,CAAC"}