@farukada/aws-langgraph-dynamodb-ts 0.2.2 → 0.3.0
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.
- package/README.md +226 -510
- package/dist/checkpointer/actions/delete-thread.d.ts +7 -6
- package/dist/checkpointer/actions/delete-thread.d.ts.map +1 -1
- package/dist/checkpointer/actions/delete-thread.js +47 -152
- package/dist/checkpointer/actions/delete-thread.js.map +1 -1
- package/dist/checkpointer/actions/get-tuple.d.ts +6 -14
- package/dist/checkpointer/actions/get-tuple.d.ts.map +1 -1
- package/dist/checkpointer/actions/get-tuple.js +13 -166
- package/dist/checkpointer/actions/get-tuple.js.map +1 -1
- package/dist/checkpointer/actions/list.d.ts +10 -0
- package/dist/checkpointer/actions/list.d.ts.map +1 -0
- package/dist/checkpointer/actions/list.js +51 -0
- package/dist/checkpointer/actions/list.js.map +1 -0
- package/dist/checkpointer/actions/put-writes.d.ts +6 -6
- package/dist/checkpointer/actions/put-writes.d.ts.map +1 -1
- package/dist/checkpointer/actions/put-writes.js +26 -75
- package/dist/checkpointer/actions/put-writes.js.map +1 -1
- package/dist/checkpointer/actions/put.d.ts +6 -11
- package/dist/checkpointer/actions/put.d.ts.map +1 -1
- package/dist/checkpointer/actions/put.js +29 -161
- package/dist/checkpointer/actions/put.js.map +1 -1
- package/dist/checkpointer/internal/assemble.d.ts +10 -0
- package/dist/checkpointer/internal/assemble.d.ts.map +1 -0
- package/dist/checkpointer/internal/assemble.js +37 -0
- package/dist/checkpointer/internal/assemble.js.map +1 -0
- package/dist/checkpointer/internal/configurable.d.ts +13 -0
- package/dist/checkpointer/internal/configurable.d.ts.map +1 -0
- package/dist/checkpointer/internal/configurable.js +23 -0
- package/dist/checkpointer/internal/configurable.js.map +1 -0
- package/dist/checkpointer/internal/fetch.d.ts +10 -0
- package/dist/checkpointer/internal/fetch.d.ts.map +1 -0
- package/dist/checkpointer/internal/fetch.js +46 -0
- package/dist/checkpointer/internal/fetch.js.map +1 -0
- package/dist/checkpointer/internal/filter-match.d.ts +12 -0
- package/dist/checkpointer/internal/filter-match.d.ts.map +1 -0
- package/dist/checkpointer/internal/filter-match.js +14 -0
- package/dist/checkpointer/internal/filter-match.js.map +1 -0
- package/dist/checkpointer/internal/item-reader.d.ts +10 -0
- package/dist/checkpointer/internal/item-reader.d.ts.map +1 -0
- package/dist/checkpointer/internal/item-reader.js +26 -0
- package/dist/checkpointer/internal/item-reader.js.map +1 -0
- package/dist/checkpointer/internal/item-writer.d.ts +14 -0
- package/dist/checkpointer/internal/item-writer.d.ts.map +1 -0
- package/dist/checkpointer/internal/item-writer.js +68 -0
- package/dist/checkpointer/internal/item-writer.js.map +1 -0
- package/dist/checkpointer/internal/keys.d.ts +15 -0
- package/dist/checkpointer/internal/keys.d.ts.map +1 -0
- package/dist/checkpointer/internal/keys.js +52 -0
- package/dist/checkpointer/internal/keys.js.map +1 -0
- package/dist/checkpointer/internal/query.d.ts +16 -0
- package/dist/checkpointer/internal/query.d.ts.map +1 -0
- package/dist/checkpointer/internal/query.js +33 -0
- package/dist/checkpointer/internal/query.js.map +1 -0
- package/dist/checkpointer/internal/setup.d.ts +31 -0
- package/dist/checkpointer/internal/setup.d.ts.map +1 -0
- package/dist/checkpointer/internal/setup.js +29 -0
- package/dist/checkpointer/internal/setup.js.map +1 -0
- package/dist/checkpointer/internal/validation.d.ts +9 -0
- package/dist/checkpointer/internal/validation.d.ts.map +1 -0
- package/dist/checkpointer/internal/validation.js +28 -0
- package/dist/checkpointer/internal/validation.js.map +1 -0
- package/dist/checkpointer/saver.d.ts +21 -0
- package/dist/checkpointer/saver.d.ts.map +1 -0
- package/dist/checkpointer/saver.js +49 -0
- package/dist/checkpointer/saver.js.map +1 -0
- package/dist/checkpointer/types.d.ts +43 -0
- package/dist/checkpointer/types.d.ts.map +1 -0
- package/dist/{store/types/index.js → checkpointer/types.js} +1 -1
- package/dist/checkpointer/types.js.map +1 -0
- package/dist/factory/factory.d.ts +41 -0
- package/dist/factory/factory.d.ts.map +1 -0
- package/dist/factory/factory.js +49 -0
- package/dist/factory/factory.js.map +1 -0
- package/dist/history/actions/add-messages.d.ts +12 -7
- package/dist/history/actions/add-messages.d.ts.map +1 -1
- package/dist/history/actions/add-messages.js +50 -48
- package/dist/history/actions/add-messages.js.map +1 -1
- package/dist/history/actions/clear.d.ts +5 -11
- package/dist/history/actions/clear.d.ts.map +1 -1
- package/dist/history/actions/clear.js +28 -62
- package/dist/history/actions/clear.js.map +1 -1
- package/dist/history/actions/get-messages.d.ts +6 -13
- package/dist/history/actions/get-messages.d.ts.map +1 -1
- package/dist/history/actions/get-messages.js +23 -59
- package/dist/history/actions/get-messages.js.map +1 -1
- package/dist/history/actions/list-sessions.d.ts +6 -22
- package/dist/history/actions/list-sessions.d.ts.map +1 -1
- package/dist/history/actions/list-sessions.js +26 -69
- package/dist/history/actions/list-sessions.js.map +1 -1
- package/dist/history/actions/reconcile-count.d.ts +10 -0
- package/dist/history/actions/reconcile-count.d.ts.map +1 -0
- package/dist/history/actions/reconcile-count.js +39 -0
- package/dist/history/actions/reconcile-count.js.map +1 -0
- package/dist/history/chat-message-history.d.ts +36 -0
- package/dist/history/chat-message-history.d.ts.map +1 -0
- package/dist/history/chat-message-history.js +67 -0
- package/dist/history/chat-message-history.js.map +1 -0
- package/dist/history/internal/append-saga.d.ts +17 -0
- package/dist/history/internal/append-saga.d.ts.map +1 -0
- package/dist/history/internal/append-saga.js +94 -0
- package/dist/history/internal/append-saga.js.map +1 -0
- package/dist/history/internal/item-mapper.d.ts +12 -0
- package/dist/history/internal/item-mapper.d.ts.map +1 -0
- package/dist/history/internal/item-mapper.js +33 -0
- package/dist/history/internal/item-mapper.js.map +1 -0
- package/dist/history/internal/keys.d.ts +9 -0
- package/dist/history/internal/keys.d.ts.map +1 -0
- package/dist/history/internal/keys.js +22 -0
- package/dist/history/internal/keys.js.map +1 -0
- package/dist/history/internal/message-chunker.d.ts +14 -0
- package/dist/history/internal/message-chunker.d.ts.map +1 -0
- package/dist/history/internal/message-chunker.js +60 -0
- package/dist/history/internal/message-chunker.js.map +1 -0
- package/dist/history/internal/message-transaction.d.ts +17 -0
- package/dist/history/internal/message-transaction.d.ts.map +1 -0
- package/dist/history/internal/message-transaction.js +27 -0
- package/dist/history/internal/message-transaction.js.map +1 -0
- package/dist/history/internal/query.d.ts +6 -0
- package/dist/history/internal/query.d.ts.map +1 -0
- package/dist/history/internal/query.js +28 -0
- package/dist/history/internal/query.js.map +1 -0
- package/dist/history/internal/session-update.d.ts +20 -0
- package/dist/history/internal/session-update.d.ts.map +1 -0
- package/dist/history/internal/session-update.js +46 -0
- package/dist/history/internal/session-update.js.map +1 -0
- package/dist/history/internal/setup.d.ts +28 -0
- package/dist/history/internal/setup.d.ts.map +1 -0
- package/dist/history/internal/setup.js +27 -0
- package/dist/history/internal/setup.js.map +1 -0
- package/dist/history/internal/title-generator.d.ts +7 -0
- package/dist/history/internal/title-generator.d.ts.map +1 -0
- package/dist/history/internal/title-generator.js +16 -0
- package/dist/history/internal/title-generator.js.map +1 -0
- package/dist/history/internal/ttl-anchor.d.ts +12 -0
- package/dist/history/internal/ttl-anchor.d.ts.map +1 -0
- package/dist/history/internal/ttl-anchor.js +26 -0
- package/dist/history/internal/ttl-anchor.js.map +1 -0
- package/dist/history/session-adapter.d.ts +10 -26
- package/dist/history/session-adapter.d.ts.map +1 -1
- package/dist/history/session-adapter.js +15 -57
- package/dist/history/session-adapter.js.map +1 -1
- package/dist/history/types.d.ts +36 -0
- package/dist/history/types.d.ts.map +1 -0
- package/dist/history/types.js +3 -0
- package/dist/history/types.js.map +1 -0
- package/dist/index.d.ts +18 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +24 -16
- package/dist/index.js.map +1 -1
- package/dist/shared/clock.d.ts +3 -0
- package/dist/shared/clock.d.ts.map +1 -0
- package/dist/shared/clock.js +8 -0
- package/dist/shared/clock.js.map +1 -0
- package/dist/shared/codec/codec.d.ts +44 -0
- package/dist/shared/codec/codec.d.ts.map +1 -0
- package/dist/shared/codec/codec.js +44 -0
- package/dist/shared/codec/codec.js.map +1 -0
- package/dist/shared/codec/compression.d.ts +25 -0
- package/dist/shared/codec/compression.d.ts.map +1 -0
- package/dist/shared/codec/compression.js +49 -0
- package/dist/shared/codec/compression.js.map +1 -0
- package/dist/shared/codec/descriptor-keys.d.ts +4 -0
- package/dist/shared/codec/descriptor-keys.d.ts.map +1 -0
- package/dist/shared/codec/descriptor-keys.js +14 -0
- package/dist/shared/codec/descriptor-keys.js.map +1 -0
- package/dist/shared/codec/json-serde.d.ts +8 -0
- package/dist/shared/codec/json-serde.d.ts.map +1 -0
- package/dist/shared/codec/json-serde.js +18 -0
- package/dist/shared/codec/json-serde.js.map +1 -0
- package/dist/shared/codec/s3/client.d.ts +6 -0
- package/dist/shared/codec/s3/client.d.ts.map +1 -0
- package/dist/shared/codec/s3/client.js +18 -0
- package/dist/shared/codec/s3/client.js.map +1 -0
- package/dist/shared/codec/s3/config.d.ts +16 -0
- package/dist/shared/codec/s3/config.d.ts.map +1 -0
- package/dist/shared/codec/s3/config.js +14 -0
- package/dist/shared/codec/s3/config.js.map +1 -0
- package/dist/shared/codec/s3/delete.d.ts +8 -0
- package/dist/shared/codec/s3/delete.d.ts.map +1 -0
- package/dist/shared/codec/s3/delete.js +29 -0
- package/dist/shared/codec/s3/delete.js.map +1 -0
- package/dist/shared/codec/s3/lifecycle.d.ts +8 -0
- package/dist/shared/codec/s3/lifecycle.d.ts.map +1 -0
- package/dist/shared/codec/s3/lifecycle.js +47 -0
- package/dist/shared/codec/s3/lifecycle.js.map +1 -0
- package/dist/shared/codec/s3/offloader.d.ts +33 -0
- package/dist/shared/codec/s3/offloader.d.ts.map +1 -0
- package/dist/shared/codec/s3/offloader.js +80 -0
- package/dist/shared/codec/s3/offloader.js.map +1 -0
- package/dist/shared/codec/s3/orphans.d.ts +16 -0
- package/dist/shared/codec/s3/orphans.d.ts.map +1 -0
- package/dist/shared/codec/s3/orphans.js +73 -0
- package/dist/shared/codec/s3/orphans.js.map +1 -0
- package/dist/shared/codec/s3/read-write.d.ts +14 -0
- package/dist/shared/codec/s3/read-write.d.ts.map +1 -0
- package/dist/shared/codec/s3/read-write.js +42 -0
- package/dist/shared/codec/s3/read-write.js.map +1 -0
- package/dist/shared/constants.d.ts +37 -0
- package/dist/shared/constants.d.ts.map +1 -0
- package/dist/shared/constants.js +40 -0
- package/dist/shared/constants.js.map +1 -0
- package/dist/shared/dynamodb/backoff.d.ts +15 -0
- package/dist/shared/dynamodb/backoff.d.ts.map +1 -0
- package/dist/shared/dynamodb/backoff.js +48 -0
- package/dist/shared/dynamodb/backoff.js.map +1 -0
- package/dist/shared/dynamodb/batch-write.d.ts +10 -0
- package/dist/shared/dynamodb/batch-write.d.ts.map +1 -0
- package/dist/shared/dynamodb/batch-write.js +17 -0
- package/dist/shared/dynamodb/batch-write.js.map +1 -0
- package/dist/shared/dynamodb/client.d.ts +21 -0
- package/dist/shared/dynamodb/client.d.ts.map +1 -0
- package/dist/shared/dynamodb/client.js +19 -0
- package/dist/shared/dynamodb/client.js.map +1 -0
- package/dist/shared/dynamodb/drain-unprocessed.d.ts +15 -0
- package/dist/shared/dynamodb/drain-unprocessed.d.ts.map +1 -0
- package/dist/shared/dynamodb/drain-unprocessed.js +35 -0
- package/dist/shared/dynamodb/drain-unprocessed.js.map +1 -0
- package/dist/shared/dynamodb/paginate-core.d.ts +22 -0
- package/dist/shared/dynamodb/paginate-core.d.ts.map +1 -0
- package/dist/shared/dynamodb/paginate-core.js +52 -0
- package/dist/shared/dynamodb/paginate-core.js.map +1 -0
- package/dist/shared/dynamodb/paginate.d.ts +15 -0
- package/dist/shared/dynamodb/paginate.d.ts.map +1 -0
- package/dist/shared/dynamodb/paginate.js +20 -0
- package/dist/shared/dynamodb/paginate.js.map +1 -0
- package/dist/shared/dynamodb/retry-classifier.d.ts +9 -0
- package/dist/shared/dynamodb/retry-classifier.d.ts.map +1 -0
- package/dist/shared/dynamodb/retry-classifier.js +75 -0
- package/dist/shared/dynamodb/retry-classifier.js.map +1 -0
- package/dist/shared/dynamodb/retry.d.ts +18 -0
- package/dist/shared/dynamodb/retry.d.ts.map +1 -0
- package/dist/shared/dynamodb/retry.js +53 -0
- package/dist/shared/dynamodb/retry.js.map +1 -0
- package/dist/shared/dynamodb/scan.d.ts +15 -0
- package/dist/shared/dynamodb/scan.d.ts.map +1 -0
- package/dist/shared/dynamodb/scan.js +20 -0
- package/dist/shared/dynamodb/scan.js.map +1 -0
- package/dist/shared/dynamodb/types.d.ts +24 -0
- package/dist/shared/dynamodb/types.d.ts.map +1 -0
- package/dist/shared/dynamodb/types.js +3 -0
- package/dist/shared/dynamodb/types.js.map +1 -0
- package/dist/shared/errors/base-error.d.ts +22 -0
- package/dist/shared/errors/base-error.d.ts.map +1 -0
- package/dist/shared/errors/base-error.js +28 -0
- package/dist/shared/errors/base-error.js.map +1 -0
- package/dist/shared/errors/error-code.d.ts +13 -0
- package/dist/shared/errors/error-code.d.ts.map +1 -0
- package/dist/shared/errors/error-code.js +17 -0
- package/dist/shared/errors/error-code.js.map +1 -0
- package/dist/shared/errors/errors.d.ts +47 -0
- package/dist/shared/errors/errors.d.ts.map +1 -0
- package/dist/shared/errors/errors.js +82 -0
- package/dist/shared/errors/errors.js.map +1 -0
- package/dist/shared/errors/wrap-error.d.ts +16 -0
- package/dist/shared/errors/wrap-error.d.ts.map +1 -0
- package/dist/shared/errors/wrap-error.js +30 -0
- package/dist/shared/errors/wrap-error.js.map +1 -0
- package/dist/shared/logging/logger.d.ts +14 -0
- package/dist/shared/logging/logger.d.ts.map +1 -0
- package/dist/shared/logging/logger.js +16 -0
- package/dist/shared/logging/logger.js.map +1 -0
- package/dist/shared/logging/redaction.d.ts +19 -0
- package/dist/shared/logging/redaction.d.ts.map +1 -0
- package/dist/shared/logging/redaction.js +67 -0
- package/dist/shared/logging/redaction.js.map +1 -0
- package/dist/shared/options.d.ts +32 -0
- package/dist/shared/options.d.ts.map +1 -0
- package/dist/shared/options.js +3 -0
- package/dist/shared/options.js.map +1 -0
- package/dist/shared/ulid.d.ts +10 -0
- package/dist/shared/ulid.d.ts.map +1 -0
- package/dist/shared/ulid.js +65 -0
- package/dist/shared/ulid.js.map +1 -0
- package/dist/shared/validation/primitives.d.ts +17 -0
- package/dist/shared/validation/primitives.d.ts.map +1 -0
- package/dist/shared/validation/primitives.js +71 -0
- package/dist/shared/validation/primitives.js.map +1 -0
- package/dist/shared/validation/ttl.d.ts +16 -0
- package/dist/shared/validation/ttl.d.ts.map +1 -0
- package/dist/shared/validation/ttl.js +26 -0
- package/dist/shared/validation/ttl.js.map +1 -0
- package/dist/store/actions/get.d.ts +5 -0
- package/dist/store/actions/get.d.ts.map +1 -0
- package/dist/store/actions/get.js +21 -0
- package/dist/store/actions/get.js.map +1 -0
- package/dist/store/actions/list-namespaces.d.ts +9 -0
- package/dist/store/actions/list-namespaces.d.ts.map +1 -0
- package/dist/store/actions/list-namespaces.js +46 -0
- package/dist/store/actions/list-namespaces.js.map +1 -0
- package/dist/store/actions/put.d.ts +11 -0
- package/dist/store/actions/put.d.ts.map +1 -0
- package/dist/store/actions/put.js +81 -0
- package/dist/store/actions/put.js.map +1 -0
- package/dist/store/actions/reconcile-vector-index.d.ts +17 -0
- package/dist/store/actions/reconcile-vector-index.d.ts.map +1 -0
- package/dist/store/actions/reconcile-vector-index.js +27 -0
- package/dist/store/actions/reconcile-vector-index.js.map +1 -0
- package/dist/store/actions/search.d.ts +10 -0
- package/dist/store/actions/search.d.ts.map +1 -0
- package/dist/store/actions/search.js +72 -0
- package/dist/store/actions/search.js.map +1 -0
- package/dist/store/internal/filter.d.ts +10 -0
- package/dist/store/internal/filter.d.ts.map +1 -0
- package/dist/store/internal/filter.js +37 -0
- package/dist/store/internal/filter.js.map +1 -0
- package/dist/store/internal/index-reconcile.d.ts +22 -0
- package/dist/store/internal/index-reconcile.d.ts.map +1 -0
- package/dist/store/internal/index-reconcile.js +68 -0
- package/dist/store/internal/index-reconcile.js.map +1 -0
- package/dist/store/internal/index-sync.d.ts +11 -0
- package/dist/store/internal/index-sync.d.ts.map +1 -0
- package/dist/store/internal/index-sync.js +26 -0
- package/dist/store/internal/index-sync.js.map +1 -0
- package/dist/store/internal/item-mapper.d.ts +23 -0
- package/dist/store/internal/item-mapper.d.ts.map +1 -0
- package/dist/store/internal/item-mapper.js +51 -0
- package/dist/store/internal/item-mapper.js.map +1 -0
- package/dist/store/internal/keys.d.ts +18 -0
- package/dist/store/internal/keys.d.ts.map +1 -0
- package/dist/store/internal/keys.js +36 -0
- package/dist/store/internal/keys.js.map +1 -0
- package/dist/store/internal/namespace-match.d.ts +12 -0
- package/dist/store/internal/namespace-match.d.ts.map +1 -0
- package/dist/store/internal/namespace-match.js +41 -0
- package/dist/store/internal/namespace-match.js.map +1 -0
- package/dist/store/internal/query.d.ts +6 -0
- package/dist/store/internal/query.d.ts.map +1 -0
- package/dist/store/internal/query.js +32 -0
- package/dist/store/internal/query.js.map +1 -0
- package/dist/store/internal/ranker.d.ts +13 -0
- package/dist/store/internal/ranker.d.ts.map +1 -0
- package/dist/store/internal/ranker.js +29 -0
- package/dist/store/internal/ranker.js.map +1 -0
- package/dist/store/internal/semantic-search.d.ts +13 -0
- package/dist/store/internal/semantic-search.d.ts.map +1 -0
- package/dist/store/internal/semantic-search.js +47 -0
- package/dist/store/internal/semantic-search.js.map +1 -0
- package/dist/store/internal/setup.d.ts +31 -0
- package/dist/store/internal/setup.d.ts.map +1 -0
- package/dist/store/internal/setup.js +29 -0
- package/dist/store/internal/setup.js.map +1 -0
- package/dist/store/internal/validation.d.ts +7 -0
- package/dist/store/internal/validation.d.ts.map +1 -0
- package/dist/store/internal/validation.js +26 -0
- package/dist/store/internal/validation.js.map +1 -0
- package/dist/store/store.d.ts +24 -0
- package/dist/store/store.d.ts.map +1 -0
- package/dist/store/store.js +58 -0
- package/dist/store/store.js.map +1 -0
- package/dist/store/types.d.ts +28 -0
- package/dist/store/types.d.ts.map +1 -0
- package/dist/store/types.js +3 -0
- package/dist/store/types.js.map +1 -0
- package/dist/store/vector-backend.d.ts +27 -0
- package/dist/store/vector-backend.d.ts.map +1 -0
- package/dist/store/vector-backend.js +3 -0
- package/dist/store/vector-backend.js.map +1 -0
- package/package.json +21 -22
- package/dist/checkpointer/actions/index.d.ts +0 -5
- package/dist/checkpointer/actions/index.d.ts.map +0 -1
- package/dist/checkpointer/actions/index.js +0 -21
- package/dist/checkpointer/actions/index.js.map +0 -1
- package/dist/checkpointer/actions/validate-configurable.d.ts +0 -10
- package/dist/checkpointer/actions/validate-configurable.d.ts.map +0 -1
- package/dist/checkpointer/actions/validate-configurable.js +0 -39
- package/dist/checkpointer/actions/validate-configurable.js.map +0 -1
- package/dist/checkpointer/actions/writer.d.ts +0 -52
- package/dist/checkpointer/actions/writer.d.ts.map +0 -1
- package/dist/checkpointer/actions/writer.js +0 -109
- package/dist/checkpointer/actions/writer.js.map +0 -1
- package/dist/checkpointer/index.d.ts +0 -118
- package/dist/checkpointer/index.d.ts.map +0 -1
- package/dist/checkpointer/index.js +0 -393
- package/dist/checkpointer/index.js.map +0 -1
- package/dist/checkpointer/types/index.d.ts +0 -232
- package/dist/checkpointer/types/index.d.ts.map +0 -1
- package/dist/checkpointer/types/index.js +0 -13
- package/dist/checkpointer/types/index.js.map +0 -1
- package/dist/checkpointer/utils/deserialization.d.ts +0 -20
- package/dist/checkpointer/utils/deserialization.d.ts.map +0 -1
- package/dist/checkpointer/utils/deserialization.js +0 -81
- package/dist/checkpointer/utils/deserialization.js.map +0 -1
- package/dist/checkpointer/utils/index.d.ts +0 -7
- package/dist/checkpointer/utils/index.d.ts.map +0 -1
- package/dist/checkpointer/utils/index.js +0 -27
- package/dist/checkpointer/utils/index.js.map +0 -1
- package/dist/checkpointer/utils/validation.d.ts +0 -48
- package/dist/checkpointer/utils/validation.d.ts.map +0 -1
- package/dist/checkpointer/utils/validation.js +0 -235
- package/dist/checkpointer/utils/validation.js.map +0 -1
- package/dist/factory.d.ts +0 -153
- package/dist/factory.d.ts.map +0 -1
- package/dist/factory.js +0 -206
- package/dist/factory.js.map +0 -1
- package/dist/history/actions/add-message.d.ts +0 -10
- package/dist/history/actions/add-message.d.ts.map +0 -1
- package/dist/history/actions/add-message.js +0 -24
- package/dist/history/actions/add-message.js.map +0 -1
- package/dist/history/actions/index.d.ts +0 -9
- package/dist/history/actions/index.d.ts.map +0 -1
- package/dist/history/actions/index.js +0 -17
- package/dist/history/actions/index.js.map +0 -1
- package/dist/history/index.d.ts +0 -118
- package/dist/history/index.d.ts.map +0 -1
- package/dist/history/index.js +0 -179
- package/dist/history/index.js.map +0 -1
- package/dist/history/types/index.d.ts +0 -184
- package/dist/history/types/index.d.ts.map +0 -1
- package/dist/history/types/index.js +0 -7
- package/dist/history/types/index.js.map +0 -1
- package/dist/history/utils/index.d.ts +0 -9
- package/dist/history/utils/index.d.ts.map +0 -1
- package/dist/history/utils/index.js +0 -27
- package/dist/history/utils/index.js.map +0 -1
- package/dist/history/utils/optimistic-retry.d.ts +0 -31
- package/dist/history/utils/optimistic-retry.d.ts.map +0 -1
- package/dist/history/utils/optimistic-retry.js +0 -74
- package/dist/history/utils/optimistic-retry.js.map +0 -1
- package/dist/history/utils/title-generator.d.ts +0 -12
- package/dist/history/utils/title-generator.d.ts.map +0 -1
- package/dist/history/utils/title-generator.js +0 -57
- package/dist/history/utils/title-generator.js.map +0 -1
- package/dist/history/utils/update-expression-builder.d.ts +0 -55
- package/dist/history/utils/update-expression-builder.d.ts.map +0 -1
- package/dist/history/utils/update-expression-builder.js +0 -112
- package/dist/history/utils/update-expression-builder.js.map +0 -1
- package/dist/history/utils/validation.d.ts +0 -68
- package/dist/history/utils/validation.d.ts.map +0 -1
- package/dist/history/utils/validation.js +0 -213
- package/dist/history/utils/validation.js.map +0 -1
- package/dist/shared/index.d.ts +0 -5
- package/dist/shared/index.d.ts.map +0 -1
- package/dist/shared/index.js +0 -21
- package/dist/shared/index.js.map +0 -1
- package/dist/shared/utils/batch-write.d.ts +0 -74
- package/dist/shared/utils/batch-write.d.ts.map +0 -1
- package/dist/shared/utils/batch-write.js +0 -110
- package/dist/shared/utils/batch-write.js.map +0 -1
- package/dist/shared/utils/client-factory.d.ts +0 -25
- package/dist/shared/utils/client-factory.d.ts.map +0 -1
- package/dist/shared/utils/client-factory.js +0 -23
- package/dist/shared/utils/client-factory.js.map +0 -1
- package/dist/shared/utils/compressor.d.ts +0 -66
- package/dist/shared/utils/compressor.d.ts.map +0 -1
- package/dist/shared/utils/compressor.js +0 -133
- package/dist/shared/utils/compressor.js.map +0 -1
- package/dist/shared/utils/constants.d.ts +0 -13
- package/dist/shared/utils/constants.d.ts.map +0 -1
- package/dist/shared/utils/constants.js +0 -35
- package/dist/shared/utils/constants.js.map +0 -1
- package/dist/shared/utils/index.d.ts +0 -14
- package/dist/shared/utils/index.d.ts.map +0 -1
- package/dist/shared/utils/index.js +0 -30
- package/dist/shared/utils/index.js.map +0 -1
- package/dist/shared/utils/logger.d.ts +0 -75
- package/dist/shared/utils/logger.d.ts.map +0 -1
- package/dist/shared/utils/logger.js +0 -148
- package/dist/shared/utils/logger.js.map +0 -1
- package/dist/shared/utils/retry.d.ts +0 -26
- package/dist/shared/utils/retry.d.ts.map +0 -1
- package/dist/shared/utils/retry.js +0 -169
- package/dist/shared/utils/retry.js.map +0 -1
- package/dist/shared/utils/s3-offloader.d.ts +0 -153
- package/dist/shared/utils/s3-offloader.d.ts.map +0 -1
- package/dist/shared/utils/s3-offloader.js +0 -281
- package/dist/shared/utils/s3-offloader.js.map +0 -1
- package/dist/shared/utils/s3-orphans.d.ts +0 -16
- package/dist/shared/utils/s3-orphans.d.ts.map +0 -1
- package/dist/shared/utils/s3-orphans.js +0 -79
- package/dist/shared/utils/s3-orphans.js.map +0 -1
- package/dist/shared/utils/sleep.d.ts +0 -48
- package/dist/shared/utils/sleep.d.ts.map +0 -1
- package/dist/shared/utils/sleep.js +0 -82
- package/dist/shared/utils/sleep.js.map +0 -1
- package/dist/shared/utils/ttl.d.ts +0 -24
- package/dist/shared/utils/ttl.d.ts.map +0 -1
- package/dist/shared/utils/ttl.js +0 -43
- package/dist/shared/utils/ttl.js.map +0 -1
- package/dist/store/actions/get-operation.d.ts +0 -11
- package/dist/store/actions/get-operation.d.ts.map +0 -1
- package/dist/store/actions/get-operation.js +0 -42
- package/dist/store/actions/get-operation.js.map +0 -1
- package/dist/store/actions/index.d.ts +0 -5
- package/dist/store/actions/index.d.ts.map +0 -1
- package/dist/store/actions/index.js +0 -21
- package/dist/store/actions/index.js.map +0 -1
- package/dist/store/actions/list-namespaces-operation.d.ts +0 -10
- package/dist/store/actions/list-namespaces-operation.d.ts.map +0 -1
- package/dist/store/actions/list-namespaces-operation.js +0 -227
- package/dist/store/actions/list-namespaces-operation.js.map +0 -1
- package/dist/store/actions/put-operation.d.ts +0 -9
- package/dist/store/actions/put-operation.d.ts.map +0 -1
- package/dist/store/actions/put-operation.js +0 -107
- package/dist/store/actions/put-operation.js.map +0 -1
- package/dist/store/actions/search-operation.d.ts +0 -17
- package/dist/store/actions/search-operation.d.ts.map +0 -1
- package/dist/store/actions/search-operation.js +0 -203
- package/dist/store/actions/search-operation.js.map +0 -1
- package/dist/store/index.d.ts +0 -82
- package/dist/store/index.d.ts.map +0 -1
- package/dist/store/index.js +0 -172
- package/dist/store/index.js.map +0 -1
- package/dist/store/types/index.d.ts +0 -131
- package/dist/store/types/index.d.ts.map +0 -1
- package/dist/store/types/index.js.map +0 -1
- package/dist/store/utils/filter.d.ts +0 -16
- package/dist/store/utils/filter.d.ts.map +0 -1
- package/dist/store/utils/filter.js +0 -133
- package/dist/store/utils/filter.js.map +0 -1
- package/dist/store/utils/index.d.ts +0 -7
- package/dist/store/utils/index.d.ts.map +0 -1
- package/dist/store/utils/index.js +0 -27
- package/dist/store/utils/index.js.map +0 -1
- package/dist/store/utils/validation.d.ts +0 -61
- package/dist/store/utils/validation.d.ts.map +0 -1
- package/dist/store/utils/validation.js +0 -260
- package/dist/store/utils/validation.js.map +0 -1
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildSessionUpdateItem = buildSessionUpdateItem;
|
|
4
|
+
const keys_1 = require("./keys");
|
|
5
|
+
/**
|
|
6
|
+
* Build the metadata `Update` transact-item: `ADD` the message count and `SET`
|
|
7
|
+
* `updatedAt` every time, while `createdAt`, `sessionId`, `title`, and the `ttl`
|
|
8
|
+
* anchor are written once via `if_not_exists`. Folding the `ttl` anchor in here
|
|
9
|
+
* means the first append fixes one shared expiry atomically with the count, with
|
|
10
|
+
* no separate pre-write that could orphan a metadata-only row.
|
|
11
|
+
*/
|
|
12
|
+
function buildSessionUpdateItem(tableName, fields) {
|
|
13
|
+
const names = {
|
|
14
|
+
'#count': 'messageCount',
|
|
15
|
+
'#u': 'updatedAt',
|
|
16
|
+
'#c': 'createdAt',
|
|
17
|
+
'#sid': 'sessionId',
|
|
18
|
+
};
|
|
19
|
+
const values = {
|
|
20
|
+
':n': fields.count,
|
|
21
|
+
':u': fields.now,
|
|
22
|
+
':c': fields.now,
|
|
23
|
+
':sid': fields.sessionId,
|
|
24
|
+
};
|
|
25
|
+
const sets = ['#u = :u', '#c = if_not_exists(#c, :c)', '#sid = if_not_exists(#sid, :sid)'];
|
|
26
|
+
if (fields.title !== undefined) {
|
|
27
|
+
names['#title'] = 'title';
|
|
28
|
+
values[':title'] = fields.title;
|
|
29
|
+
sets.push('#title = if_not_exists(#title, :title)');
|
|
30
|
+
}
|
|
31
|
+
if (fields.ttlTimestamp !== undefined) {
|
|
32
|
+
names['#ttl'] = 'ttl';
|
|
33
|
+
values[':ttl'] = fields.ttlTimestamp;
|
|
34
|
+
sets.push('#ttl = if_not_exists(#ttl, :ttl)');
|
|
35
|
+
}
|
|
36
|
+
return {
|
|
37
|
+
Update: {
|
|
38
|
+
TableName: tableName,
|
|
39
|
+
Key: { PK: (0, keys_1.sessionPartition)(fields.sessionId), SK: keys_1.SESSION_SORT_KEY },
|
|
40
|
+
UpdateExpression: `ADD #count :n SET ${sets.join(', ')}`,
|
|
41
|
+
ExpressionAttributeNames: names,
|
|
42
|
+
ExpressionAttributeValues: values,
|
|
43
|
+
},
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=session-update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-update.js","sourceRoot":"","sources":["../../../src/history/internal/session-update.ts"],"names":[],"mappings":";;AAuBA,wDAoCC;AAzDD,iCAA4D;AAc5D;;;;;;GAMG;AACH,SAAgB,sBAAsB,CACpC,SAAiB,EACjB,MAA2B;IAE3B,MAAM,KAAK,GAA2B;QACpC,QAAQ,EAAE,cAAc;QACxB,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,WAAW;KACpB,CAAC;IACF,MAAM,MAAM,GAAyC;QACnD,IAAI,EAAE,MAAM,CAAC,KAAK;QAClB,IAAI,EAAE,MAAM,CAAC,GAAG;QAChB,IAAI,EAAE,MAAM,CAAC,GAAG;QAChB,MAAM,EAAE,MAAM,CAAC,SAAS;KACzB,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,SAAS,EAAE,4BAA4B,EAAE,kCAAkC,CAAC,CAAC;IAC3F,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,KAAK,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC;QAC1B,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACtC,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;QACtB,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAChD,CAAC;IACD,OAAO;QACL,MAAM,EAAE;YACN,SAAS,EAAE,SAAS;YACpB,GAAG,EAAE,EAAE,EAAE,EAAE,IAAA,uBAAgB,EAAC,MAAM,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,uBAAgB,EAAE;YACrE,gBAAgB,EAAE,qBAAqB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACxD,wBAAwB,EAAE,KAAK;YAC/B,yBAAyB,EAAE,MAAM;SAClC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import type { DynamoDBDocument } from '@aws-sdk/lib-dynamodb';
|
|
3
|
+
import type { SerializerProtocol } from '@langchain/langgraph-checkpoint';
|
|
4
|
+
import type { CompressionConfig } from '../../shared/codec/compression';
|
|
5
|
+
import { S3Offloader } from '../../shared/codec/s3/offloader';
|
|
6
|
+
import { type Logger } from '../../shared/logging/logger';
|
|
7
|
+
import type { TtlOption } from '../../shared/validation/ttl';
|
|
8
|
+
import type { DynamoDBChatMessageHistoryOptions } from '../types';
|
|
9
|
+
/** Resolved collaborators shared by every chat-history action. */
|
|
10
|
+
export interface HistoryContext {
|
|
11
|
+
client: DynamoDBDocument;
|
|
12
|
+
tableName: string;
|
|
13
|
+
serde: SerializerProtocol;
|
|
14
|
+
compression?: CompressionConfig;
|
|
15
|
+
offloader?: S3Offloader;
|
|
16
|
+
ttl?: TtlOption;
|
|
17
|
+
logger: Logger;
|
|
18
|
+
ulid: () => string;
|
|
19
|
+
}
|
|
20
|
+
/** Result of wiring up a chat-history adapter from its options. */
|
|
21
|
+
export interface HistorySetup {
|
|
22
|
+
context: HistoryContext;
|
|
23
|
+
ddbClient: DynamoDBClient | undefined;
|
|
24
|
+
ownsClient: boolean;
|
|
25
|
+
}
|
|
26
|
+
/** Resolve the client, optional S3 offloader, and serializer into a context. */
|
|
27
|
+
export declare function setUpHistory(options: DynamoDBChatMessageHistoryOptions): HistorySetup;
|
|
28
|
+
//# sourceMappingURL=setup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/history/internal/setup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAE9D,OAAO,EAAE,KAAK,MAAM,EAAiB,MAAM,6BAA6B,CAAC;AAEzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,UAAU,CAAC;AAElE,kEAAkE;AAClE,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,gBAAgB,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,SAAS,CAAC,EAAE,WAAW,CAAC;IACxB,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,mEAAmE;AACnE,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,cAAc,GAAG,SAAS,CAAC;IACtC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,gFAAgF;AAChF,wBAAgB,YAAY,CAAC,OAAO,EAAE,iCAAiC,GAAG,YAAY,CAgBrF"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setUpHistory = setUpHistory;
|
|
4
|
+
const json_serde_1 = require("../../shared/codec/json-serde");
|
|
5
|
+
const offloader_1 = require("../../shared/codec/s3/offloader");
|
|
6
|
+
const client_1 = require("../../shared/dynamodb/client");
|
|
7
|
+
const logger_1 = require("../../shared/logging/logger");
|
|
8
|
+
const ulid_1 = require("../../shared/ulid");
|
|
9
|
+
/** Resolve the client, optional S3 offloader, and serializer into a context. */
|
|
10
|
+
function setUpHistory(options) {
|
|
11
|
+
const resolved = (0, client_1.resolveDynamoDBClient)(options);
|
|
12
|
+
return {
|
|
13
|
+
context: {
|
|
14
|
+
client: resolved.client,
|
|
15
|
+
tableName: options.tableName,
|
|
16
|
+
serde: options.serde ?? json_serde_1.JSON_SERDE,
|
|
17
|
+
compression: options.compression,
|
|
18
|
+
offloader: options.s3 ? new offloader_1.S3Offloader(options.s3) : undefined,
|
|
19
|
+
ttl: options.ttl,
|
|
20
|
+
logger: (0, logger_1.resolveLogger)(options.logger),
|
|
21
|
+
ulid: (0, ulid_1.createUlidFactory)(),
|
|
22
|
+
},
|
|
23
|
+
ddbClient: resolved.ddbClient,
|
|
24
|
+
ownsClient: resolved.ownsClient,
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/history/internal/setup.ts"],"names":[],"mappings":";;AAiCA,oCAgBC;AA5CD,8DAA2D;AAC3D,+DAA8D;AAC9D,yDAAqE;AACrE,wDAAyE;AACzE,4CAAsD;AAuBtD,gFAAgF;AAChF,SAAgB,YAAY,CAAC,OAA0C;IACrE,MAAM,QAAQ,GAAG,IAAA,8BAAqB,EAAC,OAAO,CAAC,CAAC;IAChD,OAAO;QACL,OAAO,EAAE;YACP,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,uBAAU;YAClC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,uBAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;YAC/D,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,MAAM,EAAE,IAAA,sBAAa,EAAC,OAAO,CAAC,MAAM,CAAC;YACrC,IAAI,EAAE,IAAA,wBAAiB,GAAE;SAC1B;QACD,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,UAAU,EAAE,QAAQ,CAAC,UAAU;KAChC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { StoredMessage } from '@langchain/core/messages';
|
|
2
|
+
/**
|
|
3
|
+
* Derive a session title from the first human message's text content, truncated
|
|
4
|
+
* to {@link MAX_TITLE_LENGTH}. Returns undefined when there is no usable text.
|
|
5
|
+
*/
|
|
6
|
+
export declare function deriveTitle(messages: StoredMessage[]): string | undefined;
|
|
7
|
+
//# sourceMappingURL=title-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"title-generator.d.ts","sourceRoot":"","sources":["../../../src/history/internal/title-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAI9D;;;GAGG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,GAAG,SAAS,CAKzE"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.deriveTitle = deriveTitle;
|
|
4
|
+
const MAX_TITLE_LENGTH = 80;
|
|
5
|
+
/**
|
|
6
|
+
* Derive a session title from the first human message's text content, truncated
|
|
7
|
+
* to {@link MAX_TITLE_LENGTH}. Returns undefined when there is no usable text.
|
|
8
|
+
*/
|
|
9
|
+
function deriveTitle(messages) {
|
|
10
|
+
const firstHuman = messages.find((message) => message.type === 'human');
|
|
11
|
+
const content = firstHuman?.data.content;
|
|
12
|
+
if (typeof content !== 'string' || content.length === 0)
|
|
13
|
+
return undefined;
|
|
14
|
+
return content.length > MAX_TITLE_LENGTH ? `${content.slice(0, MAX_TITLE_LENGTH)}…` : content;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=title-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"title-generator.js","sourceRoot":"","sources":["../../../src/history/internal/title-generator.ts"],"names":[],"mappings":";;AAQA,kCAKC;AAXD,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAE5B;;;GAGG;AACH,SAAgB,WAAW,CAAC,QAAyB;IACnD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IACxE,MAAM,OAAO,GAAG,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;IACzC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1E,OAAO,OAAO,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;AAChG,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { HistoryContext } from './setup';
|
|
2
|
+
/**
|
|
3
|
+
* Resolve the session's creation-anchored TTL: the value already stored on the
|
|
4
|
+
* SESSION item if one exists, otherwise the supplied `candidate`. This is a
|
|
5
|
+
* strongly-consistent read, never a write, so it cannot leave a metadata-only
|
|
6
|
+
* orphan row when the following append transaction fails. The append transaction
|
|
7
|
+
* itself sets the anchor via `if_not_exists`, so concurrent first appends still
|
|
8
|
+
* converge on a single shared expiry, and every later append reuses it — giving
|
|
9
|
+
* all message items in a session one uniform expiry.
|
|
10
|
+
*/
|
|
11
|
+
export declare function resolveTtlAnchor(context: HistoryContext, sessionId: string, candidate: number): Promise<number>;
|
|
12
|
+
//# sourceMappingURL=ttl-anchor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ttl-anchor.d.ts","sourceRoot":"","sources":["../../../src/history/internal/ttl-anchor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,CAYjB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.resolveTtlAnchor = resolveTtlAnchor;
|
|
4
|
+
const retry_1 = require("../../shared/dynamodb/retry");
|
|
5
|
+
const keys_1 = require("./keys");
|
|
6
|
+
/**
|
|
7
|
+
* Resolve the session's creation-anchored TTL: the value already stored on the
|
|
8
|
+
* SESSION item if one exists, otherwise the supplied `candidate`. This is a
|
|
9
|
+
* strongly-consistent read, never a write, so it cannot leave a metadata-only
|
|
10
|
+
* orphan row when the following append transaction fails. The append transaction
|
|
11
|
+
* itself sets the anchor via `if_not_exists`, so concurrent first appends still
|
|
12
|
+
* converge on a single shared expiry, and every later append reuses it — giving
|
|
13
|
+
* all message items in a session one uniform expiry.
|
|
14
|
+
*/
|
|
15
|
+
async function resolveTtlAnchor(context, sessionId, candidate) {
|
|
16
|
+
const result = await (0, retry_1.withDynamoDBRetry)(() => context.client.get({
|
|
17
|
+
TableName: context.tableName,
|
|
18
|
+
Key: { PK: (0, keys_1.sessionPartition)(sessionId), SK: keys_1.SESSION_SORT_KEY },
|
|
19
|
+
ConsistentRead: true,
|
|
20
|
+
ProjectionExpression: '#ttl',
|
|
21
|
+
ExpressionAttributeNames: { '#ttl': 'ttl' },
|
|
22
|
+
}));
|
|
23
|
+
const ttl = result.Item?.ttl;
|
|
24
|
+
return typeof ttl === 'number' ? ttl : candidate;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=ttl-anchor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ttl-anchor.js","sourceRoot":"","sources":["../../../src/history/internal/ttl-anchor.ts"],"names":[],"mappings":";;AAaA,4CAgBC;AA7BD,uDAAgE;AAChE,iCAA4D;AAG5D;;;;;;;;GAQG;AACI,KAAK,UAAU,gBAAgB,CACpC,OAAuB,EACvB,SAAiB,EACjB,SAAiB;IAEjB,MAAM,MAAM,GAAG,MAAM,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAC1C,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;QACjB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,GAAG,EAAE,EAAE,EAAE,EAAE,IAAA,uBAAgB,EAAC,SAAS,CAAC,EAAE,EAAE,EAAE,uBAAgB,EAAE;QAC9D,cAAc,EAAE,IAAI;QACpB,oBAAoB,EAAE,MAAM;QAC5B,wBAAwB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;KAC5C,CAAC,CACH,CAAC;IACF,MAAM,GAAG,GAAI,MAAM,CAAC,IAAqC,EAAE,GAAG,CAAC;IAC/D,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACnD,CAAC"}
|
|
@@ -1,36 +1,20 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Adapter that exposes a single (userId, sessionId) pair through the
|
|
3
|
-
* LangChain `BaseListChatMessageHistory` contract so the DynamoDB-backed
|
|
4
|
-
* history can be plugged into `RunnableWithMessageHistory` and anywhere else
|
|
5
|
-
* that expects the standard interface.
|
|
6
|
-
*
|
|
7
|
-
* Use {@link DynamoDBChatMessageHistory.forSession} to obtain one; see that
|
|
8
|
-
* method's JSDoc for the LangChain integration pattern.
|
|
9
|
-
*/
|
|
10
|
-
import type { DynamoDBDocument } from '@aws-sdk/lib-dynamodb';
|
|
11
1
|
import { BaseListChatMessageHistory } from '@langchain/core/chat_history';
|
|
12
2
|
import type { BaseMessage } from '@langchain/core/messages';
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
sessionId: string
|
|
18
|
-
ttlDays?: number;
|
|
3
|
+
/** The session-scoped operations a single-session adapter delegates to. */
|
|
4
|
+
export interface SessionBackend {
|
|
5
|
+
getMessages(sessionId: string): Promise<BaseMessage[]>;
|
|
6
|
+
addMessages(sessionId: string, messages: BaseMessage[]): Promise<void>;
|
|
7
|
+
clear(sessionId: string): Promise<void>;
|
|
19
8
|
}
|
|
20
9
|
/**
|
|
21
|
-
* Single-session
|
|
22
|
-
*
|
|
23
|
-
* specific `(userId, sessionId)` pair; pass through
|
|
24
|
-
* `RunnableWithMessageHistory` via a `GetSessionHistoryCallable`.
|
|
10
|
+
* Single-session view over a {@link SessionBackend}, implementing LangChain's
|
|
11
|
+
* `BaseListChatMessageHistory` so it can drive `RunnableWithMessageHistory`.
|
|
25
12
|
*/
|
|
26
13
|
export declare class DynamoDBSessionChatMessageHistory extends BaseListChatMessageHistory {
|
|
27
|
-
|
|
28
|
-
private readonly client;
|
|
29
|
-
private readonly tableName;
|
|
30
|
-
private readonly userId;
|
|
14
|
+
private readonly backend;
|
|
31
15
|
private readonly sessionId;
|
|
32
|
-
|
|
33
|
-
constructor(
|
|
16
|
+
lc_namespace: string[];
|
|
17
|
+
constructor(backend: SessionBackend, sessionId: string);
|
|
34
18
|
getMessages(): Promise<BaseMessage[]>;
|
|
35
19
|
addMessage(message: BaseMessage): Promise<void>;
|
|
36
20
|
addMessages(messages: BaseMessage[]): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-adapter.d.ts","sourceRoot":"","sources":["../../src/history/session-adapter.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"session-adapter.d.ts","sourceRoot":"","sources":["../../src/history/session-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,2EAA2E;AAC3E,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACvD,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzC;AAED;;;GAGG;AACH,qBAAa,iCAAkC,SAAQ,0BAA0B;IAI7E,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJ5B,YAAY,WAAkD;gBAG3C,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,MAAM;IAKpC,WAAW,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAIrC,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAGvB"}
|
|
@@ -1,73 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Adapter that exposes a single (userId, sessionId) pair through the
|
|
4
|
-
* LangChain `BaseListChatMessageHistory` contract so the DynamoDB-backed
|
|
5
|
-
* history can be plugged into `RunnableWithMessageHistory` and anywhere else
|
|
6
|
-
* that expects the standard interface.
|
|
7
|
-
*
|
|
8
|
-
* Use {@link DynamoDBChatMessageHistory.forSession} to obtain one; see that
|
|
9
|
-
* method's JSDoc for the LangChain integration pattern.
|
|
10
|
-
*/
|
|
11
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
3
|
exports.DynamoDBSessionChatMessageHistory = void 0;
|
|
13
4
|
const chat_history_1 = require("@langchain/core/chat_history");
|
|
14
|
-
const actions_1 = require("./actions");
|
|
15
5
|
/**
|
|
16
|
-
* Single-session
|
|
17
|
-
*
|
|
18
|
-
* specific `(userId, sessionId)` pair; pass through
|
|
19
|
-
* `RunnableWithMessageHistory` via a `GetSessionHistoryCallable`.
|
|
6
|
+
* Single-session view over a {@link SessionBackend}, implementing LangChain's
|
|
7
|
+
* `BaseListChatMessageHistory` so it can drive `RunnableWithMessageHistory`.
|
|
20
8
|
*/
|
|
21
9
|
class DynamoDBSessionChatMessageHistory extends chat_history_1.BaseListChatMessageHistory {
|
|
22
|
-
|
|
23
|
-
client;
|
|
24
|
-
tableName;
|
|
25
|
-
userId;
|
|
10
|
+
backend;
|
|
26
11
|
sessionId;
|
|
27
|
-
|
|
28
|
-
constructor(
|
|
12
|
+
lc_namespace = ['langchain', 'stores', 'message', 'dynamodb'];
|
|
13
|
+
constructor(backend, sessionId) {
|
|
29
14
|
super();
|
|
30
|
-
this.
|
|
31
|
-
this.
|
|
32
|
-
this.userId = params.userId;
|
|
33
|
-
this.sessionId = params.sessionId;
|
|
34
|
-
this.ttlDays = params.ttlDays;
|
|
15
|
+
this.backend = backend;
|
|
16
|
+
this.sessionId = sessionId;
|
|
35
17
|
}
|
|
36
|
-
|
|
37
|
-
return
|
|
38
|
-
client: this.client,
|
|
39
|
-
tableName: this.tableName,
|
|
40
|
-
userId: this.userId,
|
|
41
|
-
sessionId: this.sessionId,
|
|
42
|
-
});
|
|
18
|
+
getMessages() {
|
|
19
|
+
return this.backend.getMessages(this.sessionId);
|
|
43
20
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
client: this.client,
|
|
47
|
-
tableName: this.tableName,
|
|
48
|
-
userId: this.userId,
|
|
49
|
-
sessionId: this.sessionId,
|
|
50
|
-
message,
|
|
51
|
-
ttlDays: this.ttlDays,
|
|
52
|
-
});
|
|
21
|
+
addMessage(message) {
|
|
22
|
+
return this.backend.addMessages(this.sessionId, [message]);
|
|
53
23
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
client: this.client,
|
|
57
|
-
tableName: this.tableName,
|
|
58
|
-
userId: this.userId,
|
|
59
|
-
sessionId: this.sessionId,
|
|
60
|
-
messages,
|
|
61
|
-
ttlDays: this.ttlDays,
|
|
62
|
-
});
|
|
24
|
+
addMessages(messages) {
|
|
25
|
+
return this.backend.addMessages(this.sessionId, messages);
|
|
63
26
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
client: this.client,
|
|
67
|
-
tableName: this.tableName,
|
|
68
|
-
userId: this.userId,
|
|
69
|
-
sessionId: this.sessionId,
|
|
70
|
-
});
|
|
27
|
+
clear() {
|
|
28
|
+
return this.backend.clear(this.sessionId);
|
|
71
29
|
}
|
|
72
30
|
}
|
|
73
31
|
exports.DynamoDBSessionChatMessageHistory = DynamoDBSessionChatMessageHistory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-adapter.js","sourceRoot":"","sources":["../../src/history/session-adapter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session-adapter.js","sourceRoot":"","sources":["../../src/history/session-adapter.ts"],"names":[],"mappings":";;;AAAA,+DAA0E;AAU1E;;;GAGG;AACH,MAAa,iCAAkC,SAAQ,yCAA0B;IAI5D;IACA;IAJnB,YAAY,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAE9D,YACmB,OAAuB,EACvB,SAAiB;QAElC,KAAK,EAAE,CAAC;QAHS,YAAO,GAAP,OAAO,CAAgB;QACvB,cAAS,GAAT,SAAS,CAAQ;IAGpC,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,UAAU,CAAC,OAAoB;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,WAAW,CAAC,QAAuB;QACjC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;CACF;AAzBD,8EAyBC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { SerializerProtocol } from '@langchain/langgraph-checkpoint';
|
|
2
|
+
import type { PayloadDescriptor } from '../shared/codec/codec';
|
|
3
|
+
import type { BaseAdapterOptions, CodecOptions } from '../shared/options';
|
|
4
|
+
/** Options for {@link DynamoDBChatMessageHistory}. */
|
|
5
|
+
export type DynamoDBChatMessageHistoryOptions = BaseAdapterOptions & CodecOptions & {
|
|
6
|
+
/** Optional serializer override (defaults to the JSON serializer). */
|
|
7
|
+
serde?: SerializerProtocol;
|
|
8
|
+
};
|
|
9
|
+
/** Summary of a stored chat session. */
|
|
10
|
+
export interface SessionMetadata {
|
|
11
|
+
sessionId: string;
|
|
12
|
+
title?: string;
|
|
13
|
+
messageCount: number;
|
|
14
|
+
createdAt: string;
|
|
15
|
+
updatedAt: string;
|
|
16
|
+
}
|
|
17
|
+
/** A single stored chat message item (one per message, ordered by its ULID). */
|
|
18
|
+
export interface ChatMessageItem {
|
|
19
|
+
PK: string;
|
|
20
|
+
SK: string;
|
|
21
|
+
sessionId: string;
|
|
22
|
+
message: PayloadDescriptor;
|
|
23
|
+
ttl?: number;
|
|
24
|
+
}
|
|
25
|
+
/** The per-session metadata item, updated atomically as messages are appended. */
|
|
26
|
+
export interface ChatSessionItem {
|
|
27
|
+
PK: string;
|
|
28
|
+
SK: string;
|
|
29
|
+
sessionId: string;
|
|
30
|
+
messageCount: number;
|
|
31
|
+
title?: string;
|
|
32
|
+
createdAt: string;
|
|
33
|
+
updatedAt: string;
|
|
34
|
+
ttl?: number;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/history/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE1E,sDAAsD;AACtD,MAAM,MAAM,iCAAiC,GAAG,kBAAkB,GAChE,YAAY,GAAG;IACb,sEAAsE;IACtE,KAAK,CAAC,EAAE,kBAAkB,CAAC;CAC5B,CAAC;AAEJ,wCAAwC;AACxC,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,gFAAgF;AAChF,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,kFAAkF;AAClF,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/history/types.ts"],"names":[],"mappings":""}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,14 +1,22 @@
|
|
|
1
|
-
export { DynamoDBSaver } from './checkpointer';
|
|
1
|
+
export { DynamoDBSaver } from './checkpointer/saver';
|
|
2
2
|
export type { DynamoDBSaverOptions } from './checkpointer/types';
|
|
3
|
-
export { DynamoDBStore } from './store';
|
|
3
|
+
export { DynamoDBStore } from './store/store';
|
|
4
4
|
export type { DynamoDBStoreOptions } from './store/types';
|
|
5
|
-
export {
|
|
5
|
+
export type { VectorReconcileResult } from './store/actions/reconcile-vector-index';
|
|
6
|
+
export type { VectorBackend, VectorMatch, VectorRef } from './store/vector-backend';
|
|
7
|
+
export { DynamoDBChatMessageHistory } from './history/chat-message-history';
|
|
8
|
+
export { DynamoDBSessionChatMessageHistory } from './history/session-adapter';
|
|
6
9
|
export type { DynamoDBChatMessageHistoryOptions, SessionMetadata } from './history/types';
|
|
7
|
-
export { DynamoDBFactory } from './factory';
|
|
8
|
-
export {
|
|
9
|
-
export
|
|
10
|
-
export type {
|
|
11
|
-
export
|
|
12
|
-
export
|
|
13
|
-
export {
|
|
10
|
+
export { DynamoDBFactory } from './factory/factory';
|
|
11
|
+
export type { CreateAllOptions, CreatedAdapters, FactoryBaseOptions } from './factory/factory';
|
|
12
|
+
export { DynamoDbLangGraphError } from './shared/errors/base-error';
|
|
13
|
+
export type { ErrorContext } from './shared/errors/base-error';
|
|
14
|
+
export { ErrorCode } from './shared/errors/error-code';
|
|
15
|
+
export { AbortError, BatchWriteIncompleteError, CompensationFailedError, ConflictError, ResultTruncatedError, RetryExhaustedError, ValidationError, } from './shared/errors/errors';
|
|
16
|
+
export type { Logger, LogArgument } from './shared/logging/logger';
|
|
17
|
+
export { redactLogger, redactSecrets } from './shared/logging/redaction';
|
|
18
|
+
export type { BaseAdapterOptions, CodecOptions } from './shared/options';
|
|
19
|
+
export type { TtlOption } from './shared/validation/ttl';
|
|
20
|
+
export type { CompressionConfig } from './shared/codec/compression';
|
|
21
|
+
export type { S3OffloadConfig } from './shared/codec/s3/config';
|
|
14
22
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC1D,YAAY,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AACpF,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,2BAA2B,CAAC;AAC9E,YAAY,EAAE,iCAAiC,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE/F,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,YAAY,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EACL,UAAU,EACV,yBAAyB,EACzB,uBAAuB,EACvB,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEzE,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACzE,YAAY,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,21 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
var
|
|
5
|
-
Object.defineProperty(exports, "DynamoDBSaver", { enumerable: true, get: function () { return
|
|
6
|
-
var store_1 = require("./store");
|
|
3
|
+
exports.redactSecrets = exports.redactLogger = exports.ValidationError = exports.RetryExhaustedError = exports.ResultTruncatedError = exports.ConflictError = exports.CompensationFailedError = exports.BatchWriteIncompleteError = exports.AbortError = exports.ErrorCode = exports.DynamoDbLangGraphError = exports.DynamoDBFactory = exports.DynamoDBSessionChatMessageHistory = exports.DynamoDBChatMessageHistory = exports.DynamoDBStore = exports.DynamoDBSaver = void 0;
|
|
4
|
+
var saver_1 = require("./checkpointer/saver");
|
|
5
|
+
Object.defineProperty(exports, "DynamoDBSaver", { enumerable: true, get: function () { return saver_1.DynamoDBSaver; } });
|
|
6
|
+
var store_1 = require("./store/store");
|
|
7
7
|
Object.defineProperty(exports, "DynamoDBStore", { enumerable: true, get: function () { return store_1.DynamoDBStore; } });
|
|
8
|
-
var
|
|
9
|
-
Object.defineProperty(exports, "DynamoDBChatMessageHistory", { enumerable: true, get: function () { return
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
var chat_message_history_1 = require("./history/chat-message-history");
|
|
9
|
+
Object.defineProperty(exports, "DynamoDBChatMessageHistory", { enumerable: true, get: function () { return chat_message_history_1.DynamoDBChatMessageHistory; } });
|
|
10
|
+
var session_adapter_1 = require("./history/session-adapter");
|
|
11
|
+
Object.defineProperty(exports, "DynamoDBSessionChatMessageHistory", { enumerable: true, get: function () { return session_adapter_1.DynamoDBSessionChatMessageHistory; } });
|
|
12
|
+
var factory_1 = require("./factory/factory");
|
|
12
13
|
Object.defineProperty(exports, "DynamoDBFactory", { enumerable: true, get: function () { return factory_1.DynamoDBFactory; } });
|
|
13
|
-
var
|
|
14
|
-
Object.defineProperty(exports, "
|
|
15
|
-
|
|
16
|
-
Object.defineProperty(exports, "
|
|
17
|
-
|
|
18
|
-
Object.defineProperty(exports, "
|
|
19
|
-
|
|
20
|
-
Object.defineProperty(exports, "
|
|
14
|
+
var base_error_1 = require("./shared/errors/base-error");
|
|
15
|
+
Object.defineProperty(exports, "DynamoDbLangGraphError", { enumerable: true, get: function () { return base_error_1.DynamoDbLangGraphError; } });
|
|
16
|
+
var error_code_1 = require("./shared/errors/error-code");
|
|
17
|
+
Object.defineProperty(exports, "ErrorCode", { enumerable: true, get: function () { return error_code_1.ErrorCode; } });
|
|
18
|
+
var errors_1 = require("./shared/errors/errors");
|
|
19
|
+
Object.defineProperty(exports, "AbortError", { enumerable: true, get: function () { return errors_1.AbortError; } });
|
|
20
|
+
Object.defineProperty(exports, "BatchWriteIncompleteError", { enumerable: true, get: function () { return errors_1.BatchWriteIncompleteError; } });
|
|
21
|
+
Object.defineProperty(exports, "CompensationFailedError", { enumerable: true, get: function () { return errors_1.CompensationFailedError; } });
|
|
22
|
+
Object.defineProperty(exports, "ConflictError", { enumerable: true, get: function () { return errors_1.ConflictError; } });
|
|
23
|
+
Object.defineProperty(exports, "ResultTruncatedError", { enumerable: true, get: function () { return errors_1.ResultTruncatedError; } });
|
|
24
|
+
Object.defineProperty(exports, "RetryExhaustedError", { enumerable: true, get: function () { return errors_1.RetryExhaustedError; } });
|
|
25
|
+
Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return errors_1.ValidationError; } });
|
|
26
|
+
var redaction_1 = require("./shared/logging/redaction");
|
|
27
|
+
Object.defineProperty(exports, "redactLogger", { enumerable: true, get: function () { return redaction_1.redactLogger; } });
|
|
28
|
+
Object.defineProperty(exports, "redactSecrets", { enumerable: true, get: function () { return redaction_1.redactSecrets; } });
|
|
21
29
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,8CAAqD;AAA5C,sGAAA,aAAa,OAAA;AAEtB,uCAA8C;AAArC,sGAAA,aAAa,OAAA;AAItB,uEAA4E;AAAnE,kIAAA,0BAA0B,OAAA;AACnC,6DAA8E;AAArE,oIAAA,iCAAiC,OAAA;AAE1C,6CAAoD;AAA3C,0GAAA,eAAe,OAAA;AAGxB,yDAAoE;AAA3D,oHAAA,sBAAsB,OAAA;AAE/B,yDAAuD;AAA9C,uGAAA,SAAS,OAAA;AAClB,iDAQgC;AAP9B,oGAAA,UAAU,OAAA;AACV,mHAAA,yBAAyB,OAAA;AACzB,iHAAA,uBAAuB,OAAA;AACvB,uGAAA,aAAa,OAAA;AACb,8GAAA,oBAAoB,OAAA;AACpB,6GAAA,mBAAmB,OAAA;AACnB,yGAAA,eAAe,OAAA;AAIjB,wDAAyE;AAAhE,yGAAA,YAAY,OAAA;AAAE,0GAAA,aAAa,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clock.d.ts","sourceRoot":"","sources":["../../src/shared/clock.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,wBAAgB,MAAM,IAAI,MAAM,CAE/B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.nowIso = nowIso;
|
|
4
|
+
/** Current time as an ISO-8601 string, derived from the (test-freezable) clock. */
|
|
5
|
+
function nowIso() {
|
|
6
|
+
return new Date(Date.now()).toISOString();
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=clock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clock.js","sourceRoot":"","sources":["../../src/shared/clock.ts"],"names":[],"mappings":";;AACA,wBAEC;AAHD,mFAAmF;AACnF,SAAgB,MAAM;IACpB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAC5C,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { SerializerProtocol } from '@langchain/langgraph-checkpoint';
|
|
2
|
+
import { CompressionConfig } from './compression';
|
|
3
|
+
import type { S3Offloader } from './s3/offloader';
|
|
4
|
+
/** Where an encoded payload lives. */
|
|
5
|
+
export declare enum PayloadLocation {
|
|
6
|
+
INLINE = "INLINE",
|
|
7
|
+
S3 = "S3"
|
|
8
|
+
}
|
|
9
|
+
/** A payload stored inline as bytes in the DynamoDB item. */
|
|
10
|
+
interface InlinePayloadDescriptor {
|
|
11
|
+
location: PayloadLocation.INLINE;
|
|
12
|
+
serdeType: string;
|
|
13
|
+
compressed: boolean;
|
|
14
|
+
bytes: Uint8Array;
|
|
15
|
+
}
|
|
16
|
+
/** A payload offloaded to S3, referenced by key. */
|
|
17
|
+
interface S3PayloadDescriptor {
|
|
18
|
+
location: PayloadLocation.S3;
|
|
19
|
+
serdeType: string;
|
|
20
|
+
compressed: boolean;
|
|
21
|
+
s3Key: string;
|
|
22
|
+
}
|
|
23
|
+
/** The result of encoding a payload. */
|
|
24
|
+
export type PayloadDescriptor = InlinePayloadDescriptor | S3PayloadDescriptor;
|
|
25
|
+
/** Collaborators for the codec. */
|
|
26
|
+
export interface CodecDeps {
|
|
27
|
+
serde: SerializerProtocol;
|
|
28
|
+
compression?: CompressionConfig;
|
|
29
|
+
offloader?: S3Offloader;
|
|
30
|
+
}
|
|
31
|
+
/** Options controlling where an offloaded payload's S3 key is built from. */
|
|
32
|
+
export interface EncodeOptions {
|
|
33
|
+
keyParts: readonly string[];
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Encode `value`: serialize via serde, compress (if configured), then offload
|
|
37
|
+
* to S3 when the compressed bytes exceed the offloader's threshold. Returns a
|
|
38
|
+
* descriptor recording how to read it back.
|
|
39
|
+
*/
|
|
40
|
+
export declare function encodePayload<T>(value: T, deps: CodecDeps, options: EncodeOptions): Promise<PayloadDescriptor>;
|
|
41
|
+
/** Decode a {@link PayloadDescriptor} produced by {@link encodePayload}. */
|
|
42
|
+
export declare function decodePayload<T>(descriptor: PayloadDescriptor, deps: CodecDeps): Promise<T>;
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=codec.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codec.d.ts","sourceRoot":"","sources":["../../../src/shared/codec/codec.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,OAAO,EAAE,iBAAiB,EAA2C,MAAM,eAAe,CAAC;AAC3F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAElD,sCAAsC;AACtC,oBAAY,eAAe;IACzB,MAAM,WAAW;IACjB,EAAE,OAAO;CACV;AAED,6DAA6D;AAC7D,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,UAAU,CAAC;CACnB;AAED,oDAAoD;AACpD,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,eAAe,CAAC,EAAE,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wCAAwC;AACxC,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,GAAG,mBAAmB,CAAC;AAE9E,mCAAmC;AACnC,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,kBAAkB,CAAC;IAC1B,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,SAAS,CAAC,EAAE,WAAW,CAAC;CACzB;AAED,6EAA6E;AAC7E,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AASD;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,CAAC,EACnC,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,iBAAiB,CAAC,CAW5B;AAED,4EAA4E;AAC5E,wBAAsB,aAAa,CAAC,CAAC,EAAE,UAAU,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAWjG"}
|