@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
@@ -46,7 +46,7 @@ exports.SignalGeneratorMetrics = {
46
46
  * @returns The created SignalGeneratorMetrics or null.
47
47
  */
48
48
  async create(props, globalClient) {
49
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
49
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5;
50
50
  // Maximum number of retries for database connection issues
51
51
  const MAX_RETRIES = 3;
52
52
  let retryCount = 0;
@@ -129,12 +129,31 @@ exports.SignalGeneratorMetrics = {
129
129
  });
130
130
  throw error;
131
131
  }
132
- // Check if this is a database connection error that we should retry
132
+ // Check if this is a database connection error that we should retry.
133
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
134
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
135
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
133
136
  const isConnectionError = ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('Server has closed the connection')) ||
134
137
  ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Cannot reach database server')) ||
135
138
  ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Connection timed out')) ||
136
- ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Accelerate')) || // Prisma Accelerate proxy errors
137
- (error.networkError && ((_p = error.networkError.message) === null || _p === void 0 ? void 0 : _p.includes('Failed to fetch')));
139
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('aborted due to timeout')) ||
140
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('TimeoutError')) ||
141
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('fetch failed')) ||
142
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('socket hang up')) ||
143
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('ECONNRESET')) ||
144
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('ECONNREFUSED')) ||
145
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ETIMEDOUT')) ||
146
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('Connection pool timeout')) ||
147
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('P2024')) ||
148
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('status code 408')) ||
149
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('status code 502')) ||
150
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 503')) ||
151
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 504')) ||
152
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('Accelerate')) || // Prisma Accelerate proxy errors
153
+ (error.networkError && (((_2 = error.networkError.message) === null || _2 === void 0 ? void 0 : _2.includes('Failed to fetch')) ||
154
+ ((_3 = error.networkError.message) === null || _3 === void 0 ? void 0 : _3.includes('fetch failed')) ||
155
+ ((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('aborted due to timeout')) ||
156
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.includes('TimeoutError'))));
138
157
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
139
158
  retryCount++;
140
159
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -169,7 +188,7 @@ exports.SignalGeneratorMetrics = {
169
188
  * @returns The count of created records or null.
170
189
  */
171
190
  async createMany(props, globalClient, options) {
172
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
191
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5;
173
192
  // Maximum number of retries for database connection issues
174
193
  const MAX_RETRIES = 3;
175
194
  let retryCount = 0;
@@ -251,12 +270,31 @@ exports.SignalGeneratorMetrics = {
251
270
  });
252
271
  throw error;
253
272
  }
254
- // Check if this is a database connection error that we should retry
273
+ // Check if this is a database connection error that we should retry.
274
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
275
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
276
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
255
277
  const isConnectionError = ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('Server has closed the connection')) ||
256
278
  ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Cannot reach database server')) ||
257
279
  ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Connection timed out')) ||
258
- ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Accelerate')) || // Prisma Accelerate proxy errors
259
- (error.networkError && ((_p = error.networkError.message) === null || _p === void 0 ? void 0 : _p.includes('Failed to fetch')));
280
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('aborted due to timeout')) ||
281
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('TimeoutError')) ||
282
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('fetch failed')) ||
283
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('socket hang up')) ||
284
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('ECONNRESET')) ||
285
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('ECONNREFUSED')) ||
286
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ETIMEDOUT')) ||
287
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('Connection pool timeout')) ||
288
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('P2024')) ||
289
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('status code 408')) ||
290
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('status code 502')) ||
291
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 503')) ||
292
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 504')) ||
293
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('Accelerate')) || // Prisma Accelerate proxy errors
294
+ (error.networkError && (((_2 = error.networkError.message) === null || _2 === void 0 ? void 0 : _2.includes('Failed to fetch')) ||
295
+ ((_3 = error.networkError.message) === null || _3 === void 0 ? void 0 : _3.includes('fetch failed')) ||
296
+ ((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('aborted due to timeout')) ||
297
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.includes('TimeoutError'))));
260
298
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
261
299
  retryCount++;
262
300
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -290,7 +328,7 @@ exports.SignalGeneratorMetrics = {
290
328
  * @returns The updated SignalGeneratorMetrics or null.
291
329
  */
292
330
  async update(props, globalClient) {
293
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
331
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5;
294
332
  // Maximum number of retries for database connection issues
295
333
  const MAX_RETRIES = 3;
296
334
  let retryCount = 0;
@@ -416,12 +454,31 @@ exports.SignalGeneratorMetrics = {
416
454
  });
417
455
  throw error;
418
456
  }
419
- // Check if this is a database connection error that we should retry
457
+ // Check if this is a database connection error that we should retry.
458
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
459
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
460
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
420
461
  const isConnectionError = ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('Server has closed the connection')) ||
421
462
  ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Cannot reach database server')) ||
422
463
  ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Connection timed out')) ||
423
- ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Accelerate')) || // Prisma Accelerate proxy errors
424
- (error.networkError && ((_p = error.networkError.message) === null || _p === void 0 ? void 0 : _p.includes('Failed to fetch')));
464
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('aborted due to timeout')) ||
465
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('TimeoutError')) ||
466
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('fetch failed')) ||
467
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('socket hang up')) ||
468
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('ECONNRESET')) ||
469
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('ECONNREFUSED')) ||
470
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ETIMEDOUT')) ||
471
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('Connection pool timeout')) ||
472
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('P2024')) ||
473
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('status code 408')) ||
474
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('status code 502')) ||
475
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 503')) ||
476
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 504')) ||
477
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('Accelerate')) || // Prisma Accelerate proxy errors
478
+ (error.networkError && (((_2 = error.networkError.message) === null || _2 === void 0 ? void 0 : _2.includes('Failed to fetch')) ||
479
+ ((_3 = error.networkError.message) === null || _3 === void 0 ? void 0 : _3.includes('fetch failed')) ||
480
+ ((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('aborted due to timeout')) ||
481
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.includes('TimeoutError'))));
425
482
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
426
483
  retryCount++;
427
484
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -457,7 +514,7 @@ exports.SignalGeneratorMetrics = {
457
514
  * @returns The updated SignalGeneratorMetrics or null.
458
515
  */
459
516
  async upsert(props, globalClient) {
460
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
517
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5;
461
518
  // Maximum number of retries for database connection issues
462
519
  const MAX_RETRIES = 3;
463
520
  let retryCount = 0;
@@ -600,12 +657,31 @@ exports.SignalGeneratorMetrics = {
600
657
  });
601
658
  throw error;
602
659
  }
603
- // Check if this is a database connection error that we should retry
660
+ // Check if this is a database connection error that we should retry.
661
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
662
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
663
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
604
664
  const isConnectionError = ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('Server has closed the connection')) ||
605
665
  ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Cannot reach database server')) ||
606
666
  ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Connection timed out')) ||
607
- ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Accelerate')) || // Prisma Accelerate proxy errors
608
- (error.networkError && ((_p = error.networkError.message) === null || _p === void 0 ? void 0 : _p.includes('Failed to fetch')));
667
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('aborted due to timeout')) ||
668
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('TimeoutError')) ||
669
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('fetch failed')) ||
670
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('socket hang up')) ||
671
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('ECONNRESET')) ||
672
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('ECONNREFUSED')) ||
673
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ETIMEDOUT')) ||
674
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('Connection pool timeout')) ||
675
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('P2024')) ||
676
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('status code 408')) ||
677
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('status code 502')) ||
678
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 503')) ||
679
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 504')) ||
680
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('Accelerate')) || // Prisma Accelerate proxy errors
681
+ (error.networkError && (((_2 = error.networkError.message) === null || _2 === void 0 ? void 0 : _2.includes('Failed to fetch')) ||
682
+ ((_3 = error.networkError.message) === null || _3 === void 0 ? void 0 : _3.includes('fetch failed')) ||
683
+ ((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('aborted due to timeout')) ||
684
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.includes('TimeoutError'))));
609
685
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
610
686
  retryCount++;
611
687
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -641,7 +717,7 @@ exports.SignalGeneratorMetrics = {
641
717
  * @returns The count of created records or null.
642
718
  */
643
719
  async updateMany(props, globalClient) {
644
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
720
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5;
645
721
  // Maximum number of retries for database connection issues
646
722
  const MAX_RETRIES = 3;
647
723
  let retryCount = 0;
@@ -766,12 +842,31 @@ exports.SignalGeneratorMetrics = {
766
842
  });
767
843
  throw error;
768
844
  }
769
- // Check if this is a database connection error that we should retry
845
+ // Check if this is a database connection error that we should retry.
846
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
847
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
848
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
770
849
  const isConnectionError = ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('Server has closed the connection')) ||
771
850
  ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Cannot reach database server')) ||
772
851
  ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Connection timed out')) ||
773
- ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Accelerate')) || // Prisma Accelerate proxy errors
774
- (error.networkError && ((_p = error.networkError.message) === null || _p === void 0 ? void 0 : _p.includes('Failed to fetch')));
852
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('aborted due to timeout')) ||
853
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('TimeoutError')) ||
854
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('fetch failed')) ||
855
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('socket hang up')) ||
856
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('ECONNRESET')) ||
857
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('ECONNREFUSED')) ||
858
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ETIMEDOUT')) ||
859
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('Connection pool timeout')) ||
860
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('P2024')) ||
861
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('status code 408')) ||
862
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('status code 502')) ||
863
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 503')) ||
864
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 504')) ||
865
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('Accelerate')) || // Prisma Accelerate proxy errors
866
+ (error.networkError && (((_2 = error.networkError.message) === null || _2 === void 0 ? void 0 : _2.includes('Failed to fetch')) ||
867
+ ((_3 = error.networkError.message) === null || _3 === void 0 ? void 0 : _3.includes('fetch failed')) ||
868
+ ((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('aborted due to timeout')) ||
869
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.includes('TimeoutError'))));
775
870
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
776
871
  retryCount++;
777
872
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -805,7 +900,7 @@ exports.SignalGeneratorMetrics = {
805
900
  * @returns The deleted SignalGeneratorMetrics or null.
806
901
  */
807
902
  async delete(props, globalClient) {
808
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
903
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7;
809
904
  // Maximum number of retries for database connection issues
810
905
  const MAX_RETRIES = 3;
811
906
  let retryCount = 0;
@@ -874,12 +969,31 @@ exports.SignalGeneratorMetrics = {
874
969
  });
875
970
  throw error;
876
971
  }
877
- // 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).
878
976
  const isConnectionError = ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Server has closed the connection')) ||
879
977
  ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Cannot reach database server')) ||
880
978
  ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('Connection timed out')) ||
881
- ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('Accelerate')) || // Prisma Accelerate proxy errors
882
- (error.networkError && ((_r = error.networkError.message) === null || _r === void 0 ? void 0 : _r.includes('Failed to fetch')));
979
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('aborted due to timeout')) ||
980
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('TimeoutError')) ||
981
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('fetch failed')) ||
982
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('socket hang up')) ||
983
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ECONNRESET')) ||
984
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('ECONNREFUSED')) ||
985
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('ETIMEDOUT')) ||
986
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('Connection pool timeout')) ||
987
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('P2024')) ||
988
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 408')) ||
989
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 502')) ||
990
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('status code 503')) ||
991
+ ((_2 = error.message) === null || _2 === void 0 ? void 0 : _2.includes('status code 504')) ||
992
+ ((_3 = error.message) === null || _3 === void 0 ? void 0 : _3.includes('Accelerate')) || // Prisma Accelerate proxy errors
993
+ (error.networkError && (((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('Failed to fetch')) ||
994
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.includes('fetch failed')) ||
995
+ ((_6 = error.networkError.message) === null || _6 === void 0 ? void 0 : _6.includes('aborted due to timeout')) ||
996
+ ((_7 = error.networkError.message) === null || _7 === void 0 ? void 0 : _7.includes('TimeoutError'))));
883
997
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
884
998
  retryCount++;
885
999
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -916,7 +1030,7 @@ exports.SignalGeneratorMetrics = {
916
1030
  * @returns The retrieved SignalGeneratorMetrics or null.
917
1031
  */
918
1032
  async get(props, globalClient, whereInput) {
919
- var _a, _b, _c, _d, _e, _f, _g;
1033
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
920
1034
  // Maximum number of retries for database connection issues
921
1035
  const MAX_RETRIES = 3;
922
1036
  let retryCount = 0;
@@ -961,12 +1075,31 @@ exports.SignalGeneratorMetrics = {
961
1075
  if (error.message === 'No SignalGeneratorMetrics found') {
962
1076
  return null;
963
1077
  }
964
- // Check if this is a database connection error that we should retry
1078
+ // Check if this is a database connection error that we should retry.
1079
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
1080
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1081
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
965
1082
  const isConnectionError = ((_c = error.message) === null || _c === void 0 ? void 0 : _c.includes('Server has closed the connection')) ||
966
1083
  ((_d = error.message) === null || _d === void 0 ? void 0 : _d.includes('Cannot reach database server')) ||
967
1084
  ((_e = error.message) === null || _e === void 0 ? void 0 : _e.includes('Connection timed out')) ||
968
- ((_f = error.message) === null || _f === void 0 ? void 0 : _f.includes('Accelerate')) || // Prisma Accelerate proxy errors
969
- (error.networkError && ((_g = error.networkError.message) === null || _g === void 0 ? void 0 : _g.includes('Failed to fetch')));
1085
+ ((_f = error.message) === null || _f === void 0 ? void 0 : _f.includes('aborted due to timeout')) ||
1086
+ ((_g = error.message) === null || _g === void 0 ? void 0 : _g.includes('TimeoutError')) ||
1087
+ ((_h = error.message) === null || _h === void 0 ? void 0 : _h.includes('fetch failed')) ||
1088
+ ((_j = error.message) === null || _j === void 0 ? void 0 : _j.includes('socket hang up')) ||
1089
+ ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('ECONNRESET')) ||
1090
+ ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('ECONNREFUSED')) ||
1091
+ ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('ETIMEDOUT')) ||
1092
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Connection pool timeout')) ||
1093
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('P2024')) ||
1094
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('status code 408')) ||
1095
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('status code 502')) ||
1096
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('status code 503')) ||
1097
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('status code 504')) ||
1098
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('Accelerate')) || // Prisma Accelerate proxy errors
1099
+ (error.networkError && (((_v = error.networkError.message) === null || _v === void 0 ? void 0 : _v.includes('Failed to fetch')) ||
1100
+ ((_w = error.networkError.message) === null || _w === void 0 ? void 0 : _w.includes('fetch failed')) ||
1101
+ ((_x = error.networkError.message) === null || _x === void 0 ? void 0 : _x.includes('aborted due to timeout')) ||
1102
+ ((_y = error.networkError.message) === null || _y === void 0 ? void 0 : _y.includes('TimeoutError'))));
970
1103
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
971
1104
  retryCount++;
972
1105
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -999,7 +1132,7 @@ exports.SignalGeneratorMetrics = {
999
1132
  * @returns An array of SignalGeneratorMetrics records or null.
1000
1133
  */
1001
1134
  async getAll(globalClient) {
1002
- var _a, _b, _c, _d, _e, _f, _g;
1135
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
1003
1136
  // Maximum number of retries for database connection issues
1004
1137
  const MAX_RETRIES = 3;
1005
1138
  let retryCount = 0;
@@ -1034,12 +1167,31 @@ exports.SignalGeneratorMetrics = {
1034
1167
  if (error.message === 'No SignalGeneratorMetrics found') {
1035
1168
  return null;
1036
1169
  }
1037
- // Check if this is a database connection error that we should retry
1170
+ // Check if this is a database connection error that we should retry.
1171
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
1172
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1173
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
1038
1174
  const isConnectionError = ((_c = error.message) === null || _c === void 0 ? void 0 : _c.includes('Server has closed the connection')) ||
1039
1175
  ((_d = error.message) === null || _d === void 0 ? void 0 : _d.includes('Cannot reach database server')) ||
1040
1176
  ((_e = error.message) === null || _e === void 0 ? void 0 : _e.includes('Connection timed out')) ||
1041
- ((_f = error.message) === null || _f === void 0 ? void 0 : _f.includes('Accelerate')) || // Prisma Accelerate proxy errors
1042
- (error.networkError && ((_g = error.networkError.message) === null || _g === void 0 ? void 0 : _g.includes('Failed to fetch')));
1177
+ ((_f = error.message) === null || _f === void 0 ? void 0 : _f.includes('aborted due to timeout')) ||
1178
+ ((_g = error.message) === null || _g === void 0 ? void 0 : _g.includes('TimeoutError')) ||
1179
+ ((_h = error.message) === null || _h === void 0 ? void 0 : _h.includes('fetch failed')) ||
1180
+ ((_j = error.message) === null || _j === void 0 ? void 0 : _j.includes('socket hang up')) ||
1181
+ ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('ECONNRESET')) ||
1182
+ ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('ECONNREFUSED')) ||
1183
+ ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('ETIMEDOUT')) ||
1184
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Connection pool timeout')) ||
1185
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('P2024')) ||
1186
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('status code 408')) ||
1187
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('status code 502')) ||
1188
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('status code 503')) ||
1189
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('status code 504')) ||
1190
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('Accelerate')) || // Prisma Accelerate proxy errors
1191
+ (error.networkError && (((_v = error.networkError.message) === null || _v === void 0 ? void 0 : _v.includes('Failed to fetch')) ||
1192
+ ((_w = error.networkError.message) === null || _w === void 0 ? void 0 : _w.includes('fetch failed')) ||
1193
+ ((_x = error.networkError.message) === null || _x === void 0 ? void 0 : _x.includes('aborted due to timeout')) ||
1194
+ ((_y = error.networkError.message) === null || _y === void 0 ? void 0 : _y.includes('TimeoutError'))));
1043
1195
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
1044
1196
  retryCount++;
1045
1197
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -1074,7 +1226,7 @@ exports.SignalGeneratorMetrics = {
1074
1226
  * @returns An array of found SignalGeneratorMetrics records or null.
1075
1227
  */
1076
1228
  async findMany(props, globalClient, whereInput) {
1077
- var _a, _b, _c, _d, _e;
1229
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
1078
1230
  // Maximum number of retries for database connection issues
1079
1231
  const MAX_RETRIES = 3;
1080
1232
  let retryCount = 0;
@@ -1131,12 +1283,31 @@ exports.SignalGeneratorMetrics = {
1131
1283
  if (error.message === 'No SignalGeneratorMetrics found') {
1132
1284
  return null;
1133
1285
  }
1134
- // Check if this is a database connection error that we should retry
1286
+ // Check if this is a database connection error that we should retry.
1287
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
1288
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1289
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
1135
1290
  const isConnectionError = ((_a = error.message) === null || _a === void 0 ? void 0 : _a.includes('Server has closed the connection')) ||
1136
1291
  ((_b = error.message) === null || _b === void 0 ? void 0 : _b.includes('Cannot reach database server')) ||
1137
1292
  ((_c = error.message) === null || _c === void 0 ? void 0 : _c.includes('Connection timed out')) ||
1138
- ((_d = error.message) === null || _d === void 0 ? void 0 : _d.includes('Accelerate')) || // Prisma Accelerate proxy errors
1139
- (error.networkError && ((_e = error.networkError.message) === null || _e === void 0 ? void 0 : _e.includes('Failed to fetch')));
1293
+ ((_d = error.message) === null || _d === void 0 ? void 0 : _d.includes('aborted due to timeout')) ||
1294
+ ((_e = error.message) === null || _e === void 0 ? void 0 : _e.includes('TimeoutError')) ||
1295
+ ((_f = error.message) === null || _f === void 0 ? void 0 : _f.includes('fetch failed')) ||
1296
+ ((_g = error.message) === null || _g === void 0 ? void 0 : _g.includes('socket hang up')) ||
1297
+ ((_h = error.message) === null || _h === void 0 ? void 0 : _h.includes('ECONNRESET')) ||
1298
+ ((_j = error.message) === null || _j === void 0 ? void 0 : _j.includes('ECONNREFUSED')) ||
1299
+ ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('ETIMEDOUT')) ||
1300
+ ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Connection pool timeout')) ||
1301
+ ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('P2024')) ||
1302
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('status code 408')) ||
1303
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('status code 502')) ||
1304
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('status code 503')) ||
1305
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('status code 504')) ||
1306
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('Accelerate')) || // Prisma Accelerate proxy errors
1307
+ (error.networkError && (((_t = error.networkError.message) === null || _t === void 0 ? void 0 : _t.includes('Failed to fetch')) ||
1308
+ ((_u = error.networkError.message) === null || _u === void 0 ? void 0 : _u.includes('fetch failed')) ||
1309
+ ((_v = error.networkError.message) === null || _v === void 0 ? void 0 : _v.includes('aborted due to timeout')) ||
1310
+ ((_w = error.networkError.message) === null || _w === void 0 ? void 0 : _w.includes('TimeoutError'))));
1140
1311
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
1141
1312
  retryCount++;
1142
1313
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms