@adaptic/backend-legacy 0.0.960 → 0.0.962

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 (269) hide show
  1. package/ABTest.cjs +180 -66
  2. package/Account.cjs +180 -66
  3. package/AccountDecisionRecord.cjs +180 -66
  4. package/AccountLinkingRequest.cjs +180 -66
  5. package/Action.cjs +180 -66
  6. package/Alert.cjs +180 -66
  7. package/Allocation.cjs +180 -66
  8. package/AlpacaAccount.cjs +180 -66
  9. package/AnalyticsConfiguration.cjs +180 -66
  10. package/AnalyticsSnapshot.cjs +180 -66
  11. package/Asset.cjs +180 -66
  12. package/AuditLog.cjs +180 -66
  13. package/Authenticator.cjs +180 -66
  14. package/Configuration.cjs +180 -66
  15. package/ConflictEvent.cjs +180 -66
  16. package/ConnectionHealthSnapshot.cjs +180 -66
  17. package/Customer.cjs +180 -66
  18. package/DeadLetterMessage.cjs +180 -66
  19. package/DecisionMemorySummary.cjs +180 -66
  20. package/EconomicEvent.cjs +180 -66
  21. package/EquityBar.cjs +180 -66
  22. package/Event.cjs +180 -66
  23. package/EventSnapshot.cjs +180 -66
  24. package/FeatureImportanceAnalysis.cjs +180 -66
  25. package/InstitutionalFlowSignal.cjs +180 -66
  26. package/InstitutionalHolding.cjs +180 -66
  27. package/InstitutionalSentimentAlerts.cjs +180 -66
  28. package/InstitutionalSentimentErrors.cjs +180 -66
  29. package/InstitutionalSentimentHistory.cjs +180 -66
  30. package/InstitutionalSentimentMetrics.cjs +180 -66
  31. package/InviteToken.cjs +180 -66
  32. package/LinkedProvider.cjs +180 -66
  33. package/LlmConfiguration.cjs +180 -66
  34. package/MLModelVersion.cjs +180 -66
  35. package/MLTrainingData.cjs +180 -66
  36. package/MarketSentiment.cjs +180 -66
  37. package/ModelArtifact.cjs +180 -66
  38. package/ModelVersion.cjs +180 -66
  39. package/ModelVersionArtifact.cjs +180 -66
  40. package/NewsArticle.cjs +180 -66
  41. package/NewsArticleAssetSentiment.cjs +180 -66
  42. package/OptionsContract.cjs +180 -66
  43. package/OptionsGreeksHistory.cjs +180 -66
  44. package/OptionsPosition.cjs +180 -66
  45. package/OptionsPositionEvent.cjs +180 -66
  46. package/OptionsTradeExecution.cjs +180 -66
  47. package/PolicyOverlay.cjs +180 -66
  48. package/PortfolioGreeksHistory.cjs +180 -66
  49. package/ScheduledOptionOrder.cjs +180 -66
  50. package/Session.cjs +180 -66
  51. package/SignalGeneratorMetrics.cjs +180 -66
  52. package/SignalLineage.cjs +180 -66
  53. package/SignalOutcome.cjs +180 -66
  54. package/SignalPriorityQueue.cjs +180 -66
  55. package/SyncEvent.cjs +180 -66
  56. package/SystemAlert.cjs +180 -66
  57. package/Trade.cjs +180 -66
  58. package/TradeAuditEvent.cjs +180 -66
  59. package/TradeExecutionHistory.cjs +180 -66
  60. package/TradeOutcome.cjs +180 -66
  61. package/TradingPolicy.cjs +180 -66
  62. package/User.cjs +180 -66
  63. package/VerificationToken.cjs +180 -66
  64. package/WaitlistEntry.cjs +180 -66
  65. package/client.cjs +131 -9
  66. package/client.d.ts +32 -0
  67. package/esm/ABTest.d.ts.map +1 -1
  68. package/esm/ABTest.js.map +1 -1
  69. package/esm/ABTest.mjs +180 -66
  70. package/esm/Account.d.ts.map +1 -1
  71. package/esm/Account.js.map +1 -1
  72. package/esm/Account.mjs +180 -66
  73. package/esm/AccountDecisionRecord.d.ts.map +1 -1
  74. package/esm/AccountDecisionRecord.js.map +1 -1
  75. package/esm/AccountDecisionRecord.mjs +180 -66
  76. package/esm/AccountLinkingRequest.d.ts.map +1 -1
  77. package/esm/AccountLinkingRequest.js.map +1 -1
  78. package/esm/AccountLinkingRequest.mjs +180 -66
  79. package/esm/Action.d.ts.map +1 -1
  80. package/esm/Action.js.map +1 -1
  81. package/esm/Action.mjs +180 -66
  82. package/esm/Alert.d.ts.map +1 -1
  83. package/esm/Alert.js.map +1 -1
  84. package/esm/Alert.mjs +180 -66
  85. package/esm/Allocation.d.ts.map +1 -1
  86. package/esm/Allocation.js.map +1 -1
  87. package/esm/Allocation.mjs +180 -66
  88. package/esm/AlpacaAccount.d.ts.map +1 -1
  89. package/esm/AlpacaAccount.js.map +1 -1
  90. package/esm/AlpacaAccount.mjs +180 -66
  91. package/esm/AnalyticsConfiguration.d.ts.map +1 -1
  92. package/esm/AnalyticsConfiguration.js.map +1 -1
  93. package/esm/AnalyticsConfiguration.mjs +180 -66
  94. package/esm/AnalyticsSnapshot.d.ts.map +1 -1
  95. package/esm/AnalyticsSnapshot.js.map +1 -1
  96. package/esm/AnalyticsSnapshot.mjs +180 -66
  97. package/esm/Asset.d.ts.map +1 -1
  98. package/esm/Asset.js.map +1 -1
  99. package/esm/Asset.mjs +180 -66
  100. package/esm/AuditLog.d.ts.map +1 -1
  101. package/esm/AuditLog.js.map +1 -1
  102. package/esm/AuditLog.mjs +180 -66
  103. package/esm/Authenticator.d.ts.map +1 -1
  104. package/esm/Authenticator.js.map +1 -1
  105. package/esm/Authenticator.mjs +180 -66
  106. package/esm/Configuration.d.ts.map +1 -1
  107. package/esm/Configuration.js.map +1 -1
  108. package/esm/Configuration.mjs +180 -66
  109. package/esm/ConflictEvent.d.ts.map +1 -1
  110. package/esm/ConflictEvent.js.map +1 -1
  111. package/esm/ConflictEvent.mjs +180 -66
  112. package/esm/ConnectionHealthSnapshot.d.ts.map +1 -1
  113. package/esm/ConnectionHealthSnapshot.js.map +1 -1
  114. package/esm/ConnectionHealthSnapshot.mjs +180 -66
  115. package/esm/Customer.d.ts.map +1 -1
  116. package/esm/Customer.js.map +1 -1
  117. package/esm/Customer.mjs +180 -66
  118. package/esm/DeadLetterMessage.d.ts.map +1 -1
  119. package/esm/DeadLetterMessage.js.map +1 -1
  120. package/esm/DeadLetterMessage.mjs +180 -66
  121. package/esm/DecisionMemorySummary.d.ts.map +1 -1
  122. package/esm/DecisionMemorySummary.js.map +1 -1
  123. package/esm/DecisionMemorySummary.mjs +180 -66
  124. package/esm/EconomicEvent.d.ts.map +1 -1
  125. package/esm/EconomicEvent.js.map +1 -1
  126. package/esm/EconomicEvent.mjs +180 -66
  127. package/esm/EquityBar.d.ts.map +1 -1
  128. package/esm/EquityBar.js.map +1 -1
  129. package/esm/EquityBar.mjs +180 -66
  130. package/esm/Event.d.ts.map +1 -1
  131. package/esm/Event.js.map +1 -1
  132. package/esm/Event.mjs +180 -66
  133. package/esm/EventSnapshot.d.ts.map +1 -1
  134. package/esm/EventSnapshot.js.map +1 -1
  135. package/esm/EventSnapshot.mjs +180 -66
  136. package/esm/FeatureImportanceAnalysis.d.ts.map +1 -1
  137. package/esm/FeatureImportanceAnalysis.js.map +1 -1
  138. package/esm/FeatureImportanceAnalysis.mjs +180 -66
  139. package/esm/InstitutionalFlowSignal.d.ts.map +1 -1
  140. package/esm/InstitutionalFlowSignal.js.map +1 -1
  141. package/esm/InstitutionalFlowSignal.mjs +180 -66
  142. package/esm/InstitutionalHolding.d.ts.map +1 -1
  143. package/esm/InstitutionalHolding.js.map +1 -1
  144. package/esm/InstitutionalHolding.mjs +180 -66
  145. package/esm/InstitutionalSentimentAlerts.d.ts.map +1 -1
  146. package/esm/InstitutionalSentimentAlerts.js.map +1 -1
  147. package/esm/InstitutionalSentimentAlerts.mjs +180 -66
  148. package/esm/InstitutionalSentimentErrors.d.ts.map +1 -1
  149. package/esm/InstitutionalSentimentErrors.js.map +1 -1
  150. package/esm/InstitutionalSentimentErrors.mjs +180 -66
  151. package/esm/InstitutionalSentimentHistory.d.ts.map +1 -1
  152. package/esm/InstitutionalSentimentHistory.js.map +1 -1
  153. package/esm/InstitutionalSentimentHistory.mjs +180 -66
  154. package/esm/InstitutionalSentimentMetrics.d.ts.map +1 -1
  155. package/esm/InstitutionalSentimentMetrics.js.map +1 -1
  156. package/esm/InstitutionalSentimentMetrics.mjs +180 -66
  157. package/esm/InviteToken.d.ts.map +1 -1
  158. package/esm/InviteToken.js.map +1 -1
  159. package/esm/InviteToken.mjs +180 -66
  160. package/esm/LinkedProvider.d.ts.map +1 -1
  161. package/esm/LinkedProvider.js.map +1 -1
  162. package/esm/LinkedProvider.mjs +180 -66
  163. package/esm/LlmConfiguration.d.ts.map +1 -1
  164. package/esm/LlmConfiguration.js.map +1 -1
  165. package/esm/LlmConfiguration.mjs +180 -66
  166. package/esm/MLModelVersion.d.ts.map +1 -1
  167. package/esm/MLModelVersion.js.map +1 -1
  168. package/esm/MLModelVersion.mjs +180 -66
  169. package/esm/MLTrainingData.d.ts.map +1 -1
  170. package/esm/MLTrainingData.js.map +1 -1
  171. package/esm/MLTrainingData.mjs +180 -66
  172. package/esm/MarketSentiment.d.ts.map +1 -1
  173. package/esm/MarketSentiment.js.map +1 -1
  174. package/esm/MarketSentiment.mjs +180 -66
  175. package/esm/ModelArtifact.d.ts.map +1 -1
  176. package/esm/ModelArtifact.js.map +1 -1
  177. package/esm/ModelArtifact.mjs +180 -66
  178. package/esm/ModelVersion.d.ts.map +1 -1
  179. package/esm/ModelVersion.js.map +1 -1
  180. package/esm/ModelVersion.mjs +180 -66
  181. package/esm/ModelVersionArtifact.d.ts.map +1 -1
  182. package/esm/ModelVersionArtifact.js.map +1 -1
  183. package/esm/ModelVersionArtifact.mjs +180 -66
  184. package/esm/NewsArticle.d.ts.map +1 -1
  185. package/esm/NewsArticle.js.map +1 -1
  186. package/esm/NewsArticle.mjs +180 -66
  187. package/esm/NewsArticleAssetSentiment.d.ts.map +1 -1
  188. package/esm/NewsArticleAssetSentiment.js.map +1 -1
  189. package/esm/NewsArticleAssetSentiment.mjs +180 -66
  190. package/esm/OptionsContract.d.ts.map +1 -1
  191. package/esm/OptionsContract.js.map +1 -1
  192. package/esm/OptionsContract.mjs +180 -66
  193. package/esm/OptionsGreeksHistory.d.ts.map +1 -1
  194. package/esm/OptionsGreeksHistory.js.map +1 -1
  195. package/esm/OptionsGreeksHistory.mjs +180 -66
  196. package/esm/OptionsPosition.d.ts.map +1 -1
  197. package/esm/OptionsPosition.js.map +1 -1
  198. package/esm/OptionsPosition.mjs +180 -66
  199. package/esm/OptionsPositionEvent.d.ts.map +1 -1
  200. package/esm/OptionsPositionEvent.js.map +1 -1
  201. package/esm/OptionsPositionEvent.mjs +180 -66
  202. package/esm/OptionsTradeExecution.d.ts.map +1 -1
  203. package/esm/OptionsTradeExecution.js.map +1 -1
  204. package/esm/OptionsTradeExecution.mjs +180 -66
  205. package/esm/PolicyOverlay.d.ts.map +1 -1
  206. package/esm/PolicyOverlay.js.map +1 -1
  207. package/esm/PolicyOverlay.mjs +180 -66
  208. package/esm/PortfolioGreeksHistory.d.ts.map +1 -1
  209. package/esm/PortfolioGreeksHistory.js.map +1 -1
  210. package/esm/PortfolioGreeksHistory.mjs +180 -66
  211. package/esm/ScheduledOptionOrder.d.ts.map +1 -1
  212. package/esm/ScheduledOptionOrder.js.map +1 -1
  213. package/esm/ScheduledOptionOrder.mjs +180 -66
  214. package/esm/Session.d.ts.map +1 -1
  215. package/esm/Session.js.map +1 -1
  216. package/esm/Session.mjs +180 -66
  217. package/esm/SignalGeneratorMetrics.d.ts.map +1 -1
  218. package/esm/SignalGeneratorMetrics.js.map +1 -1
  219. package/esm/SignalGeneratorMetrics.mjs +180 -66
  220. package/esm/SignalLineage.d.ts.map +1 -1
  221. package/esm/SignalLineage.js.map +1 -1
  222. package/esm/SignalLineage.mjs +180 -66
  223. package/esm/SignalOutcome.d.ts.map +1 -1
  224. package/esm/SignalOutcome.js.map +1 -1
  225. package/esm/SignalOutcome.mjs +180 -66
  226. package/esm/SignalPriorityQueue.d.ts.map +1 -1
  227. package/esm/SignalPriorityQueue.js.map +1 -1
  228. package/esm/SignalPriorityQueue.mjs +180 -66
  229. package/esm/SyncEvent.d.ts.map +1 -1
  230. package/esm/SyncEvent.js.map +1 -1
  231. package/esm/SyncEvent.mjs +180 -66
  232. package/esm/SystemAlert.d.ts.map +1 -1
  233. package/esm/SystemAlert.js.map +1 -1
  234. package/esm/SystemAlert.mjs +180 -66
  235. package/esm/Trade.d.ts.map +1 -1
  236. package/esm/Trade.js.map +1 -1
  237. package/esm/Trade.mjs +180 -66
  238. package/esm/TradeAuditEvent.d.ts.map +1 -1
  239. package/esm/TradeAuditEvent.js.map +1 -1
  240. package/esm/TradeAuditEvent.mjs +180 -66
  241. package/esm/TradeExecutionHistory.d.ts.map +1 -1
  242. package/esm/TradeExecutionHistory.js.map +1 -1
  243. package/esm/TradeExecutionHistory.mjs +180 -66
  244. package/esm/TradeOutcome.d.ts.map +1 -1
  245. package/esm/TradeOutcome.js.map +1 -1
  246. package/esm/TradeOutcome.mjs +180 -66
  247. package/esm/TradingPolicy.d.ts.map +1 -1
  248. package/esm/TradingPolicy.js.map +1 -1
  249. package/esm/TradingPolicy.mjs +180 -66
  250. package/esm/User.d.ts.map +1 -1
  251. package/esm/User.js.map +1 -1
  252. package/esm/User.mjs +180 -66
  253. package/esm/VerificationToken.d.ts.map +1 -1
  254. package/esm/VerificationToken.js.map +1 -1
  255. package/esm/VerificationToken.mjs +180 -66
  256. package/esm/WaitlistEntry.d.ts.map +1 -1
  257. package/esm/WaitlistEntry.js.map +1 -1
  258. package/esm/WaitlistEntry.mjs +180 -66
  259. package/esm/client.d.ts +32 -0
  260. package/esm/client.d.ts.map +1 -1
  261. package/esm/client.js.map +1 -1
  262. package/esm/client.mjs +130 -9
  263. package/esm/index.d.ts +2 -2
  264. package/esm/index.d.ts.map +1 -1
  265. package/esm/index.js.map +1 -1
  266. package/esm/index.mjs +1 -1
  267. package/index.cjs +2 -1
  268. package/index.d.ts +2 -2
  269. package/package.json +1 -1
@@ -132,13 +132,28 @@ export const VerificationToken = {
132
132
  await new Promise(resolve => setTimeout(resolve, delay));
133
133
  continue;
134
134
  }
135
- // Log structured error details and rethrow
136
- logger.error("Database create operation failed", {
137
- operation: 'createOneVerificationToken',
138
- model: 'VerificationToken',
139
- error: String(error),
140
- isRetryable: isConnectionError,
141
- });
135
+ // Log structured error details and rethrow.
136
+ // Demote transient failures to WARN with explicit transient+recoveryHint
137
+ // metadata so log analytics can distinguish recoverable upstream retries
138
+ // from true defects.
139
+ if (isConnectionError) {
140
+ logger.warn("Database create operation failed (transient after retries)", {
141
+ operation: 'createOneVerificationToken',
142
+ model: 'VerificationToken',
143
+ error: String(error),
144
+ isRetryable: true,
145
+ transient: true,
146
+ recoveryHint: "Upstream caller should retry on next cycle",
147
+ });
148
+ }
149
+ else {
150
+ logger.error("Database create operation failed", {
151
+ operation: 'createOneVerificationToken',
152
+ model: 'VerificationToken',
153
+ error: String(error),
154
+ isRetryable: false,
155
+ });
156
+ }
142
157
  throw error;
143
158
  }
144
159
  }
@@ -258,13 +273,25 @@ export const VerificationToken = {
258
273
  await new Promise(resolve => setTimeout(resolve, delay));
259
274
  continue;
260
275
  }
261
- // Log structured error details and rethrow
262
- logger.error("Database createMany operation failed", {
263
- operation: 'createManyVerificationToken',
264
- model: 'VerificationToken',
265
- error: String(error),
266
- isRetryable: isConnectionError,
267
- });
276
+ // Log structured error details and rethrow (transient -> WARN).
277
+ if (isConnectionError) {
278
+ logger.warn("Database createMany operation failed (transient after retries)", {
279
+ operation: 'createManyVerificationToken',
280
+ model: 'VerificationToken',
281
+ error: String(error),
282
+ isRetryable: true,
283
+ transient: true,
284
+ recoveryHint: "Upstream caller should retry on next cycle",
285
+ });
286
+ }
287
+ else {
288
+ logger.error("Database createMany operation failed", {
289
+ operation: 'createManyVerificationToken',
290
+ model: 'VerificationToken',
291
+ error: String(error),
292
+ isRetryable: false,
293
+ });
294
+ }
268
295
  throw error;
269
296
  }
270
297
  }
@@ -397,14 +424,27 @@ export const VerificationToken = {
397
424
  await new Promise(resolve => setTimeout(resolve, delay));
398
425
  continue;
399
426
  }
400
- // Log structured error details and rethrow
401
- logger.error("Database update operation failed", {
402
- operation: 'updateOneVerificationToken',
403
- model: 'VerificationToken',
404
- error: String(error),
405
- recordId: props.id,
406
- isRetryable: isConnectionError,
407
- });
427
+ // Log structured error details and rethrow (transient -> WARN).
428
+ if (isConnectionError) {
429
+ logger.warn("Database update operation failed (transient after retries)", {
430
+ operation: 'updateOneVerificationToken',
431
+ model: 'VerificationToken',
432
+ error: String(error),
433
+ recordId: props.id,
434
+ isRetryable: true,
435
+ transient: true,
436
+ recoveryHint: "Upstream caller should retry on next cycle",
437
+ });
438
+ }
439
+ else {
440
+ logger.error("Database update operation failed", {
441
+ operation: 'updateOneVerificationToken',
442
+ model: 'VerificationToken',
443
+ error: String(error),
444
+ recordId: props.id,
445
+ isRetryable: false,
446
+ });
447
+ }
408
448
  throw error;
409
449
  }
410
450
  }
@@ -539,14 +579,27 @@ export const VerificationToken = {
539
579
  await new Promise(resolve => setTimeout(resolve, delay));
540
580
  continue;
541
581
  }
542
- // Log structured error details and rethrow
543
- logger.error("Database upsert operation failed", {
544
- operation: 'upsertOneVerificationToken',
545
- model: 'VerificationToken',
546
- error: String(error),
547
- recordId: props.id,
548
- isRetryable: isConnectionError,
549
- });
582
+ // Log structured error details and rethrow (transient -> WARN).
583
+ if (isConnectionError) {
584
+ logger.warn("Database upsert operation failed (transient after retries)", {
585
+ operation: 'upsertOneVerificationToken',
586
+ model: 'VerificationToken',
587
+ error: String(error),
588
+ recordId: props.id,
589
+ isRetryable: true,
590
+ transient: true,
591
+ recoveryHint: "Upstream caller should retry on next cycle",
592
+ });
593
+ }
594
+ else {
595
+ logger.error("Database upsert operation failed", {
596
+ operation: 'upsertOneVerificationToken',
597
+ model: 'VerificationToken',
598
+ error: String(error),
599
+ recordId: props.id,
600
+ isRetryable: false,
601
+ });
602
+ }
550
603
  throw error;
551
604
  }
552
605
  }
@@ -677,13 +730,25 @@ export const VerificationToken = {
677
730
  await new Promise(resolve => setTimeout(resolve, delay));
678
731
  continue;
679
732
  }
680
- // Log structured error details and rethrow
681
- logger.error("Database updateMany operation failed", {
682
- operation: 'updateManyVerificationToken',
683
- model: 'VerificationToken',
684
- error: String(error),
685
- isRetryable: isConnectionError,
686
- });
733
+ // Log structured error details and rethrow (transient -> WARN).
734
+ if (isConnectionError) {
735
+ logger.warn("Database updateMany operation failed (transient after retries)", {
736
+ operation: 'updateManyVerificationToken',
737
+ model: 'VerificationToken',
738
+ error: String(error),
739
+ isRetryable: true,
740
+ transient: true,
741
+ recoveryHint: "Upstream caller should retry on next cycle",
742
+ });
743
+ }
744
+ else {
745
+ logger.error("Database updateMany operation failed", {
746
+ operation: 'updateManyVerificationToken',
747
+ model: 'VerificationToken',
748
+ error: String(error),
749
+ isRetryable: false,
750
+ });
751
+ }
687
752
  throw error;
688
753
  }
689
754
  }
@@ -805,14 +870,27 @@ export const VerificationToken = {
805
870
  await new Promise(resolve => setTimeout(resolve, delay));
806
871
  continue;
807
872
  }
808
- // Log structured error details and rethrow
809
- logger.error("Database delete operation failed", {
810
- operation: 'deleteOneVerificationToken',
811
- model: 'VerificationToken',
812
- error: String(error),
813
- recordId: props.id,
814
- isRetryable: isConnectionError,
815
- });
873
+ // Log structured error details and rethrow (transient -> WARN).
874
+ if (isConnectionError) {
875
+ logger.warn("Database delete operation failed (transient after retries)", {
876
+ operation: 'deleteOneVerificationToken',
877
+ model: 'VerificationToken',
878
+ error: String(error),
879
+ recordId: props.id,
880
+ isRetryable: true,
881
+ transient: true,
882
+ recoveryHint: "Upstream caller should retry on next cycle",
883
+ });
884
+ }
885
+ else {
886
+ logger.error("Database delete operation failed", {
887
+ operation: 'deleteOneVerificationToken',
888
+ model: 'VerificationToken',
889
+ error: String(error),
890
+ recordId: props.id,
891
+ isRetryable: false,
892
+ });
893
+ }
816
894
  throw error;
817
895
  }
818
896
  }
@@ -907,13 +985,25 @@ export const VerificationToken = {
907
985
  await new Promise(resolve => setTimeout(resolve, delay));
908
986
  continue;
909
987
  }
910
- // Log structured error details and rethrow
911
- logger.error("Database get operation failed", {
912
- operation: 'getVerificationToken',
913
- model: 'VerificationToken',
914
- error: String(error),
915
- isRetryable: isConnectionError,
916
- });
988
+ // Log structured error details and rethrow (transient -> WARN).
989
+ if (isConnectionError) {
990
+ logger.warn("Database get operation failed (transient after retries)", {
991
+ operation: 'getVerificationToken',
992
+ model: 'VerificationToken',
993
+ error: String(error),
994
+ isRetryable: true,
995
+ transient: true,
996
+ recoveryHint: "Upstream caller should retry on next cycle",
997
+ });
998
+ }
999
+ else {
1000
+ logger.error("Database get operation failed", {
1001
+ operation: 'getVerificationToken',
1002
+ model: 'VerificationToken',
1003
+ error: String(error),
1004
+ isRetryable: false,
1005
+ });
1006
+ }
917
1007
  throw error;
918
1008
  }
919
1009
  }
@@ -999,13 +1089,25 @@ export const VerificationToken = {
999
1089
  await new Promise(resolve => setTimeout(resolve, delay));
1000
1090
  continue;
1001
1091
  }
1002
- // Log structured error details and rethrow
1003
- logger.error("Database getAll operation failed", {
1004
- operation: 'getAllVerificationToken',
1005
- model: 'VerificationToken',
1006
- error: String(error),
1007
- isRetryable: isConnectionError,
1008
- });
1092
+ // Log structured error details and rethrow (transient -> WARN).
1093
+ if (isConnectionError) {
1094
+ logger.warn("Database getAll operation failed (transient after retries)", {
1095
+ operation: 'getAllVerificationToken',
1096
+ model: 'VerificationToken',
1097
+ error: String(error),
1098
+ isRetryable: true,
1099
+ transient: true,
1100
+ recoveryHint: "Upstream caller should retry on next cycle",
1101
+ });
1102
+ }
1103
+ else {
1104
+ logger.error("Database getAll operation failed", {
1105
+ operation: 'getAllVerificationToken',
1106
+ model: 'VerificationToken',
1107
+ error: String(error),
1108
+ isRetryable: false,
1109
+ });
1110
+ }
1009
1111
  throw error;
1010
1112
  }
1011
1113
  }
@@ -1112,13 +1214,25 @@ export const VerificationToken = {
1112
1214
  await new Promise(resolve => setTimeout(resolve, delay));
1113
1215
  continue;
1114
1216
  }
1115
- // Log structured error details and rethrow
1116
- logger.error("Database findMany operation failed", {
1117
- operation: 'findManyVerificationToken',
1118
- model: 'VerificationToken',
1119
- error: String(error),
1120
- isRetryable: isConnectionError,
1121
- });
1217
+ // Log structured error details and rethrow (transient -> WARN).
1218
+ if (isConnectionError) {
1219
+ logger.warn("Database findMany operation failed (transient after retries)", {
1220
+ operation: 'findManyVerificationToken',
1221
+ model: 'VerificationToken',
1222
+ error: String(error),
1223
+ isRetryable: true,
1224
+ transient: true,
1225
+ recoveryHint: "Upstream caller should retry on next cycle",
1226
+ });
1227
+ }
1228
+ else {
1229
+ logger.error("Database findMany operation failed", {
1230
+ operation: 'findManyVerificationToken',
1231
+ model: 'VerificationToken',
1232
+ error: String(error),
1233
+ isRetryable: false,
1234
+ });
1235
+ }
1122
1236
  throw error;
1123
1237
  }
1124
1238
  }
@@ -1 +1 @@
1
- {"version":3,"file":"WaitlistEntry.d.ts","sourceRoot":"","sources":["../../src/WaitlistEntry.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,qDAAqD,CAAC;AACzG,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AAoCpG,eAAO,MAAM,aAAa;IAExB;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA0kB5H;;;;;;;OAOG;sBACqB,iBAAiB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,YAAY;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IA4I/K;;;;;;OAMG;kBACiB,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAutD1H;;;;;;OAMG;kBACiB,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA0pE1H;;;;;;OAMG;sBACqB,iBAAiB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAstDvI;;;;;;OAMG;kBACiB,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAyI1H;;;;;;;OAOG;eACc,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IA8GpK;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC;IAkGzG;;;;;;;OAOG;oBACmB,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC;CA4H5K,CAAC"}
1
+ {"version":3,"file":"WaitlistEntry.d.ts","sourceRoot":"","sources":["../../src/WaitlistEntry.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,MAAM,qDAAqD,CAAC;AACzG,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AAoCpG,eAAO,MAAM,aAAa;IAExB;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAwlB5H;;;;;;;OAOG;sBACqB,iBAAiB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,YAAY;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAuJ/K;;;;;;OAMG;kBACiB,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAmuD1H;;;;;;OAMG;kBACiB,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAsqE1H;;;;;;OAMG;sBACqB,iBAAiB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAiuDvI;;;;;;OAMG;kBACiB,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAqJ1H;;;;;;;OAOG;eACc,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAyHpK;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC;IA6GzG;;;;;;;OAOG;oBACmB,iBAAiB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,iBAAiB,EAAE,GAAG,IAAI,CAAC;CAuI5K,CAAC"}