@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
package/Customer.cjs CHANGED
@@ -761,13 +761,28 @@ exports.Customer = {
761
761
  await new Promise(resolve => setTimeout(resolve, delay));
762
762
  continue;
763
763
  }
764
- // Log structured error details and rethrow
765
- logger_1.logger.error("Database create operation failed", {
766
- operation: 'createOneCustomer',
767
- model: 'Customer',
768
- error: String(error),
769
- isRetryable: isConnectionError,
770
- });
764
+ // Log structured error details and rethrow.
765
+ // Demote transient failures to WARN with explicit transient+recoveryHint
766
+ // metadata so log analytics can distinguish recoverable upstream retries
767
+ // from true defects.
768
+ if (isConnectionError) {
769
+ logger_1.logger.warn("Database create operation failed (transient after retries)", {
770
+ operation: 'createOneCustomer',
771
+ model: 'Customer',
772
+ error: String(error),
773
+ isRetryable: true,
774
+ transient: true,
775
+ recoveryHint: "Upstream caller should retry on next cycle",
776
+ });
777
+ }
778
+ else {
779
+ logger_1.logger.error("Database create operation failed", {
780
+ operation: 'createOneCustomer',
781
+ model: 'Customer',
782
+ error: String(error),
783
+ isRetryable: false,
784
+ });
785
+ }
771
786
  throw error;
772
787
  }
773
788
  }
@@ -892,13 +907,25 @@ exports.Customer = {
892
907
  await new Promise(resolve => setTimeout(resolve, delay));
893
908
  continue;
894
909
  }
895
- // Log structured error details and rethrow
896
- logger_1.logger.error("Database createMany operation failed", {
897
- operation: 'createManyCustomer',
898
- model: 'Customer',
899
- error: String(error),
900
- isRetryable: isConnectionError,
901
- });
910
+ // Log structured error details and rethrow (transient -> WARN).
911
+ if (isConnectionError) {
912
+ logger_1.logger.warn("Database createMany operation failed (transient after retries)", {
913
+ operation: 'createManyCustomer',
914
+ model: 'Customer',
915
+ error: String(error),
916
+ isRetryable: true,
917
+ transient: true,
918
+ recoveryHint: "Upstream caller should retry on next cycle",
919
+ });
920
+ }
921
+ else {
922
+ logger_1.logger.error("Database createMany operation failed", {
923
+ operation: 'createManyCustomer',
924
+ model: 'Customer',
925
+ error: String(error),
926
+ isRetryable: false,
927
+ });
928
+ }
902
929
  throw error;
903
930
  }
904
931
  }
@@ -2662,14 +2689,27 @@ exports.Customer = {
2662
2689
  await new Promise(resolve => setTimeout(resolve, delay));
2663
2690
  continue;
2664
2691
  }
2665
- // Log structured error details and rethrow
2666
- logger_1.logger.error("Database update operation failed", {
2667
- operation: 'updateOneCustomer',
2668
- model: 'Customer',
2669
- error: String(error),
2670
- recordId: props.id,
2671
- isRetryable: isConnectionError,
2672
- });
2692
+ // Log structured error details and rethrow (transient -> WARN).
2693
+ if (isConnectionError) {
2694
+ logger_1.logger.warn("Database update operation failed (transient after retries)", {
2695
+ operation: 'updateOneCustomer',
2696
+ model: 'Customer',
2697
+ error: String(error),
2698
+ recordId: props.id,
2699
+ isRetryable: true,
2700
+ transient: true,
2701
+ recoveryHint: "Upstream caller should retry on next cycle",
2702
+ });
2703
+ }
2704
+ else {
2705
+ logger_1.logger.error("Database update operation failed", {
2706
+ operation: 'updateOneCustomer',
2707
+ model: 'Customer',
2708
+ error: String(error),
2709
+ recordId: props.id,
2710
+ isRetryable: false,
2711
+ });
2712
+ }
2673
2713
  throw error;
2674
2714
  }
2675
2715
  }
@@ -4887,14 +4927,27 @@ exports.Customer = {
4887
4927
  await new Promise(resolve => setTimeout(resolve, delay));
4888
4928
  continue;
4889
4929
  }
4890
- // Log structured error details and rethrow
4891
- logger_1.logger.error("Database upsert operation failed", {
4892
- operation: 'upsertOneCustomer',
4893
- model: 'Customer',
4894
- error: String(error),
4895
- recordId: props.id,
4896
- isRetryable: isConnectionError,
4897
- });
4930
+ // Log structured error details and rethrow (transient -> WARN).
4931
+ if (isConnectionError) {
4932
+ logger_1.logger.warn("Database upsert operation failed (transient after retries)", {
4933
+ operation: 'upsertOneCustomer',
4934
+ model: 'Customer',
4935
+ error: String(error),
4936
+ recordId: props.id,
4937
+ isRetryable: true,
4938
+ transient: true,
4939
+ recoveryHint: "Upstream caller should retry on next cycle",
4940
+ });
4941
+ }
4942
+ else {
4943
+ logger_1.logger.error("Database upsert operation failed", {
4944
+ operation: 'upsertOneCustomer',
4945
+ model: 'Customer',
4946
+ error: String(error),
4947
+ recordId: props.id,
4948
+ isRetryable: false,
4949
+ });
4950
+ }
4898
4951
  throw error;
4899
4952
  }
4900
4953
  }
@@ -6656,13 +6709,25 @@ exports.Customer = {
6656
6709
  await new Promise(resolve => setTimeout(resolve, delay));
6657
6710
  continue;
6658
6711
  }
6659
- // Log structured error details and rethrow
6660
- logger_1.logger.error("Database updateMany operation failed", {
6661
- operation: 'updateManyCustomer',
6662
- model: 'Customer',
6663
- error: String(error),
6664
- isRetryable: isConnectionError,
6665
- });
6712
+ // Log structured error details and rethrow (transient -> WARN).
6713
+ if (isConnectionError) {
6714
+ logger_1.logger.warn("Database updateMany operation failed (transient after retries)", {
6715
+ operation: 'updateManyCustomer',
6716
+ model: 'Customer',
6717
+ error: String(error),
6718
+ isRetryable: true,
6719
+ transient: true,
6720
+ recoveryHint: "Upstream caller should retry on next cycle",
6721
+ });
6722
+ }
6723
+ else {
6724
+ logger_1.logger.error("Database updateMany operation failed", {
6725
+ operation: 'updateManyCustomer',
6726
+ model: 'Customer',
6727
+ error: String(error),
6728
+ isRetryable: false,
6729
+ });
6730
+ }
6666
6731
  throw error;
6667
6732
  }
6668
6733
  }
@@ -6785,14 +6850,27 @@ exports.Customer = {
6785
6850
  await new Promise(resolve => setTimeout(resolve, delay));
6786
6851
  continue;
6787
6852
  }
6788
- // Log structured error details and rethrow
6789
- logger_1.logger.error("Database delete operation failed", {
6790
- operation: 'deleteOneCustomer',
6791
- model: 'Customer',
6792
- error: String(error),
6793
- recordId: props.id,
6794
- isRetryable: isConnectionError,
6795
- });
6853
+ // Log structured error details and rethrow (transient -> WARN).
6854
+ if (isConnectionError) {
6855
+ logger_1.logger.warn("Database delete operation failed (transient after retries)", {
6856
+ operation: 'deleteOneCustomer',
6857
+ model: 'Customer',
6858
+ error: String(error),
6859
+ recordId: props.id,
6860
+ isRetryable: true,
6861
+ transient: true,
6862
+ recoveryHint: "Upstream caller should retry on next cycle",
6863
+ });
6864
+ }
6865
+ else {
6866
+ logger_1.logger.error("Database delete operation failed", {
6867
+ operation: 'deleteOneCustomer',
6868
+ model: 'Customer',
6869
+ error: String(error),
6870
+ recordId: props.id,
6871
+ isRetryable: false,
6872
+ });
6873
+ }
6796
6874
  throw error;
6797
6875
  }
6798
6876
  }
@@ -6899,13 +6977,25 @@ exports.Customer = {
6899
6977
  await new Promise(resolve => setTimeout(resolve, delay));
6900
6978
  continue;
6901
6979
  }
6902
- // Log structured error details and rethrow
6903
- logger_1.logger.error("Database get operation failed", {
6904
- operation: 'getCustomer',
6905
- model: 'Customer',
6906
- error: String(error),
6907
- isRetryable: isConnectionError,
6908
- });
6980
+ // Log structured error details and rethrow (transient -> WARN).
6981
+ if (isConnectionError) {
6982
+ logger_1.logger.warn("Database get operation failed (transient after retries)", {
6983
+ operation: 'getCustomer',
6984
+ model: 'Customer',
6985
+ error: String(error),
6986
+ isRetryable: true,
6987
+ transient: true,
6988
+ recoveryHint: "Upstream caller should retry on next cycle",
6989
+ });
6990
+ }
6991
+ else {
6992
+ logger_1.logger.error("Database get operation failed", {
6993
+ operation: 'getCustomer',
6994
+ model: 'Customer',
6995
+ error: String(error),
6996
+ isRetryable: false,
6997
+ });
6998
+ }
6909
6999
  throw error;
6910
7000
  }
6911
7001
  }
@@ -6992,13 +7082,25 @@ exports.Customer = {
6992
7082
  await new Promise(resolve => setTimeout(resolve, delay));
6993
7083
  continue;
6994
7084
  }
6995
- // Log structured error details and rethrow
6996
- logger_1.logger.error("Database getAll operation failed", {
6997
- operation: 'getAllCustomer',
6998
- model: 'Customer',
6999
- error: String(error),
7000
- isRetryable: isConnectionError,
7001
- });
7085
+ // Log structured error details and rethrow (transient -> WARN).
7086
+ if (isConnectionError) {
7087
+ logger_1.logger.warn("Database getAll operation failed (transient after retries)", {
7088
+ operation: 'getAllCustomer',
7089
+ model: 'Customer',
7090
+ error: String(error),
7091
+ isRetryable: true,
7092
+ transient: true,
7093
+ recoveryHint: "Upstream caller should retry on next cycle",
7094
+ });
7095
+ }
7096
+ else {
7097
+ logger_1.logger.error("Database getAll operation failed", {
7098
+ operation: 'getAllCustomer',
7099
+ model: 'Customer',
7100
+ error: String(error),
7101
+ isRetryable: false,
7102
+ });
7103
+ }
7002
7104
  throw error;
7003
7105
  }
7004
7106
  }
@@ -7121,13 +7223,25 @@ exports.Customer = {
7121
7223
  await new Promise(resolve => setTimeout(resolve, delay));
7122
7224
  continue;
7123
7225
  }
7124
- // Log structured error details and rethrow
7125
- logger_1.logger.error("Database findMany operation failed", {
7126
- operation: 'findManyCustomer',
7127
- model: 'Customer',
7128
- error: String(error),
7129
- isRetryable: isConnectionError,
7130
- });
7226
+ // Log structured error details and rethrow (transient -> WARN).
7227
+ if (isConnectionError) {
7228
+ logger_1.logger.warn("Database findMany operation failed (transient after retries)", {
7229
+ operation: 'findManyCustomer',
7230
+ model: 'Customer',
7231
+ error: String(error),
7232
+ isRetryable: true,
7233
+ transient: true,
7234
+ recoveryHint: "Upstream caller should retry on next cycle",
7235
+ });
7236
+ }
7237
+ else {
7238
+ logger_1.logger.error("Database findMany operation failed", {
7239
+ operation: 'findManyCustomer',
7240
+ model: 'Customer',
7241
+ error: String(error),
7242
+ isRetryable: false,
7243
+ });
7244
+ }
7131
7245
  throw error;
7132
7246
  }
7133
7247
  }
@@ -195,13 +195,28 @@ exports.DeadLetterMessage = {
195
195
  await new Promise(resolve => setTimeout(resolve, delay));
196
196
  continue;
197
197
  }
198
- // Log structured error details and rethrow
199
- logger_1.logger.error("Database create operation failed", {
200
- operation: 'createOneDeadLetterMessage',
201
- model: 'DeadLetterMessage',
202
- error: String(error),
203
- isRetryable: isConnectionError,
204
- });
198
+ // Log structured error details and rethrow.
199
+ // Demote transient failures to WARN with explicit transient+recoveryHint
200
+ // metadata so log analytics can distinguish recoverable upstream retries
201
+ // from true defects.
202
+ if (isConnectionError) {
203
+ logger_1.logger.warn("Database create operation failed (transient after retries)", {
204
+ operation: 'createOneDeadLetterMessage',
205
+ model: 'DeadLetterMessage',
206
+ error: String(error),
207
+ isRetryable: true,
208
+ transient: true,
209
+ recoveryHint: "Upstream caller should retry on next cycle",
210
+ });
211
+ }
212
+ else {
213
+ logger_1.logger.error("Database create operation failed", {
214
+ operation: 'createOneDeadLetterMessage',
215
+ model: 'DeadLetterMessage',
216
+ error: String(error),
217
+ isRetryable: false,
218
+ });
219
+ }
205
220
  throw error;
206
221
  }
207
222
  }
@@ -351,13 +366,25 @@ exports.DeadLetterMessage = {
351
366
  await new Promise(resolve => setTimeout(resolve, delay));
352
367
  continue;
353
368
  }
354
- // Log structured error details and rethrow
355
- logger_1.logger.error("Database createMany operation failed", {
356
- operation: 'createManyDeadLetterMessage',
357
- model: 'DeadLetterMessage',
358
- error: String(error),
359
- isRetryable: isConnectionError,
360
- });
369
+ // Log structured error details and rethrow (transient -> WARN).
370
+ if (isConnectionError) {
371
+ logger_1.logger.warn("Database createMany operation failed (transient after retries)", {
372
+ operation: 'createManyDeadLetterMessage',
373
+ model: 'DeadLetterMessage',
374
+ error: String(error),
375
+ isRetryable: true,
376
+ transient: true,
377
+ recoveryHint: "Upstream caller should retry on next cycle",
378
+ });
379
+ }
380
+ else {
381
+ logger_1.logger.error("Database createMany operation failed", {
382
+ operation: 'createManyDeadLetterMessage',
383
+ model: 'DeadLetterMessage',
384
+ error: String(error),
385
+ isRetryable: false,
386
+ });
387
+ }
361
388
  throw error;
362
389
  }
363
390
  }
@@ -571,14 +598,27 @@ exports.DeadLetterMessage = {
571
598
  await new Promise(resolve => setTimeout(resolve, delay));
572
599
  continue;
573
600
  }
574
- // Log structured error details and rethrow
575
- logger_1.logger.error("Database update operation failed", {
576
- operation: 'updateOneDeadLetterMessage',
577
- model: 'DeadLetterMessage',
578
- error: String(error),
579
- recordId: props.id,
580
- isRetryable: isConnectionError,
581
- });
601
+ // Log structured error details and rethrow (transient -> WARN).
602
+ if (isConnectionError) {
603
+ logger_1.logger.warn("Database update operation failed (transient after retries)", {
604
+ operation: 'updateOneDeadLetterMessage',
605
+ model: 'DeadLetterMessage',
606
+ error: String(error),
607
+ recordId: props.id,
608
+ isRetryable: true,
609
+ transient: true,
610
+ recoveryHint: "Upstream caller should retry on next cycle",
611
+ });
612
+ }
613
+ else {
614
+ logger_1.logger.error("Database update operation failed", {
615
+ operation: 'updateOneDeadLetterMessage',
616
+ model: 'DeadLetterMessage',
617
+ error: String(error),
618
+ recordId: props.id,
619
+ isRetryable: false,
620
+ });
621
+ }
582
622
  throw error;
583
623
  }
584
624
  }
@@ -826,14 +866,27 @@ exports.DeadLetterMessage = {
826
866
  await new Promise(resolve => setTimeout(resolve, delay));
827
867
  continue;
828
868
  }
829
- // Log structured error details and rethrow
830
- logger_1.logger.error("Database upsert operation failed", {
831
- operation: 'upsertOneDeadLetterMessage',
832
- model: 'DeadLetterMessage',
833
- error: String(error),
834
- recordId: props.id,
835
- isRetryable: isConnectionError,
836
- });
869
+ // Log structured error details and rethrow (transient -> WARN).
870
+ if (isConnectionError) {
871
+ logger_1.logger.warn("Database upsert operation failed (transient after retries)", {
872
+ operation: 'upsertOneDeadLetterMessage',
873
+ model: 'DeadLetterMessage',
874
+ error: String(error),
875
+ recordId: props.id,
876
+ isRetryable: true,
877
+ transient: true,
878
+ recoveryHint: "Upstream caller should retry on next cycle",
879
+ });
880
+ }
881
+ else {
882
+ logger_1.logger.error("Database upsert operation failed", {
883
+ operation: 'upsertOneDeadLetterMessage',
884
+ model: 'DeadLetterMessage',
885
+ error: String(error),
886
+ recordId: props.id,
887
+ isRetryable: false,
888
+ });
889
+ }
837
890
  throw error;
838
891
  }
839
892
  }
@@ -1045,13 +1098,25 @@ exports.DeadLetterMessage = {
1045
1098
  await new Promise(resolve => setTimeout(resolve, delay));
1046
1099
  continue;
1047
1100
  }
1048
- // Log structured error details and rethrow
1049
- logger_1.logger.error("Database updateMany operation failed", {
1050
- operation: 'updateManyDeadLetterMessage',
1051
- model: 'DeadLetterMessage',
1052
- error: String(error),
1053
- isRetryable: isConnectionError,
1054
- });
1101
+ // Log structured error details and rethrow (transient -> WARN).
1102
+ if (isConnectionError) {
1103
+ logger_1.logger.warn("Database updateMany operation failed (transient after retries)", {
1104
+ operation: 'updateManyDeadLetterMessage',
1105
+ model: 'DeadLetterMessage',
1106
+ error: String(error),
1107
+ isRetryable: true,
1108
+ transient: true,
1109
+ recoveryHint: "Upstream caller should retry on next cycle",
1110
+ });
1111
+ }
1112
+ else {
1113
+ logger_1.logger.error("Database updateMany operation failed", {
1114
+ operation: 'updateManyDeadLetterMessage',
1115
+ model: 'DeadLetterMessage',
1116
+ error: String(error),
1117
+ isRetryable: false,
1118
+ });
1119
+ }
1055
1120
  throw error;
1056
1121
  }
1057
1122
  }
@@ -1174,14 +1239,27 @@ exports.DeadLetterMessage = {
1174
1239
  await new Promise(resolve => setTimeout(resolve, delay));
1175
1240
  continue;
1176
1241
  }
1177
- // Log structured error details and rethrow
1178
- logger_1.logger.error("Database delete operation failed", {
1179
- operation: 'deleteOneDeadLetterMessage',
1180
- model: 'DeadLetterMessage',
1181
- error: String(error),
1182
- recordId: props.id,
1183
- isRetryable: isConnectionError,
1184
- });
1242
+ // Log structured error details and rethrow (transient -> WARN).
1243
+ if (isConnectionError) {
1244
+ logger_1.logger.warn("Database delete operation failed (transient after retries)", {
1245
+ operation: 'deleteOneDeadLetterMessage',
1246
+ model: 'DeadLetterMessage',
1247
+ error: String(error),
1248
+ recordId: props.id,
1249
+ isRetryable: true,
1250
+ transient: true,
1251
+ recoveryHint: "Upstream caller should retry on next cycle",
1252
+ });
1253
+ }
1254
+ else {
1255
+ logger_1.logger.error("Database delete operation failed", {
1256
+ operation: 'deleteOneDeadLetterMessage',
1257
+ model: 'DeadLetterMessage',
1258
+ error: String(error),
1259
+ recordId: props.id,
1260
+ isRetryable: false,
1261
+ });
1262
+ }
1185
1263
  throw error;
1186
1264
  }
1187
1265
  }
@@ -1283,13 +1361,25 @@ exports.DeadLetterMessage = {
1283
1361
  await new Promise(resolve => setTimeout(resolve, delay));
1284
1362
  continue;
1285
1363
  }
1286
- // Log structured error details and rethrow
1287
- logger_1.logger.error("Database get operation failed", {
1288
- operation: 'getDeadLetterMessage',
1289
- model: 'DeadLetterMessage',
1290
- error: String(error),
1291
- isRetryable: isConnectionError,
1292
- });
1364
+ // Log structured error details and rethrow (transient -> WARN).
1365
+ if (isConnectionError) {
1366
+ logger_1.logger.warn("Database get operation failed (transient after retries)", {
1367
+ operation: 'getDeadLetterMessage',
1368
+ model: 'DeadLetterMessage',
1369
+ error: String(error),
1370
+ isRetryable: true,
1371
+ transient: true,
1372
+ recoveryHint: "Upstream caller should retry on next cycle",
1373
+ });
1374
+ }
1375
+ else {
1376
+ logger_1.logger.error("Database get operation failed", {
1377
+ operation: 'getDeadLetterMessage',
1378
+ model: 'DeadLetterMessage',
1379
+ error: String(error),
1380
+ isRetryable: false,
1381
+ });
1382
+ }
1293
1383
  throw error;
1294
1384
  }
1295
1385
  }
@@ -1376,13 +1466,25 @@ exports.DeadLetterMessage = {
1376
1466
  await new Promise(resolve => setTimeout(resolve, delay));
1377
1467
  continue;
1378
1468
  }
1379
- // Log structured error details and rethrow
1380
- logger_1.logger.error("Database getAll operation failed", {
1381
- operation: 'getAllDeadLetterMessage',
1382
- model: 'DeadLetterMessage',
1383
- error: String(error),
1384
- isRetryable: isConnectionError,
1385
- });
1469
+ // Log structured error details and rethrow (transient -> WARN).
1470
+ if (isConnectionError) {
1471
+ logger_1.logger.warn("Database getAll operation failed (transient after retries)", {
1472
+ operation: 'getAllDeadLetterMessage',
1473
+ model: 'DeadLetterMessage',
1474
+ error: String(error),
1475
+ isRetryable: true,
1476
+ transient: true,
1477
+ recoveryHint: "Upstream caller should retry on next cycle",
1478
+ });
1479
+ }
1480
+ else {
1481
+ logger_1.logger.error("Database getAll operation failed", {
1482
+ operation: 'getAllDeadLetterMessage',
1483
+ model: 'DeadLetterMessage',
1484
+ error: String(error),
1485
+ isRetryable: false,
1486
+ });
1487
+ }
1386
1488
  throw error;
1387
1489
  }
1388
1490
  }
@@ -1496,13 +1598,25 @@ exports.DeadLetterMessage = {
1496
1598
  await new Promise(resolve => setTimeout(resolve, delay));
1497
1599
  continue;
1498
1600
  }
1499
- // Log structured error details and rethrow
1500
- logger_1.logger.error("Database findMany operation failed", {
1501
- operation: 'findManyDeadLetterMessage',
1502
- model: 'DeadLetterMessage',
1503
- error: String(error),
1504
- isRetryable: isConnectionError,
1505
- });
1601
+ // Log structured error details and rethrow (transient -> WARN).
1602
+ if (isConnectionError) {
1603
+ logger_1.logger.warn("Database findMany operation failed (transient after retries)", {
1604
+ operation: 'findManyDeadLetterMessage',
1605
+ model: 'DeadLetterMessage',
1606
+ error: String(error),
1607
+ isRetryable: true,
1608
+ transient: true,
1609
+ recoveryHint: "Upstream caller should retry on next cycle",
1610
+ });
1611
+ }
1612
+ else {
1613
+ logger_1.logger.error("Database findMany operation failed", {
1614
+ operation: 'findManyDeadLetterMessage',
1615
+ model: 'DeadLetterMessage',
1616
+ error: String(error),
1617
+ isRetryable: false,
1618
+ });
1619
+ }
1506
1620
  throw error;
1507
1621
  }
1508
1622
  }