@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.
- package/README.md +224 -512
- 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 @@
|
|
|
1
|
+
{"version":3,"file":"semantic-search.d.ts","sourceRoot":"","sources":["../../../src/store/internal/semantic-search.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE5C,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAYjE;AAED,gFAAgF;AAChF,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAOtF;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EAChC,cAAc,CAAC,EAAE,MAAM,EAAE,GACxB,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAK/B"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.cosineSimilarity = cosineSimilarity;
|
|
4
|
+
exports.extractText = extractText;
|
|
5
|
+
exports.embedValue = embedValue;
|
|
6
|
+
const langgraph_checkpoint_1 = require("@langchain/langgraph-checkpoint");
|
|
7
|
+
/** Cosine similarity of two equal-length vectors; 0 for zero/mismatched vectors. */
|
|
8
|
+
function cosineSimilarity(a, b) {
|
|
9
|
+
if (a.length !== b.length)
|
|
10
|
+
return 0;
|
|
11
|
+
let dot = 0;
|
|
12
|
+
let normA = 0;
|
|
13
|
+
let normB = 0;
|
|
14
|
+
for (let i = 0; i < a.length; i++) {
|
|
15
|
+
dot += a[i] * b[i];
|
|
16
|
+
normA += a[i] * a[i];
|
|
17
|
+
normB += b[i] * b[i];
|
|
18
|
+
}
|
|
19
|
+
if (normA === 0 || normB === 0)
|
|
20
|
+
return 0;
|
|
21
|
+
return dot / (Math.sqrt(normA) * Math.sqrt(normB));
|
|
22
|
+
}
|
|
23
|
+
/** Extract and join the indexable text of a value for the configured fields. */
|
|
24
|
+
function extractText(value, fields) {
|
|
25
|
+
const parts = [];
|
|
26
|
+
for (const field of fields) {
|
|
27
|
+
if (field === '$')
|
|
28
|
+
parts.push(JSON.stringify(value));
|
|
29
|
+
else
|
|
30
|
+
parts.push(...(0, langgraph_checkpoint_1.getTextAtPath)(value, field));
|
|
31
|
+
}
|
|
32
|
+
return parts.join(' ');
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Embed a value for indexing, or undefined when indexing is off or the text is
|
|
36
|
+
* empty. `fieldsOverride` (from a put's `index` option) takes precedence over
|
|
37
|
+
* the store's configured fields.
|
|
38
|
+
*/
|
|
39
|
+
async function embedValue(context, value, fieldsOverride) {
|
|
40
|
+
if (!context.index)
|
|
41
|
+
return undefined;
|
|
42
|
+
const text = extractText(value, fieldsOverride ?? context.index.fields ?? ['$']);
|
|
43
|
+
if (text.length === 0)
|
|
44
|
+
return undefined;
|
|
45
|
+
return context.index.embeddings.embedQuery(text);
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=semantic-search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"semantic-search.js","sourceRoot":"","sources":["../../../src/store/internal/semantic-search.ts"],"names":[],"mappings":";;AAMA,4CAYC;AAGD,kCAOC;AAOD,gCASC;AA5CD,0EAAgE;AAKhE,oFAAoF;AACpF,SAAgB,gBAAgB,CAAC,CAAW,EAAE,CAAW;IACvD,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QAAE,OAAO,CAAC,CAAC;IACpC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACnB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACzC,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,gFAAgF;AAChF,SAAgB,WAAW,CAAC,KAAgC,EAAE,MAAgB;IAC5E,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,KAAK,GAAG;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;;YAChD,KAAK,CAAC,IAAI,CAAC,GAAG,IAAA,oCAAa,EAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;;;GAIG;AACI,KAAK,UAAU,UAAU,CAC9B,OAAqB,EACrB,KAAgC,EAChC,cAAyB;IAEzB,IAAI,CAAC,OAAO,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IACrC,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,EAAE,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACjF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { DynamoDBClient } from '@aws-sdk/client-dynamodb';
|
|
2
|
+
import type { DynamoDBDocument } from '@aws-sdk/lib-dynamodb';
|
|
3
|
+
import type { IndexConfig, 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 { DynamoDBStoreOptions } from '../types';
|
|
9
|
+
import type { VectorBackend } from '../vector-backend';
|
|
10
|
+
/** Resolved collaborators shared by every store action. */
|
|
11
|
+
export interface StoreContext {
|
|
12
|
+
client: DynamoDBDocument;
|
|
13
|
+
tableName: string;
|
|
14
|
+
serde: SerializerProtocol;
|
|
15
|
+
compression?: CompressionConfig;
|
|
16
|
+
offloader?: S3Offloader;
|
|
17
|
+
ttl?: TtlOption;
|
|
18
|
+
logger: Logger;
|
|
19
|
+
index?: IndexConfig;
|
|
20
|
+
vectorBackend?: VectorBackend;
|
|
21
|
+
maxSearchCandidates: number;
|
|
22
|
+
}
|
|
23
|
+
/** Result of wiring up a store from its options. */
|
|
24
|
+
export interface StoreSetup {
|
|
25
|
+
context: StoreContext;
|
|
26
|
+
ddbClient: DynamoDBClient | undefined;
|
|
27
|
+
ownsClient: boolean;
|
|
28
|
+
}
|
|
29
|
+
/** Resolve the client, optional S3 offloader, serializer, and index config. */
|
|
30
|
+
export declare function setUpStore(options: DynamoDBStoreOptions): StoreSetup;
|
|
31
|
+
//# sourceMappingURL=setup.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/store/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,WAAW,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAEvF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAG9D,OAAO,EAAE,KAAK,MAAM,EAAiB,MAAM,6BAA6B,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,2DAA2D;AAC3D,MAAM,WAAW,YAAY;IAC3B,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,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,oDAAoD;AACpD,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,cAAc,GAAG,SAAS,CAAC;IACtC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,OAAO,EAAE,oBAAoB,GAAG,UAAU,CAkBpE"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setUpStore = setUpStore;
|
|
4
|
+
const json_serde_1 = require("../../shared/codec/json-serde");
|
|
5
|
+
const offloader_1 = require("../../shared/codec/s3/offloader");
|
|
6
|
+
const constants_1 = require("../../shared/constants");
|
|
7
|
+
const client_1 = require("../../shared/dynamodb/client");
|
|
8
|
+
const logger_1 = require("../../shared/logging/logger");
|
|
9
|
+
/** Resolve the client, optional S3 offloader, serializer, and index config. */
|
|
10
|
+
function setUpStore(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
|
+
index: options.index,
|
|
22
|
+
vectorBackend: options.vectorBackend,
|
|
23
|
+
maxSearchCandidates: options.maxSearchCandidates ?? constants_1.DEFAULT_MAX_SEARCH_CANDIDATES,
|
|
24
|
+
},
|
|
25
|
+
ddbClient: resolved.ddbClient,
|
|
26
|
+
ownsClient: resolved.ownsClient,
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/store/internal/setup.ts"],"names":[],"mappings":";;AAoCA,gCAkBC;AAjDD,8DAA2D;AAC3D,+DAA8D;AAC9D,sDAAuE;AACvE,yDAAqE;AACrE,wDAAyE;AA0BzE,+EAA+E;AAC/E,SAAgB,UAAU,CAAC,OAA6B;IACtD,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,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,yCAA6B;SAClF;QACD,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,UAAU,EAAE,QAAQ,CAAC,UAAU;KAChC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Validate search/listNamespaces paging is non-negative integers. */
|
|
2
|
+
export declare function validatePaging(offset: number, limit: number): void;
|
|
3
|
+
/** Validate the namespace is non-empty and each element is separator-free. */
|
|
4
|
+
export declare function validateNamespace(namespace: string[]): void;
|
|
5
|
+
/** Validate an item key is a non-empty, separator-free string. */
|
|
6
|
+
export declare function validateKey(key: string): void;
|
|
7
|
+
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../../src/store/internal/validation.ts"],"names":[],"mappings":"AAQA,sEAAsE;AACtE,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAGlE;AAED,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAM3D;AAED,kEAAkE;AAClE,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAG7C"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.validatePaging = validatePaging;
|
|
4
|
+
exports.validateNamespace = validateNamespace;
|
|
5
|
+
exports.validateKey = validateKey;
|
|
6
|
+
const primitives_1 = require("../../shared/validation/primitives");
|
|
7
|
+
const keys_1 = require("./keys");
|
|
8
|
+
/** Validate search/listNamespaces paging is non-negative integers. */
|
|
9
|
+
function validatePaging(offset, limit) {
|
|
10
|
+
(0, primitives_1.validateInteger)(offset, 'offset', { min: 0 });
|
|
11
|
+
(0, primitives_1.validateInteger)(limit, 'limit', { min: 0 });
|
|
12
|
+
}
|
|
13
|
+
/** Validate the namespace is non-empty and each element is separator-free. */
|
|
14
|
+
function validateNamespace(namespace) {
|
|
15
|
+
(0, primitives_1.validateNonEmptyArray)(namespace, 'namespace');
|
|
16
|
+
for (const element of namespace) {
|
|
17
|
+
(0, primitives_1.validateNonEmptyString)(element, 'namespace element');
|
|
18
|
+
(0, primitives_1.assertNoSeparator)(element, keys_1.NAMESPACE_SEPARATOR, 'namespace element');
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/** Validate an item key is a non-empty, separator-free string. */
|
|
22
|
+
function validateKey(key) {
|
|
23
|
+
(0, primitives_1.validateNonEmptyString)(key, 'key');
|
|
24
|
+
(0, primitives_1.assertNoSeparator)(key, keys_1.NAMESPACE_SEPARATOR, 'key');
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../../../src/store/internal/validation.ts"],"names":[],"mappings":";;AASA,wCAGC;AAGD,8CAMC;AAGD,kCAGC;AA3BD,mEAK4C;AAC5C,iCAA6C;AAE7C,sEAAsE;AACtE,SAAgB,cAAc,CAAC,MAAc,EAAE,KAAa;IAC1D,IAAA,4BAAe,EAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9C,IAAA,4BAAe,EAAC,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,8EAA8E;AAC9E,SAAgB,iBAAiB,CAAC,SAAmB;IACnD,IAAA,kCAAqB,EAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAC9C,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;QAChC,IAAA,mCAAsB,EAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;QACrD,IAAA,8BAAiB,EAAC,OAAO,EAAE,0BAAmB,EAAE,mBAAmB,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AAED,kEAAkE;AAClE,SAAgB,WAAW,CAAC,GAAW;IACrC,IAAA,mCAAsB,EAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACnC,IAAA,8BAAiB,EAAC,GAAG,EAAE,0BAAmB,EAAE,KAAK,CAAC,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { BaseStore, type Operation, type OperationResults } from '@langchain/langgraph-checkpoint';
|
|
2
|
+
import { type VectorReconcileResult } from './actions/reconcile-vector-index';
|
|
3
|
+
import type { DynamoDBStoreOptions } from './types';
|
|
4
|
+
/**
|
|
5
|
+
* DynamoDB-backed LangGraph store for long-term memory with optional semantic
|
|
6
|
+
* search. A thin orchestrator: the base class's get/put/search/delete/
|
|
7
|
+
* listNamespaces all funnel into {@link batch}, which dispatches each operation.
|
|
8
|
+
*/
|
|
9
|
+
export declare class DynamoDBStore extends BaseStore {
|
|
10
|
+
private readonly context;
|
|
11
|
+
private readonly ownsClient;
|
|
12
|
+
private readonly ddbClient;
|
|
13
|
+
constructor(options: DynamoDBStoreOptions);
|
|
14
|
+
private dispatch;
|
|
15
|
+
batch<Op extends Operation[]>(operations: Op): Promise<OperationResults<Op>>;
|
|
16
|
+
/**
|
|
17
|
+
* Repair the configured vector backend against the canonical items under
|
|
18
|
+
* `namespacePrefix`. A maintenance tool; see {@link reconcileVectorIndex}.
|
|
19
|
+
*/
|
|
20
|
+
reconcileVectorIndex(namespacePrefix: string[]): Promise<VectorReconcileResult>;
|
|
21
|
+
/** Release owned resources (the underlying client and any S3 client). */
|
|
22
|
+
destroy(): void;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EAET,KAAK,SAAS,EACd,KAAK,gBAAgB,EAEtB,MAAM,iCAAiC,CAAC;AAKzC,OAAO,EAEL,KAAK,qBAAqB,EAC3B,MAAM,kCAAkC,CAAC;AAG1C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAIpD;;;;GAIG;AACH,qBAAa,aAAc,SAAQ,SAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAe;IACvC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAU;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA6C;gBAE3D,OAAO,EAAE,oBAAoB;IAQzC,OAAO,CAAC,QAAQ;IAOV,KAAK,CAAC,EAAE,SAAS,SAAS,EAAE,EAAE,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IAQlF;;;OAGG;IACH,oBAAoB,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAI/E,yEAAyE;IACzE,OAAO,IAAI,IAAI;CAIhB"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DynamoDBStore = void 0;
|
|
4
|
+
const langgraph_checkpoint_1 = require("@langchain/langgraph-checkpoint");
|
|
5
|
+
const get_1 = require("./actions/get");
|
|
6
|
+
const list_namespaces_1 = require("./actions/list-namespaces");
|
|
7
|
+
const put_1 = require("./actions/put");
|
|
8
|
+
const reconcile_vector_index_1 = require("./actions/reconcile-vector-index");
|
|
9
|
+
const search_1 = require("./actions/search");
|
|
10
|
+
const setup_1 = require("./internal/setup");
|
|
11
|
+
/**
|
|
12
|
+
* DynamoDB-backed LangGraph store for long-term memory with optional semantic
|
|
13
|
+
* search. A thin orchestrator: the base class's get/put/search/delete/
|
|
14
|
+
* listNamespaces all funnel into {@link batch}, which dispatches each operation.
|
|
15
|
+
*/
|
|
16
|
+
class DynamoDBStore extends langgraph_checkpoint_1.BaseStore {
|
|
17
|
+
context;
|
|
18
|
+
ownsClient;
|
|
19
|
+
ddbClient;
|
|
20
|
+
constructor(options) {
|
|
21
|
+
super();
|
|
22
|
+
const setup = (0, setup_1.setUpStore)(options);
|
|
23
|
+
this.context = setup.context;
|
|
24
|
+
this.ownsClient = setup.ownsClient;
|
|
25
|
+
this.ddbClient = setup.ddbClient;
|
|
26
|
+
}
|
|
27
|
+
dispatch(operation) {
|
|
28
|
+
if ('namespacePrefix' in operation)
|
|
29
|
+
return (0, search_1.searchItems)(this.context, operation);
|
|
30
|
+
if ('value' in operation)
|
|
31
|
+
return (0, put_1.putItem)(this.context, operation);
|
|
32
|
+
if ('key' in operation)
|
|
33
|
+
return (0, get_1.getItem)(this.context, operation.namespace, operation.key);
|
|
34
|
+
return (0, list_namespaces_1.listNamespaces)(this.context, operation);
|
|
35
|
+
}
|
|
36
|
+
async batch(operations) {
|
|
37
|
+
const results = [];
|
|
38
|
+
for (const operation of operations) {
|
|
39
|
+
results.push(await this.dispatch(operation));
|
|
40
|
+
}
|
|
41
|
+
return results;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Repair the configured vector backend against the canonical items under
|
|
45
|
+
* `namespacePrefix`. A maintenance tool; see {@link reconcileVectorIndex}.
|
|
46
|
+
*/
|
|
47
|
+
reconcileVectorIndex(namespacePrefix) {
|
|
48
|
+
return (0, reconcile_vector_index_1.reconcileVectorIndex)(this.context, namespacePrefix);
|
|
49
|
+
}
|
|
50
|
+
/** Release owned resources (the underlying client and any S3 client). */
|
|
51
|
+
destroy() {
|
|
52
|
+
this.context.offloader?.destroy();
|
|
53
|
+
if (this.ownsClient)
|
|
54
|
+
this.ddbClient?.destroy();
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.DynamoDBStore = DynamoDBStore;
|
|
58
|
+
//# sourceMappingURL=store.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/store/store.ts"],"names":[],"mappings":";;;AAAA,0EAMyC;AAEzC,uCAAwC;AACxC,+DAA2D;AAC3D,uCAAwC;AACxC,6EAG0C;AAC1C,6CAA+C;AAC/C,4CAAiE;AAKjE;;;;GAIG;AACH,MAAa,aAAc,SAAQ,gCAAS;IACzB,OAAO,CAAe;IACtB,UAAU,CAAU;IACpB,SAAS,CAA6C;IAEvE,YAAY,OAA6B;QACvC,KAAK,EAAE,CAAC;QACR,MAAM,KAAK,GAAG,IAAA,kBAAU,EAAC,OAAO,CAAC,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IACnC,CAAC;IAEO,QAAQ,CAAC,SAAoB;QACnC,IAAI,iBAAiB,IAAI,SAAS;YAAE,OAAO,IAAA,oBAAW,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAChF,IAAI,OAAO,IAAI,SAAS;YAAE,OAAO,IAAA,aAAO,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,KAAK,IAAI,SAAS;YAAE,OAAO,IAAA,aAAO,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;QACzF,OAAO,IAAA,gCAAc,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,KAAK,CAAyB,UAAc;QAChD,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,OAA+B,CAAC;IACzC,CAAC;IAED;;;OAGG;IACH,oBAAoB,CAAC,eAAyB;QAC5C,OAAO,IAAA,6CAA0B,EAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IACnE,CAAC;IAED,yEAAyE;IACzE,OAAO;QACL,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;IACjD,CAAC;CACF;AAzCD,sCAyCC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { IndexConfig, SerializerProtocol } from '@langchain/langgraph-checkpoint';
|
|
2
|
+
import type { PayloadDescriptor } from '../shared/codec/codec';
|
|
3
|
+
import type { BaseAdapterOptions, CodecOptions } from '../shared/options';
|
|
4
|
+
import type { VectorBackend } from './vector-backend';
|
|
5
|
+
/** Options for {@link DynamoDBStore}. */
|
|
6
|
+
export type DynamoDBStoreOptions = BaseAdapterOptions & CodecOptions & {
|
|
7
|
+
/** Optional semantic-search index configuration (embeddings + fields). */
|
|
8
|
+
index?: IndexConfig;
|
|
9
|
+
/** Optional serializer override (defaults to the JSON serializer). */
|
|
10
|
+
serde?: SerializerProtocol;
|
|
11
|
+
/** Optional external vector index; when set, similarity search delegates to it. */
|
|
12
|
+
vectorBackend?: VectorBackend;
|
|
13
|
+
/** Max candidates the in-DB ranker will score before erroring (default 1000). */
|
|
14
|
+
maxSearchCandidates?: number;
|
|
15
|
+
};
|
|
16
|
+
/** The DynamoDB item backing a single stored value. */
|
|
17
|
+
export interface StoreItemRecord {
|
|
18
|
+
PK: string;
|
|
19
|
+
SK: string;
|
|
20
|
+
namespace: string[];
|
|
21
|
+
key: string;
|
|
22
|
+
value: PayloadDescriptor;
|
|
23
|
+
createdAt: string;
|
|
24
|
+
updatedAt: string;
|
|
25
|
+
embedding?: number[];
|
|
26
|
+
ttl?: number;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/store/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAEvF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,yCAAyC;AACzC,MAAM,MAAM,oBAAoB,GAAG,kBAAkB,GACnD,YAAY,GAAG;IACb,0EAA0E;IAC1E,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,sEAAsE;IACtE,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,mFAAmF;IACnF,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,iFAAiF;IACjF,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEJ,uDAAuD;AACvD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,iBAAiB,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/store/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/** A vector-similarity match returned by an external {@link VectorBackend}. */
|
|
2
|
+
export interface VectorMatch {
|
|
3
|
+
namespace: string[];
|
|
4
|
+
key: string;
|
|
5
|
+
score: number;
|
|
6
|
+
}
|
|
7
|
+
/** A stored vector's location, returned by {@link VectorBackend.listKeys}. */
|
|
8
|
+
export interface VectorRef {
|
|
9
|
+
namespace: string[];
|
|
10
|
+
key: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Pluggable vector index. When provided to the store, embeddings live here and
|
|
14
|
+
* similarity search is delegated to it; DynamoDB still holds the canonical item.
|
|
15
|
+
*/
|
|
16
|
+
export interface VectorBackend {
|
|
17
|
+
upsert(namespace: string[], key: string, vector: number[]): Promise<void>;
|
|
18
|
+
query(namespacePrefix: string[], queryVector: number[], topK: number): Promise<VectorMatch[]>;
|
|
19
|
+
delete(namespace: string[], key: string): Promise<void>;
|
|
20
|
+
/**
|
|
21
|
+
* Optionally enumerate every stored vector under `namespacePrefix`. Enables
|
|
22
|
+
* `reconcileVectorIndex` to prune vectors orphaned by a lost delete. Omit it
|
|
23
|
+
* when the backend cannot enumerate — reconciliation then re-pushes only.
|
|
24
|
+
*/
|
|
25
|
+
listKeys?(namespacePrefix: string[]): Promise<VectorRef[]>;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=vector-backend.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vector-backend.d.ts","sourceRoot":"","sources":["../../src/store/vector-backend.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,8EAA8E;AAC9E,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1E,KAAK,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC9F,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD;;;;OAIG;IACH,QAAQ,CAAC,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;CAC5D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"vector-backend.js","sourceRoot":"","sources":["../../src/store/vector-backend.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@farukada/aws-langgraph-dynamodb-ts",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "AWS DynamoDB implementation for LangGraph Memory Store and Checkpoint Saver in TypeScript",
|
|
6
6
|
"keywords": [
|
|
@@ -37,14 +37,17 @@
|
|
|
37
37
|
"scripts": {
|
|
38
38
|
"build": "tsc",
|
|
39
39
|
"typecheck": "tsc --noEmit",
|
|
40
|
-
"lint": "eslint \"src/**/*.ts\" \"test/**/*.ts\"",
|
|
41
|
-
"lint:fix": "eslint \"src/**/*.ts\" \"test/**/*.ts\" --fix",
|
|
40
|
+
"lint": "eslint \"src/**/*.ts\" \"test/**/*.ts\" \"*.config.ts\" --no-error-on-unmatched-pattern",
|
|
41
|
+
"lint:fix": "eslint \"src/**/*.ts\" \"test/**/*.ts\" \"*.config.ts\" --fix --no-error-on-unmatched-pattern",
|
|
42
42
|
"test": "jest",
|
|
43
43
|
"test:integration": "node --experimental-vm-modules node_modules/jest/bin/jest.js --config jest.integration.config.ts",
|
|
44
44
|
"test:integration:up": "docker compose up -d",
|
|
45
45
|
"test:integration:down": "docker compose down",
|
|
46
|
-
"test:
|
|
47
|
-
"test:
|
|
46
|
+
"test:conformance": "node --experimental-vm-modules node_modules/jest/bin/jest.js --config jest.conformance.config.ts",
|
|
47
|
+
"test:aws": "node --experimental-vm-modules node_modules/jest/bin/jest.js --config jest.aws.config.ts",
|
|
48
|
+
"test:static": "jest test/static",
|
|
49
|
+
"test:package-smoke": "node --test test/package-smoke/smoke.test.mjs",
|
|
50
|
+
"prepublishOnly": "npm run typecheck && npm run lint && npm run build && npm test",
|
|
48
51
|
"docs": "typedoc",
|
|
49
52
|
"docs:watch": "typedoc --watch",
|
|
50
53
|
"unused": "knip",
|
|
@@ -54,16 +57,14 @@
|
|
|
54
57
|
"cpd:test": "jscpd ./test --threshold 2 --min-lines 3 --reporters console --verbose --format typescript,javascript"
|
|
55
58
|
},
|
|
56
59
|
"dependencies": {
|
|
57
|
-
"@aws-sdk/client-dynamodb": "^3.
|
|
58
|
-
"@aws-sdk/lib-dynamodb": "^3.
|
|
59
|
-
"@langchain/aws": "^1.3.9",
|
|
60
|
+
"@aws-sdk/client-dynamodb": "^3.1057.0",
|
|
61
|
+
"@aws-sdk/lib-dynamodb": "^3.1057.0",
|
|
60
62
|
"@langchain/core": "^1.1.48",
|
|
61
|
-
"@langchain/langgraph": "^1.3
|
|
62
|
-
"@langchain/langgraph-checkpoint": "^1.0.2",
|
|
63
|
-
"jsonpath-plus": "^10.4.0"
|
|
63
|
+
"@langchain/langgraph-checkpoint": "^1.0.3"
|
|
64
64
|
},
|
|
65
65
|
"peerDependencies": {
|
|
66
|
-
"@aws-sdk/client-s3": "^3.900.0"
|
|
66
|
+
"@aws-sdk/client-s3": "^3.900.0",
|
|
67
|
+
"@langchain/langgraph": "^1.3.2"
|
|
67
68
|
},
|
|
68
69
|
"overrides": {
|
|
69
70
|
"uuid": ">=11.1.1"
|
|
@@ -74,23 +75,21 @@
|
|
|
74
75
|
}
|
|
75
76
|
},
|
|
76
77
|
"devDependencies": {
|
|
77
|
-
"@aws-sdk/client-
|
|
78
|
-
"@aws-sdk/client-s3": "^3.1054.0",
|
|
78
|
+
"@aws-sdk/client-s3": "^3.1057.0",
|
|
79
79
|
"@eslint/js": "^10.0.1",
|
|
80
|
-
"@
|
|
81
|
-
"@stryker-mutator/jest-runner": "9.6.1",
|
|
82
|
-
"@stryker-mutator/typescript-checker": "9.6.1",
|
|
80
|
+
"@langchain/aws": "^1.3.9",
|
|
83
81
|
"@types/jest": "^30.0.0",
|
|
84
82
|
"@types/node": "^25.9.1",
|
|
85
83
|
"aws-sdk-client-mock": "^4.1.0",
|
|
86
84
|
"depcheck": "^1.4.7",
|
|
87
|
-
"eslint": "^10.4.
|
|
85
|
+
"eslint": "^10.4.1",
|
|
88
86
|
"eslint-config-prettier": "^10.1.8",
|
|
89
87
|
"eslint-plugin-no-instanceof": "^1.0.1",
|
|
90
88
|
"eslint-plugin-perfectionist": "^5.9.0",
|
|
91
|
-
"eslint-plugin-prettier": "^5.5.
|
|
89
|
+
"eslint-plugin-prettier": "^5.5.6",
|
|
92
90
|
"eslint-plugin-unused-imports": "^4.4.1",
|
|
93
|
-
"
|
|
91
|
+
"expect-type": "^1.3.0",
|
|
92
|
+
"fast-check": "^4.8.0",
|
|
94
93
|
"jest": "^30.4.2",
|
|
95
94
|
"jest-sonar": "^0.2.16",
|
|
96
95
|
"jiti": "^2.7.0",
|
|
@@ -98,12 +97,12 @@
|
|
|
98
97
|
"knip": "^6.14.2",
|
|
99
98
|
"prettier": "^3.8.3",
|
|
100
99
|
"ts-jest": "^29.4.11",
|
|
101
|
-
"ts-loader": "^9.5.7",
|
|
102
100
|
"ts-node": "^10.9.2",
|
|
103
101
|
"typedoc": "^0.28.19",
|
|
104
102
|
"typedoc-plugin-markdown": "^4.11.0",
|
|
105
103
|
"typescript": "^6.0.3",
|
|
106
|
-
"typescript-eslint": "^8.60.0"
|
|
104
|
+
"typescript-eslint": "^8.60.0",
|
|
105
|
+
"zod": "^4.3.6"
|
|
107
106
|
},
|
|
108
107
|
"prettier": {
|
|
109
108
|
"semi": true,
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/checkpointer/actions/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./delete-thread"), exports);
|
|
18
|
-
__exportStar(require("./get-tuple"), exports);
|
|
19
|
-
__exportStar(require("./put"), exports);
|
|
20
|
-
__exportStar(require("./put-writes"), exports);
|
|
21
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/checkpointer/actions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAAgC;AAChC,8CAA4B;AAC5B,wCAAsB;AACtB,+CAA6B"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { ValidatedConfigurable } from '../types';
|
|
2
|
-
/**
|
|
3
|
-
* Validate and extract configurable parameters
|
|
4
|
-
*
|
|
5
|
-
* @param configurable - Configurable object from RunnableConfig
|
|
6
|
-
* @returns Validated configurable parameters
|
|
7
|
-
* @throws CheckpointerValidationError if validation fails
|
|
8
|
-
*/
|
|
9
|
-
export declare const validateConfigurable: (configurable: Record<string, unknown> | undefined) => ValidatedConfigurable;
|
|
10
|
-
//# sourceMappingURL=validate-configurable.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validate-configurable.d.ts","sourceRoot":"","sources":["../../../src/checkpointer/actions/validate-configurable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,UAAU,CAAC;AAQjD;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,GAC/B,cAAc,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,KAChD,qBA8BF,CAAC"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.validateConfigurable = void 0;
|
|
4
|
-
const utils_1 = require("../utils");
|
|
5
|
-
/**
|
|
6
|
-
* Validate and extract configurable parameters
|
|
7
|
-
*
|
|
8
|
-
* @param configurable - Configurable object from RunnableConfig
|
|
9
|
-
* @returns Validated configurable parameters
|
|
10
|
-
* @throws CheckpointerValidationError if validation fails
|
|
11
|
-
*/
|
|
12
|
-
const validateConfigurable = (configurable) => {
|
|
13
|
-
if (!configurable) {
|
|
14
|
-
throw new utils_1.CheckpointerValidationError('Missing configurable');
|
|
15
|
-
}
|
|
16
|
-
const { thread_id, checkpoint_ns, checkpoint_id } = configurable;
|
|
17
|
-
// Validate thread_id (required)
|
|
18
|
-
if (typeof thread_id !== 'string') {
|
|
19
|
-
throw new utils_1.CheckpointerValidationError('thread_id must be a string');
|
|
20
|
-
}
|
|
21
|
-
(0, utils_1.validateThreadId)(thread_id);
|
|
22
|
-
// Validate checkpoint_ns (optional)
|
|
23
|
-
if (checkpoint_ns !== undefined && typeof checkpoint_ns !== 'string') {
|
|
24
|
-
throw new utils_1.CheckpointerValidationError('checkpoint_ns must be a string');
|
|
25
|
-
}
|
|
26
|
-
(0, utils_1.validateCheckpointNs)(checkpoint_ns);
|
|
27
|
-
// Validate checkpoint_id (optional)
|
|
28
|
-
if (checkpoint_id !== undefined && typeof checkpoint_id !== 'string') {
|
|
29
|
-
throw new utils_1.CheckpointerValidationError('checkpoint_id must be a string');
|
|
30
|
-
}
|
|
31
|
-
(0, utils_1.validateCheckpointId)(checkpoint_id, false);
|
|
32
|
-
return {
|
|
33
|
-
thread_id,
|
|
34
|
-
checkpoint_ns: checkpoint_ns ?? '',
|
|
35
|
-
checkpoint_id: checkpoint_id,
|
|
36
|
-
};
|
|
37
|
-
};
|
|
38
|
-
exports.validateConfigurable = validateConfigurable;
|
|
39
|
-
//# sourceMappingURL=validate-configurable.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validate-configurable.js","sourceRoot":"","sources":["../../../src/checkpointer/actions/validate-configurable.ts"],"names":[],"mappings":";;;AACA,oCAKkB;AAElB;;;;;;GAMG;AACI,MAAM,oBAAoB,GAAG,CAClC,YAAiD,EAC1B,EAAE;IACzB,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,mCAA2B,CAAC,sBAAsB,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,aAAa,EAAE,GAAG,YAAY,CAAC;IAEjE,gCAAgC;IAChC,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,IAAI,mCAA2B,CAAC,4BAA4B,CAAC,CAAC;IACtE,CAAC;IACD,IAAA,wBAAgB,EAAC,SAAS,CAAC,CAAC;IAE5B,oCAAoC;IACpC,IAAI,aAAa,KAAK,SAAS,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACrE,MAAM,IAAI,mCAA2B,CAAC,gCAAgC,CAAC,CAAC;IAC1E,CAAC;IACD,IAAA,4BAAoB,EAAC,aAAmC,CAAC,CAAC;IAE1D,oCAAoC;IACpC,IAAI,aAAa,KAAK,SAAS,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACrE,MAAM,IAAI,mCAA2B,CAAC,gCAAgC,CAAC,CAAC;IAC1E,CAAC;IACD,IAAA,4BAAoB,EAAC,aAAmC,EAAE,KAAK,CAAC,CAAC;IAEjE,OAAO;QACL,SAAS;QACT,aAAa,EAAG,aAAwB,IAAI,EAAE;QAC9C,aAAa,EAAE,aAAmC;KACnD,CAAC;AACJ,CAAC,CAAC;AAhCW,QAAA,oBAAoB,wBAgC/B"}
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { DynamoDBWriteItem, WriterProps } from '../types';
|
|
2
|
-
/**
|
|
3
|
-
* Writer class for managing pending writes in DynamoDB
|
|
4
|
-
* Handles serialization and composite key management
|
|
5
|
-
*/
|
|
6
|
-
export declare class Writer {
|
|
7
|
-
/** Unique identifier for the conversation thread */
|
|
8
|
-
readonly thread_id: string;
|
|
9
|
-
/** Namespace for checkpoint isolation (default: '') */
|
|
10
|
-
readonly checkpoint_ns: string;
|
|
11
|
-
/** Unique identifier for the checkpoint */
|
|
12
|
-
readonly checkpoint_id: string;
|
|
13
|
-
/** Unique identifier for the task that created this write */
|
|
14
|
-
readonly task_id: string;
|
|
15
|
-
/** Index of the write within the task. Negative values correspond to
|
|
16
|
-
* `WRITES_IDX_MAP` special-channel slots (__error__=-1, __scheduled__=-2,
|
|
17
|
-
* __interrupt__=-3, __resume__=-4); non-negative values are positional. */
|
|
18
|
-
readonly idx: number;
|
|
19
|
-
/** Channel name for the write */
|
|
20
|
-
readonly channel: string;
|
|
21
|
-
/** Type identifier for deserialization */
|
|
22
|
-
readonly type: string;
|
|
23
|
-
/** Serialized value as binary data */
|
|
24
|
-
readonly value: Uint8Array;
|
|
25
|
-
constructor({ thread_id, checkpoint_ns, checkpoint_id, task_id, idx, channel, type, value, }: WriterProps);
|
|
26
|
-
toDynamoDBItem(): DynamoDBWriteItem;
|
|
27
|
-
/**
|
|
28
|
-
* Deserialize a Writer instance from a DynamoDB item
|
|
29
|
-
*
|
|
30
|
-
* @param item - DynamoDB write item
|
|
31
|
-
* @returns Writer instance
|
|
32
|
-
* @throws Error if parsing fails or data is invalid
|
|
33
|
-
*/
|
|
34
|
-
static fromDynamoDBItem({ thread_id_checkpoint_id_checkpoint_ns, task_id_idx, channel, type, value, }: DynamoDBWriteItem): Writer;
|
|
35
|
-
/**
|
|
36
|
-
* Generate a partition key for DynamoDB from thread, checkpoint, and namespace
|
|
37
|
-
*
|
|
38
|
-
* @param params - Thread ID, checkpoint ID, and namespace
|
|
39
|
-
* @returns Composite partition key
|
|
40
|
-
*/
|
|
41
|
-
static getPartitionKey({ thread_id, checkpoint_id, checkpoint_ns, }: {
|
|
42
|
-
thread_id: string;
|
|
43
|
-
checkpoint_id: string;
|
|
44
|
-
checkpoint_ns: string;
|
|
45
|
-
}): string;
|
|
46
|
-
/**
|
|
47
|
-
* Separator used for composite keys.
|
|
48
|
-
* Note: input validation ensures this separator cannot appear in any component.
|
|
49
|
-
*/
|
|
50
|
-
static readonly SEPARATOR = ":::";
|
|
51
|
-
}
|
|
52
|
-
//# sourceMappingURL=writer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../src/checkpointer/actions/writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAS1D;;;GAGG;AACH,qBAAa,MAAM;IACjB,oDAAoD;IACpD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,2CAA2C;IAC3C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,6DAA6D;IAC7D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;gFAE4E;IAC5E,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,0CAA0C;IAC1C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,sCAAsC;IACtC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;gBAEf,EACV,SAAS,EACT,aAAa,EACb,aAAa,EACb,OAAO,EACP,GAAG,EACH,OAAO,EACP,IAAI,EACJ,KAAK,GACN,EAAE,WAAW;IAsBd,cAAc,IAAI,iBAAiB;IAcnC;;;;;;OAMG;IACH,MAAM,CAAC,gBAAgB,CAAC,EACtB,qCAAqC,EACrC,WAAW,EACX,OAAO,EACP,IAAI,EACJ,KAAK,GACN,EAAE,iBAAiB,GAAG,MAAM;IA8B7B;;;;;OAKG;IACH,MAAM,CAAC,eAAe,CAAC,EACrB,SAAS,EACT,aAAa,EACb,aAAa,GACd,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;KACvB,GAAG,MAAM;IAIV;;;OAGG;IACH,MAAM,CAAC,QAAQ,CAAC,SAAS,SAAS;CACnC"}
|