@adaptic/backend-legacy 0.0.903 → 0.0.905

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 (229) hide show
  1. package/ABTest.cjs +291 -63
  2. package/Account.cjs +291 -63
  3. package/AccountLinkingRequest.cjs +291 -63
  4. package/Action.cjs +291 -63
  5. package/Alert.cjs +291 -63
  6. package/Allocation.cjs +291 -63
  7. package/AlpacaAccount.cjs +291 -63
  8. package/AnalyticsConfiguration.cjs +291 -63
  9. package/AnalyticsSnapshot.cjs +291 -63
  10. package/Asset.cjs +291 -63
  11. package/AuditLog.cjs +291 -63
  12. package/Authenticator.cjs +291 -63
  13. package/Configuration.cjs +291 -63
  14. package/ConflictEvent.cjs +291 -63
  15. package/ConnectionHealthSnapshot.cjs +291 -63
  16. package/Customer.cjs +291 -63
  17. package/DeadLetterMessage.cjs +291 -63
  18. package/EconomicEvent.cjs +291 -63
  19. package/Event.cjs +291 -63
  20. package/EventSnapshot.cjs +291 -63
  21. package/FeatureImportanceAnalysis.cjs +291 -63
  22. package/InstitutionalFlowSignal.cjs +291 -63
  23. package/InstitutionalHolding.cjs +291 -63
  24. package/InstitutionalSentimentAlerts.cjs +291 -63
  25. package/InstitutionalSentimentErrors.cjs +291 -63
  26. package/InstitutionalSentimentHistory.cjs +291 -63
  27. package/InstitutionalSentimentMetrics.cjs +291 -63
  28. package/InviteToken.cjs +291 -63
  29. package/LinkedProvider.cjs +291 -63
  30. package/MLTrainingData.cjs +291 -63
  31. package/MarketSentiment.cjs +291 -63
  32. package/ModelArtifact.cjs +291 -63
  33. package/ModelVersion.cjs +291 -63
  34. package/ModelVersionArtifact.cjs +291 -63
  35. package/NewsArticle.cjs +291 -63
  36. package/NewsArticleAssetSentiment.cjs +291 -63
  37. package/OptionsContract.cjs +291 -63
  38. package/OptionsGreeksHistory.cjs +291 -63
  39. package/OptionsPosition.cjs +291 -63
  40. package/OptionsTradeExecution.cjs +291 -63
  41. package/PortfolioGreeksHistory.cjs +291 -63
  42. package/ScheduledOptionOrder.cjs +291 -63
  43. package/Session.cjs +291 -63
  44. package/SignalGeneratorMetrics.cjs +291 -63
  45. package/SignalLineage.cjs +291 -63
  46. package/SignalOutcome.cjs +291 -63
  47. package/SignalPriorityQueue.cjs +291 -63
  48. package/SyncEvent.cjs +291 -63
  49. package/SystemAlert.cjs +291 -63
  50. package/Trade.cjs +291 -63
  51. package/TradeAuditEvent.cjs +291 -63
  52. package/TradeExecutionHistory.cjs +291 -63
  53. package/User.cjs +291 -63
  54. package/VerificationToken.cjs +291 -63
  55. package/WaitlistEntry.cjs +291 -63
  56. package/esm/ABTest.d.ts.map +1 -1
  57. package/esm/ABTest.js.map +1 -1
  58. package/esm/ABTest.mjs +255 -27
  59. package/esm/Account.d.ts.map +1 -1
  60. package/esm/Account.js.map +1 -1
  61. package/esm/Account.mjs +255 -27
  62. package/esm/AccountLinkingRequest.d.ts.map +1 -1
  63. package/esm/AccountLinkingRequest.js.map +1 -1
  64. package/esm/AccountLinkingRequest.mjs +255 -27
  65. package/esm/Action.d.ts.map +1 -1
  66. package/esm/Action.js.map +1 -1
  67. package/esm/Action.mjs +255 -27
  68. package/esm/Alert.d.ts.map +1 -1
  69. package/esm/Alert.js.map +1 -1
  70. package/esm/Alert.mjs +255 -27
  71. package/esm/Allocation.d.ts.map +1 -1
  72. package/esm/Allocation.js.map +1 -1
  73. package/esm/Allocation.mjs +255 -27
  74. package/esm/AlpacaAccount.d.ts.map +1 -1
  75. package/esm/AlpacaAccount.js.map +1 -1
  76. package/esm/AlpacaAccount.mjs +255 -27
  77. package/esm/AnalyticsConfiguration.d.ts.map +1 -1
  78. package/esm/AnalyticsConfiguration.js.map +1 -1
  79. package/esm/AnalyticsConfiguration.mjs +255 -27
  80. package/esm/AnalyticsSnapshot.d.ts.map +1 -1
  81. package/esm/AnalyticsSnapshot.js.map +1 -1
  82. package/esm/AnalyticsSnapshot.mjs +255 -27
  83. package/esm/Asset.d.ts.map +1 -1
  84. package/esm/Asset.js.map +1 -1
  85. package/esm/Asset.mjs +255 -27
  86. package/esm/AuditLog.d.ts.map +1 -1
  87. package/esm/AuditLog.js.map +1 -1
  88. package/esm/AuditLog.mjs +255 -27
  89. package/esm/Authenticator.d.ts.map +1 -1
  90. package/esm/Authenticator.js.map +1 -1
  91. package/esm/Authenticator.mjs +255 -27
  92. package/esm/Configuration.d.ts.map +1 -1
  93. package/esm/Configuration.js.map +1 -1
  94. package/esm/Configuration.mjs +255 -27
  95. package/esm/ConflictEvent.d.ts.map +1 -1
  96. package/esm/ConflictEvent.js.map +1 -1
  97. package/esm/ConflictEvent.mjs +255 -27
  98. package/esm/ConnectionHealthSnapshot.d.ts.map +1 -1
  99. package/esm/ConnectionHealthSnapshot.js.map +1 -1
  100. package/esm/ConnectionHealthSnapshot.mjs +255 -27
  101. package/esm/Customer.d.ts.map +1 -1
  102. package/esm/Customer.js.map +1 -1
  103. package/esm/Customer.mjs +255 -27
  104. package/esm/DeadLetterMessage.d.ts.map +1 -1
  105. package/esm/DeadLetterMessage.js.map +1 -1
  106. package/esm/DeadLetterMessage.mjs +255 -27
  107. package/esm/EconomicEvent.d.ts.map +1 -1
  108. package/esm/EconomicEvent.js.map +1 -1
  109. package/esm/EconomicEvent.mjs +255 -27
  110. package/esm/Event.d.ts.map +1 -1
  111. package/esm/Event.js.map +1 -1
  112. package/esm/Event.mjs +255 -27
  113. package/esm/EventSnapshot.d.ts.map +1 -1
  114. package/esm/EventSnapshot.js.map +1 -1
  115. package/esm/EventSnapshot.mjs +255 -27
  116. package/esm/FeatureImportanceAnalysis.d.ts.map +1 -1
  117. package/esm/FeatureImportanceAnalysis.js.map +1 -1
  118. package/esm/FeatureImportanceAnalysis.mjs +255 -27
  119. package/esm/InstitutionalFlowSignal.d.ts.map +1 -1
  120. package/esm/InstitutionalFlowSignal.js.map +1 -1
  121. package/esm/InstitutionalFlowSignal.mjs +255 -27
  122. package/esm/InstitutionalHolding.d.ts.map +1 -1
  123. package/esm/InstitutionalHolding.js.map +1 -1
  124. package/esm/InstitutionalHolding.mjs +255 -27
  125. package/esm/InstitutionalSentimentAlerts.d.ts.map +1 -1
  126. package/esm/InstitutionalSentimentAlerts.js.map +1 -1
  127. package/esm/InstitutionalSentimentAlerts.mjs +255 -27
  128. package/esm/InstitutionalSentimentErrors.d.ts.map +1 -1
  129. package/esm/InstitutionalSentimentErrors.js.map +1 -1
  130. package/esm/InstitutionalSentimentErrors.mjs +255 -27
  131. package/esm/InstitutionalSentimentHistory.d.ts.map +1 -1
  132. package/esm/InstitutionalSentimentHistory.js.map +1 -1
  133. package/esm/InstitutionalSentimentHistory.mjs +255 -27
  134. package/esm/InstitutionalSentimentMetrics.d.ts.map +1 -1
  135. package/esm/InstitutionalSentimentMetrics.js.map +1 -1
  136. package/esm/InstitutionalSentimentMetrics.mjs +255 -27
  137. package/esm/InviteToken.d.ts.map +1 -1
  138. package/esm/InviteToken.js.map +1 -1
  139. package/esm/InviteToken.mjs +255 -27
  140. package/esm/LinkedProvider.d.ts.map +1 -1
  141. package/esm/LinkedProvider.js.map +1 -1
  142. package/esm/LinkedProvider.mjs +255 -27
  143. package/esm/MLTrainingData.d.ts.map +1 -1
  144. package/esm/MLTrainingData.js.map +1 -1
  145. package/esm/MLTrainingData.mjs +255 -27
  146. package/esm/MarketSentiment.d.ts.map +1 -1
  147. package/esm/MarketSentiment.js.map +1 -1
  148. package/esm/MarketSentiment.mjs +255 -27
  149. package/esm/ModelArtifact.d.ts.map +1 -1
  150. package/esm/ModelArtifact.js.map +1 -1
  151. package/esm/ModelArtifact.mjs +255 -27
  152. package/esm/ModelVersion.d.ts.map +1 -1
  153. package/esm/ModelVersion.js.map +1 -1
  154. package/esm/ModelVersion.mjs +255 -27
  155. package/esm/ModelVersionArtifact.d.ts.map +1 -1
  156. package/esm/ModelVersionArtifact.js.map +1 -1
  157. package/esm/ModelVersionArtifact.mjs +255 -27
  158. package/esm/NewsArticle.d.ts.map +1 -1
  159. package/esm/NewsArticle.js.map +1 -1
  160. package/esm/NewsArticle.mjs +255 -27
  161. package/esm/NewsArticleAssetSentiment.d.ts.map +1 -1
  162. package/esm/NewsArticleAssetSentiment.js.map +1 -1
  163. package/esm/NewsArticleAssetSentiment.mjs +255 -27
  164. package/esm/OptionsContract.d.ts.map +1 -1
  165. package/esm/OptionsContract.js.map +1 -1
  166. package/esm/OptionsContract.mjs +255 -27
  167. package/esm/OptionsGreeksHistory.d.ts.map +1 -1
  168. package/esm/OptionsGreeksHistory.js.map +1 -1
  169. package/esm/OptionsGreeksHistory.mjs +255 -27
  170. package/esm/OptionsPosition.d.ts.map +1 -1
  171. package/esm/OptionsPosition.js.map +1 -1
  172. package/esm/OptionsPosition.mjs +255 -27
  173. package/esm/OptionsTradeExecution.d.ts.map +1 -1
  174. package/esm/OptionsTradeExecution.js.map +1 -1
  175. package/esm/OptionsTradeExecution.mjs +255 -27
  176. package/esm/PortfolioGreeksHistory.d.ts.map +1 -1
  177. package/esm/PortfolioGreeksHistory.js.map +1 -1
  178. package/esm/PortfolioGreeksHistory.mjs +255 -27
  179. package/esm/ScheduledOptionOrder.d.ts.map +1 -1
  180. package/esm/ScheduledOptionOrder.js.map +1 -1
  181. package/esm/ScheduledOptionOrder.mjs +255 -27
  182. package/esm/Session.d.ts.map +1 -1
  183. package/esm/Session.js.map +1 -1
  184. package/esm/Session.mjs +255 -27
  185. package/esm/SignalGeneratorMetrics.d.ts.map +1 -1
  186. package/esm/SignalGeneratorMetrics.js.map +1 -1
  187. package/esm/SignalGeneratorMetrics.mjs +255 -27
  188. package/esm/SignalLineage.d.ts.map +1 -1
  189. package/esm/SignalLineage.js.map +1 -1
  190. package/esm/SignalLineage.mjs +255 -27
  191. package/esm/SignalOutcome.d.ts.map +1 -1
  192. package/esm/SignalOutcome.js.map +1 -1
  193. package/esm/SignalOutcome.mjs +255 -27
  194. package/esm/SignalPriorityQueue.d.ts.map +1 -1
  195. package/esm/SignalPriorityQueue.js.map +1 -1
  196. package/esm/SignalPriorityQueue.mjs +255 -27
  197. package/esm/SyncEvent.d.ts.map +1 -1
  198. package/esm/SyncEvent.js.map +1 -1
  199. package/esm/SyncEvent.mjs +255 -27
  200. package/esm/SystemAlert.d.ts.map +1 -1
  201. package/esm/SystemAlert.js.map +1 -1
  202. package/esm/SystemAlert.mjs +255 -27
  203. package/esm/Trade.d.ts.map +1 -1
  204. package/esm/Trade.js.map +1 -1
  205. package/esm/Trade.mjs +255 -27
  206. package/esm/TradeAuditEvent.d.ts.map +1 -1
  207. package/esm/TradeAuditEvent.js.map +1 -1
  208. package/esm/TradeAuditEvent.mjs +255 -27
  209. package/esm/TradeExecutionHistory.d.ts.map +1 -1
  210. package/esm/TradeExecutionHistory.js.map +1 -1
  211. package/esm/TradeExecutionHistory.mjs +255 -27
  212. package/esm/User.d.ts.map +1 -1
  213. package/esm/User.js.map +1 -1
  214. package/esm/User.mjs +255 -27
  215. package/esm/VerificationToken.d.ts.map +1 -1
  216. package/esm/VerificationToken.js.map +1 -1
  217. package/esm/VerificationToken.mjs +255 -27
  218. package/esm/WaitlistEntry.d.ts.map +1 -1
  219. package/esm/WaitlistEntry.js.map +1 -1
  220. package/esm/WaitlistEntry.mjs +255 -27
  221. package/esm/middleware/audit-logger.d.ts +0 -7
  222. package/esm/middleware/audit-logger.d.ts.map +1 -1
  223. package/esm/middleware/audit-logger.js.map +1 -1
  224. package/esm/middleware/audit-logger.mjs +5 -3
  225. package/esm/prismaClient.d.ts.map +1 -1
  226. package/esm/prismaClient.js.map +1 -1
  227. package/esm/prismaClient.mjs +38 -9
  228. package/package.json +1 -1
  229. package/prismaClient.cjs +38 -9
@@ -112,6 +112,27 @@ export const TradeAuditEvent = {
112
112
  }
113
113
  catch (error) {
114
114
  lastError = error;
115
+ // Check for constraint violations FIRST - these are NEVER retryable
116
+ const isConstraintViolation = error.message?.includes('violates check constraint') ||
117
+ error.message?.includes('violates unique constraint') ||
118
+ error.message?.includes('violates foreign key constraint') ||
119
+ error.message?.includes('unique constraint') ||
120
+ error.message?.includes('23514') ||
121
+ error.message?.includes('23505') ||
122
+ error.message?.includes('P2002') ||
123
+ error.message?.includes('P2003');
124
+ if (isConstraintViolation) {
125
+ const constraintMatch = error.message?.match(/constraint\s+"([^"]+)"/);
126
+ logger.error("Non-retryable constraint violation in createOneTradeAuditEvent", {
127
+ operation: 'createOneTradeAuditEvent',
128
+ model: 'TradeAuditEvent',
129
+ error: String(error),
130
+ constraintName: constraintMatch ? constraintMatch[1] : undefined,
131
+ errorCategory: 'CONSTRAINT_VIOLATION',
132
+ isRetryable: false,
133
+ });
134
+ throw error;
135
+ }
115
136
  // Check if this is a database connection error that we should retry
116
137
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
117
138
  error.message?.includes('Cannot reach database server') ||
@@ -121,12 +142,22 @@ export const TradeAuditEvent = {
121
142
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
122
143
  retryCount++;
123
144
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
124
- logger.warn("Database connection error, retrying...");
145
+ logger.warn("Database connection error in createOneTradeAuditEvent, retrying...", {
146
+ operation: 'createOneTradeAuditEvent',
147
+ model: 'TradeAuditEvent',
148
+ attempt: retryCount,
149
+ maxRetries: MAX_RETRIES,
150
+ });
125
151
  await new Promise(resolve => setTimeout(resolve, delay));
126
152
  continue;
127
153
  }
128
- // Log the error and rethrow
129
- logger.error("Database error occurred", { error: String(error) });
154
+ // Log structured error details and rethrow
155
+ logger.error("Database create operation failed", {
156
+ operation: 'createOneTradeAuditEvent',
157
+ model: 'TradeAuditEvent',
158
+ error: String(error),
159
+ isRetryable: isConnectionError,
160
+ });
130
161
  throw error;
131
162
  }
132
163
  }
@@ -205,6 +236,27 @@ export const TradeAuditEvent = {
205
236
  }
206
237
  catch (error) {
207
238
  lastError = error;
239
+ // Check for constraint violations FIRST - these are NEVER retryable
240
+ const isConstraintViolation = error.message?.includes('violates check constraint') ||
241
+ error.message?.includes('violates unique constraint') ||
242
+ error.message?.includes('violates foreign key constraint') ||
243
+ error.message?.includes('unique constraint') ||
244
+ error.message?.includes('23514') ||
245
+ error.message?.includes('23505') ||
246
+ error.message?.includes('P2002') ||
247
+ error.message?.includes('P2003');
248
+ if (isConstraintViolation) {
249
+ const constraintMatch = error.message?.match(/constraint\s+"([^"]+)"/);
250
+ logger.error("Non-retryable constraint violation in createManyTradeAuditEvent", {
251
+ operation: 'createManyTradeAuditEvent',
252
+ model: 'TradeAuditEvent',
253
+ error: String(error),
254
+ constraintName: constraintMatch ? constraintMatch[1] : undefined,
255
+ errorCategory: 'CONSTRAINT_VIOLATION',
256
+ isRetryable: false,
257
+ });
258
+ throw error;
259
+ }
208
260
  // Check if this is a database connection error that we should retry
209
261
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
210
262
  error.message?.includes('Cannot reach database server') ||
@@ -214,12 +266,22 @@ export const TradeAuditEvent = {
214
266
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
215
267
  retryCount++;
216
268
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
217
- logger.warn("Database connection error, retrying...");
269
+ logger.warn("Database connection error in createManyTradeAuditEvent, retrying...", {
270
+ operation: 'createManyTradeAuditEvent',
271
+ model: 'TradeAuditEvent',
272
+ attempt: retryCount,
273
+ maxRetries: MAX_RETRIES,
274
+ });
218
275
  await new Promise(resolve => setTimeout(resolve, delay));
219
276
  continue;
220
277
  }
221
- // Log the error and rethrow
222
- logger.error("Database error occurred", { error: String(error) });
278
+ // Log structured error details and rethrow
279
+ logger.error("Database createMany operation failed", {
280
+ operation: 'createManyTradeAuditEvent',
281
+ model: 'TradeAuditEvent',
282
+ error: String(error),
283
+ isRetryable: isConnectionError,
284
+ });
223
285
  throw error;
224
286
  }
225
287
  }
@@ -376,6 +438,28 @@ export const TradeAuditEvent = {
376
438
  }
377
439
  catch (error) {
378
440
  lastError = error;
441
+ // Check for constraint violations FIRST - these are NEVER retryable
442
+ const isConstraintViolation = error.message?.includes('violates check constraint') ||
443
+ error.message?.includes('violates unique constraint') ||
444
+ error.message?.includes('violates foreign key constraint') ||
445
+ error.message?.includes('unique constraint') ||
446
+ error.message?.includes('23514') ||
447
+ error.message?.includes('23505') ||
448
+ error.message?.includes('P2002') ||
449
+ error.message?.includes('P2003');
450
+ if (isConstraintViolation) {
451
+ const constraintMatch = error.message?.match(/constraint\s+"([^"]+)"/);
452
+ logger.error("Non-retryable constraint violation in updateOneTradeAuditEvent", {
453
+ operation: 'updateOneTradeAuditEvent',
454
+ model: 'TradeAuditEvent',
455
+ error: String(error),
456
+ recordId: props.id,
457
+ constraintName: constraintMatch ? constraintMatch[1] : undefined,
458
+ errorCategory: 'CONSTRAINT_VIOLATION',
459
+ isRetryable: false,
460
+ });
461
+ throw error;
462
+ }
379
463
  // Check if this is a database connection error that we should retry
380
464
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
381
465
  error.message?.includes('Cannot reach database server') ||
@@ -385,12 +469,24 @@ export const TradeAuditEvent = {
385
469
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
386
470
  retryCount++;
387
471
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
388
- logger.warn("Database connection error, retrying...");
472
+ logger.warn("Database connection error in updateOneTradeAuditEvent, retrying...", {
473
+ operation: 'updateOneTradeAuditEvent',
474
+ model: 'TradeAuditEvent',
475
+ attempt: retryCount,
476
+ maxRetries: MAX_RETRIES,
477
+ recordId: props.id,
478
+ });
389
479
  await new Promise(resolve => setTimeout(resolve, delay));
390
480
  continue;
391
481
  }
392
- // Log the error and rethrow
393
- logger.error("Database error occurred", { error: String(error) });
482
+ // Log structured error details and rethrow
483
+ logger.error("Database update operation failed", {
484
+ operation: 'updateOneTradeAuditEvent',
485
+ model: 'TradeAuditEvent',
486
+ error: String(error),
487
+ recordId: props.id,
488
+ isRetryable: isConnectionError,
489
+ });
394
490
  throw error;
395
491
  }
396
492
  }
@@ -565,6 +661,28 @@ export const TradeAuditEvent = {
565
661
  }
566
662
  catch (error) {
567
663
  lastError = error;
664
+ // Check for constraint violations FIRST - these are NEVER retryable
665
+ const isConstraintViolation = error.message?.includes('violates check constraint') ||
666
+ error.message?.includes('violates unique constraint') ||
667
+ error.message?.includes('violates foreign key constraint') ||
668
+ error.message?.includes('unique constraint') ||
669
+ error.message?.includes('23514') ||
670
+ error.message?.includes('23505') ||
671
+ error.message?.includes('P2002') ||
672
+ error.message?.includes('P2003');
673
+ if (isConstraintViolation) {
674
+ const constraintMatch = error.message?.match(/constraint\s+"([^"]+)"/);
675
+ logger.error("Non-retryable constraint violation in upsertOneTradeAuditEvent", {
676
+ operation: 'upsertOneTradeAuditEvent',
677
+ model: 'TradeAuditEvent',
678
+ error: String(error),
679
+ recordId: props.id,
680
+ constraintName: constraintMatch ? constraintMatch[1] : undefined,
681
+ errorCategory: 'CONSTRAINT_VIOLATION',
682
+ isRetryable: false,
683
+ });
684
+ throw error;
685
+ }
568
686
  // Check if this is a database connection error that we should retry
569
687
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
570
688
  error.message?.includes('Cannot reach database server') ||
@@ -574,12 +692,24 @@ export const TradeAuditEvent = {
574
692
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
575
693
  retryCount++;
576
694
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
577
- logger.warn("Database connection error, retrying...");
695
+ logger.warn("Database connection error in upsertOneTradeAuditEvent, retrying...", {
696
+ operation: 'upsertOneTradeAuditEvent',
697
+ model: 'TradeAuditEvent',
698
+ attempt: retryCount,
699
+ maxRetries: MAX_RETRIES,
700
+ recordId: props.id,
701
+ });
578
702
  await new Promise(resolve => setTimeout(resolve, delay));
579
703
  continue;
580
704
  }
581
- // Log the error and rethrow
582
- logger.error("Database error occurred", { error: String(error) });
705
+ // Log structured error details and rethrow
706
+ logger.error("Database upsert operation failed", {
707
+ operation: 'upsertOneTradeAuditEvent',
708
+ model: 'TradeAuditEvent',
709
+ error: String(error),
710
+ recordId: props.id,
711
+ isRetryable: isConnectionError,
712
+ });
583
713
  throw error;
584
714
  }
585
715
  }
@@ -736,6 +866,27 @@ export const TradeAuditEvent = {
736
866
  }
737
867
  catch (error) {
738
868
  lastError = error;
869
+ // Check for constraint violations FIRST - these are NEVER retryable
870
+ const isConstraintViolation = error.message?.includes('violates check constraint') ||
871
+ error.message?.includes('violates unique constraint') ||
872
+ error.message?.includes('violates foreign key constraint') ||
873
+ error.message?.includes('unique constraint') ||
874
+ error.message?.includes('23514') ||
875
+ error.message?.includes('23505') ||
876
+ error.message?.includes('P2002') ||
877
+ error.message?.includes('P2003');
878
+ if (isConstraintViolation) {
879
+ const constraintMatch = error.message?.match(/constraint\s+"([^"]+)"/);
880
+ logger.error("Non-retryable constraint violation in updateManyTradeAuditEvent", {
881
+ operation: 'updateManyTradeAuditEvent',
882
+ model: 'TradeAuditEvent',
883
+ error: String(error),
884
+ constraintName: constraintMatch ? constraintMatch[1] : undefined,
885
+ errorCategory: 'CONSTRAINT_VIOLATION',
886
+ isRetryable: false,
887
+ });
888
+ throw error;
889
+ }
739
890
  // Check if this is a database connection error that we should retry
740
891
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
741
892
  error.message?.includes('Cannot reach database server') ||
@@ -745,12 +896,22 @@ export const TradeAuditEvent = {
745
896
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
746
897
  retryCount++;
747
898
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
748
- logger.warn("Database connection error, retrying...");
899
+ logger.warn("Database connection error in updateManyTradeAuditEvent, retrying...", {
900
+ operation: 'updateManyTradeAuditEvent',
901
+ model: 'TradeAuditEvent',
902
+ attempt: retryCount,
903
+ maxRetries: MAX_RETRIES,
904
+ });
749
905
  await new Promise(resolve => setTimeout(resolve, delay));
750
906
  continue;
751
907
  }
752
- // Log the error and rethrow
753
- logger.error("Database error occurred", { error: String(error) });
908
+ // Log structured error details and rethrow
909
+ logger.error("Database updateMany operation failed", {
910
+ operation: 'updateManyTradeAuditEvent',
911
+ model: 'TradeAuditEvent',
912
+ error: String(error),
913
+ isRetryable: isConnectionError,
914
+ });
754
915
  throw error;
755
916
  }
756
917
  }
@@ -808,6 +969,31 @@ export const TradeAuditEvent = {
808
969
  }
809
970
  catch (error) {
810
971
  lastError = error;
972
+ // Check for constraint violations FIRST - these are NEVER retryable
973
+ // (e.g., foreign key constraints preventing deletion)
974
+ const isConstraintViolation = error.message?.includes('violates check constraint') ||
975
+ error.message?.includes('violates unique constraint') ||
976
+ error.message?.includes('violates foreign key constraint') ||
977
+ error.message?.includes('unique constraint') ||
978
+ error.message?.includes('23514') ||
979
+ error.message?.includes('23505') ||
980
+ error.message?.includes('23503') ||
981
+ error.message?.includes('P2002') ||
982
+ error.message?.includes('P2003') ||
983
+ error.message?.includes('P2014');
984
+ if (isConstraintViolation) {
985
+ const constraintMatch = error.message?.match(/constraint\s+"([^"]+)"/);
986
+ logger.error("Non-retryable constraint violation in deleteOneTradeAuditEvent", {
987
+ operation: 'deleteOneTradeAuditEvent',
988
+ model: 'TradeAuditEvent',
989
+ error: String(error),
990
+ recordId: props.id,
991
+ constraintName: constraintMatch ? constraintMatch[1] : undefined,
992
+ errorCategory: 'CONSTRAINT_VIOLATION',
993
+ isRetryable: false,
994
+ });
995
+ throw error;
996
+ }
811
997
  // Check if this is a database connection error that we should retry
812
998
  const isConnectionError = error.message?.includes('Server has closed the connection') ||
813
999
  error.message?.includes('Cannot reach database server') ||
@@ -817,12 +1003,24 @@ export const TradeAuditEvent = {
817
1003
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
818
1004
  retryCount++;
819
1005
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
820
- logger.warn("Database connection error, retrying...");
1006
+ logger.warn("Database connection error in deleteOneTradeAuditEvent, retrying...", {
1007
+ operation: 'deleteOneTradeAuditEvent',
1008
+ model: 'TradeAuditEvent',
1009
+ attempt: retryCount,
1010
+ maxRetries: MAX_RETRIES,
1011
+ recordId: props.id,
1012
+ });
821
1013
  await new Promise(resolve => setTimeout(resolve, delay));
822
1014
  continue;
823
1015
  }
824
- // Log the error and rethrow
825
- logger.error("Database error occurred", { error: String(error) });
1016
+ // Log structured error details and rethrow
1017
+ logger.error("Database delete operation failed", {
1018
+ operation: 'deleteOneTradeAuditEvent',
1019
+ model: 'TradeAuditEvent',
1020
+ error: String(error),
1021
+ recordId: props.id,
1022
+ isRetryable: isConnectionError,
1023
+ });
826
1024
  throw error;
827
1025
  }
828
1026
  }
@@ -913,12 +1111,22 @@ export const TradeAuditEvent = {
913
1111
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
914
1112
  retryCount++;
915
1113
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
916
- logger.warn("Database connection error, retrying...");
1114
+ logger.warn("Database connection error in getTradeAuditEvent, retrying...", {
1115
+ operation: 'getTradeAuditEvent',
1116
+ model: 'TradeAuditEvent',
1117
+ attempt: retryCount,
1118
+ maxRetries: MAX_RETRIES,
1119
+ });
917
1120
  await new Promise(resolve => setTimeout(resolve, delay));
918
1121
  continue;
919
1122
  }
920
- // Log the error and rethrow
921
- logger.error("Database error occurred", { error: String(error) });
1123
+ // Log structured error details and rethrow
1124
+ logger.error("Database get operation failed", {
1125
+ operation: 'getTradeAuditEvent',
1126
+ model: 'TradeAuditEvent',
1127
+ error: String(error),
1128
+ isRetryable: isConnectionError,
1129
+ });
922
1130
  throw error;
923
1131
  }
924
1132
  }
@@ -975,12 +1183,22 @@ export const TradeAuditEvent = {
975
1183
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
976
1184
  retryCount++;
977
1185
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
978
- logger.warn("Database connection error, retrying...");
1186
+ logger.warn("Database connection error in getAllTradeAuditEvent, retrying...", {
1187
+ operation: 'getAllTradeAuditEvent',
1188
+ model: 'TradeAuditEvent',
1189
+ attempt: retryCount,
1190
+ maxRetries: MAX_RETRIES,
1191
+ });
979
1192
  await new Promise(resolve => setTimeout(resolve, delay));
980
1193
  continue;
981
1194
  }
982
- // Log the error and rethrow
983
- logger.error("Database error occurred", { error: String(error) });
1195
+ // Log structured error details and rethrow
1196
+ logger.error("Database getAll operation failed", {
1197
+ operation: 'getAllTradeAuditEvent',
1198
+ model: 'TradeAuditEvent',
1199
+ error: String(error),
1200
+ isRetryable: isConnectionError,
1201
+ });
984
1202
  throw error;
985
1203
  }
986
1204
  }
@@ -1080,12 +1298,22 @@ export const TradeAuditEvent = {
1080
1298
  if (isConnectionError && retryCount < MAX_RETRIES - 1) {
1081
1299
  retryCount++;
1082
1300
  const delay = Math.pow(2, retryCount) * 100; // Exponential backoff: 200ms, 400ms, 800ms
1083
- logger.warn("Database connection error, retrying...");
1301
+ logger.warn("Database connection error in findManyTradeAuditEvent, retrying...", {
1302
+ operation: 'findManyTradeAuditEvent',
1303
+ model: 'TradeAuditEvent',
1304
+ attempt: retryCount,
1305
+ maxRetries: MAX_RETRIES,
1306
+ });
1084
1307
  await new Promise(resolve => setTimeout(resolve, delay));
1085
1308
  continue;
1086
1309
  }
1087
- // Log the error and rethrow
1088
- logger.error("Database error occurred", { error: String(error) });
1310
+ // Log structured error details and rethrow
1311
+ logger.error("Database findMany operation failed", {
1312
+ operation: 'findManyTradeAuditEvent',
1313
+ model: 'TradeAuditEvent',
1314
+ error: String(error),
1315
+ isRetryable: isConnectionError,
1316
+ });
1089
1317
  throw error;
1090
1318
  }
1091
1319
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TradeExecutionHistory.d.ts","sourceRoot":"","sources":["../../src/TradeExecutionHistory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,IAAI,yBAAyB,EAAE,MAAM,6DAA6D,CAAC;AACjI,OAAO,EAA4B,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AAoB7G,eAAO,MAAM,qBAAqB;IAEhC;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAiF5I;;;;;;OAMG;sBACqB,yBAAyB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IA+E/I;;;;;;OAMG;kBACiB,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAkG1I;;;;;;OAMG;kBACiB,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAmG1I;;;;;;OAMG;sBACqB,yBAAyB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAoG/I;;;;;;OAMG;kBACiB,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,yBAAyB,CAAC;IA2E1I;;;;;;;OAOG;eACc,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC;IA0EhK;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,yBAAyB,EAAE,GAAG,IAAI,CAAC;IAkEjH;;;;;;;OAOG;oBACmB,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,yBAAyB,EAAE,GAAG,IAAI,CAAC;CAgFxK,CAAC"}
1
+ {"version":3,"file":"TradeExecutionHistory.d.ts","sourceRoot":"","sources":["../../src/TradeExecutionHistory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,IAAI,yBAAyB,EAAE,MAAM,6DAA6D,CAAC;AACjI,OAAO,EAA4B,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AAoB7G,eAAO,MAAM,qBAAqB;IAEhC;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAmH5I;;;;;;OAMG;sBACqB,yBAAyB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAiH/I;;;;;;OAMG;kBACiB,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAuI1I;;;;;;OAMG;kBACiB,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAwI1I;;;;;;OAMG;sBACqB,yBAAyB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAsI/I;;;;;;OAMG;kBACiB,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAmH1I;;;;;;;OAOG;eACc,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC;IAoFhK;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,yBAAyB,EAAE,GAAG,IAAI,CAAC;IA4EjH;;;;;;;OAOG;oBACmB,yBAAyB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,GAAG,GAAG,OAAO,CAAC,yBAAyB,EAAE,GAAG,IAAI,CAAC;CA0FxK,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"TradeExecutionHistory.js","sourceRoot":"","sources":["../../src/TradeExecutionHistory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TradeExecutionHistory.js","sourceRoot":"","sources":["../../src/TradeExecutionHistory.ts"],"names":[],"mappings":"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"}