@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
@@ -650,13 +650,28 @@ export const OptionsContract = {
650
650
  await new Promise(resolve => setTimeout(resolve, delay));
651
651
  continue;
652
652
  }
653
- // Log structured error details and rethrow
654
- logger.error("Database create operation failed", {
655
- operation: 'createOneOptionsContract',
656
- model: 'OptionsContract',
657
- error: String(error),
658
- isRetryable: isConnectionError,
659
- });
653
+ // Log structured error details and rethrow.
654
+ // Demote transient failures to WARN with explicit transient+recoveryHint
655
+ // metadata so log analytics can distinguish recoverable upstream retries
656
+ // from true defects.
657
+ if (isConnectionError) {
658
+ logger.warn("Database create operation failed (transient after retries)", {
659
+ operation: 'createOneOptionsContract',
660
+ model: 'OptionsContract',
661
+ error: String(error),
662
+ isRetryable: true,
663
+ transient: true,
664
+ recoveryHint: "Upstream caller should retry on next cycle",
665
+ });
666
+ }
667
+ else {
668
+ logger.error("Database create operation failed", {
669
+ operation: 'createOneOptionsContract',
670
+ model: 'OptionsContract',
671
+ error: String(error),
672
+ isRetryable: false,
673
+ });
674
+ }
660
675
  throw error;
661
676
  }
662
677
  }
@@ -800,13 +815,25 @@ export const OptionsContract = {
800
815
  await new Promise(resolve => setTimeout(resolve, delay));
801
816
  continue;
802
817
  }
803
- // Log structured error details and rethrow
804
- logger.error("Database createMany operation failed", {
805
- operation: 'createManyOptionsContract',
806
- model: 'OptionsContract',
807
- error: String(error),
808
- isRetryable: isConnectionError,
809
- });
818
+ // Log structured error details and rethrow (transient -> WARN).
819
+ if (isConnectionError) {
820
+ logger.warn("Database createMany operation failed (transient after retries)", {
821
+ operation: 'createManyOptionsContract',
822
+ model: 'OptionsContract',
823
+ error: String(error),
824
+ isRetryable: true,
825
+ transient: true,
826
+ recoveryHint: "Upstream caller should retry on next cycle",
827
+ });
828
+ }
829
+ else {
830
+ logger.error("Database createMany operation failed", {
831
+ operation: 'createManyOptionsContract',
832
+ model: 'OptionsContract',
833
+ error: String(error),
834
+ isRetryable: false,
835
+ });
836
+ }
810
837
  throw error;
811
838
  }
812
839
  }
@@ -2323,14 +2350,27 @@ export const OptionsContract = {
2323
2350
  await new Promise(resolve => setTimeout(resolve, delay));
2324
2351
  continue;
2325
2352
  }
2326
- // Log structured error details and rethrow
2327
- logger.error("Database update operation failed", {
2328
- operation: 'updateOneOptionsContract',
2329
- model: 'OptionsContract',
2330
- error: String(error),
2331
- recordId: props.id,
2332
- isRetryable: isConnectionError,
2333
- });
2353
+ // Log structured error details and rethrow (transient -> WARN).
2354
+ if (isConnectionError) {
2355
+ logger.warn("Database update operation failed (transient after retries)", {
2356
+ operation: 'updateOneOptionsContract',
2357
+ model: 'OptionsContract',
2358
+ error: String(error),
2359
+ recordId: props.id,
2360
+ isRetryable: true,
2361
+ transient: true,
2362
+ recoveryHint: "Upstream caller should retry on next cycle",
2363
+ });
2364
+ }
2365
+ else {
2366
+ logger.error("Database update operation failed", {
2367
+ operation: 'updateOneOptionsContract',
2368
+ model: 'OptionsContract',
2369
+ error: String(error),
2370
+ recordId: props.id,
2371
+ isRetryable: false,
2372
+ });
2373
+ }
2334
2374
  throw error;
2335
2375
  }
2336
2376
  }
@@ -4240,14 +4280,27 @@ export const OptionsContract = {
4240
4280
  await new Promise(resolve => setTimeout(resolve, delay));
4241
4281
  continue;
4242
4282
  }
4243
- // Log structured error details and rethrow
4244
- logger.error("Database upsert operation failed", {
4245
- operation: 'upsertOneOptionsContract',
4246
- model: 'OptionsContract',
4247
- error: String(error),
4248
- recordId: props.id,
4249
- isRetryable: isConnectionError,
4250
- });
4283
+ // Log structured error details and rethrow (transient -> WARN).
4284
+ if (isConnectionError) {
4285
+ logger.warn("Database upsert operation failed (transient after retries)", {
4286
+ operation: 'upsertOneOptionsContract',
4287
+ model: 'OptionsContract',
4288
+ error: String(error),
4289
+ recordId: props.id,
4290
+ isRetryable: true,
4291
+ transient: true,
4292
+ recoveryHint: "Upstream caller should retry on next cycle",
4293
+ });
4294
+ }
4295
+ else {
4296
+ logger.error("Database upsert operation failed", {
4297
+ operation: 'upsertOneOptionsContract',
4298
+ model: 'OptionsContract',
4299
+ error: String(error),
4300
+ recordId: props.id,
4301
+ isRetryable: false,
4302
+ });
4303
+ }
4251
4304
  throw error;
4252
4305
  }
4253
4306
  }
@@ -5762,13 +5815,25 @@ export const OptionsContract = {
5762
5815
  await new Promise(resolve => setTimeout(resolve, delay));
5763
5816
  continue;
5764
5817
  }
5765
- // Log structured error details and rethrow
5766
- logger.error("Database updateMany operation failed", {
5767
- operation: 'updateManyOptionsContract',
5768
- model: 'OptionsContract',
5769
- error: String(error),
5770
- isRetryable: isConnectionError,
5771
- });
5818
+ // Log structured error details and rethrow (transient -> WARN).
5819
+ if (isConnectionError) {
5820
+ logger.warn("Database updateMany operation failed (transient after retries)", {
5821
+ operation: 'updateManyOptionsContract',
5822
+ model: 'OptionsContract',
5823
+ error: String(error),
5824
+ isRetryable: true,
5825
+ transient: true,
5826
+ recoveryHint: "Upstream caller should retry on next cycle",
5827
+ });
5828
+ }
5829
+ else {
5830
+ logger.error("Database updateMany operation failed", {
5831
+ operation: 'updateManyOptionsContract',
5832
+ model: 'OptionsContract',
5833
+ error: String(error),
5834
+ isRetryable: false,
5835
+ });
5836
+ }
5772
5837
  throw error;
5773
5838
  }
5774
5839
  }
@@ -5890,14 +5955,27 @@ export const OptionsContract = {
5890
5955
  await new Promise(resolve => setTimeout(resolve, delay));
5891
5956
  continue;
5892
5957
  }
5893
- // Log structured error details and rethrow
5894
- logger.error("Database delete operation failed", {
5895
- operation: 'deleteOneOptionsContract',
5896
- model: 'OptionsContract',
5897
- error: String(error),
5898
- recordId: props.id,
5899
- isRetryable: isConnectionError,
5900
- });
5958
+ // Log structured error details and rethrow (transient -> WARN).
5959
+ if (isConnectionError) {
5960
+ logger.warn("Database delete operation failed (transient after retries)", {
5961
+ operation: 'deleteOneOptionsContract',
5962
+ model: 'OptionsContract',
5963
+ error: String(error),
5964
+ recordId: props.id,
5965
+ isRetryable: true,
5966
+ transient: true,
5967
+ recoveryHint: "Upstream caller should retry on next cycle",
5968
+ });
5969
+ }
5970
+ else {
5971
+ logger.error("Database delete operation failed", {
5972
+ operation: 'deleteOneOptionsContract',
5973
+ model: 'OptionsContract',
5974
+ error: String(error),
5975
+ recordId: props.id,
5976
+ isRetryable: false,
5977
+ });
5978
+ }
5901
5979
  throw error;
5902
5980
  }
5903
5981
  }
@@ -5995,13 +6073,25 @@ export const OptionsContract = {
5995
6073
  await new Promise(resolve => setTimeout(resolve, delay));
5996
6074
  continue;
5997
6075
  }
5998
- // Log structured error details and rethrow
5999
- logger.error("Database get operation failed", {
6000
- operation: 'getOptionsContract',
6001
- model: 'OptionsContract',
6002
- error: String(error),
6003
- isRetryable: isConnectionError,
6004
- });
6076
+ // Log structured error details and rethrow (transient -> WARN).
6077
+ if (isConnectionError) {
6078
+ logger.warn("Database get operation failed (transient after retries)", {
6079
+ operation: 'getOptionsContract',
6080
+ model: 'OptionsContract',
6081
+ error: String(error),
6082
+ isRetryable: true,
6083
+ transient: true,
6084
+ recoveryHint: "Upstream caller should retry on next cycle",
6085
+ });
6086
+ }
6087
+ else {
6088
+ logger.error("Database get operation failed", {
6089
+ operation: 'getOptionsContract',
6090
+ model: 'OptionsContract',
6091
+ error: String(error),
6092
+ isRetryable: false,
6093
+ });
6094
+ }
6005
6095
  throw error;
6006
6096
  }
6007
6097
  }
@@ -6087,13 +6177,25 @@ export const OptionsContract = {
6087
6177
  await new Promise(resolve => setTimeout(resolve, delay));
6088
6178
  continue;
6089
6179
  }
6090
- // Log structured error details and rethrow
6091
- logger.error("Database getAll operation failed", {
6092
- operation: 'getAllOptionsContract',
6093
- model: 'OptionsContract',
6094
- error: String(error),
6095
- isRetryable: isConnectionError,
6096
- });
6180
+ // Log structured error details and rethrow (transient -> WARN).
6181
+ if (isConnectionError) {
6182
+ logger.warn("Database getAll operation failed (transient after retries)", {
6183
+ operation: 'getAllOptionsContract',
6184
+ model: 'OptionsContract',
6185
+ error: String(error),
6186
+ isRetryable: true,
6187
+ transient: true,
6188
+ recoveryHint: "Upstream caller should retry on next cycle",
6189
+ });
6190
+ }
6191
+ else {
6192
+ logger.error("Database getAll operation failed", {
6193
+ operation: 'getAllOptionsContract',
6194
+ model: 'OptionsContract',
6195
+ error: String(error),
6196
+ isRetryable: false,
6197
+ });
6198
+ }
6097
6199
  throw error;
6098
6200
  }
6099
6201
  }
@@ -6203,13 +6305,25 @@ export const OptionsContract = {
6203
6305
  await new Promise(resolve => setTimeout(resolve, delay));
6204
6306
  continue;
6205
6307
  }
6206
- // Log structured error details and rethrow
6207
- logger.error("Database findMany operation failed", {
6208
- operation: 'findManyOptionsContract',
6209
- model: 'OptionsContract',
6210
- error: String(error),
6211
- isRetryable: isConnectionError,
6212
- });
6308
+ // Log structured error details and rethrow (transient -> WARN).
6309
+ if (isConnectionError) {
6310
+ logger.warn("Database findMany operation failed (transient after retries)", {
6311
+ operation: 'findManyOptionsContract',
6312
+ model: 'OptionsContract',
6313
+ error: String(error),
6314
+ isRetryable: true,
6315
+ transient: true,
6316
+ recoveryHint: "Upstream caller should retry on next cycle",
6317
+ });
6318
+ }
6319
+ else {
6320
+ logger.error("Database findMany operation failed", {
6321
+ operation: 'findManyOptionsContract',
6322
+ model: 'OptionsContract',
6323
+ error: String(error),
6324
+ isRetryable: false,
6325
+ });
6326
+ }
6213
6327
  throw error;
6214
6328
  }
6215
6329
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OptionsGreeksHistory.d.ts","sourceRoot":"","sources":["../../src/OptionsGreeksHistory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,IAAI,wBAAwB,EAAE,MAAM,4DAA4D,CAAC;AAC9H,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AAiEpG,eAAO,MAAM,oBAAoB;IAE/B;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAoa1I;;;;;;;OAOG;sBACqB,wBAAwB,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;IAoJtL;;;;;;OAMG;kBACiB,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAwuCxI;;;;;;OAMG;kBACiB,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAugDxI;;;;;;OAMG;sBACqB,wBAAwB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAuuC9I;;;;;;OAMG;kBACiB,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAyIxI;;;;;;;OAOG;eACc,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IA6GlL;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,wBAAwB,EAAE,GAAG,IAAI,CAAC;IAkGhH;;;;;;;OAOG;oBACmB,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,wBAAwB,EAAE,GAAG,IAAI,CAAC;CAyH1L,CAAC"}
1
+ {"version":3,"file":"OptionsGreeksHistory.d.ts","sourceRoot":"","sources":["../../src/OptionsGreeksHistory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,IAAI,wBAAwB,EAAE,MAAM,4DAA4D,CAAC;AAC9H,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AAiEpG,eAAO,MAAM,oBAAoB;IAE/B;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAkb1I;;;;;;;OAOG;sBACqB,wBAAwB,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;IA+JtL;;;;;;OAMG;kBACiB,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAovCxI;;;;;;OAMG;kBACiB,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAmhDxI;;;;;;OAMG;sBACqB,wBAAwB,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAkvC9I;;;;;;OAMG;kBACiB,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAqJxI;;;;;;;OAOG;eACc,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IAwHlL;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,wBAAwB,EAAE,GAAG,IAAI,CAAC;IA6GhH;;;;;;;OAOG;oBACmB,wBAAwB,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,wBAAwB,EAAE,GAAG,IAAI,CAAC;CAoI1L,CAAC"}