@farukada/aws-langgraph-dynamodb-ts 0.2.2 → 0.3.1

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 (517) hide show
  1. package/README.md +224 -512
  2. package/dist/checkpointer/actions/delete-thread.d.ts +7 -6
  3. package/dist/checkpointer/actions/delete-thread.d.ts.map +1 -1
  4. package/dist/checkpointer/actions/delete-thread.js +47 -152
  5. package/dist/checkpointer/actions/delete-thread.js.map +1 -1
  6. package/dist/checkpointer/actions/get-tuple.d.ts +6 -14
  7. package/dist/checkpointer/actions/get-tuple.d.ts.map +1 -1
  8. package/dist/checkpointer/actions/get-tuple.js +13 -166
  9. package/dist/checkpointer/actions/get-tuple.js.map +1 -1
  10. package/dist/checkpointer/actions/list.d.ts +10 -0
  11. package/dist/checkpointer/actions/list.d.ts.map +1 -0
  12. package/dist/checkpointer/actions/list.js +51 -0
  13. package/dist/checkpointer/actions/list.js.map +1 -0
  14. package/dist/checkpointer/actions/put-writes.d.ts +6 -6
  15. package/dist/checkpointer/actions/put-writes.d.ts.map +1 -1
  16. package/dist/checkpointer/actions/put-writes.js +26 -75
  17. package/dist/checkpointer/actions/put-writes.js.map +1 -1
  18. package/dist/checkpointer/actions/put.d.ts +6 -11
  19. package/dist/checkpointer/actions/put.d.ts.map +1 -1
  20. package/dist/checkpointer/actions/put.js +29 -161
  21. package/dist/checkpointer/actions/put.js.map +1 -1
  22. package/dist/checkpointer/internal/assemble.d.ts +10 -0
  23. package/dist/checkpointer/internal/assemble.d.ts.map +1 -0
  24. package/dist/checkpointer/internal/assemble.js +37 -0
  25. package/dist/checkpointer/internal/assemble.js.map +1 -0
  26. package/dist/checkpointer/internal/configurable.d.ts +13 -0
  27. package/dist/checkpointer/internal/configurable.d.ts.map +1 -0
  28. package/dist/checkpointer/internal/configurable.js +23 -0
  29. package/dist/checkpointer/internal/configurable.js.map +1 -0
  30. package/dist/checkpointer/internal/fetch.d.ts +10 -0
  31. package/dist/checkpointer/internal/fetch.d.ts.map +1 -0
  32. package/dist/checkpointer/internal/fetch.js +46 -0
  33. package/dist/checkpointer/internal/fetch.js.map +1 -0
  34. package/dist/checkpointer/internal/filter-match.d.ts +12 -0
  35. package/dist/checkpointer/internal/filter-match.d.ts.map +1 -0
  36. package/dist/checkpointer/internal/filter-match.js +14 -0
  37. package/dist/checkpointer/internal/filter-match.js.map +1 -0
  38. package/dist/checkpointer/internal/item-reader.d.ts +10 -0
  39. package/dist/checkpointer/internal/item-reader.d.ts.map +1 -0
  40. package/dist/checkpointer/internal/item-reader.js +26 -0
  41. package/dist/checkpointer/internal/item-reader.js.map +1 -0
  42. package/dist/checkpointer/internal/item-writer.d.ts +14 -0
  43. package/dist/checkpointer/internal/item-writer.d.ts.map +1 -0
  44. package/dist/checkpointer/internal/item-writer.js +68 -0
  45. package/dist/checkpointer/internal/item-writer.js.map +1 -0
  46. package/dist/checkpointer/internal/keys.d.ts +15 -0
  47. package/dist/checkpointer/internal/keys.d.ts.map +1 -0
  48. package/dist/checkpointer/internal/keys.js +52 -0
  49. package/dist/checkpointer/internal/keys.js.map +1 -0
  50. package/dist/checkpointer/internal/query.d.ts +16 -0
  51. package/dist/checkpointer/internal/query.d.ts.map +1 -0
  52. package/dist/checkpointer/internal/query.js +33 -0
  53. package/dist/checkpointer/internal/query.js.map +1 -0
  54. package/dist/checkpointer/internal/setup.d.ts +31 -0
  55. package/dist/checkpointer/internal/setup.d.ts.map +1 -0
  56. package/dist/checkpointer/internal/setup.js +29 -0
  57. package/dist/checkpointer/internal/setup.js.map +1 -0
  58. package/dist/checkpointer/internal/validation.d.ts +9 -0
  59. package/dist/checkpointer/internal/validation.d.ts.map +1 -0
  60. package/dist/checkpointer/internal/validation.js +28 -0
  61. package/dist/checkpointer/internal/validation.js.map +1 -0
  62. package/dist/checkpointer/saver.d.ts +21 -0
  63. package/dist/checkpointer/saver.d.ts.map +1 -0
  64. package/dist/checkpointer/saver.js +49 -0
  65. package/dist/checkpointer/saver.js.map +1 -0
  66. package/dist/checkpointer/types.d.ts +43 -0
  67. package/dist/checkpointer/types.d.ts.map +1 -0
  68. package/dist/{store/types/index.js → checkpointer/types.js} +1 -1
  69. package/dist/checkpointer/types.js.map +1 -0
  70. package/dist/factory/factory.d.ts +41 -0
  71. package/dist/factory/factory.d.ts.map +1 -0
  72. package/dist/factory/factory.js +49 -0
  73. package/dist/factory/factory.js.map +1 -0
  74. package/dist/history/actions/add-messages.d.ts +12 -7
  75. package/dist/history/actions/add-messages.d.ts.map +1 -1
  76. package/dist/history/actions/add-messages.js +50 -48
  77. package/dist/history/actions/add-messages.js.map +1 -1
  78. package/dist/history/actions/clear.d.ts +5 -11
  79. package/dist/history/actions/clear.d.ts.map +1 -1
  80. package/dist/history/actions/clear.js +28 -62
  81. package/dist/history/actions/clear.js.map +1 -1
  82. package/dist/history/actions/get-messages.d.ts +6 -13
  83. package/dist/history/actions/get-messages.d.ts.map +1 -1
  84. package/dist/history/actions/get-messages.js +23 -59
  85. package/dist/history/actions/get-messages.js.map +1 -1
  86. package/dist/history/actions/list-sessions.d.ts +6 -22
  87. package/dist/history/actions/list-sessions.d.ts.map +1 -1
  88. package/dist/history/actions/list-sessions.js +26 -69
  89. package/dist/history/actions/list-sessions.js.map +1 -1
  90. package/dist/history/actions/reconcile-count.d.ts +10 -0
  91. package/dist/history/actions/reconcile-count.d.ts.map +1 -0
  92. package/dist/history/actions/reconcile-count.js +39 -0
  93. package/dist/history/actions/reconcile-count.js.map +1 -0
  94. package/dist/history/chat-message-history.d.ts +36 -0
  95. package/dist/history/chat-message-history.d.ts.map +1 -0
  96. package/dist/history/chat-message-history.js +67 -0
  97. package/dist/history/chat-message-history.js.map +1 -0
  98. package/dist/history/internal/append-saga.d.ts +17 -0
  99. package/dist/history/internal/append-saga.d.ts.map +1 -0
  100. package/dist/history/internal/append-saga.js +94 -0
  101. package/dist/history/internal/append-saga.js.map +1 -0
  102. package/dist/history/internal/item-mapper.d.ts +12 -0
  103. package/dist/history/internal/item-mapper.d.ts.map +1 -0
  104. package/dist/history/internal/item-mapper.js +33 -0
  105. package/dist/history/internal/item-mapper.js.map +1 -0
  106. package/dist/history/internal/keys.d.ts +9 -0
  107. package/dist/history/internal/keys.d.ts.map +1 -0
  108. package/dist/history/internal/keys.js +22 -0
  109. package/dist/history/internal/keys.js.map +1 -0
  110. package/dist/history/internal/message-chunker.d.ts +14 -0
  111. package/dist/history/internal/message-chunker.d.ts.map +1 -0
  112. package/dist/history/internal/message-chunker.js +60 -0
  113. package/dist/history/internal/message-chunker.js.map +1 -0
  114. package/dist/history/internal/message-transaction.d.ts +17 -0
  115. package/dist/history/internal/message-transaction.d.ts.map +1 -0
  116. package/dist/history/internal/message-transaction.js +27 -0
  117. package/dist/history/internal/message-transaction.js.map +1 -0
  118. package/dist/history/internal/query.d.ts +6 -0
  119. package/dist/history/internal/query.d.ts.map +1 -0
  120. package/dist/history/internal/query.js +28 -0
  121. package/dist/history/internal/query.js.map +1 -0
  122. package/dist/history/internal/session-update.d.ts +20 -0
  123. package/dist/history/internal/session-update.d.ts.map +1 -0
  124. package/dist/history/internal/session-update.js +46 -0
  125. package/dist/history/internal/session-update.js.map +1 -0
  126. package/dist/history/internal/setup.d.ts +28 -0
  127. package/dist/history/internal/setup.d.ts.map +1 -0
  128. package/dist/history/internal/setup.js +27 -0
  129. package/dist/history/internal/setup.js.map +1 -0
  130. package/dist/history/internal/title-generator.d.ts +7 -0
  131. package/dist/history/internal/title-generator.d.ts.map +1 -0
  132. package/dist/history/internal/title-generator.js +16 -0
  133. package/dist/history/internal/title-generator.js.map +1 -0
  134. package/dist/history/internal/ttl-anchor.d.ts +12 -0
  135. package/dist/history/internal/ttl-anchor.d.ts.map +1 -0
  136. package/dist/history/internal/ttl-anchor.js +26 -0
  137. package/dist/history/internal/ttl-anchor.js.map +1 -0
  138. package/dist/history/session-adapter.d.ts +10 -26
  139. package/dist/history/session-adapter.d.ts.map +1 -1
  140. package/dist/history/session-adapter.js +15 -57
  141. package/dist/history/session-adapter.js.map +1 -1
  142. package/dist/history/types.d.ts +36 -0
  143. package/dist/history/types.d.ts.map +1 -0
  144. package/dist/history/types.js +3 -0
  145. package/dist/history/types.js.map +1 -0
  146. package/dist/index.d.ts +18 -10
  147. package/dist/index.d.ts.map +1 -1
  148. package/dist/index.js +24 -16
  149. package/dist/index.js.map +1 -1
  150. package/dist/shared/clock.d.ts +3 -0
  151. package/dist/shared/clock.d.ts.map +1 -0
  152. package/dist/shared/clock.js +8 -0
  153. package/dist/shared/clock.js.map +1 -0
  154. package/dist/shared/codec/codec.d.ts +44 -0
  155. package/dist/shared/codec/codec.d.ts.map +1 -0
  156. package/dist/shared/codec/codec.js +44 -0
  157. package/dist/shared/codec/codec.js.map +1 -0
  158. package/dist/shared/codec/compression.d.ts +25 -0
  159. package/dist/shared/codec/compression.d.ts.map +1 -0
  160. package/dist/shared/codec/compression.js +49 -0
  161. package/dist/shared/codec/compression.js.map +1 -0
  162. package/dist/shared/codec/descriptor-keys.d.ts +4 -0
  163. package/dist/shared/codec/descriptor-keys.d.ts.map +1 -0
  164. package/dist/shared/codec/descriptor-keys.js +14 -0
  165. package/dist/shared/codec/descriptor-keys.js.map +1 -0
  166. package/dist/shared/codec/json-serde.d.ts +8 -0
  167. package/dist/shared/codec/json-serde.d.ts.map +1 -0
  168. package/dist/shared/codec/json-serde.js +18 -0
  169. package/dist/shared/codec/json-serde.js.map +1 -0
  170. package/dist/shared/codec/s3/client.d.ts +6 -0
  171. package/dist/shared/codec/s3/client.d.ts.map +1 -0
  172. package/dist/shared/codec/s3/client.js +18 -0
  173. package/dist/shared/codec/s3/client.js.map +1 -0
  174. package/dist/shared/codec/s3/config.d.ts +16 -0
  175. package/dist/shared/codec/s3/config.d.ts.map +1 -0
  176. package/dist/shared/codec/s3/config.js +14 -0
  177. package/dist/shared/codec/s3/config.js.map +1 -0
  178. package/dist/shared/codec/s3/delete.d.ts +8 -0
  179. package/dist/shared/codec/s3/delete.d.ts.map +1 -0
  180. package/dist/shared/codec/s3/delete.js +29 -0
  181. package/dist/shared/codec/s3/delete.js.map +1 -0
  182. package/dist/shared/codec/s3/lifecycle.d.ts +8 -0
  183. package/dist/shared/codec/s3/lifecycle.d.ts.map +1 -0
  184. package/dist/shared/codec/s3/lifecycle.js +47 -0
  185. package/dist/shared/codec/s3/lifecycle.js.map +1 -0
  186. package/dist/shared/codec/s3/offloader.d.ts +33 -0
  187. package/dist/shared/codec/s3/offloader.d.ts.map +1 -0
  188. package/dist/shared/codec/s3/offloader.js +80 -0
  189. package/dist/shared/codec/s3/offloader.js.map +1 -0
  190. package/dist/shared/codec/s3/orphans.d.ts +16 -0
  191. package/dist/shared/codec/s3/orphans.d.ts.map +1 -0
  192. package/dist/shared/codec/s3/orphans.js +73 -0
  193. package/dist/shared/codec/s3/orphans.js.map +1 -0
  194. package/dist/shared/codec/s3/read-write.d.ts +14 -0
  195. package/dist/shared/codec/s3/read-write.d.ts.map +1 -0
  196. package/dist/shared/codec/s3/read-write.js +42 -0
  197. package/dist/shared/codec/s3/read-write.js.map +1 -0
  198. package/dist/shared/constants.d.ts +37 -0
  199. package/dist/shared/constants.d.ts.map +1 -0
  200. package/dist/shared/constants.js +40 -0
  201. package/dist/shared/constants.js.map +1 -0
  202. package/dist/shared/dynamodb/backoff.d.ts +15 -0
  203. package/dist/shared/dynamodb/backoff.d.ts.map +1 -0
  204. package/dist/shared/dynamodb/backoff.js +48 -0
  205. package/dist/shared/dynamodb/backoff.js.map +1 -0
  206. package/dist/shared/dynamodb/batch-write.d.ts +10 -0
  207. package/dist/shared/dynamodb/batch-write.d.ts.map +1 -0
  208. package/dist/shared/dynamodb/batch-write.js +17 -0
  209. package/dist/shared/dynamodb/batch-write.js.map +1 -0
  210. package/dist/shared/dynamodb/client.d.ts +21 -0
  211. package/dist/shared/dynamodb/client.d.ts.map +1 -0
  212. package/dist/shared/dynamodb/client.js +19 -0
  213. package/dist/shared/dynamodb/client.js.map +1 -0
  214. package/dist/shared/dynamodb/drain-unprocessed.d.ts +15 -0
  215. package/dist/shared/dynamodb/drain-unprocessed.d.ts.map +1 -0
  216. package/dist/shared/dynamodb/drain-unprocessed.js +35 -0
  217. package/dist/shared/dynamodb/drain-unprocessed.js.map +1 -0
  218. package/dist/shared/dynamodb/paginate-core.d.ts +22 -0
  219. package/dist/shared/dynamodb/paginate-core.d.ts.map +1 -0
  220. package/dist/shared/dynamodb/paginate-core.js +52 -0
  221. package/dist/shared/dynamodb/paginate-core.js.map +1 -0
  222. package/dist/shared/dynamodb/paginate.d.ts +15 -0
  223. package/dist/shared/dynamodb/paginate.d.ts.map +1 -0
  224. package/dist/shared/dynamodb/paginate.js +20 -0
  225. package/dist/shared/dynamodb/paginate.js.map +1 -0
  226. package/dist/shared/dynamodb/retry-classifier.d.ts +9 -0
  227. package/dist/shared/dynamodb/retry-classifier.d.ts.map +1 -0
  228. package/dist/shared/dynamodb/retry-classifier.js +75 -0
  229. package/dist/shared/dynamodb/retry-classifier.js.map +1 -0
  230. package/dist/shared/dynamodb/retry.d.ts +18 -0
  231. package/dist/shared/dynamodb/retry.d.ts.map +1 -0
  232. package/dist/shared/dynamodb/retry.js +53 -0
  233. package/dist/shared/dynamodb/retry.js.map +1 -0
  234. package/dist/shared/dynamodb/scan.d.ts +15 -0
  235. package/dist/shared/dynamodb/scan.d.ts.map +1 -0
  236. package/dist/shared/dynamodb/scan.js +20 -0
  237. package/dist/shared/dynamodb/scan.js.map +1 -0
  238. package/dist/shared/dynamodb/types.d.ts +24 -0
  239. package/dist/shared/dynamodb/types.d.ts.map +1 -0
  240. package/dist/shared/dynamodb/types.js +3 -0
  241. package/dist/shared/dynamodb/types.js.map +1 -0
  242. package/dist/shared/errors/base-error.d.ts +22 -0
  243. package/dist/shared/errors/base-error.d.ts.map +1 -0
  244. package/dist/shared/errors/base-error.js +28 -0
  245. package/dist/shared/errors/base-error.js.map +1 -0
  246. package/dist/shared/errors/error-code.d.ts +13 -0
  247. package/dist/shared/errors/error-code.d.ts.map +1 -0
  248. package/dist/shared/errors/error-code.js +17 -0
  249. package/dist/shared/errors/error-code.js.map +1 -0
  250. package/dist/shared/errors/errors.d.ts +47 -0
  251. package/dist/shared/errors/errors.d.ts.map +1 -0
  252. package/dist/shared/errors/errors.js +82 -0
  253. package/dist/shared/errors/errors.js.map +1 -0
  254. package/dist/shared/errors/wrap-error.d.ts +16 -0
  255. package/dist/shared/errors/wrap-error.d.ts.map +1 -0
  256. package/dist/shared/errors/wrap-error.js +30 -0
  257. package/dist/shared/errors/wrap-error.js.map +1 -0
  258. package/dist/shared/logging/logger.d.ts +14 -0
  259. package/dist/shared/logging/logger.d.ts.map +1 -0
  260. package/dist/shared/logging/logger.js +16 -0
  261. package/dist/shared/logging/logger.js.map +1 -0
  262. package/dist/shared/logging/redaction.d.ts +19 -0
  263. package/dist/shared/logging/redaction.d.ts.map +1 -0
  264. package/dist/shared/logging/redaction.js +67 -0
  265. package/dist/shared/logging/redaction.js.map +1 -0
  266. package/dist/shared/options.d.ts +32 -0
  267. package/dist/shared/options.d.ts.map +1 -0
  268. package/dist/shared/options.js +3 -0
  269. package/dist/shared/options.js.map +1 -0
  270. package/dist/shared/ulid.d.ts +10 -0
  271. package/dist/shared/ulid.d.ts.map +1 -0
  272. package/dist/shared/ulid.js +65 -0
  273. package/dist/shared/ulid.js.map +1 -0
  274. package/dist/shared/validation/primitives.d.ts +17 -0
  275. package/dist/shared/validation/primitives.d.ts.map +1 -0
  276. package/dist/shared/validation/primitives.js +71 -0
  277. package/dist/shared/validation/primitives.js.map +1 -0
  278. package/dist/shared/validation/ttl.d.ts +16 -0
  279. package/dist/shared/validation/ttl.d.ts.map +1 -0
  280. package/dist/shared/validation/ttl.js +26 -0
  281. package/dist/shared/validation/ttl.js.map +1 -0
  282. package/dist/store/actions/get.d.ts +5 -0
  283. package/dist/store/actions/get.d.ts.map +1 -0
  284. package/dist/store/actions/get.js +21 -0
  285. package/dist/store/actions/get.js.map +1 -0
  286. package/dist/store/actions/list-namespaces.d.ts +9 -0
  287. package/dist/store/actions/list-namespaces.d.ts.map +1 -0
  288. package/dist/store/actions/list-namespaces.js +46 -0
  289. package/dist/store/actions/list-namespaces.js.map +1 -0
  290. package/dist/store/actions/put.d.ts +11 -0
  291. package/dist/store/actions/put.d.ts.map +1 -0
  292. package/dist/store/actions/put.js +81 -0
  293. package/dist/store/actions/put.js.map +1 -0
  294. package/dist/store/actions/reconcile-vector-index.d.ts +17 -0
  295. package/dist/store/actions/reconcile-vector-index.d.ts.map +1 -0
  296. package/dist/store/actions/reconcile-vector-index.js +27 -0
  297. package/dist/store/actions/reconcile-vector-index.js.map +1 -0
  298. package/dist/store/actions/search.d.ts +10 -0
  299. package/dist/store/actions/search.d.ts.map +1 -0
  300. package/dist/store/actions/search.js +72 -0
  301. package/dist/store/actions/search.js.map +1 -0
  302. package/dist/store/internal/filter.d.ts +10 -0
  303. package/dist/store/internal/filter.d.ts.map +1 -0
  304. package/dist/store/internal/filter.js +37 -0
  305. package/dist/store/internal/filter.js.map +1 -0
  306. package/dist/store/internal/index-reconcile.d.ts +22 -0
  307. package/dist/store/internal/index-reconcile.d.ts.map +1 -0
  308. package/dist/store/internal/index-reconcile.js +68 -0
  309. package/dist/store/internal/index-reconcile.js.map +1 -0
  310. package/dist/store/internal/index-sync.d.ts +11 -0
  311. package/dist/store/internal/index-sync.d.ts.map +1 -0
  312. package/dist/store/internal/index-sync.js +26 -0
  313. package/dist/store/internal/index-sync.js.map +1 -0
  314. package/dist/store/internal/item-mapper.d.ts +23 -0
  315. package/dist/store/internal/item-mapper.d.ts.map +1 -0
  316. package/dist/store/internal/item-mapper.js +51 -0
  317. package/dist/store/internal/item-mapper.js.map +1 -0
  318. package/dist/store/internal/keys.d.ts +18 -0
  319. package/dist/store/internal/keys.d.ts.map +1 -0
  320. package/dist/store/internal/keys.js +36 -0
  321. package/dist/store/internal/keys.js.map +1 -0
  322. package/dist/store/internal/namespace-match.d.ts +12 -0
  323. package/dist/store/internal/namespace-match.d.ts.map +1 -0
  324. package/dist/store/internal/namespace-match.js +41 -0
  325. package/dist/store/internal/namespace-match.js.map +1 -0
  326. package/dist/store/internal/query.d.ts +6 -0
  327. package/dist/store/internal/query.d.ts.map +1 -0
  328. package/dist/store/internal/query.js +32 -0
  329. package/dist/store/internal/query.js.map +1 -0
  330. package/dist/store/internal/ranker.d.ts +13 -0
  331. package/dist/store/internal/ranker.d.ts.map +1 -0
  332. package/dist/store/internal/ranker.js +29 -0
  333. package/dist/store/internal/ranker.js.map +1 -0
  334. package/dist/store/internal/semantic-search.d.ts +13 -0
  335. package/dist/store/internal/semantic-search.d.ts.map +1 -0
  336. package/dist/store/internal/semantic-search.js +47 -0
  337. package/dist/store/internal/semantic-search.js.map +1 -0
  338. package/dist/store/internal/setup.d.ts +31 -0
  339. package/dist/store/internal/setup.d.ts.map +1 -0
  340. package/dist/store/internal/setup.js +29 -0
  341. package/dist/store/internal/setup.js.map +1 -0
  342. package/dist/store/internal/validation.d.ts +7 -0
  343. package/dist/store/internal/validation.d.ts.map +1 -0
  344. package/dist/store/internal/validation.js +26 -0
  345. package/dist/store/internal/validation.js.map +1 -0
  346. package/dist/store/store.d.ts +24 -0
  347. package/dist/store/store.d.ts.map +1 -0
  348. package/dist/store/store.js +58 -0
  349. package/dist/store/store.js.map +1 -0
  350. package/dist/store/types.d.ts +28 -0
  351. package/dist/store/types.d.ts.map +1 -0
  352. package/dist/store/types.js +3 -0
  353. package/dist/store/types.js.map +1 -0
  354. package/dist/store/vector-backend.d.ts +27 -0
  355. package/dist/store/vector-backend.d.ts.map +1 -0
  356. package/dist/store/vector-backend.js +3 -0
  357. package/dist/store/vector-backend.js.map +1 -0
  358. package/package.json +21 -22
  359. package/dist/checkpointer/actions/index.d.ts +0 -5
  360. package/dist/checkpointer/actions/index.d.ts.map +0 -1
  361. package/dist/checkpointer/actions/index.js +0 -21
  362. package/dist/checkpointer/actions/index.js.map +0 -1
  363. package/dist/checkpointer/actions/validate-configurable.d.ts +0 -10
  364. package/dist/checkpointer/actions/validate-configurable.d.ts.map +0 -1
  365. package/dist/checkpointer/actions/validate-configurable.js +0 -39
  366. package/dist/checkpointer/actions/validate-configurable.js.map +0 -1
  367. package/dist/checkpointer/actions/writer.d.ts +0 -52
  368. package/dist/checkpointer/actions/writer.d.ts.map +0 -1
  369. package/dist/checkpointer/actions/writer.js +0 -109
  370. package/dist/checkpointer/actions/writer.js.map +0 -1
  371. package/dist/checkpointer/index.d.ts +0 -118
  372. package/dist/checkpointer/index.d.ts.map +0 -1
  373. package/dist/checkpointer/index.js +0 -393
  374. package/dist/checkpointer/index.js.map +0 -1
  375. package/dist/checkpointer/types/index.d.ts +0 -232
  376. package/dist/checkpointer/types/index.d.ts.map +0 -1
  377. package/dist/checkpointer/types/index.js +0 -13
  378. package/dist/checkpointer/types/index.js.map +0 -1
  379. package/dist/checkpointer/utils/deserialization.d.ts +0 -20
  380. package/dist/checkpointer/utils/deserialization.d.ts.map +0 -1
  381. package/dist/checkpointer/utils/deserialization.js +0 -81
  382. package/dist/checkpointer/utils/deserialization.js.map +0 -1
  383. package/dist/checkpointer/utils/index.d.ts +0 -7
  384. package/dist/checkpointer/utils/index.d.ts.map +0 -1
  385. package/dist/checkpointer/utils/index.js +0 -27
  386. package/dist/checkpointer/utils/index.js.map +0 -1
  387. package/dist/checkpointer/utils/validation.d.ts +0 -48
  388. package/dist/checkpointer/utils/validation.d.ts.map +0 -1
  389. package/dist/checkpointer/utils/validation.js +0 -235
  390. package/dist/checkpointer/utils/validation.js.map +0 -1
  391. package/dist/factory.d.ts +0 -153
  392. package/dist/factory.d.ts.map +0 -1
  393. package/dist/factory.js +0 -206
  394. package/dist/factory.js.map +0 -1
  395. package/dist/history/actions/add-message.d.ts +0 -10
  396. package/dist/history/actions/add-message.d.ts.map +0 -1
  397. package/dist/history/actions/add-message.js +0 -24
  398. package/dist/history/actions/add-message.js.map +0 -1
  399. package/dist/history/actions/index.d.ts +0 -9
  400. package/dist/history/actions/index.d.ts.map +0 -1
  401. package/dist/history/actions/index.js +0 -17
  402. package/dist/history/actions/index.js.map +0 -1
  403. package/dist/history/index.d.ts +0 -118
  404. package/dist/history/index.d.ts.map +0 -1
  405. package/dist/history/index.js +0 -179
  406. package/dist/history/index.js.map +0 -1
  407. package/dist/history/types/index.d.ts +0 -184
  408. package/dist/history/types/index.d.ts.map +0 -1
  409. package/dist/history/types/index.js +0 -7
  410. package/dist/history/types/index.js.map +0 -1
  411. package/dist/history/utils/index.d.ts +0 -9
  412. package/dist/history/utils/index.d.ts.map +0 -1
  413. package/dist/history/utils/index.js +0 -27
  414. package/dist/history/utils/index.js.map +0 -1
  415. package/dist/history/utils/optimistic-retry.d.ts +0 -31
  416. package/dist/history/utils/optimistic-retry.d.ts.map +0 -1
  417. package/dist/history/utils/optimistic-retry.js +0 -74
  418. package/dist/history/utils/optimistic-retry.js.map +0 -1
  419. package/dist/history/utils/title-generator.d.ts +0 -12
  420. package/dist/history/utils/title-generator.d.ts.map +0 -1
  421. package/dist/history/utils/title-generator.js +0 -57
  422. package/dist/history/utils/title-generator.js.map +0 -1
  423. package/dist/history/utils/update-expression-builder.d.ts +0 -55
  424. package/dist/history/utils/update-expression-builder.d.ts.map +0 -1
  425. package/dist/history/utils/update-expression-builder.js +0 -112
  426. package/dist/history/utils/update-expression-builder.js.map +0 -1
  427. package/dist/history/utils/validation.d.ts +0 -68
  428. package/dist/history/utils/validation.d.ts.map +0 -1
  429. package/dist/history/utils/validation.js +0 -213
  430. package/dist/history/utils/validation.js.map +0 -1
  431. package/dist/shared/index.d.ts +0 -5
  432. package/dist/shared/index.d.ts.map +0 -1
  433. package/dist/shared/index.js +0 -21
  434. package/dist/shared/index.js.map +0 -1
  435. package/dist/shared/utils/batch-write.d.ts +0 -74
  436. package/dist/shared/utils/batch-write.d.ts.map +0 -1
  437. package/dist/shared/utils/batch-write.js +0 -110
  438. package/dist/shared/utils/batch-write.js.map +0 -1
  439. package/dist/shared/utils/client-factory.d.ts +0 -25
  440. package/dist/shared/utils/client-factory.d.ts.map +0 -1
  441. package/dist/shared/utils/client-factory.js +0 -23
  442. package/dist/shared/utils/client-factory.js.map +0 -1
  443. package/dist/shared/utils/compressor.d.ts +0 -66
  444. package/dist/shared/utils/compressor.d.ts.map +0 -1
  445. package/dist/shared/utils/compressor.js +0 -133
  446. package/dist/shared/utils/compressor.js.map +0 -1
  447. package/dist/shared/utils/constants.d.ts +0 -13
  448. package/dist/shared/utils/constants.d.ts.map +0 -1
  449. package/dist/shared/utils/constants.js +0 -35
  450. package/dist/shared/utils/constants.js.map +0 -1
  451. package/dist/shared/utils/index.d.ts +0 -14
  452. package/dist/shared/utils/index.d.ts.map +0 -1
  453. package/dist/shared/utils/index.js +0 -30
  454. package/dist/shared/utils/index.js.map +0 -1
  455. package/dist/shared/utils/logger.d.ts +0 -75
  456. package/dist/shared/utils/logger.d.ts.map +0 -1
  457. package/dist/shared/utils/logger.js +0 -148
  458. package/dist/shared/utils/logger.js.map +0 -1
  459. package/dist/shared/utils/retry.d.ts +0 -26
  460. package/dist/shared/utils/retry.d.ts.map +0 -1
  461. package/dist/shared/utils/retry.js +0 -169
  462. package/dist/shared/utils/retry.js.map +0 -1
  463. package/dist/shared/utils/s3-offloader.d.ts +0 -153
  464. package/dist/shared/utils/s3-offloader.d.ts.map +0 -1
  465. package/dist/shared/utils/s3-offloader.js +0 -281
  466. package/dist/shared/utils/s3-offloader.js.map +0 -1
  467. package/dist/shared/utils/s3-orphans.d.ts +0 -16
  468. package/dist/shared/utils/s3-orphans.d.ts.map +0 -1
  469. package/dist/shared/utils/s3-orphans.js +0 -79
  470. package/dist/shared/utils/s3-orphans.js.map +0 -1
  471. package/dist/shared/utils/sleep.d.ts +0 -48
  472. package/dist/shared/utils/sleep.d.ts.map +0 -1
  473. package/dist/shared/utils/sleep.js +0 -82
  474. package/dist/shared/utils/sleep.js.map +0 -1
  475. package/dist/shared/utils/ttl.d.ts +0 -24
  476. package/dist/shared/utils/ttl.d.ts.map +0 -1
  477. package/dist/shared/utils/ttl.js +0 -43
  478. package/dist/shared/utils/ttl.js.map +0 -1
  479. package/dist/store/actions/get-operation.d.ts +0 -11
  480. package/dist/store/actions/get-operation.d.ts.map +0 -1
  481. package/dist/store/actions/get-operation.js +0 -42
  482. package/dist/store/actions/get-operation.js.map +0 -1
  483. package/dist/store/actions/index.d.ts +0 -5
  484. package/dist/store/actions/index.d.ts.map +0 -1
  485. package/dist/store/actions/index.js +0 -21
  486. package/dist/store/actions/index.js.map +0 -1
  487. package/dist/store/actions/list-namespaces-operation.d.ts +0 -10
  488. package/dist/store/actions/list-namespaces-operation.d.ts.map +0 -1
  489. package/dist/store/actions/list-namespaces-operation.js +0 -227
  490. package/dist/store/actions/list-namespaces-operation.js.map +0 -1
  491. package/dist/store/actions/put-operation.d.ts +0 -9
  492. package/dist/store/actions/put-operation.d.ts.map +0 -1
  493. package/dist/store/actions/put-operation.js +0 -107
  494. package/dist/store/actions/put-operation.js.map +0 -1
  495. package/dist/store/actions/search-operation.d.ts +0 -17
  496. package/dist/store/actions/search-operation.d.ts.map +0 -1
  497. package/dist/store/actions/search-operation.js +0 -203
  498. package/dist/store/actions/search-operation.js.map +0 -1
  499. package/dist/store/index.d.ts +0 -82
  500. package/dist/store/index.d.ts.map +0 -1
  501. package/dist/store/index.js +0 -172
  502. package/dist/store/index.js.map +0 -1
  503. package/dist/store/types/index.d.ts +0 -131
  504. package/dist/store/types/index.d.ts.map +0 -1
  505. package/dist/store/types/index.js.map +0 -1
  506. package/dist/store/utils/filter.d.ts +0 -16
  507. package/dist/store/utils/filter.d.ts.map +0 -1
  508. package/dist/store/utils/filter.js +0 -133
  509. package/dist/store/utils/filter.js.map +0 -1
  510. package/dist/store/utils/index.d.ts +0 -7
  511. package/dist/store/utils/index.d.ts.map +0 -1
  512. package/dist/store/utils/index.js +0 -27
  513. package/dist/store/utils/index.js.map +0 -1
  514. package/dist/store/utils/validation.d.ts +0 -61
  515. package/dist/store/utils/validation.d.ts.map +0 -1
  516. package/dist/store/utils/validation.js +0 -260
  517. package/dist/store/utils/validation.js.map +0 -1
@@ -0,0 +1,18 @@
1
+ /** Options controlling {@link withRetry}. */
2
+ export interface RetryOptions {
3
+ maxAttempts?: number;
4
+ baseDelayMs?: number;
5
+ maxDelayMs?: number;
6
+ retryableErrors?: readonly string[];
7
+ signal?: AbortSignal;
8
+ rng?: () => number;
9
+ }
10
+ /**
11
+ * Run `fn`, retrying retryable transient errors with full-jitter exponential
12
+ * backoff. Non-retryable errors are re-thrown unchanged; exhaustion throws
13
+ * {@link RetryExhaustedError}; an aborted signal throws {@link AbortError}.
14
+ */
15
+ export declare function withRetry<T>(fn: () => Promise<T>, options?: RetryOptions): Promise<T>;
16
+ /** {@link withRetry} preset for DynamoDB operations. */
17
+ export declare function withDynamoDBRetry<T>(fn: () => Promise<T>, overrides?: Partial<RetryOptions>): Promise<T>;
18
+ //# sourceMappingURL=retry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../../src/shared/dynamodb/retry.ts"],"names":[],"mappings":"AAUA,6CAA6C;AAC7C,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AA0BD;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,CAqB/F;AAED,wDAAwD;AACxD,wBAAsB,iBAAiB,CAAC,CAAC,EACvC,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,SAAS,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,GAChC,OAAO,CAAC,CAAC,CAAC,CAEZ"}
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.withRetry = withRetry;
4
+ exports.withDynamoDBRetry = withDynamoDBRetry;
5
+ const constants_1 = require("../constants");
6
+ const errors_1 = require("../errors/errors");
7
+ const wrap_error_1 = require("../errors/wrap-error");
8
+ const backoff_1 = require("./backoff");
9
+ const retry_classifier_1 = require("./retry-classifier");
10
+ function delayForAttempt(attempt, base, max, rng) {
11
+ const exponential = base * 2 ** (attempt - 1);
12
+ return (0, backoff_1.fullJitter)(Math.min(exponential, max), rng);
13
+ }
14
+ /** Apply defaults to {@link RetryOptions}. */
15
+ function resolveRetryOptions(options) {
16
+ return {
17
+ maxAttempts: options.maxAttempts ?? constants_1.DEFAULT_RETRY_MAX_ATTEMPTS,
18
+ baseDelayMs: options.baseDelayMs ?? constants_1.INITIAL_BACKOFF_DELAY_MS,
19
+ maxDelayMs: options.maxDelayMs ?? constants_1.MAX_BACKOFF_DELAY_MS,
20
+ retryable: options.retryableErrors ?? retry_classifier_1.DEFAULT_RETRYABLE_ERRORS,
21
+ rng: options.rng ?? Math.random,
22
+ };
23
+ }
24
+ /**
25
+ * Run `fn`, retrying retryable transient errors with full-jitter exponential
26
+ * backoff. Non-retryable errors are re-thrown unchanged; exhaustion throws
27
+ * {@link RetryExhaustedError}; an aborted signal throws {@link AbortError}.
28
+ */
29
+ async function withRetry(fn, options = {}) {
30
+ const { maxAttempts, baseDelayMs, maxDelayMs, retryable, rng } = resolveRetryOptions(options);
31
+ if (options.signal?.aborted)
32
+ throw new errors_1.AbortError();
33
+ let lastError = new Error('Retry failed without error');
34
+ for (let attempt = 1; attempt <= maxAttempts; attempt++) {
35
+ try {
36
+ return await fn();
37
+ }
38
+ catch (error) {
39
+ lastError = (0, wrap_error_1.toError)(error);
40
+ if (!(0, retry_classifier_1.isRetryableError)(lastError, retryable))
41
+ throw lastError;
42
+ if (attempt === maxAttempts)
43
+ break;
44
+ await (0, backoff_1.sleep)(delayForAttempt(attempt, baseDelayMs, maxDelayMs, rng), options.signal);
45
+ }
46
+ }
47
+ throw new errors_1.RetryExhaustedError(`Operation failed after ${maxAttempts} attempts: ${lastError.message}`, maxAttempts, lastError);
48
+ }
49
+ /** {@link withRetry} preset for DynamoDB operations. */
50
+ async function withDynamoDBRetry(fn, overrides) {
51
+ return withRetry(fn, { maxAttempts: constants_1.DEFAULT_RETRY_MAX_ATTEMPTS, ...overrides });
52
+ }
53
+ //# sourceMappingURL=retry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry.js","sourceRoot":"","sources":["../../../src/shared/dynamodb/retry.ts"],"names":[],"mappings":";;AAiDA,8BAqBC;AAGD,8CAKC;AA9ED,4CAIsB;AACtB,6CAAmE;AACnE,qDAA+C;AAC/C,uCAA8C;AAC9C,yDAAgF;AAYhF,SAAS,eAAe,CAAC,OAAe,EAAE,IAAY,EAAE,GAAW,EAAE,GAAiB;IACpF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;IAC9C,OAAO,IAAA,oBAAU,EAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC;AAUD,8CAA8C;AAC9C,SAAS,mBAAmB,CAAC,OAAqB;IAChD,OAAO;QACL,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,sCAA0B;QAC9D,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,oCAAwB;QAC5D,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,gCAAoB;QACtD,SAAS,EAAE,OAAO,CAAC,eAAe,IAAI,2CAAwB;QAC9D,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM;KAChC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,SAAS,CAAI,EAAoB,EAAE,UAAwB,EAAE;IACjF,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAE9F,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO;QAAE,MAAM,IAAI,mBAAU,EAAE,CAAC;IAEpD,IAAI,SAAS,GAAU,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAC/D,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;QACxD,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,IAAA,oBAAO,EAAC,KAAc,CAAC,CAAC;YACpC,IAAI,CAAC,IAAA,mCAAgB,EAAC,SAAS,EAAE,SAAS,CAAC;gBAAE,MAAM,SAAS,CAAC;YAC7D,IAAI,OAAO,KAAK,WAAW;gBAAE,MAAM;YACnC,MAAM,IAAA,eAAK,EAAC,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IACD,MAAM,IAAI,4BAAmB,CAC3B,0BAA0B,WAAW,cAAc,SAAS,CAAC,OAAO,EAAE,EACtE,WAAW,EACX,SAAS,CACV,CAAC;AACJ,CAAC;AAED,wDAAwD;AACjD,KAAK,UAAU,iBAAiB,CACrC,EAAoB,EACpB,SAAiC;IAEjC,OAAO,SAAS,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,sCAA0B,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;AAClF,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { DynamoDBDocument, ScanCommandInput } from '@aws-sdk/lib-dynamodb';
2
+ import { type PaginateCoreOptions } from './paginate-core';
3
+ import type { DocItem } from './types';
4
+ /** Options for {@link paginateScan}. */
5
+ export interface ScanOptions extends PaginateCoreOptions {
6
+ client: DynamoDBDocument;
7
+ params: ScanCommandInput;
8
+ }
9
+ /**
10
+ * Drive a DynamoDB Scan across all pages, yielding each item. Shares the
11
+ * pagination core with {@link paginateQuery}: abort handling, retry per page,
12
+ * and runaway guards.
13
+ */
14
+ export declare function paginateScan(options: ScanOptions): AsyncGenerator<DocItem>;
15
+ //# sourceMappingURL=scan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../../src/shared/dynamodb/scan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEhF,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,iBAAiB,CAAC;AAE1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC,wCAAwC;AACxC,MAAM,WAAW,WAAY,SAAQ,mBAAmB;IACtD,MAAM,EAAE,gBAAgB,CAAC;IACzB,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,CAW1E"}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.paginateScan = paginateScan;
4
+ const paginate_core_1 = require("./paginate-core");
5
+ const retry_1 = require("./retry");
6
+ /**
7
+ * Drive a DynamoDB Scan across all pages, yielding each item. Shares the
8
+ * pagination core with {@link paginateQuery}: abort handling, retry per page,
9
+ * and runaway guards.
10
+ */
11
+ function paginateScan(options) {
12
+ return (0, paginate_core_1.paginatePages)(async (startKey) => {
13
+ const page = await (0, retry_1.withDynamoDBRetry)(() => options.client.scan({ ...options.params, ExclusiveStartKey: startKey }), { signal: options.signal });
14
+ return {
15
+ items: page.Items ?? [],
16
+ lastKey: page.LastEvaluatedKey,
17
+ };
18
+ }, options);
19
+ }
20
+ //# sourceMappingURL=scan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../../src/shared/dynamodb/scan.ts"],"names":[],"mappings":";;AAiBA,oCAWC;AA1BD,mDAA0E;AAC1E,mCAA4C;AAS5C;;;;GAIG;AACH,SAAgB,YAAY,CAAC,OAAoB;IAC/C,OAAO,IAAA,6BAAa,EAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;QACtC,MAAM,IAAI,GAAG,MAAM,IAAA,yBAAiB,EAClC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,EAC7E,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAC3B,CAAC;QACF,OAAO;YACL,KAAK,EAAG,IAAI,CAAC,KAA+B,IAAI,EAAE;YAClD,OAAO,EAAE,IAAI,CAAC,gBAAuC;SACtD,CAAC;IACJ,CAAC,EAAE,OAAO,CAAC,CAAC;AACd,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { NativeAttributeValue } from '@aws-sdk/lib-dynamodb';
2
+ /**
3
+ * A DynamoDB item as returned/accepted by the DocumentClient. Reads that we
4
+ * wrote ourselves are narrowed with a single structural `as` at the mapper
5
+ * boundary (never `as any`/`as unknown`); untrusted shared-table scans go
6
+ * through `narrowStoreRecord`.
7
+ */
8
+ export type DocItem = Record<string, NativeAttributeValue>;
9
+ /** A BatchWriteItem PutRequest. */
10
+ interface PutWriteRequest {
11
+ PutRequest: {
12
+ Item: DocItem;
13
+ };
14
+ }
15
+ /** A BatchWriteItem DeleteRequest. */
16
+ export interface DeleteWriteRequest {
17
+ DeleteRequest: {
18
+ Key: DocItem;
19
+ };
20
+ }
21
+ /** A single BatchWriteItem write request. */
22
+ export type WriteRequest = PutWriteRequest | DeleteWriteRequest;
23
+ export {};
24
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/shared/dynamodb/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE;;;;;GAKG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;AAE3D,mCAAmC;AACnC,UAAU,eAAe;IACvB,UAAU,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,CAAC;CAC/B;AAED,sCAAsC;AACtC,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE;QAAE,GAAG,EAAE,OAAO,CAAA;KAAE,CAAC;CACjC;AAED,6CAA6C;AAC7C,MAAM,MAAM,YAAY,GAAG,eAAe,GAAG,kBAAkB,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/shared/dynamodb/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,22 @@
1
+ import { ErrorCode } from './error-code';
2
+ /** Structured, log-safe context attached to every library error. */
3
+ export interface ErrorContext {
4
+ tableName?: string;
5
+ operation?: string;
6
+ key?: string;
7
+ attempts?: number;
8
+ }
9
+ /**
10
+ * Base class for every error this library throws. Carries a branchable
11
+ * {@link ErrorCode}, structured {@link ErrorContext}, and a native `cause`
12
+ * chain. Detected via {@link isDynamoDbLangGraphError} (a symbol brand) rather
13
+ * than `instanceof`, which is banned repo-wide.
14
+ */
15
+ export declare class DynamoDbLangGraphError extends Error {
16
+ readonly code: ErrorCode;
17
+ readonly context: ErrorContext;
18
+ constructor(message: string, code: ErrorCode, context?: ErrorContext, cause?: Error);
19
+ }
20
+ /** True when `value` is a {@link DynamoDbLangGraphError}, detected by brand. */
21
+ export declare function isDynamoDbLangGraphError(value: Error): value is DynamoDbLangGraphError;
22
+ //# sourceMappingURL=base-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-error.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/base-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC,oEAAoE;AACpE,MAAM,WAAW,YAAY;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAC/C,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;gBAEnB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,GAAE,YAAiB,EAAE,KAAK,CAAC,EAAE,KAAK;CAOxF;AAED,gFAAgF;AAChF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,IAAI,sBAAsB,CAEtF"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DynamoDbLangGraphError = void 0;
4
+ exports.isDynamoDbLangGraphError = isDynamoDbLangGraphError;
5
+ const ERROR_BRAND = Symbol.for('@farukada/aws-langgraph-dynamodb-ts/error');
6
+ /**
7
+ * Base class for every error this library throws. Carries a branchable
8
+ * {@link ErrorCode}, structured {@link ErrorContext}, and a native `cause`
9
+ * chain. Detected via {@link isDynamoDbLangGraphError} (a symbol brand) rather
10
+ * than `instanceof`, which is banned repo-wide.
11
+ */
12
+ class DynamoDbLangGraphError extends Error {
13
+ code;
14
+ context;
15
+ constructor(message, code, context = {}, cause) {
16
+ super(message, cause === undefined ? undefined : { cause });
17
+ this.name = 'DynamoDbLangGraphError';
18
+ this.code = code;
19
+ this.context = context;
20
+ Object.defineProperty(this, ERROR_BRAND, { value: true, enumerable: false });
21
+ }
22
+ }
23
+ exports.DynamoDbLangGraphError = DynamoDbLangGraphError;
24
+ /** True when `value` is a {@link DynamoDbLangGraphError}, detected by brand. */
25
+ function isDynamoDbLangGraphError(value) {
26
+ return ERROR_BRAND in value;
27
+ }
28
+ //# sourceMappingURL=base-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-error.js","sourceRoot":"","sources":["../../../src/shared/errors/base-error.ts"],"names":[],"mappings":";;;AAgCA,4DAEC;AAhCD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;AAU5E;;;;;GAKG;AACH,MAAa,sBAAuB,SAAQ,KAAK;IACtC,IAAI,CAAY;IAChB,OAAO,CAAe;IAE/B,YAAY,OAAe,EAAE,IAAe,EAAE,UAAwB,EAAE,EAAE,KAAa;QACrF,KAAK,CAAC,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;IAC/E,CAAC;CACF;AAXD,wDAWC;AAED,gFAAgF;AAChF,SAAgB,wBAAwB,CAAC,KAAY;IACnD,OAAO,WAAW,IAAI,KAAK,CAAC;AAC9B,CAAC"}
@@ -0,0 +1,13 @@
1
+ /** Stable, branchable classification for every error this library throws. */
2
+ export declare enum ErrorCode {
3
+ VALIDATION = "VALIDATION",
4
+ CONDITION_CONFLICT = "CONDITION_CONFLICT",
5
+ RETRY_EXHAUSTED = "RETRY_EXHAUSTED",
6
+ BATCH_WRITE_INCOMPLETE = "BATCH_WRITE_INCOMPLETE",
7
+ COMPRESSION_LIMIT = "COMPRESSION_LIMIT",
8
+ S3_OFFLOAD_FAILED = "S3_OFFLOAD_FAILED",
9
+ RESULT_TRUNCATED = "RESULT_TRUNCATED",
10
+ ABORTED = "ABORTED",
11
+ COMPENSATION_FAILED = "COMPENSATION_FAILED"
12
+ }
13
+ //# sourceMappingURL=error-code.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-code.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/error-code.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,oBAAY,SAAS;IACnB,UAAU,eAAe;IACzB,kBAAkB,uBAAuB;IACzC,eAAe,oBAAoB;IACnC,sBAAsB,2BAA2B;IACjD,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,gBAAgB,qBAAqB;IACrC,OAAO,YAAY;IACnB,mBAAmB,wBAAwB;CAC5C"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ErrorCode = void 0;
4
+ /** Stable, branchable classification for every error this library throws. */
5
+ var ErrorCode;
6
+ (function (ErrorCode) {
7
+ ErrorCode["VALIDATION"] = "VALIDATION";
8
+ ErrorCode["CONDITION_CONFLICT"] = "CONDITION_CONFLICT";
9
+ ErrorCode["RETRY_EXHAUSTED"] = "RETRY_EXHAUSTED";
10
+ ErrorCode["BATCH_WRITE_INCOMPLETE"] = "BATCH_WRITE_INCOMPLETE";
11
+ ErrorCode["COMPRESSION_LIMIT"] = "COMPRESSION_LIMIT";
12
+ ErrorCode["S3_OFFLOAD_FAILED"] = "S3_OFFLOAD_FAILED";
13
+ ErrorCode["RESULT_TRUNCATED"] = "RESULT_TRUNCATED";
14
+ ErrorCode["ABORTED"] = "ABORTED";
15
+ ErrorCode["COMPENSATION_FAILED"] = "COMPENSATION_FAILED";
16
+ })(ErrorCode || (exports.ErrorCode = ErrorCode = {}));
17
+ //# sourceMappingURL=error-code.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-code.js","sourceRoot":"","sources":["../../../src/shared/errors/error-code.ts"],"names":[],"mappings":";;;AAAA,6EAA6E;AAC7E,IAAY,SAUX;AAVD,WAAY,SAAS;IACnB,sCAAyB,CAAA;IACzB,sDAAyC,CAAA;IACzC,gDAAmC,CAAA;IACnC,8DAAiD,CAAA;IACjD,oDAAuC,CAAA;IACvC,oDAAuC,CAAA;IACvC,kDAAqC,CAAA;IACrC,gCAAmB,CAAA;IACnB,wDAA2C,CAAA;AAC7C,CAAC,EAVW,SAAS,yBAAT,SAAS,QAUpB"}
@@ -0,0 +1,47 @@
1
+ import type { WriteRequest } from '../dynamodb/types';
2
+ import { DynamoDbLangGraphError } from './base-error';
3
+ /** Input failed a validation rule before any AWS call was made. */
4
+ export declare class ValidationError extends DynamoDbLangGraphError {
5
+ constructor(message: string, field?: string);
6
+ }
7
+ /** A conditional write failed because the precondition no longer holds. */
8
+ export declare class ConflictError extends DynamoDbLangGraphError {
9
+ constructor(message: string, cause?: Error);
10
+ }
11
+ /** A retried operation exhausted its attempt budget. */
12
+ export declare class RetryExhaustedError extends DynamoDbLangGraphError {
13
+ constructor(message: string, attempts?: number, cause?: Error);
14
+ }
15
+ /**
16
+ * A paginated read hit its runaway guard (item or iteration cap) while more
17
+ * data remained, so the result would have been silently truncated. Narrow the
18
+ * query (filter/prefix) or raise the cap rather than trusting a partial result.
19
+ */
20
+ export declare class ResultTruncatedError extends DynamoDbLangGraphError {
21
+ constructor(cap: string, limit: number);
22
+ }
23
+ /** An operation was cancelled via its AbortSignal. */
24
+ export declare class AbortError extends DynamoDbLangGraphError {
25
+ constructor(message?: string);
26
+ }
27
+ /**
28
+ * A BatchWriteItem sequence could not drain its UnprocessedItems. Items NOT
29
+ * listed in {@link unprocessed} were acked by DynamoDB and persist — there is
30
+ * no rollback (drive reconciliation from `unprocessed`).
31
+ */
32
+ export declare class BatchWriteIncompleteError extends DynamoDbLangGraphError {
33
+ readonly succeededCount: number;
34
+ readonly unprocessed: WriteRequest[];
35
+ constructor(succeededCount: number, unprocessed: WriteRequest[], retries: number);
36
+ }
37
+ /**
38
+ * A compensating rollback failed after an append-saga chunk error, so the
39
+ * trigger error could not be cleanly undone. Carries the original trigger as
40
+ * `cause` and the rollback failure as {@link rollbackError}; the session's
41
+ * `messageCount` may have drifted — repair it with `reconcileMessageCount`.
42
+ */
43
+ export declare class CompensationFailedError extends DynamoDbLangGraphError {
44
+ readonly rollbackError: Error;
45
+ constructor(cause: Error, rollbackError: Error);
46
+ }
47
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAGtD,mEAAmE;AACnE,qBAAa,eAAgB,SAAQ,sBAAsB;gBAC7C,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;CAI5C;AAED,2EAA2E;AAC3E,qBAAa,aAAc,SAAQ,sBAAsB;gBAC3C,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAI3C;AAED,wDAAwD;AACxD,qBAAa,mBAAoB,SAAQ,sBAAsB;gBACjD,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK;CAI9D;AAED;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,sBAAsB;gBAClD,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;CAQvC;AAED,sDAAsD;AACtD,qBAAa,UAAW,SAAQ,sBAAsB;gBACxC,OAAO,SAAsB;CAI1C;AAED;;;;GAIG;AACH,qBAAa,yBAA0B,SAAQ,sBAAsB;IACnE,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,YAAY,EAAE,CAAC;gBAEzB,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE,OAAO,EAAE,MAAM;CAUjF;AAED;;;;;GAKG;AACH,qBAAa,uBAAwB,SAAQ,sBAAsB;IACjE,QAAQ,CAAC,aAAa,EAAE,KAAK,CAAC;gBAElB,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK;CAU/C"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CompensationFailedError = exports.BatchWriteIncompleteError = exports.AbortError = exports.ResultTruncatedError = exports.RetryExhaustedError = exports.ConflictError = exports.ValidationError = void 0;
4
+ const base_error_1 = require("./base-error");
5
+ const error_code_1 = require("./error-code");
6
+ /** Input failed a validation rule before any AWS call was made. */
7
+ class ValidationError extends base_error_1.DynamoDbLangGraphError {
8
+ constructor(message, field) {
9
+ super(message, error_code_1.ErrorCode.VALIDATION, field === undefined ? {} : { operation: field });
10
+ this.name = 'ValidationError';
11
+ }
12
+ }
13
+ exports.ValidationError = ValidationError;
14
+ /** A conditional write failed because the precondition no longer holds. */
15
+ class ConflictError extends base_error_1.DynamoDbLangGraphError {
16
+ constructor(message, cause) {
17
+ super(message, error_code_1.ErrorCode.CONDITION_CONFLICT, {}, cause);
18
+ this.name = 'ConflictError';
19
+ }
20
+ }
21
+ exports.ConflictError = ConflictError;
22
+ /** A retried operation exhausted its attempt budget. */
23
+ class RetryExhaustedError extends base_error_1.DynamoDbLangGraphError {
24
+ constructor(message, attempts, cause) {
25
+ super(message, error_code_1.ErrorCode.RETRY_EXHAUSTED, attempts === undefined ? {} : { attempts }, cause);
26
+ this.name = 'RetryExhaustedError';
27
+ }
28
+ }
29
+ exports.RetryExhaustedError = RetryExhaustedError;
30
+ /**
31
+ * A paginated read hit its runaway guard (item or iteration cap) while more
32
+ * data remained, so the result would have been silently truncated. Narrow the
33
+ * query (filter/prefix) or raise the cap rather than trusting a partial result.
34
+ */
35
+ class ResultTruncatedError extends base_error_1.DynamoDbLangGraphError {
36
+ constructor(cap, limit) {
37
+ super(`paginated read truncated at the ${cap} cap (${limit}) with more data remaining`, error_code_1.ErrorCode.RESULT_TRUNCATED, { operation: cap });
38
+ this.name = 'ResultTruncatedError';
39
+ }
40
+ }
41
+ exports.ResultTruncatedError = ResultTruncatedError;
42
+ /** An operation was cancelled via its AbortSignal. */
43
+ class AbortError extends base_error_1.DynamoDbLangGraphError {
44
+ constructor(message = 'Operation aborted') {
45
+ super(message, error_code_1.ErrorCode.ABORTED);
46
+ this.name = 'AbortError';
47
+ }
48
+ }
49
+ exports.AbortError = AbortError;
50
+ /**
51
+ * A BatchWriteItem sequence could not drain its UnprocessedItems. Items NOT
52
+ * listed in {@link unprocessed} were acked by DynamoDB and persist — there is
53
+ * no rollback (drive reconciliation from `unprocessed`).
54
+ */
55
+ class BatchWriteIncompleteError extends base_error_1.DynamoDbLangGraphError {
56
+ succeededCount;
57
+ unprocessed;
58
+ constructor(succeededCount, unprocessed, retries) {
59
+ super(`batchWrite did not drain after ${retries} UnprocessedItems retries: ` +
60
+ `${succeededCount} item(s) persisted, ${unprocessed.length} still un-acked.`, error_code_1.ErrorCode.BATCH_WRITE_INCOMPLETE);
61
+ this.name = 'BatchWriteIncompleteError';
62
+ this.succeededCount = succeededCount;
63
+ this.unprocessed = unprocessed;
64
+ }
65
+ }
66
+ exports.BatchWriteIncompleteError = BatchWriteIncompleteError;
67
+ /**
68
+ * A compensating rollback failed after an append-saga chunk error, so the
69
+ * trigger error could not be cleanly undone. Carries the original trigger as
70
+ * `cause` and the rollback failure as {@link rollbackError}; the session's
71
+ * `messageCount` may have drifted — repair it with `reconcileMessageCount`.
72
+ */
73
+ class CompensationFailedError extends base_error_1.DynamoDbLangGraphError {
74
+ rollbackError;
75
+ constructor(cause, rollbackError) {
76
+ super(`compensation failed after an append error: ${cause.message} (rollback: ${rollbackError.message})`, error_code_1.ErrorCode.COMPENSATION_FAILED, {}, cause);
77
+ this.name = 'CompensationFailedError';
78
+ this.rollbackError = rollbackError;
79
+ }
80
+ }
81
+ exports.CompensationFailedError = CompensationFailedError;
82
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/shared/errors/errors.ts"],"names":[],"mappings":";;;AACA,6CAAsD;AACtD,6CAAyC;AAEzC,mEAAmE;AACnE,MAAa,eAAgB,SAAQ,mCAAsB;IACzD,YAAY,OAAe,EAAE,KAAc;QACzC,KAAK,CAAC,OAAO,EAAE,sBAAS,CAAC,UAAU,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QACtF,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AALD,0CAKC;AAED,2EAA2E;AAC3E,MAAa,aAAc,SAAQ,mCAAsB;IACvD,YAAY,OAAe,EAAE,KAAa;QACxC,KAAK,CAAC,OAAO,EAAE,sBAAS,CAAC,kBAAkB,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;QACxD,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;CACF;AALD,sCAKC;AAED,wDAAwD;AACxD,MAAa,mBAAoB,SAAQ,mCAAsB;IAC7D,YAAY,OAAe,EAAE,QAAiB,EAAE,KAAa;QAC3D,KAAK,CAAC,OAAO,EAAE,sBAAS,CAAC,eAAe,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;QAC7F,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AALD,kDAKC;AAED;;;;GAIG;AACH,MAAa,oBAAqB,SAAQ,mCAAsB;IAC9D,YAAY,GAAW,EAAE,KAAa;QACpC,KAAK,CACH,mCAAmC,GAAG,SAAS,KAAK,4BAA4B,EAChF,sBAAS,CAAC,gBAAgB,EAC1B,EAAE,SAAS,EAAE,GAAG,EAAE,CACnB,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AATD,oDASC;AAED,sDAAsD;AACtD,MAAa,UAAW,SAAQ,mCAAsB;IACpD,YAAY,OAAO,GAAG,mBAAmB;QACvC,KAAK,CAAC,OAAO,EAAE,sBAAS,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC3B,CAAC;CACF;AALD,gCAKC;AAED;;;;GAIG;AACH,MAAa,yBAA0B,SAAQ,mCAAsB;IAC1D,cAAc,CAAS;IACvB,WAAW,CAAiB;IAErC,YAAY,cAAsB,EAAE,WAA2B,EAAE,OAAe;QAC9E,KAAK,CACH,kCAAkC,OAAO,6BAA6B;YACpE,GAAG,cAAc,uBAAuB,WAAW,CAAC,MAAM,kBAAkB,EAC9E,sBAAS,CAAC,sBAAsB,CACjC,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;QACxC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;CACF;AAdD,8DAcC;AAED;;;;;GAKG;AACH,MAAa,uBAAwB,SAAQ,mCAAsB;IACxD,aAAa,CAAQ;IAE9B,YAAY,KAAY,EAAE,aAAoB;QAC5C,KAAK,CACH,8CAA8C,KAAK,CAAC,OAAO,eAAe,aAAa,CAAC,OAAO,GAAG,EAClG,sBAAS,CAAC,mBAAmB,EAC7B,EAAE,EACF,KAAK,CACN,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;CACF;AAbD,0DAaC"}
@@ -0,0 +1,16 @@
1
+ import { DynamoDbLangGraphError, ErrorContext } from './base-error';
2
+ import { ErrorCode } from './error-code';
3
+ /**
4
+ * Normalize a caught value (TypeScript types catch clauses as the implicit
5
+ * unknown) into an `Error`. Error-shaped values pass through; anything else is
6
+ * stringified into a fresh `Error`. This is the boundary where caught values
7
+ * are narrowed — callers do `toError(error as Error)`.
8
+ */
9
+ export declare function toError(value: Error): Error;
10
+ /**
11
+ * Wrap a raw error in a coded {@link DynamoDbLangGraphError} with structured
12
+ * context, preserving the original as `cause`. Already-coded errors are
13
+ * returned unchanged so codes assigned closer to the failure win.
14
+ */
15
+ export declare function wrapError(cause: Error, code: ErrorCode, context?: ErrorContext): DynamoDbLangGraphError;
16
+ //# sourceMappingURL=wrap-error.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrap-error.d.ts","sourceRoot":"","sources":["../../../src/shared/errors/wrap-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAA4B,MAAM,cAAc,CAAC;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAK3C;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,SAAS,EACf,OAAO,CAAC,EAAE,YAAY,GACrB,sBAAsB,CAMxB"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.toError = toError;
4
+ exports.wrapError = wrapError;
5
+ const base_error_1 = require("./base-error");
6
+ /**
7
+ * Normalize a caught value (TypeScript types catch clauses as the implicit
8
+ * unknown) into an `Error`. Error-shaped values pass through; anything else is
9
+ * stringified into a fresh `Error`. This is the boundary where caught values
10
+ * are narrowed — callers do `toError(error as Error)`.
11
+ */
12
+ function toError(value) {
13
+ if (value !== null && typeof value === 'object' && typeof value.message === 'string') {
14
+ return value;
15
+ }
16
+ return new Error(typeof value === 'string' ? value : JSON.stringify(value));
17
+ }
18
+ /**
19
+ * Wrap a raw error in a coded {@link DynamoDbLangGraphError} with structured
20
+ * context, preserving the original as `cause`. Already-coded errors are
21
+ * returned unchanged so codes assigned closer to the failure win.
22
+ */
23
+ function wrapError(cause, code, context) {
24
+ const normalized = toError(cause);
25
+ if ((0, base_error_1.isDynamoDbLangGraphError)(normalized)) {
26
+ return normalized;
27
+ }
28
+ return new base_error_1.DynamoDbLangGraphError(normalized.message, code, context ?? {}, normalized);
29
+ }
30
+ //# sourceMappingURL=wrap-error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrap-error.js","sourceRoot":"","sources":["../../../src/shared/errors/wrap-error.ts"],"names":[],"mappings":";;AASA,0BAKC;AAOD,8BAUC;AA/BD,6CAA8F;AAG9F;;;;;GAKG;AACH,SAAgB,OAAO,CAAC,KAAY;IAClC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACrF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;;;GAIG;AACH,SAAgB,SAAS,CACvB,KAAY,EACZ,IAAe,EACf,OAAsB;IAEtB,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,IAAA,qCAAwB,EAAC,UAAU,CAAC,EAAE,CAAC;QACzC,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,OAAO,IAAI,mCAAsB,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;AACzF,CAAC"}
@@ -0,0 +1,14 @@
1
+ /** A value safe to pass as a structured log argument. */
2
+ export type LogArgument = string | number | boolean | null | object;
3
+ /** Pluggable logging interface — consumers supply their own implementation. */
4
+ export interface Logger {
5
+ info(message: string, ...args: LogArgument[]): void;
6
+ warn(message: string, ...args: LogArgument[]): void;
7
+ error(message: string, ...args: LogArgument[]): void;
8
+ debug(message: string, ...args: LogArgument[]): void;
9
+ }
10
+ /** Default logger: discards everything. Inject a real logger to enable output. */
11
+ export declare const SILENT_LOGGER: Logger;
12
+ /** Return the injected logger, or {@link SILENT_LOGGER} when none is given. */
13
+ export declare function resolveLogger(logger?: Logger): Logger;
14
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/shared/logging/logger.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,MAAM,CAAC;AAEpE,+EAA+E;AAC/E,MAAM,WAAW,MAAM;IACrB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IACpD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IACpD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;IACrD,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;CACtD;AAED,kFAAkF;AAClF,eAAO,MAAM,aAAa,EAAE,MAK3B,CAAC;AAEF,+EAA+E;AAC/E,wBAAgB,aAAa,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAErD"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SILENT_LOGGER = void 0;
4
+ exports.resolveLogger = resolveLogger;
5
+ /** Default logger: discards everything. Inject a real logger to enable output. */
6
+ exports.SILENT_LOGGER = {
7
+ info() { },
8
+ warn() { },
9
+ error() { },
10
+ debug() { },
11
+ };
12
+ /** Return the injected logger, or {@link SILENT_LOGGER} when none is given. */
13
+ function resolveLogger(logger) {
14
+ return logger ?? exports.SILENT_LOGGER;
15
+ }
16
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/shared/logging/logger.ts"],"names":[],"mappings":";;;AAoBA,sCAEC;AAXD,kFAAkF;AACrE,QAAA,aAAa,GAAW;IACnC,IAAI,KAAI,CAAC;IACT,IAAI,KAAI,CAAC;IACT,KAAK,KAAI,CAAC;IACV,KAAK,KAAI,CAAC;CACX,CAAC;AAEF,+EAA+E;AAC/E,SAAgB,aAAa,CAAC,MAAe;IAC3C,OAAO,MAAM,IAAI,qBAAa,CAAC;AACjC,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { Logger } from './logger';
2
+ /** A value that {@link redactSecrets} can recurse through. */
3
+ export type Redactable = string | number | boolean | null | undefined | Redactable[] | {
4
+ [key: string]: Redactable;
5
+ };
6
+ /**
7
+ * Recursively clone `value`, replacing any value at a secret-looking key with
8
+ * `[REDACTED]`. Cycles become `[Circular]`. Error objects are passed through so
9
+ * stack traces survive. Does not mutate the input.
10
+ */
11
+ export declare function redactSecrets(value: Redactable, patterns?: readonly string[]): Redactable;
12
+ /**
13
+ * Wrap a logger so object args are redacted before delegation. The message
14
+ * string is passed through unchanged (never interpolate secrets into it).
15
+ */
16
+ export declare function redactLogger(inner: Logger, options?: {
17
+ extraKeys?: readonly string[];
18
+ }): Logger;
19
+ //# sourceMappingURL=redaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redaction.d.ts","sourceRoot":"","sources":["../../../src/shared/logging/redaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,MAAM,EAAE,MAAM,UAAU,CAAC;AAEpD,8DAA8D;AAC9D,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,MAAM,GACN,OAAO,GACP,IAAI,GACJ,SAAS,GACT,UAAU,EAAE,GACZ;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;CAAE,CAAC;AA2BlC;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,UAAU,EACjB,QAAQ,GAAE,SAAS,MAAM,EAAgC,GACxD,UAAU,CAeZ;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAAO,GAC9C,MAAM,CAYR"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.redactSecrets = redactSecrets;
4
+ exports.redactLogger = redactLogger;
5
+ const DEFAULT_SECRET_KEY_PATTERNS = [
6
+ 'accesskey',
7
+ 'secretkey',
8
+ 'secret',
9
+ 'sessiontoken',
10
+ 'securitytoken',
11
+ 'authorization',
12
+ 'password',
13
+ 'apikey',
14
+ 'bearer',
15
+ 'token',
16
+ 'privatekey',
17
+ ];
18
+ const REDACTED = '[REDACTED]';
19
+ function isSecretKey(key, patterns) {
20
+ const lower = key.toLowerCase();
21
+ return patterns.some((pattern) => lower.includes(pattern));
22
+ }
23
+ function isErrorShaped(value) {
24
+ return Object.prototype.toString.call(value) === '[object Error]';
25
+ }
26
+ /**
27
+ * Recursively clone `value`, replacing any value at a secret-looking key with
28
+ * `[REDACTED]`. Cycles become `[Circular]`. Error objects are passed through so
29
+ * stack traces survive. Does not mutate the input.
30
+ */
31
+ function redactSecrets(value, patterns = DEFAULT_SECRET_KEY_PATTERNS) {
32
+ const seen = new WeakSet();
33
+ const walk = (current) => {
34
+ if (current === null || typeof current !== 'object')
35
+ return current;
36
+ if (seen.has(current))
37
+ return '[Circular]';
38
+ seen.add(current);
39
+ if (Array.isArray(current))
40
+ return current.map(walk);
41
+ if (isErrorShaped(current))
42
+ return current;
43
+ const out = {};
44
+ for (const [key, val] of Object.entries(current)) {
45
+ out[key] = isSecretKey(key, patterns) ? REDACTED : walk(val);
46
+ }
47
+ return out;
48
+ };
49
+ return walk(value);
50
+ }
51
+ /**
52
+ * Wrap a logger so object args are redacted before delegation. The message
53
+ * string is passed through unchanged (never interpolate secrets into it).
54
+ */
55
+ function redactLogger(inner, options = {}) {
56
+ const patterns = options.extraKeys
57
+ ? [...DEFAULT_SECRET_KEY_PATTERNS, ...options.extraKeys.map((key) => key.toLowerCase())]
58
+ : DEFAULT_SECRET_KEY_PATTERNS;
59
+ const wrap = (args) => args.map((arg) => redactSecrets(arg, patterns));
60
+ return {
61
+ info: (message, ...args) => inner.info(message, ...wrap(args)),
62
+ warn: (message, ...args) => inner.warn(message, ...wrap(args)),
63
+ error: (message, ...args) => inner.error(message, ...wrap(args)),
64
+ debug: (message, ...args) => inner.debug(message, ...wrap(args)),
65
+ };
66
+ }
67
+ //# sourceMappingURL=redaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redaction.js","sourceRoot":"","sources":["../../../src/shared/logging/redaction.ts"],"names":[],"mappings":";;AA0CA,sCAkBC;AAMD,oCAeC;AArED,MAAM,2BAA2B,GAAsB;IACrD,WAAW;IACX,WAAW;IACX,QAAQ;IACR,cAAc;IACd,eAAe;IACf,eAAe;IACf,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,YAAY;CACb,CAAC;AAEF,MAAM,QAAQ,GAAG,YAAY,CAAC;AAE9B,SAAS,WAAW,CAAC,GAAW,EAAE,QAA2B;IAC3D,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;IAChC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,gBAAgB,CAAC;AACpE,CAAC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAC3B,KAAiB,EACjB,WAA8B,2BAA2B;IAEzD,MAAM,IAAI,GAAG,IAAI,OAAO,EAAU,CAAC;IACnC,MAAM,IAAI,GAAG,CAAC,OAAmB,EAAc,EAAE;QAC/C,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ;YAAE,OAAO,OAAO,CAAC;QACpE,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,YAAY,CAAC;QAC3C,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClB,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,aAAa,CAAC,OAAO,CAAC;YAAE,OAAO,OAAO,CAAC;QAC3C,MAAM,GAAG,GAAkC,EAAE,CAAC;QAC9C,KAAK,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/D,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IACF,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAC1B,KAAa,EACb,UAA6C,EAAE;IAE/C,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS;QAChC,CAAC,CAAC,CAAC,GAAG,2BAA2B,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACxF,CAAC,CAAC,2BAA2B,CAAC;IAChC,MAAM,IAAI,GAAG,CAAC,IAAmB,EAAiB,EAAE,CAClD,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAiB,EAAE,QAAQ,CAAgB,CAAC,CAAC;IAC/E,OAAO;QACL,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9D,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9D,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAChE,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;KACjE,CAAC;AACJ,CAAC"}