@adaptic/backend-legacy 0.0.960 → 0.0.961

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 (258) 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/esm/ABTest.d.ts.map +1 -1
  66. package/esm/ABTest.js.map +1 -1
  67. package/esm/ABTest.mjs +180 -66
  68. package/esm/Account.d.ts.map +1 -1
  69. package/esm/Account.js.map +1 -1
  70. package/esm/Account.mjs +180 -66
  71. package/esm/AccountDecisionRecord.d.ts.map +1 -1
  72. package/esm/AccountDecisionRecord.js.map +1 -1
  73. package/esm/AccountDecisionRecord.mjs +180 -66
  74. package/esm/AccountLinkingRequest.d.ts.map +1 -1
  75. package/esm/AccountLinkingRequest.js.map +1 -1
  76. package/esm/AccountLinkingRequest.mjs +180 -66
  77. package/esm/Action.d.ts.map +1 -1
  78. package/esm/Action.js.map +1 -1
  79. package/esm/Action.mjs +180 -66
  80. package/esm/Alert.d.ts.map +1 -1
  81. package/esm/Alert.js.map +1 -1
  82. package/esm/Alert.mjs +180 -66
  83. package/esm/Allocation.d.ts.map +1 -1
  84. package/esm/Allocation.js.map +1 -1
  85. package/esm/Allocation.mjs +180 -66
  86. package/esm/AlpacaAccount.d.ts.map +1 -1
  87. package/esm/AlpacaAccount.js.map +1 -1
  88. package/esm/AlpacaAccount.mjs +180 -66
  89. package/esm/AnalyticsConfiguration.d.ts.map +1 -1
  90. package/esm/AnalyticsConfiguration.js.map +1 -1
  91. package/esm/AnalyticsConfiguration.mjs +180 -66
  92. package/esm/AnalyticsSnapshot.d.ts.map +1 -1
  93. package/esm/AnalyticsSnapshot.js.map +1 -1
  94. package/esm/AnalyticsSnapshot.mjs +180 -66
  95. package/esm/Asset.d.ts.map +1 -1
  96. package/esm/Asset.js.map +1 -1
  97. package/esm/Asset.mjs +180 -66
  98. package/esm/AuditLog.d.ts.map +1 -1
  99. package/esm/AuditLog.js.map +1 -1
  100. package/esm/AuditLog.mjs +180 -66
  101. package/esm/Authenticator.d.ts.map +1 -1
  102. package/esm/Authenticator.js.map +1 -1
  103. package/esm/Authenticator.mjs +180 -66
  104. package/esm/Configuration.d.ts.map +1 -1
  105. package/esm/Configuration.js.map +1 -1
  106. package/esm/Configuration.mjs +180 -66
  107. package/esm/ConflictEvent.d.ts.map +1 -1
  108. package/esm/ConflictEvent.js.map +1 -1
  109. package/esm/ConflictEvent.mjs +180 -66
  110. package/esm/ConnectionHealthSnapshot.d.ts.map +1 -1
  111. package/esm/ConnectionHealthSnapshot.js.map +1 -1
  112. package/esm/ConnectionHealthSnapshot.mjs +180 -66
  113. package/esm/Customer.d.ts.map +1 -1
  114. package/esm/Customer.js.map +1 -1
  115. package/esm/Customer.mjs +180 -66
  116. package/esm/DeadLetterMessage.d.ts.map +1 -1
  117. package/esm/DeadLetterMessage.js.map +1 -1
  118. package/esm/DeadLetterMessage.mjs +180 -66
  119. package/esm/DecisionMemorySummary.d.ts.map +1 -1
  120. package/esm/DecisionMemorySummary.js.map +1 -1
  121. package/esm/DecisionMemorySummary.mjs +180 -66
  122. package/esm/EconomicEvent.d.ts.map +1 -1
  123. package/esm/EconomicEvent.js.map +1 -1
  124. package/esm/EconomicEvent.mjs +180 -66
  125. package/esm/EquityBar.d.ts.map +1 -1
  126. package/esm/EquityBar.js.map +1 -1
  127. package/esm/EquityBar.mjs +180 -66
  128. package/esm/Event.d.ts.map +1 -1
  129. package/esm/Event.js.map +1 -1
  130. package/esm/Event.mjs +180 -66
  131. package/esm/EventSnapshot.d.ts.map +1 -1
  132. package/esm/EventSnapshot.js.map +1 -1
  133. package/esm/EventSnapshot.mjs +180 -66
  134. package/esm/FeatureImportanceAnalysis.d.ts.map +1 -1
  135. package/esm/FeatureImportanceAnalysis.js.map +1 -1
  136. package/esm/FeatureImportanceAnalysis.mjs +180 -66
  137. package/esm/InstitutionalFlowSignal.d.ts.map +1 -1
  138. package/esm/InstitutionalFlowSignal.js.map +1 -1
  139. package/esm/InstitutionalFlowSignal.mjs +180 -66
  140. package/esm/InstitutionalHolding.d.ts.map +1 -1
  141. package/esm/InstitutionalHolding.js.map +1 -1
  142. package/esm/InstitutionalHolding.mjs +180 -66
  143. package/esm/InstitutionalSentimentAlerts.d.ts.map +1 -1
  144. package/esm/InstitutionalSentimentAlerts.js.map +1 -1
  145. package/esm/InstitutionalSentimentAlerts.mjs +180 -66
  146. package/esm/InstitutionalSentimentErrors.d.ts.map +1 -1
  147. package/esm/InstitutionalSentimentErrors.js.map +1 -1
  148. package/esm/InstitutionalSentimentErrors.mjs +180 -66
  149. package/esm/InstitutionalSentimentHistory.d.ts.map +1 -1
  150. package/esm/InstitutionalSentimentHistory.js.map +1 -1
  151. package/esm/InstitutionalSentimentHistory.mjs +180 -66
  152. package/esm/InstitutionalSentimentMetrics.d.ts.map +1 -1
  153. package/esm/InstitutionalSentimentMetrics.js.map +1 -1
  154. package/esm/InstitutionalSentimentMetrics.mjs +180 -66
  155. package/esm/InviteToken.d.ts.map +1 -1
  156. package/esm/InviteToken.js.map +1 -1
  157. package/esm/InviteToken.mjs +180 -66
  158. package/esm/LinkedProvider.d.ts.map +1 -1
  159. package/esm/LinkedProvider.js.map +1 -1
  160. package/esm/LinkedProvider.mjs +180 -66
  161. package/esm/LlmConfiguration.d.ts.map +1 -1
  162. package/esm/LlmConfiguration.js.map +1 -1
  163. package/esm/LlmConfiguration.mjs +180 -66
  164. package/esm/MLModelVersion.d.ts.map +1 -1
  165. package/esm/MLModelVersion.js.map +1 -1
  166. package/esm/MLModelVersion.mjs +180 -66
  167. package/esm/MLTrainingData.d.ts.map +1 -1
  168. package/esm/MLTrainingData.js.map +1 -1
  169. package/esm/MLTrainingData.mjs +180 -66
  170. package/esm/MarketSentiment.d.ts.map +1 -1
  171. package/esm/MarketSentiment.js.map +1 -1
  172. package/esm/MarketSentiment.mjs +180 -66
  173. package/esm/ModelArtifact.d.ts.map +1 -1
  174. package/esm/ModelArtifact.js.map +1 -1
  175. package/esm/ModelArtifact.mjs +180 -66
  176. package/esm/ModelVersion.d.ts.map +1 -1
  177. package/esm/ModelVersion.js.map +1 -1
  178. package/esm/ModelVersion.mjs +180 -66
  179. package/esm/ModelVersionArtifact.d.ts.map +1 -1
  180. package/esm/ModelVersionArtifact.js.map +1 -1
  181. package/esm/ModelVersionArtifact.mjs +180 -66
  182. package/esm/NewsArticle.d.ts.map +1 -1
  183. package/esm/NewsArticle.js.map +1 -1
  184. package/esm/NewsArticle.mjs +180 -66
  185. package/esm/NewsArticleAssetSentiment.d.ts.map +1 -1
  186. package/esm/NewsArticleAssetSentiment.js.map +1 -1
  187. package/esm/NewsArticleAssetSentiment.mjs +180 -66
  188. package/esm/OptionsContract.d.ts.map +1 -1
  189. package/esm/OptionsContract.js.map +1 -1
  190. package/esm/OptionsContract.mjs +180 -66
  191. package/esm/OptionsGreeksHistory.d.ts.map +1 -1
  192. package/esm/OptionsGreeksHistory.js.map +1 -1
  193. package/esm/OptionsGreeksHistory.mjs +180 -66
  194. package/esm/OptionsPosition.d.ts.map +1 -1
  195. package/esm/OptionsPosition.js.map +1 -1
  196. package/esm/OptionsPosition.mjs +180 -66
  197. package/esm/OptionsPositionEvent.d.ts.map +1 -1
  198. package/esm/OptionsPositionEvent.js.map +1 -1
  199. package/esm/OptionsPositionEvent.mjs +180 -66
  200. package/esm/OptionsTradeExecution.d.ts.map +1 -1
  201. package/esm/OptionsTradeExecution.js.map +1 -1
  202. package/esm/OptionsTradeExecution.mjs +180 -66
  203. package/esm/PolicyOverlay.d.ts.map +1 -1
  204. package/esm/PolicyOverlay.js.map +1 -1
  205. package/esm/PolicyOverlay.mjs +180 -66
  206. package/esm/PortfolioGreeksHistory.d.ts.map +1 -1
  207. package/esm/PortfolioGreeksHistory.js.map +1 -1
  208. package/esm/PortfolioGreeksHistory.mjs +180 -66
  209. package/esm/ScheduledOptionOrder.d.ts.map +1 -1
  210. package/esm/ScheduledOptionOrder.js.map +1 -1
  211. package/esm/ScheduledOptionOrder.mjs +180 -66
  212. package/esm/Session.d.ts.map +1 -1
  213. package/esm/Session.js.map +1 -1
  214. package/esm/Session.mjs +180 -66
  215. package/esm/SignalGeneratorMetrics.d.ts.map +1 -1
  216. package/esm/SignalGeneratorMetrics.js.map +1 -1
  217. package/esm/SignalGeneratorMetrics.mjs +180 -66
  218. package/esm/SignalLineage.d.ts.map +1 -1
  219. package/esm/SignalLineage.js.map +1 -1
  220. package/esm/SignalLineage.mjs +180 -66
  221. package/esm/SignalOutcome.d.ts.map +1 -1
  222. package/esm/SignalOutcome.js.map +1 -1
  223. package/esm/SignalOutcome.mjs +180 -66
  224. package/esm/SignalPriorityQueue.d.ts.map +1 -1
  225. package/esm/SignalPriorityQueue.js.map +1 -1
  226. package/esm/SignalPriorityQueue.mjs +180 -66
  227. package/esm/SyncEvent.d.ts.map +1 -1
  228. package/esm/SyncEvent.js.map +1 -1
  229. package/esm/SyncEvent.mjs +180 -66
  230. package/esm/SystemAlert.d.ts.map +1 -1
  231. package/esm/SystemAlert.js.map +1 -1
  232. package/esm/SystemAlert.mjs +180 -66
  233. package/esm/Trade.d.ts.map +1 -1
  234. package/esm/Trade.js.map +1 -1
  235. package/esm/Trade.mjs +180 -66
  236. package/esm/TradeAuditEvent.d.ts.map +1 -1
  237. package/esm/TradeAuditEvent.js.map +1 -1
  238. package/esm/TradeAuditEvent.mjs +180 -66
  239. package/esm/TradeExecutionHistory.d.ts.map +1 -1
  240. package/esm/TradeExecutionHistory.js.map +1 -1
  241. package/esm/TradeExecutionHistory.mjs +180 -66
  242. package/esm/TradeOutcome.d.ts.map +1 -1
  243. package/esm/TradeOutcome.js.map +1 -1
  244. package/esm/TradeOutcome.mjs +180 -66
  245. package/esm/TradingPolicy.d.ts.map +1 -1
  246. package/esm/TradingPolicy.js.map +1 -1
  247. package/esm/TradingPolicy.mjs +180 -66
  248. package/esm/User.d.ts.map +1 -1
  249. package/esm/User.js.map +1 -1
  250. package/esm/User.mjs +180 -66
  251. package/esm/VerificationToken.d.ts.map +1 -1
  252. package/esm/VerificationToken.js.map +1 -1
  253. package/esm/VerificationToken.mjs +180 -66
  254. package/esm/WaitlistEntry.d.ts.map +1 -1
  255. package/esm/WaitlistEntry.js.map +1 -1
  256. package/esm/WaitlistEntry.mjs +180 -66
  257. package/esm/index.d.ts.map +1 -1
  258. package/package.json +1 -1
@@ -294,13 +294,28 @@ export const NewsArticleAssetSentiment = {
294
294
  await new Promise(resolve => setTimeout(resolve, delay));
295
295
  continue;
296
296
  }
297
- // Log structured error details and rethrow
298
- logger.error("Database create operation failed", {
299
- operation: 'createOneNewsArticleAssetSentiment',
300
- model: 'NewsArticleAssetSentiment',
301
- error: String(error),
302
- isRetryable: isConnectionError,
303
- });
297
+ // Log structured error details and rethrow.
298
+ // Demote transient failures to WARN with explicit transient+recoveryHint
299
+ // metadata so log analytics can distinguish recoverable upstream retries
300
+ // from true defects.
301
+ if (isConnectionError) {
302
+ logger.warn("Database create operation failed (transient after retries)", {
303
+ operation: 'createOneNewsArticleAssetSentiment',
304
+ model: 'NewsArticleAssetSentiment',
305
+ error: String(error),
306
+ isRetryable: true,
307
+ transient: true,
308
+ recoveryHint: "Upstream caller should retry on next cycle",
309
+ });
310
+ }
311
+ else {
312
+ logger.error("Database create operation failed", {
313
+ operation: 'createOneNewsArticleAssetSentiment',
314
+ model: 'NewsArticleAssetSentiment',
315
+ error: String(error),
316
+ isRetryable: false,
317
+ });
318
+ }
304
319
  throw error;
305
320
  }
306
321
  }
@@ -423,13 +438,25 @@ export const NewsArticleAssetSentiment = {
423
438
  await new Promise(resolve => setTimeout(resolve, delay));
424
439
  continue;
425
440
  }
426
- // Log structured error details and rethrow
427
- logger.error("Database createMany operation failed", {
428
- operation: 'createManyNewsArticleAssetSentiment',
429
- model: 'NewsArticleAssetSentiment',
430
- error: String(error),
431
- isRetryable: isConnectionError,
432
- });
441
+ // Log structured error details and rethrow (transient -> WARN).
442
+ if (isConnectionError) {
443
+ logger.warn("Database createMany operation failed (transient after retries)", {
444
+ operation: 'createManyNewsArticleAssetSentiment',
445
+ model: 'NewsArticleAssetSentiment',
446
+ error: String(error),
447
+ isRetryable: true,
448
+ transient: true,
449
+ recoveryHint: "Upstream caller should retry on next cycle",
450
+ });
451
+ }
452
+ else {
453
+ logger.error("Database createMany operation failed", {
454
+ operation: 'createManyNewsArticleAssetSentiment',
455
+ model: 'NewsArticleAssetSentiment',
456
+ error: String(error),
457
+ isRetryable: false,
458
+ });
459
+ }
433
460
  throw error;
434
461
  }
435
462
  }
@@ -1045,14 +1072,27 @@ export const NewsArticleAssetSentiment = {
1045
1072
  await new Promise(resolve => setTimeout(resolve, delay));
1046
1073
  continue;
1047
1074
  }
1048
- // Log structured error details and rethrow
1049
- logger.error("Database update operation failed", {
1050
- operation: 'updateOneNewsArticleAssetSentiment',
1051
- model: 'NewsArticleAssetSentiment',
1052
- error: String(error),
1053
- recordId: props.id,
1054
- isRetryable: isConnectionError,
1055
- });
1075
+ // Log structured error details and rethrow (transient -> WARN).
1076
+ if (isConnectionError) {
1077
+ logger.warn("Database update operation failed (transient after retries)", {
1078
+ operation: 'updateOneNewsArticleAssetSentiment',
1079
+ model: 'NewsArticleAssetSentiment',
1080
+ error: String(error),
1081
+ recordId: props.id,
1082
+ isRetryable: true,
1083
+ transient: true,
1084
+ recoveryHint: "Upstream caller should retry on next cycle",
1085
+ });
1086
+ }
1087
+ else {
1088
+ logger.error("Database update operation failed", {
1089
+ operation: 'updateOneNewsArticleAssetSentiment',
1090
+ model: 'NewsArticleAssetSentiment',
1091
+ error: String(error),
1092
+ recordId: props.id,
1093
+ isRetryable: false,
1094
+ });
1095
+ }
1056
1096
  throw error;
1057
1097
  }
1058
1098
  }
@@ -1833,14 +1873,27 @@ export const NewsArticleAssetSentiment = {
1833
1873
  await new Promise(resolve => setTimeout(resolve, delay));
1834
1874
  continue;
1835
1875
  }
1836
- // Log structured error details and rethrow
1837
- logger.error("Database upsert operation failed", {
1838
- operation: 'upsertOneNewsArticleAssetSentiment',
1839
- model: 'NewsArticleAssetSentiment',
1840
- error: String(error),
1841
- recordId: props.id,
1842
- isRetryable: isConnectionError,
1843
- });
1876
+ // Log structured error details and rethrow (transient -> WARN).
1877
+ if (isConnectionError) {
1878
+ logger.warn("Database upsert operation failed (transient after retries)", {
1879
+ operation: 'upsertOneNewsArticleAssetSentiment',
1880
+ model: 'NewsArticleAssetSentiment',
1881
+ error: String(error),
1882
+ recordId: props.id,
1883
+ isRetryable: true,
1884
+ transient: true,
1885
+ recoveryHint: "Upstream caller should retry on next cycle",
1886
+ });
1887
+ }
1888
+ else {
1889
+ logger.error("Database upsert operation failed", {
1890
+ operation: 'upsertOneNewsArticleAssetSentiment',
1891
+ model: 'NewsArticleAssetSentiment',
1892
+ error: String(error),
1893
+ recordId: props.id,
1894
+ isRetryable: false,
1895
+ });
1896
+ }
1844
1897
  throw error;
1845
1898
  }
1846
1899
  }
@@ -2454,13 +2507,25 @@ export const NewsArticleAssetSentiment = {
2454
2507
  await new Promise(resolve => setTimeout(resolve, delay));
2455
2508
  continue;
2456
2509
  }
2457
- // Log structured error details and rethrow
2458
- logger.error("Database updateMany operation failed", {
2459
- operation: 'updateManyNewsArticleAssetSentiment',
2460
- model: 'NewsArticleAssetSentiment',
2461
- error: String(error),
2462
- isRetryable: isConnectionError,
2463
- });
2510
+ // Log structured error details and rethrow (transient -> WARN).
2511
+ if (isConnectionError) {
2512
+ logger.warn("Database updateMany operation failed (transient after retries)", {
2513
+ operation: 'updateManyNewsArticleAssetSentiment',
2514
+ model: 'NewsArticleAssetSentiment',
2515
+ error: String(error),
2516
+ isRetryable: true,
2517
+ transient: true,
2518
+ recoveryHint: "Upstream caller should retry on next cycle",
2519
+ });
2520
+ }
2521
+ else {
2522
+ logger.error("Database updateMany operation failed", {
2523
+ operation: 'updateManyNewsArticleAssetSentiment',
2524
+ model: 'NewsArticleAssetSentiment',
2525
+ error: String(error),
2526
+ isRetryable: false,
2527
+ });
2528
+ }
2464
2529
  throw error;
2465
2530
  }
2466
2531
  }
@@ -2582,14 +2647,27 @@ export const NewsArticleAssetSentiment = {
2582
2647
  await new Promise(resolve => setTimeout(resolve, delay));
2583
2648
  continue;
2584
2649
  }
2585
- // Log structured error details and rethrow
2586
- logger.error("Database delete operation failed", {
2587
- operation: 'deleteOneNewsArticleAssetSentiment',
2588
- model: 'NewsArticleAssetSentiment',
2589
- error: String(error),
2590
- recordId: props.id,
2591
- isRetryable: isConnectionError,
2592
- });
2650
+ // Log structured error details and rethrow (transient -> WARN).
2651
+ if (isConnectionError) {
2652
+ logger.warn("Database delete operation failed (transient after retries)", {
2653
+ operation: 'deleteOneNewsArticleAssetSentiment',
2654
+ model: 'NewsArticleAssetSentiment',
2655
+ error: String(error),
2656
+ recordId: props.id,
2657
+ isRetryable: true,
2658
+ transient: true,
2659
+ recoveryHint: "Upstream caller should retry on next cycle",
2660
+ });
2661
+ }
2662
+ else {
2663
+ logger.error("Database delete operation failed", {
2664
+ operation: 'deleteOneNewsArticleAssetSentiment',
2665
+ model: 'NewsArticleAssetSentiment',
2666
+ error: String(error),
2667
+ recordId: props.id,
2668
+ isRetryable: false,
2669
+ });
2670
+ }
2593
2671
  throw error;
2594
2672
  }
2595
2673
  }
@@ -2688,13 +2766,25 @@ export const NewsArticleAssetSentiment = {
2688
2766
  await new Promise(resolve => setTimeout(resolve, delay));
2689
2767
  continue;
2690
2768
  }
2691
- // Log structured error details and rethrow
2692
- logger.error("Database get operation failed", {
2693
- operation: 'getNewsArticleAssetSentiment',
2694
- model: 'NewsArticleAssetSentiment',
2695
- error: String(error),
2696
- isRetryable: isConnectionError,
2697
- });
2769
+ // Log structured error details and rethrow (transient -> WARN).
2770
+ if (isConnectionError) {
2771
+ logger.warn("Database get operation failed (transient after retries)", {
2772
+ operation: 'getNewsArticleAssetSentiment',
2773
+ model: 'NewsArticleAssetSentiment',
2774
+ error: String(error),
2775
+ isRetryable: true,
2776
+ transient: true,
2777
+ recoveryHint: "Upstream caller should retry on next cycle",
2778
+ });
2779
+ }
2780
+ else {
2781
+ logger.error("Database get operation failed", {
2782
+ operation: 'getNewsArticleAssetSentiment',
2783
+ model: 'NewsArticleAssetSentiment',
2784
+ error: String(error),
2785
+ isRetryable: false,
2786
+ });
2787
+ }
2698
2788
  throw error;
2699
2789
  }
2700
2790
  }
@@ -2780,13 +2870,25 @@ export const NewsArticleAssetSentiment = {
2780
2870
  await new Promise(resolve => setTimeout(resolve, delay));
2781
2871
  continue;
2782
2872
  }
2783
- // Log structured error details and rethrow
2784
- logger.error("Database getAll operation failed", {
2785
- operation: 'getAllNewsArticleAssetSentiment',
2786
- model: 'NewsArticleAssetSentiment',
2787
- error: String(error),
2788
- isRetryable: isConnectionError,
2789
- });
2873
+ // Log structured error details and rethrow (transient -> WARN).
2874
+ if (isConnectionError) {
2875
+ logger.warn("Database getAll operation failed (transient after retries)", {
2876
+ operation: 'getAllNewsArticleAssetSentiment',
2877
+ model: 'NewsArticleAssetSentiment',
2878
+ error: String(error),
2879
+ isRetryable: true,
2880
+ transient: true,
2881
+ recoveryHint: "Upstream caller should retry on next cycle",
2882
+ });
2883
+ }
2884
+ else {
2885
+ logger.error("Database getAll operation failed", {
2886
+ operation: 'getAllNewsArticleAssetSentiment',
2887
+ model: 'NewsArticleAssetSentiment',
2888
+ error: String(error),
2889
+ isRetryable: false,
2890
+ });
2891
+ }
2790
2892
  throw error;
2791
2893
  }
2792
2894
  }
@@ -2899,13 +3001,25 @@ export const NewsArticleAssetSentiment = {
2899
3001
  await new Promise(resolve => setTimeout(resolve, delay));
2900
3002
  continue;
2901
3003
  }
2902
- // Log structured error details and rethrow
2903
- logger.error("Database findMany operation failed", {
2904
- operation: 'findManyNewsArticleAssetSentiment',
2905
- model: 'NewsArticleAssetSentiment',
2906
- error: String(error),
2907
- isRetryable: isConnectionError,
2908
- });
3004
+ // Log structured error details and rethrow (transient -> WARN).
3005
+ if (isConnectionError) {
3006
+ logger.warn("Database findMany operation failed (transient after retries)", {
3007
+ operation: 'findManyNewsArticleAssetSentiment',
3008
+ model: 'NewsArticleAssetSentiment',
3009
+ error: String(error),
3010
+ isRetryable: true,
3011
+ transient: true,
3012
+ recoveryHint: "Upstream caller should retry on next cycle",
3013
+ });
3014
+ }
3015
+ else {
3016
+ logger.error("Database findMany operation failed", {
3017
+ operation: 'findManyNewsArticleAssetSentiment',
3018
+ model: 'NewsArticleAssetSentiment',
3019
+ error: String(error),
3020
+ isRetryable: false,
3021
+ });
3022
+ }
2909
3023
  throw error;
2910
3024
  }
2911
3025
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OptionsContract.d.ts","sourceRoot":"","sources":["../../src/OptionsContract.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,IAAI,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC/G,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AA6IpG,eAAO,MAAM,eAAe;IAE1B;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAihBhI;;;;;;;OAOG;sBACqB,mBAAmB,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;IA6JjL;;;;;;OAMG;kBACiB,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA4/C9H;;;;;;OAMG;kBACiB,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAq4D9H;;;;;;OAMG;sBACqB,mBAAmB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IA2/CzI;;;;;;OAMG;kBACiB,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAyI9H;;;;;;;OAOG;eACc,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IA6GxK;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC;IAkG3G;;;;;;;OAOG;oBACmB,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC;CAyHhL,CAAC"}
1
+ {"version":3,"file":"OptionsContract.d.ts","sourceRoot":"","sources":["../../src/OptionsContract.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,IAAI,mBAAmB,EAAE,MAAM,uDAAuD,CAAC;AAC/G,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AA6IpG,eAAO,MAAM,eAAe;IAE1B;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA+hBhI;;;;;;;OAOG;sBACqB,mBAAmB,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;IAwKjL;;;;;;OAMG;kBACiB,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAwgD9H;;;;;;OAMG;kBACiB,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAi5D9H;;;;;;OAMG;sBACqB,mBAAmB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAsgDzI;;;;;;OAMG;kBACiB,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAqJ9H;;;;;;;OAOG;eACc,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAwHxK;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC;IA6G3G;;;;;;;OAOG;oBACmB,mBAAmB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC;CAoIhL,CAAC"}