@adaptic/backend-legacy 0.0.959 → 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
package/esm/Action.mjs CHANGED
@@ -198,13 +198,28 @@ export const Action = {
198
198
  await new Promise(resolve => setTimeout(resolve, delay));
199
199
  continue;
200
200
  }
201
- // Log structured error details and rethrow
202
- logger.error("Database create operation failed", {
203
- operation: 'createOneAction',
204
- model: 'Action',
205
- error: String(error),
206
- isRetryable: isConnectionError,
207
- });
201
+ // Log structured error details and rethrow.
202
+ // Demote transient failures to WARN with explicit transient+recoveryHint
203
+ // metadata so log analytics can distinguish recoverable upstream retries
204
+ // from true defects.
205
+ if (isConnectionError) {
206
+ logger.warn("Database create operation failed (transient after retries)", {
207
+ operation: 'createOneAction',
208
+ model: 'Action',
209
+ error: String(error),
210
+ isRetryable: true,
211
+ transient: true,
212
+ recoveryHint: "Upstream caller should retry on next cycle",
213
+ });
214
+ }
215
+ else {
216
+ logger.error("Database create operation failed", {
217
+ operation: 'createOneAction',
218
+ model: 'Action',
219
+ error: String(error),
220
+ isRetryable: false,
221
+ });
222
+ }
208
223
  throw error;
209
224
  }
210
225
  }
@@ -331,13 +346,25 @@ export const Action = {
331
346
  await new Promise(resolve => setTimeout(resolve, delay));
332
347
  continue;
333
348
  }
334
- // Log structured error details and rethrow
335
- logger.error("Database createMany operation failed", {
336
- operation: 'createManyAction',
337
- model: 'Action',
338
- error: String(error),
339
- isRetryable: isConnectionError,
340
- });
349
+ // Log structured error details and rethrow (transient -> WARN).
350
+ if (isConnectionError) {
351
+ logger.warn("Database createMany operation failed (transient after retries)", {
352
+ operation: 'createManyAction',
353
+ model: 'Action',
354
+ error: String(error),
355
+ isRetryable: true,
356
+ transient: true,
357
+ recoveryHint: "Upstream caller should retry on next cycle",
358
+ });
359
+ }
360
+ else {
361
+ logger.error("Database createMany operation failed", {
362
+ operation: 'createManyAction',
363
+ model: 'Action',
364
+ error: String(error),
365
+ isRetryable: false,
366
+ });
367
+ }
341
368
  throw error;
342
369
  }
343
370
  }
@@ -639,14 +666,27 @@ export const Action = {
639
666
  await new Promise(resolve => setTimeout(resolve, delay));
640
667
  continue;
641
668
  }
642
- // Log structured error details and rethrow
643
- logger.error("Database update operation failed", {
644
- operation: 'updateOneAction',
645
- model: 'Action',
646
- error: String(error),
647
- recordId: props.id,
648
- isRetryable: isConnectionError,
649
- });
669
+ // Log structured error details and rethrow (transient -> WARN).
670
+ if (isConnectionError) {
671
+ logger.warn("Database update operation failed (transient after retries)", {
672
+ operation: 'updateOneAction',
673
+ model: 'Action',
674
+ error: String(error),
675
+ recordId: props.id,
676
+ isRetryable: true,
677
+ transient: true,
678
+ recoveryHint: "Upstream caller should retry on next cycle",
679
+ });
680
+ }
681
+ else {
682
+ logger.error("Database update operation failed", {
683
+ operation: 'updateOneAction',
684
+ model: 'Action',
685
+ error: String(error),
686
+ recordId: props.id,
687
+ isRetryable: false,
688
+ });
689
+ }
650
690
  throw error;
651
691
  }
652
692
  }
@@ -1011,14 +1051,27 @@ export const Action = {
1011
1051
  await new Promise(resolve => setTimeout(resolve, delay));
1012
1052
  continue;
1013
1053
  }
1014
- // Log structured error details and rethrow
1015
- logger.error("Database upsert operation failed", {
1016
- operation: 'upsertOneAction',
1017
- model: 'Action',
1018
- error: String(error),
1019
- recordId: props.id,
1020
- isRetryable: isConnectionError,
1021
- });
1054
+ // Log structured error details and rethrow (transient -> WARN).
1055
+ if (isConnectionError) {
1056
+ logger.warn("Database upsert operation failed (transient after retries)", {
1057
+ operation: 'upsertOneAction',
1058
+ model: 'Action',
1059
+ error: String(error),
1060
+ recordId: props.id,
1061
+ isRetryable: true,
1062
+ transient: true,
1063
+ recoveryHint: "Upstream caller should retry on next cycle",
1064
+ });
1065
+ }
1066
+ else {
1067
+ logger.error("Database upsert operation failed", {
1068
+ operation: 'upsertOneAction',
1069
+ model: 'Action',
1070
+ error: String(error),
1071
+ recordId: props.id,
1072
+ isRetryable: false,
1073
+ });
1074
+ }
1022
1075
  throw error;
1023
1076
  }
1024
1077
  }
@@ -1318,13 +1371,25 @@ export const Action = {
1318
1371
  await new Promise(resolve => setTimeout(resolve, delay));
1319
1372
  continue;
1320
1373
  }
1321
- // Log structured error details and rethrow
1322
- logger.error("Database updateMany operation failed", {
1323
- operation: 'updateManyAction',
1324
- model: 'Action',
1325
- error: String(error),
1326
- isRetryable: isConnectionError,
1327
- });
1374
+ // Log structured error details and rethrow (transient -> WARN).
1375
+ if (isConnectionError) {
1376
+ logger.warn("Database updateMany operation failed (transient after retries)", {
1377
+ operation: 'updateManyAction',
1378
+ model: 'Action',
1379
+ error: String(error),
1380
+ isRetryable: true,
1381
+ transient: true,
1382
+ recoveryHint: "Upstream caller should retry on next cycle",
1383
+ });
1384
+ }
1385
+ else {
1386
+ logger.error("Database updateMany operation failed", {
1387
+ operation: 'updateManyAction',
1388
+ model: 'Action',
1389
+ error: String(error),
1390
+ isRetryable: false,
1391
+ });
1392
+ }
1328
1393
  throw error;
1329
1394
  }
1330
1395
  }
@@ -1446,14 +1511,27 @@ export const Action = {
1446
1511
  await new Promise(resolve => setTimeout(resolve, delay));
1447
1512
  continue;
1448
1513
  }
1449
- // Log structured error details and rethrow
1450
- logger.error("Database delete operation failed", {
1451
- operation: 'deleteOneAction',
1452
- model: 'Action',
1453
- error: String(error),
1454
- recordId: props.id,
1455
- isRetryable: isConnectionError,
1456
- });
1514
+ // Log structured error details and rethrow (transient -> WARN).
1515
+ if (isConnectionError) {
1516
+ logger.warn("Database delete operation failed (transient after retries)", {
1517
+ operation: 'deleteOneAction',
1518
+ model: 'Action',
1519
+ error: String(error),
1520
+ recordId: props.id,
1521
+ isRetryable: true,
1522
+ transient: true,
1523
+ recoveryHint: "Upstream caller should retry on next cycle",
1524
+ });
1525
+ }
1526
+ else {
1527
+ logger.error("Database delete operation failed", {
1528
+ operation: 'deleteOneAction',
1529
+ model: 'Action',
1530
+ error: String(error),
1531
+ recordId: props.id,
1532
+ isRetryable: false,
1533
+ });
1534
+ }
1457
1535
  throw error;
1458
1536
  }
1459
1537
  }
@@ -1558,13 +1636,25 @@ export const Action = {
1558
1636
  await new Promise(resolve => setTimeout(resolve, delay));
1559
1637
  continue;
1560
1638
  }
1561
- // Log structured error details and rethrow
1562
- logger.error("Database get operation failed", {
1563
- operation: 'getAction',
1564
- model: 'Action',
1565
- error: String(error),
1566
- isRetryable: isConnectionError,
1567
- });
1639
+ // Log structured error details and rethrow (transient -> WARN).
1640
+ if (isConnectionError) {
1641
+ logger.warn("Database get operation failed (transient after retries)", {
1642
+ operation: 'getAction',
1643
+ model: 'Action',
1644
+ error: String(error),
1645
+ isRetryable: true,
1646
+ transient: true,
1647
+ recoveryHint: "Upstream caller should retry on next cycle",
1648
+ });
1649
+ }
1650
+ else {
1651
+ logger.error("Database get operation failed", {
1652
+ operation: 'getAction',
1653
+ model: 'Action',
1654
+ error: String(error),
1655
+ isRetryable: false,
1656
+ });
1657
+ }
1568
1658
  throw error;
1569
1659
  }
1570
1660
  }
@@ -1650,13 +1740,25 @@ export const Action = {
1650
1740
  await new Promise(resolve => setTimeout(resolve, delay));
1651
1741
  continue;
1652
1742
  }
1653
- // Log structured error details and rethrow
1654
- logger.error("Database getAll operation failed", {
1655
- operation: 'getAllAction',
1656
- model: 'Action',
1657
- error: String(error),
1658
- isRetryable: isConnectionError,
1659
- });
1743
+ // Log structured error details and rethrow (transient -> WARN).
1744
+ if (isConnectionError) {
1745
+ logger.warn("Database getAll operation failed (transient after retries)", {
1746
+ operation: 'getAllAction',
1747
+ model: 'Action',
1748
+ error: String(error),
1749
+ isRetryable: true,
1750
+ transient: true,
1751
+ recoveryHint: "Upstream caller should retry on next cycle",
1752
+ });
1753
+ }
1754
+ else {
1755
+ logger.error("Database getAll operation failed", {
1756
+ operation: 'getAllAction',
1757
+ model: 'Action',
1758
+ error: String(error),
1759
+ isRetryable: false,
1760
+ });
1761
+ }
1660
1762
  throw error;
1661
1763
  }
1662
1764
  }
@@ -1772,13 +1874,25 @@ export const Action = {
1772
1874
  await new Promise(resolve => setTimeout(resolve, delay));
1773
1875
  continue;
1774
1876
  }
1775
- // Log structured error details and rethrow
1776
- logger.error("Database findMany operation failed", {
1777
- operation: 'findManyAction',
1778
- model: 'Action',
1779
- error: String(error),
1780
- isRetryable: isConnectionError,
1781
- });
1877
+ // Log structured error details and rethrow (transient -> WARN).
1878
+ if (isConnectionError) {
1879
+ logger.warn("Database findMany operation failed (transient after retries)", {
1880
+ operation: 'findManyAction',
1881
+ model: 'Action',
1882
+ error: String(error),
1883
+ isRetryable: true,
1884
+ transient: true,
1885
+ recoveryHint: "Upstream caller should retry on next cycle",
1886
+ });
1887
+ }
1888
+ else {
1889
+ logger.error("Database findMany operation failed", {
1890
+ operation: 'findManyAction',
1891
+ model: 'Action',
1892
+ error: String(error),
1893
+ isRetryable: false,
1894
+ });
1895
+ }
1782
1896
  throw error;
1783
1897
  }
1784
1898
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../src/Alert.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AA2BpG,eAAO,MAAM,KAAK;IAEhB;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAklB5G;;;;;;;OAOG;sBACqB,SAAS,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+IvK;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAm3D1G;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAs0E1G;;;;;;OAMG;sBACqB,SAAS,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAk3D/H;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAyI1G;;;;;;;OAOG;eACc,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAsHpJ;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC;IAkGjG;;;;;;;OAOG;oBACmB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC;CAkI5J,CAAC"}
1
+ {"version":3,"file":"Alert.d.ts","sourceRoot":"","sources":["../../src/Alert.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAmB,gBAAgB,EAAE,qBAAqB,EAAoB,MAAM,UAAU,CAAC;AA2BpG,eAAO,MAAM,KAAK;IAEhB;;;;;OAKG;IAEH;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAgmB5G;;;;;;;OAOG;sBACqB,SAAS,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;IA0JvK;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IA+3D1G;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAk1E1G;;;;;;OAMG;sBACqB,SAAS,EAAE,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IA63D/H;;;;;;OAMG;kBACiB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAqJ1G;;;;;;;OAOG;eACc,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAiIpJ;;;;;OAKG;0BACyB,gBAAgB,CAAC,qBAAqB,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC;IA6GjG;;;;;;;OAOG;oBACmB,SAAS,iBAAiB,gBAAgB,CAAC,qBAAqB,CAAC,eAAe,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC;CA6I5J,CAAC"}