@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
@@ -32,7 +32,7 @@ exports.MarketSentiment = {
32
32
  * @returns The created MarketSentiment or null.
33
33
  */
34
34
  async create(props, globalClient) {
35
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
35
+ 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;
36
36
  // Maximum number of retries for database connection issues
37
37
  const MAX_RETRIES = 3;
38
38
  let retryCount = 0;
@@ -100,12 +100,31 @@ exports.MarketSentiment = {
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 = ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('Server has closed the connection')) ||
105
108
  ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Cannot reach database server')) ||
106
109
  ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Connection timed out')) ||
107
- ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Accelerate')) || // Prisma Accelerate proxy errors
108
- (error.networkError && ((_p = error.networkError.message) === null || _p === void 0 ? void 0 : _p.includes('Failed to fetch')));
110
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('aborted due to timeout')) ||
111
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('TimeoutError')) ||
112
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('fetch failed')) ||
113
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('socket hang up')) ||
114
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('ECONNRESET')) ||
115
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('ECONNREFUSED')) ||
116
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ETIMEDOUT')) ||
117
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('Connection pool timeout')) ||
118
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('P2024')) ||
119
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('status code 408')) ||
120
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('status code 502')) ||
121
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 503')) ||
122
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 504')) ||
123
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('Accelerate')) || // Prisma Accelerate proxy errors
124
+ (error.networkError && (((_2 = error.networkError.message) === null || _2 === void 0 ? void 0 : _2.includes('Failed to fetch')) ||
125
+ ((_3 = error.networkError.message) === null || _3 === void 0 ? void 0 : _3.includes('fetch failed')) ||
126
+ ((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('aborted due to timeout')) ||
127
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.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
@@ -140,7 +159,7 @@ exports.MarketSentiment = {
140
159
  * @returns The count of created records or null.
141
160
  */
142
161
  async createMany(props, globalClient, options) {
143
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
162
+ 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;
144
163
  // Maximum number of retries for database connection issues
145
164
  const MAX_RETRIES = 3;
146
165
  let retryCount = 0;
@@ -207,12 +226,31 @@ exports.MarketSentiment = {
207
226
  });
208
227
  throw error;
209
228
  }
210
- // Check if this is a database connection error that we should retry
229
+ // Check if this is a database connection error that we should retry.
230
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
231
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
232
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
211
233
  const isConnectionError = ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('Server has closed the connection')) ||
212
234
  ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Cannot reach database server')) ||
213
235
  ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Connection timed out')) ||
214
- ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Accelerate')) || // Prisma Accelerate proxy errors
215
- (error.networkError && ((_p = error.networkError.message) === null || _p === void 0 ? void 0 : _p.includes('Failed to fetch')));
236
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('aborted due to timeout')) ||
237
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('TimeoutError')) ||
238
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('fetch failed')) ||
239
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('socket hang up')) ||
240
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('ECONNRESET')) ||
241
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('ECONNREFUSED')) ||
242
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ETIMEDOUT')) ||
243
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('Connection pool timeout')) ||
244
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('P2024')) ||
245
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('status code 408')) ||
246
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('status code 502')) ||
247
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 503')) ||
248
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 504')) ||
249
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('Accelerate')) || // Prisma Accelerate proxy errors
250
+ (error.networkError && (((_2 = error.networkError.message) === null || _2 === void 0 ? void 0 : _2.includes('Failed to fetch')) ||
251
+ ((_3 = error.networkError.message) === null || _3 === void 0 ? void 0 : _3.includes('fetch failed')) ||
252
+ ((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('aborted due to timeout')) ||
253
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.includes('TimeoutError'))));
216
254
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
217
255
  retryCount++;
218
256
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -246,7 +284,7 @@ exports.MarketSentiment = {
246
284
  * @returns The updated MarketSentiment or null.
247
285
  */
248
286
  async update(props, globalClient) {
249
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
287
+ 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;
250
288
  // Maximum number of retries for database connection issues
251
289
  const MAX_RETRIES = 3;
252
290
  let retryCount = 0;
@@ -332,12 +370,31 @@ exports.MarketSentiment = {
332
370
  });
333
371
  throw error;
334
372
  }
335
- // Check if this is a database connection error that we should retry
373
+ // Check if this is a database connection error that we should retry.
374
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
375
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
376
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
336
377
  const isConnectionError = ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('Server has closed the connection')) ||
337
378
  ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Cannot reach database server')) ||
338
379
  ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Connection timed out')) ||
339
- ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Accelerate')) || // Prisma Accelerate proxy errors
340
- (error.networkError && ((_p = error.networkError.message) === null || _p === void 0 ? void 0 : _p.includes('Failed to fetch')));
380
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('aborted due to timeout')) ||
381
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('TimeoutError')) ||
382
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('fetch failed')) ||
383
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('socket hang up')) ||
384
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('ECONNRESET')) ||
385
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('ECONNREFUSED')) ||
386
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ETIMEDOUT')) ||
387
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('Connection pool timeout')) ||
388
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('P2024')) ||
389
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('status code 408')) ||
390
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('status code 502')) ||
391
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 503')) ||
392
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 504')) ||
393
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('Accelerate')) || // Prisma Accelerate proxy errors
394
+ (error.networkError && (((_2 = error.networkError.message) === null || _2 === void 0 ? void 0 : _2.includes('Failed to fetch')) ||
395
+ ((_3 = error.networkError.message) === null || _3 === void 0 ? void 0 : _3.includes('fetch failed')) ||
396
+ ((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('aborted due to timeout')) ||
397
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.includes('TimeoutError'))));
341
398
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
342
399
  retryCount++;
343
400
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -373,7 +430,7 @@ exports.MarketSentiment = {
373
430
  * @returns The updated MarketSentiment or null.
374
431
  */
375
432
  async upsert(props, globalClient) {
376
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
433
+ 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;
377
434
  // Maximum number of retries for database connection issues
378
435
  const MAX_RETRIES = 3;
379
436
  let retryCount = 0;
@@ -455,12 +512,31 @@ exports.MarketSentiment = {
455
512
  });
456
513
  throw error;
457
514
  }
458
- // Check if this is a database connection error that we should retry
515
+ // Check if this is a database connection error that we should retry.
516
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
517
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
518
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
459
519
  const isConnectionError = ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('Server has closed the connection')) ||
460
520
  ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Cannot reach database server')) ||
461
521
  ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Connection timed out')) ||
462
- ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Accelerate')) || // Prisma Accelerate proxy errors
463
- (error.networkError && ((_p = error.networkError.message) === null || _p === void 0 ? void 0 : _p.includes('Failed to fetch')));
522
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('aborted due to timeout')) ||
523
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('TimeoutError')) ||
524
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('fetch failed')) ||
525
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('socket hang up')) ||
526
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('ECONNRESET')) ||
527
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('ECONNREFUSED')) ||
528
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ETIMEDOUT')) ||
529
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('Connection pool timeout')) ||
530
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('P2024')) ||
531
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('status code 408')) ||
532
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('status code 502')) ||
533
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 503')) ||
534
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 504')) ||
535
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('Accelerate')) || // Prisma Accelerate proxy errors
536
+ (error.networkError && (((_2 = error.networkError.message) === null || _2 === void 0 ? void 0 : _2.includes('Failed to fetch')) ||
537
+ ((_3 = error.networkError.message) === null || _3 === void 0 ? void 0 : _3.includes('fetch failed')) ||
538
+ ((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('aborted due to timeout')) ||
539
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.includes('TimeoutError'))));
464
540
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
465
541
  retryCount++;
466
542
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -496,7 +572,7 @@ exports.MarketSentiment = {
496
572
  * @returns The count of created records or null.
497
573
  */
498
574
  async updateMany(props, globalClient) {
499
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
575
+ 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;
500
576
  // Maximum number of retries for database connection issues
501
577
  const MAX_RETRIES = 3;
502
578
  let retryCount = 0;
@@ -581,12 +657,31 @@ exports.MarketSentiment = {
581
657
  });
582
658
  throw error;
583
659
  }
584
- // 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).
585
664
  const isConnectionError = ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('Server has closed the connection')) ||
586
665
  ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Cannot reach database server')) ||
587
666
  ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Connection timed out')) ||
588
- ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Accelerate')) || // Prisma Accelerate proxy errors
589
- (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'))));
590
685
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
591
686
  retryCount++;
592
687
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -620,7 +715,7 @@ exports.MarketSentiment = {
620
715
  * @returns The deleted MarketSentiment or null.
621
716
  */
622
717
  async delete(props, globalClient) {
623
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
718
+ 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;
624
719
  // Maximum number of retries for database connection issues
625
720
  const MAX_RETRIES = 3;
626
721
  let retryCount = 0;
@@ -689,12 +784,31 @@ exports.MarketSentiment = {
689
784
  });
690
785
  throw error;
691
786
  }
692
- // Check if this is a database connection error that we should retry
787
+ // Check if this is a database connection error that we should retry.
788
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
789
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
790
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
693
791
  const isConnectionError = ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('Server has closed the connection')) ||
694
792
  ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Cannot reach database server')) ||
695
793
  ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('Connection timed out')) ||
696
- ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('Accelerate')) || // Prisma Accelerate proxy errors
697
- (error.networkError && ((_r = error.networkError.message) === null || _r === void 0 ? void 0 : _r.includes('Failed to fetch')));
794
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('aborted due to timeout')) ||
795
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('TimeoutError')) ||
796
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('fetch failed')) ||
797
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('socket hang up')) ||
798
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('ECONNRESET')) ||
799
+ ((_v = error.message) === null || _v === void 0 ? void 0 : _v.includes('ECONNREFUSED')) ||
800
+ ((_w = error.message) === null || _w === void 0 ? void 0 : _w.includes('ETIMEDOUT')) ||
801
+ ((_x = error.message) === null || _x === void 0 ? void 0 : _x.includes('Connection pool timeout')) ||
802
+ ((_y = error.message) === null || _y === void 0 ? void 0 : _y.includes('P2024')) ||
803
+ ((_z = error.message) === null || _z === void 0 ? void 0 : _z.includes('status code 408')) ||
804
+ ((_0 = error.message) === null || _0 === void 0 ? void 0 : _0.includes('status code 502')) ||
805
+ ((_1 = error.message) === null || _1 === void 0 ? void 0 : _1.includes('status code 503')) ||
806
+ ((_2 = error.message) === null || _2 === void 0 ? void 0 : _2.includes('status code 504')) ||
807
+ ((_3 = error.message) === null || _3 === void 0 ? void 0 : _3.includes('Accelerate')) || // Prisma Accelerate proxy errors
808
+ (error.networkError && (((_4 = error.networkError.message) === null || _4 === void 0 ? void 0 : _4.includes('Failed to fetch')) ||
809
+ ((_5 = error.networkError.message) === null || _5 === void 0 ? void 0 : _5.includes('fetch failed')) ||
810
+ ((_6 = error.networkError.message) === null || _6 === void 0 ? void 0 : _6.includes('aborted due to timeout')) ||
811
+ ((_7 = error.networkError.message) === null || _7 === void 0 ? void 0 : _7.includes('TimeoutError'))));
698
812
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
699
813
  retryCount++;
700
814
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -731,7 +845,7 @@ exports.MarketSentiment = {
731
845
  * @returns The retrieved MarketSentiment or null.
732
846
  */
733
847
  async get(props, globalClient, whereInput) {
734
- var _a, _b, _c, _d, _e, _f, _g;
848
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
735
849
  // Maximum number of retries for database connection issues
736
850
  const MAX_RETRIES = 3;
737
851
  let retryCount = 0;
@@ -773,12 +887,31 @@ exports.MarketSentiment = {
773
887
  if (error.message === 'No MarketSentiment found') {
774
888
  return null;
775
889
  }
776
- // Check if this is a database connection error that we should retry
890
+ // Check if this is a database connection error that we should retry.
891
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
892
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
893
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
777
894
  const isConnectionError = ((_c = error.message) === null || _c === void 0 ? void 0 : _c.includes('Server has closed the connection')) ||
778
895
  ((_d = error.message) === null || _d === void 0 ? void 0 : _d.includes('Cannot reach database server')) ||
779
896
  ((_e = error.message) === null || _e === void 0 ? void 0 : _e.includes('Connection timed out')) ||
780
- ((_f = error.message) === null || _f === void 0 ? void 0 : _f.includes('Accelerate')) || // Prisma Accelerate proxy errors
781
- (error.networkError && ((_g = error.networkError.message) === null || _g === void 0 ? void 0 : _g.includes('Failed to fetch')));
897
+ ((_f = error.message) === null || _f === void 0 ? void 0 : _f.includes('aborted due to timeout')) ||
898
+ ((_g = error.message) === null || _g === void 0 ? void 0 : _g.includes('TimeoutError')) ||
899
+ ((_h = error.message) === null || _h === void 0 ? void 0 : _h.includes('fetch failed')) ||
900
+ ((_j = error.message) === null || _j === void 0 ? void 0 : _j.includes('socket hang up')) ||
901
+ ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('ECONNRESET')) ||
902
+ ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('ECONNREFUSED')) ||
903
+ ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('ETIMEDOUT')) ||
904
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Connection pool timeout')) ||
905
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('P2024')) ||
906
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('status code 408')) ||
907
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('status code 502')) ||
908
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('status code 503')) ||
909
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('status code 504')) ||
910
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('Accelerate')) || // Prisma Accelerate proxy errors
911
+ (error.networkError && (((_v = error.networkError.message) === null || _v === void 0 ? void 0 : _v.includes('Failed to fetch')) ||
912
+ ((_w = error.networkError.message) === null || _w === void 0 ? void 0 : _w.includes('fetch failed')) ||
913
+ ((_x = error.networkError.message) === null || _x === void 0 ? void 0 : _x.includes('aborted due to timeout')) ||
914
+ ((_y = error.networkError.message) === null || _y === void 0 ? void 0 : _y.includes('TimeoutError'))));
782
915
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
783
916
  retryCount++;
784
917
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -811,7 +944,7 @@ exports.MarketSentiment = {
811
944
  * @returns An array of MarketSentiment records or null.
812
945
  */
813
946
  async getAll(globalClient) {
814
- var _a, _b, _c, _d, _e, _f, _g;
947
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
815
948
  // Maximum number of retries for database connection issues
816
949
  const MAX_RETRIES = 3;
817
950
  let retryCount = 0;
@@ -846,12 +979,31 @@ exports.MarketSentiment = {
846
979
  if (error.message === 'No MarketSentiment found') {
847
980
  return null;
848
981
  }
849
- // Check if this is a database connection error that we should retry
982
+ // Check if this is a database connection error that we should retry.
983
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
984
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
985
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
850
986
  const isConnectionError = ((_c = error.message) === null || _c === void 0 ? void 0 : _c.includes('Server has closed the connection')) ||
851
987
  ((_d = error.message) === null || _d === void 0 ? void 0 : _d.includes('Cannot reach database server')) ||
852
988
  ((_e = error.message) === null || _e === void 0 ? void 0 : _e.includes('Connection timed out')) ||
853
- ((_f = error.message) === null || _f === void 0 ? void 0 : _f.includes('Accelerate')) || // Prisma Accelerate proxy errors
854
- (error.networkError && ((_g = error.networkError.message) === null || _g === void 0 ? void 0 : _g.includes('Failed to fetch')));
989
+ ((_f = error.message) === null || _f === void 0 ? void 0 : _f.includes('aborted due to timeout')) ||
990
+ ((_g = error.message) === null || _g === void 0 ? void 0 : _g.includes('TimeoutError')) ||
991
+ ((_h = error.message) === null || _h === void 0 ? void 0 : _h.includes('fetch failed')) ||
992
+ ((_j = error.message) === null || _j === void 0 ? void 0 : _j.includes('socket hang up')) ||
993
+ ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('ECONNRESET')) ||
994
+ ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('ECONNREFUSED')) ||
995
+ ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('ETIMEDOUT')) ||
996
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('Connection pool timeout')) ||
997
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('P2024')) ||
998
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('status code 408')) ||
999
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('status code 502')) ||
1000
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('status code 503')) ||
1001
+ ((_t = error.message) === null || _t === void 0 ? void 0 : _t.includes('status code 504')) ||
1002
+ ((_u = error.message) === null || _u === void 0 ? void 0 : _u.includes('Accelerate')) || // Prisma Accelerate proxy errors
1003
+ (error.networkError && (((_v = error.networkError.message) === null || _v === void 0 ? void 0 : _v.includes('Failed to fetch')) ||
1004
+ ((_w = error.networkError.message) === null || _w === void 0 ? void 0 : _w.includes('fetch failed')) ||
1005
+ ((_x = error.networkError.message) === null || _x === void 0 ? void 0 : _x.includes('aborted due to timeout')) ||
1006
+ ((_y = error.networkError.message) === null || _y === void 0 ? void 0 : _y.includes('TimeoutError'))));
855
1007
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
856
1008
  retryCount++;
857
1009
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
@@ -886,7 +1038,7 @@ exports.MarketSentiment = {
886
1038
  * @returns An array of found MarketSentiment records or null.
887
1039
  */
888
1040
  async findMany(props, globalClient, whereInput) {
889
- var _a, _b, _c, _d, _e;
1041
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
890
1042
  // Maximum number of retries for database connection issues
891
1043
  const MAX_RETRIES = 3;
892
1044
  let retryCount = 0;
@@ -940,12 +1092,31 @@ exports.MarketSentiment = {
940
1092
  if (error.message === 'No MarketSentiment found') {
941
1093
  return null;
942
1094
  }
943
- // Check if this is a database connection error that we should retry
1095
+ // Check if this is a database connection error that we should retry.
1096
+ // Covers undici/fetch timeouts, Prisma Accelerate transients, connection
1097
+ // pool exhaustion, and transient gateway statuses. Must stay consistent
1098
+ // with the transient classifier in client.ts (onError link + enqueueOperation).
944
1099
  const isConnectionError = ((_a = error.message) === null || _a === void 0 ? void 0 : _a.includes('Server has closed the connection')) ||
945
1100
  ((_b = error.message) === null || _b === void 0 ? void 0 : _b.includes('Cannot reach database server')) ||
946
1101
  ((_c = error.message) === null || _c === void 0 ? void 0 : _c.includes('Connection timed out')) ||
947
- ((_d = error.message) === null || _d === void 0 ? void 0 : _d.includes('Accelerate')) || // Prisma Accelerate proxy errors
948
- (error.networkError && ((_e = error.networkError.message) === null || _e === void 0 ? void 0 : _e.includes('Failed to fetch')));
1102
+ ((_d = error.message) === null || _d === void 0 ? void 0 : _d.includes('aborted due to timeout')) ||
1103
+ ((_e = error.message) === null || _e === void 0 ? void 0 : _e.includes('TimeoutError')) ||
1104
+ ((_f = error.message) === null || _f === void 0 ? void 0 : _f.includes('fetch failed')) ||
1105
+ ((_g = error.message) === null || _g === void 0 ? void 0 : _g.includes('socket hang up')) ||
1106
+ ((_h = error.message) === null || _h === void 0 ? void 0 : _h.includes('ECONNRESET')) ||
1107
+ ((_j = error.message) === null || _j === void 0 ? void 0 : _j.includes('ECONNREFUSED')) ||
1108
+ ((_k = error.message) === null || _k === void 0 ? void 0 : _k.includes('ETIMEDOUT')) ||
1109
+ ((_l = error.message) === null || _l === void 0 ? void 0 : _l.includes('Connection pool timeout')) ||
1110
+ ((_m = error.message) === null || _m === void 0 ? void 0 : _m.includes('P2024')) ||
1111
+ ((_o = error.message) === null || _o === void 0 ? void 0 : _o.includes('status code 408')) ||
1112
+ ((_p = error.message) === null || _p === void 0 ? void 0 : _p.includes('status code 502')) ||
1113
+ ((_q = error.message) === null || _q === void 0 ? void 0 : _q.includes('status code 503')) ||
1114
+ ((_r = error.message) === null || _r === void 0 ? void 0 : _r.includes('status code 504')) ||
1115
+ ((_s = error.message) === null || _s === void 0 ? void 0 : _s.includes('Accelerate')) || // Prisma Accelerate proxy errors
1116
+ (error.networkError && (((_t = error.networkError.message) === null || _t === void 0 ? void 0 : _t.includes('Failed to fetch')) ||
1117
+ ((_u = error.networkError.message) === null || _u === void 0 ? void 0 : _u.includes('fetch failed')) ||
1118
+ ((_v = error.networkError.message) === null || _v === void 0 ? void 0 : _v.includes('aborted due to timeout')) ||
1119
+ ((_w = error.networkError.message) === null || _w === void 0 ? void 0 : _w.includes('TimeoutError'))));
949
1120
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
950
1121
  retryCount++;
951
1122
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms