@farukada/aws-langgraph-dynamodb-ts 0.3.0 → 0.3.2
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 +7 -11
- package/dist/checkpointer/actions/delete-thread.js.map +1 -1
- package/dist/checkpointer/actions/get-tuple.js.map +1 -1
- package/dist/checkpointer/actions/list.js.map +1 -1
- package/dist/checkpointer/actions/put-writes.d.ts +6 -0
- package/dist/checkpointer/actions/put-writes.d.ts.map +1 -1
- package/dist/checkpointer/actions/put-writes.js +73 -10
- package/dist/checkpointer/actions/put-writes.js.map +1 -1
- package/dist/checkpointer/actions/put.js.map +1 -1
- package/dist/checkpointer/internal/assemble.js.map +1 -1
- package/dist/checkpointer/internal/configurable.js.map +1 -1
- package/dist/checkpointer/internal/fetch.js.map +1 -1
- package/dist/checkpointer/internal/filter-match.d.ts.map +1 -1
- package/dist/checkpointer/internal/filter-match.js.map +1 -1
- package/dist/checkpointer/internal/item-reader.js.map +1 -1
- package/dist/checkpointer/internal/item-writer.d.ts +13 -2
- package/dist/checkpointer/internal/item-writer.d.ts.map +1 -1
- package/dist/checkpointer/internal/item-writer.js +15 -3
- package/dist/checkpointer/internal/item-writer.js.map +1 -1
- package/dist/checkpointer/internal/keys.js.map +1 -1
- package/dist/checkpointer/internal/query.js.map +1 -1
- package/dist/checkpointer/internal/setup.js.map +1 -1
- package/dist/checkpointer/internal/validation.js.map +1 -1
- package/dist/checkpointer/saver.d.ts +9 -0
- package/dist/checkpointer/saver.d.ts.map +1 -1
- package/dist/checkpointer/saver.js +14 -0
- package/dist/checkpointer/saver.js.map +1 -1
- package/dist/factory/factory.d.ts +3 -3
- package/dist/factory/factory.d.ts.map +1 -1
- package/dist/factory/factory.js.map +1 -1
- package/dist/history/actions/add-messages.js.map +1 -1
- package/dist/history/actions/clear.d.ts +6 -3
- package/dist/history/actions/clear.d.ts.map +1 -1
- package/dist/history/actions/clear.js +28 -15
- package/dist/history/actions/clear.js.map +1 -1
- package/dist/history/actions/get-messages.d.ts.map +1 -1
- package/dist/history/actions/get-messages.js +2 -0
- package/dist/history/actions/get-messages.js.map +1 -1
- package/dist/history/actions/list-sessions.d.ts +3 -1
- package/dist/history/actions/list-sessions.d.ts.map +1 -1
- package/dist/history/actions/list-sessions.js +2 -1
- package/dist/history/actions/list-sessions.js.map +1 -1
- package/dist/history/actions/reconcile-count.js.map +1 -1
- package/dist/history/chat-message-history.d.ts +12 -1
- package/dist/history/chat-message-history.d.ts.map +1 -1
- package/dist/history/chat-message-history.js +16 -2
- package/dist/history/chat-message-history.js.map +1 -1
- package/dist/history/internal/append-saga.d.ts +5 -3
- package/dist/history/internal/append-saga.d.ts.map +1 -1
- package/dist/history/internal/append-saga.js +22 -9
- package/dist/history/internal/append-saga.js.map +1 -1
- package/dist/history/internal/item-mapper.js.map +1 -1
- package/dist/history/internal/keys.js.map +1 -1
- package/dist/history/internal/message-chunker.js.map +1 -1
- package/dist/history/internal/message-transaction.d.ts +4 -0
- package/dist/history/internal/message-transaction.d.ts.map +1 -1
- package/dist/history/internal/message-transaction.js +6 -0
- package/dist/history/internal/message-transaction.js.map +1 -1
- package/dist/history/internal/query.js.map +1 -1
- package/dist/history/internal/session-update.js.map +1 -1
- package/dist/history/internal/setup.js.map +1 -1
- package/dist/history/internal/title-generator.js.map +1 -1
- package/dist/history/internal/ttl-anchor.js.map +1 -1
- package/dist/history/session-adapter.d.ts.map +1 -1
- package/dist/history/session-adapter.js.map +1 -1
- package/dist/shared/clock.js.map +1 -1
- package/dist/shared/codec/codec.js.map +1 -1
- package/dist/shared/codec/compression.js.map +1 -1
- package/dist/shared/codec/descriptor-keys.js.map +1 -1
- package/dist/shared/codec/s3/client.js.map +1 -1
- package/dist/shared/codec/s3/config.d.ts +7 -1
- package/dist/shared/codec/s3/config.d.ts.map +1 -1
- package/dist/shared/codec/s3/config.js +9 -2
- package/dist/shared/codec/s3/config.js.map +1 -1
- package/dist/shared/codec/s3/delete.js.map +1 -1
- package/dist/shared/codec/s3/lifecycle.js.map +1 -1
- package/dist/shared/codec/s3/offloader.d.ts +2 -1
- package/dist/shared/codec/s3/offloader.d.ts.map +1 -1
- package/dist/shared/codec/s3/offloader.js +15 -8
- package/dist/shared/codec/s3/offloader.js.map +1 -1
- package/dist/shared/codec/s3/orphans.d.ts +4 -2
- package/dist/shared/codec/s3/orphans.d.ts.map +1 -1
- package/dist/shared/codec/s3/orphans.js +8 -23
- package/dist/shared/codec/s3/orphans.js.map +1 -1
- package/dist/shared/codec/s3/read-write.d.ts.map +1 -1
- package/dist/shared/codec/s3/read-write.js +11 -7
- package/dist/shared/codec/s3/read-write.js.map +1 -1
- package/dist/shared/codec/s3/retry.d.ts +5 -0
- package/dist/shared/codec/s3/retry.d.ts.map +1 -0
- package/dist/shared/codec/s3/retry.js +25 -0
- package/dist/shared/codec/s3/retry.js.map +1 -0
- package/dist/shared/constants.d.ts +9 -0
- package/dist/shared/constants.d.ts.map +1 -1
- package/dist/shared/constants.js +10 -1
- package/dist/shared/constants.js.map +1 -1
- package/dist/shared/dynamodb/backoff.js.map +1 -1
- package/dist/shared/dynamodb/batch-write.js.map +1 -1
- package/dist/shared/dynamodb/client.js.map +1 -1
- package/dist/shared/dynamodb/drain-unprocessed.js.map +1 -1
- package/dist/shared/dynamodb/paginate-core.js.map +1 -1
- package/dist/shared/dynamodb/paginate.js.map +1 -1
- package/dist/shared/dynamodb/retry-classifier.js.map +1 -1
- package/dist/shared/dynamodb/retry.js.map +1 -1
- package/dist/shared/dynamodb/scan.js.map +1 -1
- package/dist/shared/errors/base-error.d.ts.map +1 -1
- package/dist/shared/errors/base-error.js.map +1 -1
- package/dist/shared/errors/error-code.js.map +1 -1
- package/dist/shared/errors/errors.d.ts.map +1 -1
- package/dist/shared/errors/errors.js.map +1 -1
- package/dist/shared/errors/wrap-error.js.map +1 -1
- package/dist/shared/logging/logger.js.map +1 -1
- package/dist/shared/logging/redaction.d.ts.map +1 -1
- package/dist/shared/logging/redaction.js +13 -8
- package/dist/shared/logging/redaction.js.map +1 -1
- package/dist/shared/ulid.js.map +1 -1
- package/dist/shared/validation/primitives.js.map +1 -1
- package/dist/shared/validation/ttl.d.ts +5 -0
- package/dist/shared/validation/ttl.d.ts.map +1 -1
- package/dist/shared/validation/ttl.js +8 -0
- package/dist/shared/validation/ttl.js.map +1 -1
- package/dist/store/actions/get.js.map +1 -1
- package/dist/store/actions/list-namespaces.js.map +1 -1
- package/dist/store/actions/put.d.ts.map +1 -1
- package/dist/store/actions/put.js +14 -0
- package/dist/store/actions/put.js.map +1 -1
- package/dist/store/actions/reconcile-vector-index.js.map +1 -1
- package/dist/store/actions/search.d.ts.map +1 -1
- package/dist/store/actions/search.js +2 -0
- package/dist/store/actions/search.js.map +1 -1
- package/dist/store/internal/filter.d.ts.map +1 -1
- package/dist/store/internal/filter.js +1 -0
- package/dist/store/internal/filter.js.map +1 -1
- package/dist/store/internal/index-reconcile.d.ts.map +1 -1
- package/dist/store/internal/index-reconcile.js +2 -4
- package/dist/store/internal/index-reconcile.js.map +1 -1
- package/dist/store/internal/index-sync.js.map +1 -1
- package/dist/store/internal/item-mapper.js.map +1 -1
- package/dist/store/internal/keys.js.map +1 -1
- package/dist/store/internal/namespace-match.js.map +1 -1
- package/dist/store/internal/query.js.map +1 -1
- package/dist/store/internal/ranker.js.map +1 -1
- package/dist/store/internal/semantic-search.js.map +1 -1
- package/dist/store/internal/setup.js.map +1 -1
- package/dist/store/internal/validation.js.map +1 -1
- package/dist/store/store.d.ts +9 -0
- package/dist/store/store.d.ts.map +1 -1
- package/dist/store/store.js +14 -0
- package/dist/store/store.js.map +1 -1
- package/package.json +24 -23
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clear.js","sourceRoot":"","sources":["../../../src/history/actions/clear.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"clear.js","sourceRoot":"","sources":["../../../src/history/actions/clear.ts"],"names":[],"mappings":";;;AACA,wEAAmE;AACnE,2DAAiE;AACjE,sDAAyD;AACzD,mEAAkE;AAClE,6DAA+D;AAC/D,6CAAsD;AAStD,KAAK,UAAU,WAAW,CAAC,OAAuB,EAAE,MAAoB;IACtE,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACrC,MAAM,IAAA,2BAAa,EACjB,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,SAAS,EACjB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CACvD,CAAC;IACF,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,MAAM,IAAA,0BAAgB,EACpB,OAAO,CAAC,SAAS,EACjB,IAAA,+BAAa,EAAC,MAAM,CAAC,WAAW,CAAC,EACjC,eAAe,EACf,OAAO,CAAC,MAAM,CACf,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;IACjB,MAAM,CAAC,WAAW,GAAG,EAAE,CAAC;AAC1B,CAAC;AAED;;;;;;;GAOG;AACI,KAAK,uBAAuB,OAAuB,EAAE,SAAiB;IAC3E,MAAM,MAAM,GAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IAC3D,MAAM,KAAK,GAAG,IAAA,wBAAa,EAAC;QAC1B,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,IAAA,yBAAiB,EAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC;QACvD,QAAQ,EAAE,MAAM,CAAC,iBAAiB;QAClC,aAAa,EAAE,MAAM,CAAC,iBAAiB;KACxC,CAAC,CAAC;IACH,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,GAAsB,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/C,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,2BAAe;YAAE,MAAM,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,WAAW,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AACrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-messages.d.ts","sourceRoot":"","sources":["../../../src/history/actions/get-messages.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAGjB,MAAM,0BAA0B,CAAC;AAKlC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAOxD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,WAAW,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"get-messages.d.ts","sourceRoot":"","sources":["../../../src/history/actions/get-messages.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAGjB,MAAM,0BAA0B,CAAC;AAKlC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAOxD;;;;GAIG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,WAAW,EAAE,CAAC,CAcxB"}
|
|
@@ -19,6 +19,8 @@ async function getMessages(context, sessionId) {
|
|
|
19
19
|
for await (const raw of (0, paginate_1.paginateQuery)({
|
|
20
20
|
client: context.client,
|
|
21
21
|
params: (0, query_1.messageQuery)(context.tableName, sessionId),
|
|
22
|
+
maxItems: Number.POSITIVE_INFINITY,
|
|
23
|
+
maxIterations: Number.POSITIVE_INFINITY,
|
|
22
24
|
})) {
|
|
23
25
|
const item = raw;
|
|
24
26
|
if (isExpired(item, nowSeconds))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-messages.js","sourceRoot":"","sources":["../../../src/history/actions/get-messages.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get-messages.js","sourceRoot":"","sources":["../../../src/history/actions/get-messages.ts"],"names":[],"mappings":";;;AAAA,uDAIkC;AAElC,6DAA+D;AAC/D,yDAA4D;AAC5D,6CAAiD;AAIjD,SAAS,SAAS,CAAC,IAAqB,EAAE,UAAkB;IAC1D,OAAO,IAAI,CAAC,GAAG,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,IAAI,UAAU,CAAC;AAC1D,CAAC;AAED;;;;GAIG;AACI,KAAK,sBACV,OAAuB,EACvB,SAAiB;IAEjB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACjD,MAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAA,wBAAa,EAAC;QACpC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,IAAA,oBAAY,EAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC;QAClD,QAAQ,EAAE,MAAM,CAAC,iBAAiB;QAClC,aAAa,EAAE,MAAM,CAAC,iBAAiB;KACxC,CAAC,EAAE,CAAC;QACH,MAAM,IAAI,GAAG,GAAsB,CAAC;QACpC,IAAI,SAAS,CAAC,IAAI,EAAE,UAAU,CAAC;YAAE,SAAS;QAC1C,MAAM,CAAC,IAAI,CAAC,MAAM,IAAA,+BAAiB,EAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,IAAA,0CAA+B,EAAC,MAAM,CAAC,CAAC;AACjD,CAAC"}
|
|
@@ -5,5 +5,7 @@ import type { SessionMetadata } from '../types';
|
|
|
5
5
|
* filtered to session items so the adapter works on a table shared with the
|
|
6
6
|
* checkpointer/store; foreign rows are also skipped defensively.
|
|
7
7
|
*/
|
|
8
|
-
export declare function listSessions(context: HistoryContext
|
|
8
|
+
export declare function listSessions(context: HistoryContext, options?: {
|
|
9
|
+
maxIterations?: number;
|
|
10
|
+
}): Promise<SessionMetadata[]>;
|
|
9
11
|
//# sourceMappingURL=list-sessions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-sessions.d.ts","sourceRoot":"","sources":["../../../src/history/actions/list-sessions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAmB,eAAe,EAAE,MAAM,UAAU,CAAC;AAEjE;;;;GAIG;AACH,wBAAsB,YAAY,
|
|
1
|
+
{"version":3,"file":"list-sessions.d.ts","sourceRoot":"","sources":["../../../src/history/actions/list-sessions.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAmB,eAAe,EAAE,MAAM,UAAU,CAAC;AAEjE;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,GACnC,OAAO,CAAC,eAAe,EAAE,CAAC,CAwB5B"}
|
|
@@ -8,7 +8,7 @@ const keys_1 = require("../internal/keys");
|
|
|
8
8
|
* filtered to session items so the adapter works on a table shared with the
|
|
9
9
|
* checkpointer/store; foreign rows are also skipped defensively.
|
|
10
10
|
*/
|
|
11
|
-
async function listSessions(context) {
|
|
11
|
+
async function listSessions(context, options) {
|
|
12
12
|
const sessions = [];
|
|
13
13
|
for await (const raw of (0, scan_1.paginateScan)({
|
|
14
14
|
client: context.client,
|
|
@@ -18,6 +18,7 @@ async function listSessions(context) {
|
|
|
18
18
|
ExpressionAttributeNames: { '#sk': 'SK' },
|
|
19
19
|
ExpressionAttributeValues: { ':session': keys_1.SESSION_SORT_KEY },
|
|
20
20
|
},
|
|
21
|
+
maxIterations: options?.maxIterations,
|
|
21
22
|
})) {
|
|
22
23
|
const item = raw;
|
|
23
24
|
if (item.SK !== keys_1.SESSION_SORT_KEY || typeof item.sessionId !== 'string')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-sessions.js","sourceRoot":"","sources":["../../../src/history/actions/list-sessions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list-sessions.js","sourceRoot":"","sources":["../../../src/history/actions/list-sessions.ts"],"names":[],"mappings":";;;AAAA,qDAA0D;AAC1D,2CAAoD;AAIpD;;;;GAIG;AACI,KAAK,uBACV,OAAuB,EACvB,OAAoC;IAEpC,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAA,mBAAY,EAAC;QACnC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE;YACN,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,gBAAgB,EAAE,gBAAgB;YAClC,wBAAwB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;YACzC,yBAAyB,EAAE,EAAE,UAAU,EAAE,uBAAgB,EAAE;SAC5D;QACD,aAAa,EAAE,OAAO,EAAE,aAAa;KACtC,CAAC,EAAE,CAAC;QACH,MAAM,IAAI,GAAG,GAAsB,CAAC;QACpC,IAAI,IAAI,CAAC,EAAE,KAAK,uBAAgB,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ;YAAE,SAAS;QACjF,QAAQ,CAAC,IAAI,CAAC;YACZ,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC,CAAC;IACL,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAChE,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconcile-count.js","sourceRoot":"","sources":["../../../src/history/actions/reconcile-count.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reconcile-count.js","sourceRoot":"","sources":["../../../src/history/actions/reconcile-count.ts"],"names":[],"mappings":";;;AAEA,uDAAgE;AAChE,mEAA4E;AAC5E,2CAAsE;AACtE,6CAAiD;AAGjD,mFAAmF;AACnF,KAAK,UAAU,aAAa,CAAC,OAAuB,EAAE,SAAiB;IACrE,MAAM,IAAI,GAAG,IAAA,oBAAY,EAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACxD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,QAA0D,CAAC;IAC/D,GAAG,CAAC;QACF,MAAM,IAAI,GAAG,MAAM,IAAA,yBAAiB,EAAC,GAAG,EAAE,CACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAChF,CAAC;QACF,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QACzB,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC;IACnC,CAAC,QAAQ,QAAQ,EAAE;IACnB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACI,KAAK,gCACV,OAAuB,EACvB,SAAiB;IAEjB,IAAA,mCAAsB,EAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACtD,MAAM,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAC3B,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QACpB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,GAAG,EAAE,EAAE,EAAE,EAAE,IAAA,uBAAgB,EAAC,SAAS,CAAC,EAAE,EAAE,EAAE,uBAAgB,EAAE;QAC9D,gBAAgB,EAAE,qBAAqB;QACvC,wBAAwB,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE;QACtD,yBAAyB,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;KAC/C,CAAC,CACH,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -22,7 +22,9 @@ export declare class DynamoDBChatMessageHistory {
|
|
|
22
22
|
/** Delete a session and any offloaded payload. */
|
|
23
23
|
clear(sessionId: string): Promise<void>;
|
|
24
24
|
/** List all sessions as metadata summaries. */
|
|
25
|
-
listSessions(
|
|
25
|
+
listSessions(options?: {
|
|
26
|
+
maxIterations?: number;
|
|
27
|
+
}): Promise<SessionMetadata[]>;
|
|
26
28
|
/**
|
|
27
29
|
* Recompute and repair a session's `messageCount` from the stored messages.
|
|
28
30
|
* A maintenance tool for external corruption; run it when the session is idle.
|
|
@@ -32,5 +34,14 @@ export declare class DynamoDBChatMessageHistory {
|
|
|
32
34
|
forSession(sessionId: string): DynamoDBSessionChatMessageHistory;
|
|
33
35
|
/** Release owned resources (the underlying client and any S3 client). */
|
|
34
36
|
destroy(): void;
|
|
37
|
+
/**
|
|
38
|
+
* Best-effort provision an S3 lifecycle expiration rule matching the
|
|
39
|
+
* configured TTL, so offloaded objects don't outlive their DynamoDB item
|
|
40
|
+
* forever. No-ops when S3 offload or TTL isn't configured. Requires the
|
|
41
|
+
* `s3:GetLifecycleConfiguration`/`s3:PutLifecycleConfiguration` bucket-level
|
|
42
|
+
* permissions (broader than the object-level CRUD the rest of S3 offload
|
|
43
|
+
* needs) — call this once during deployment/provisioning, not per-request.
|
|
44
|
+
*/
|
|
45
|
+
ensureS3LifecycleRule(): Promise<void>;
|
|
35
46
|
}
|
|
36
47
|
//# sourceMappingURL=chat-message-history.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-message-history.d.ts","sourceRoot":"","sources":["../../src/history/chat-message-history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-message-history.d.ts","sourceRoot":"","sources":["../../src/history/chat-message-history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAS5D,OAAO,EAAE,iCAAiC,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,KAAK,EAAE,iCAAiC,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAElF;;;;;;GAMG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAU;IACrC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+C;IAEzE,YAAY,OAAO,EAAE,iCAAiC,EAKrD;IAED,yCAAyC;IACzC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAErD;IAED,oCAAoC;IACpC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAErE;IAED,4CAA4C;IAC5C,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjE;IAED,kDAAkD;IAClD,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtC;IAED,+CAA+C;IAC/C,YAAY,CAAC,OAAO,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAE7E;IAED;;;OAGG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAExD;IAED,8DAA8D;IAC9D,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,iCAAiC,CAE/D;IAED,yEAAyE;IACzE,OAAO,IAAI,IAAI,CAGd;IAED;;;;;;;OAOG;IACG,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC,CAG3C;CACF"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DynamoDBChatMessageHistory = void 0;
|
|
4
|
+
const ttl_1 = require("../shared/validation/ttl");
|
|
4
5
|
const add_messages_1 = require("./actions/add-messages");
|
|
5
6
|
const clear_1 = require("./actions/clear");
|
|
6
7
|
const get_messages_1 = require("./actions/get-messages");
|
|
@@ -42,8 +43,8 @@ class DynamoDBChatMessageHistory {
|
|
|
42
43
|
return (0, clear_1.clearSession)(this.context, sessionId);
|
|
43
44
|
}
|
|
44
45
|
/** List all sessions as metadata summaries. */
|
|
45
|
-
listSessions() {
|
|
46
|
-
return (0, list_sessions_1.listSessions)(this.context);
|
|
46
|
+
listSessions(options) {
|
|
47
|
+
return (0, list_sessions_1.listSessions)(this.context, options);
|
|
47
48
|
}
|
|
48
49
|
/**
|
|
49
50
|
* Recompute and repair a session's `messageCount` from the stored messages.
|
|
@@ -62,6 +63,19 @@ class DynamoDBChatMessageHistory {
|
|
|
62
63
|
if (this.ownsClient)
|
|
63
64
|
this.ddbClient?.destroy();
|
|
64
65
|
}
|
|
66
|
+
/**
|
|
67
|
+
* Best-effort provision an S3 lifecycle expiration rule matching the
|
|
68
|
+
* configured TTL, so offloaded objects don't outlive their DynamoDB item
|
|
69
|
+
* forever. No-ops when S3 offload or TTL isn't configured. Requires the
|
|
70
|
+
* `s3:GetLifecycleConfiguration`/`s3:PutLifecycleConfiguration` bucket-level
|
|
71
|
+
* permissions (broader than the object-level CRUD the rest of S3 offload
|
|
72
|
+
* needs) — call this once during deployment/provisioning, not per-request.
|
|
73
|
+
*/
|
|
74
|
+
async ensureS3LifecycleRule() {
|
|
75
|
+
if (!this.context.offloader || !this.context.ttl)
|
|
76
|
+
return;
|
|
77
|
+
await this.context.offloader.ensureLifecycleRule((0, ttl_1.resolveTtlDaysCeil)(this.context.ttl));
|
|
78
|
+
}
|
|
65
79
|
}
|
|
66
80
|
exports.DynamoDBChatMessageHistory = DynamoDBChatMessageHistory;
|
|
67
81
|
//# sourceMappingURL=chat-message-history.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-message-history.js","sourceRoot":"","sources":["../../src/history/chat-message-history.ts"],"names":[],"mappings":";;;AAEA,yDAA0E;AAC1E,2CAA+C;AAC/C,yDAA0E;AAC1E,2DAA6E;AAC7E,+DAAiG;AACjG,4CAAqE;AACrE,uDAAsE;AAGtE;;;;;;GAMG;AACH
|
|
1
|
+
{"version":3,"file":"chat-message-history.js","sourceRoot":"","sources":["../../src/history/chat-message-history.ts"],"names":[],"mappings":";;;AAEA,kDAA8D;AAC9D,yDAA0E;AAC1E,2CAA+C;AAC/C,yDAA0E;AAC1E,2DAA6E;AAC7E,+DAAiG;AACjG,4CAAqE;AACrE,uDAAsE;AAGtE;;;;;;GAMG;AACH;IACmB,OAAO,CAAiB;IACxB,UAAU,CAAU;IACpB,SAAS,CAA+C;IAEzE,YAAY,OAA0C;QACpD,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,OAAO,CAAC,CAAC;QACpC,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;IAED,yCAAyC;IACzC,WAAW,CAAC,SAAiB;QAC3B,OAAO,IAAA,0BAAiB,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACpD,CAAC;IAED,oCAAoC;IACpC,WAAW,CAAC,SAAiB,EAAE,QAAuB;QACpD,OAAO,IAAA,0BAAiB,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAED,4CAA4C;IAC5C,UAAU,CAAC,SAAiB,EAAE,OAAoB;QAChD,OAAO,IAAA,0BAAiB,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,kDAAkD;IAClD,KAAK,CAAC,SAAiB;QACrB,OAAO,IAAA,oBAAY,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED,+CAA+C;IAC/C,YAAY,CAAC,OAAoC;QAC/C,OAAO,IAAA,4BAAkB,EAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;IAED;;;OAGG;IACH,qBAAqB,CAAC,SAAiB;QACrC,OAAO,IAAA,uCAA2B,EAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC9D,CAAC;IAED,8DAA8D;IAC9D,UAAU,CAAC,SAAiB;QAC1B,OAAO,IAAI,mDAAiC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAChE,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;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,qBAAqB;QACzB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG;YAAE,OAAO;QACzD,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,mBAAmB,CAAC,IAAA,wBAAkB,EAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;IACzF,CAAC;CACF"}
|
|
@@ -9,9 +9,11 @@ export interface AppendFields {
|
|
|
9
9
|
/**
|
|
10
10
|
* Append message chunks with caller-observed atomicity. Each chunk commits its
|
|
11
11
|
* messages and count in one transaction; if a later chunk fails, every
|
|
12
|
-
* already-committed chunk is deleted and its count reverted, and
|
|
13
|
-
* objects are cleaned, restoring the pre-call
|
|
14
|
-
*
|
|
12
|
+
* already-committed chunk is deleted and its count reverted, and the batch's
|
|
13
|
+
* S3 objects are cleaned once their rows are gone, restoring the pre-call
|
|
14
|
+
* state before the error is rethrown. Except on a failed rollback, which
|
|
15
|
+
* surfaces as {@link CompensationFailedError} and deliberately leaves the
|
|
16
|
+
* committed chunks' S3 objects behind, since their rows may survive.
|
|
15
17
|
*/
|
|
16
18
|
export declare function appendChunks(context: HistoryContext, sessionId: string, chunks: ChatMessageItem[][], fields: AppendFields): Promise<void>;
|
|
17
19
|
//# sourceMappingURL=append-saga.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"append-saga.d.ts","sourceRoot":"","sources":["../../../src/history/internal/append-saga.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,0EAA0E;AAC1E,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;
|
|
1
|
+
{"version":3,"file":"append-saga.d.ts","sourceRoot":"","sources":["../../../src/history/internal/append-saga.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,0EAA0E;AAC1E,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAmGD;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,eAAe,EAAE,EAAE,EAC3B,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CAmBf"}
|
|
@@ -21,7 +21,11 @@ async function revertSessionCount(context, sessionId, delta) {
|
|
|
21
21
|
ExpressionAttributeValues: { ':neg': -delta },
|
|
22
22
|
}));
|
|
23
23
|
}
|
|
24
|
-
/**
|
|
24
|
+
/**
|
|
25
|
+
* Best-effort delete the offloaded S3 objects of the `chunks` slice given.
|
|
26
|
+
* {@link compensate} calls it once per commit status, never for the whole
|
|
27
|
+
* batch, so a committed chunk's objects arrive only once its rows are gone.
|
|
28
|
+
*/
|
|
25
29
|
async function cleanBatchS3(context, chunks) {
|
|
26
30
|
if (!context.offloader)
|
|
27
31
|
return;
|
|
@@ -38,10 +42,13 @@ async function rollbackCommitted(context, sessionId, committed) {
|
|
|
38
42
|
await revertSessionCount(context, sessionId, total);
|
|
39
43
|
}
|
|
40
44
|
/**
|
|
41
|
-
* Undo a failed batch
|
|
42
|
-
*
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
+
* Undo a failed batch. Always throws. S3 cleanup is split by commit status so
|
|
46
|
+
* no live row is ever left pointing at a deleted object: the never-committed
|
|
47
|
+
* suffix is cleaned immediately, the committed prefix only after its rows are
|
|
48
|
+
* confirmed deleted. If the rollback itself fails, the committed chunks' S3
|
|
49
|
+
* objects are deliberately left in place (their rows may survive) and it
|
|
50
|
+
* raises {@link CompensationFailedError} carrying both the trigger and the
|
|
51
|
+
* rollback error; otherwise it rethrows the trigger.
|
|
45
52
|
*/
|
|
46
53
|
async function compensate(context, sessionId, chunks, committed, trigger) {
|
|
47
54
|
if (committed.length > 0) {
|
|
@@ -50,7 +57,8 @@ async function compensate(context, sessionId, chunks, committed, trigger) {
|
|
|
50
57
|
committedChunks: committed.length,
|
|
51
58
|
});
|
|
52
59
|
}
|
|
53
|
-
|
|
60
|
+
/** The failed/never-attempted suffix never had a DynamoDB row, so it's safe to clean now. */
|
|
61
|
+
await cleanBatchS3(context, chunks.slice(committed.length));
|
|
54
62
|
try {
|
|
55
63
|
await rollbackCommitted(context, sessionId, committed);
|
|
56
64
|
}
|
|
@@ -59,16 +67,21 @@ async function compensate(context, sessionId, chunks, committed, trigger) {
|
|
|
59
67
|
sessionId,
|
|
60
68
|
committedChunks: committed.length,
|
|
61
69
|
});
|
|
70
|
+
/** Skip S3 cleanup here: rollback may have failed, so committed rows might still reference these objects. */
|
|
62
71
|
throw new errors_1.CompensationFailedError(trigger, (0, wrap_error_1.toError)(rollbackError));
|
|
63
72
|
}
|
|
73
|
+
/** Only now that committed rows are confirmed deleted is it safe to delete their S3 objects. */
|
|
74
|
+
await cleanBatchS3(context, chunks.slice(0, committed.length));
|
|
64
75
|
throw trigger;
|
|
65
76
|
}
|
|
66
77
|
/**
|
|
67
78
|
* Append message chunks with caller-observed atomicity. Each chunk commits its
|
|
68
79
|
* messages and count in one transaction; if a later chunk fails, every
|
|
69
|
-
* already-committed chunk is deleted and its count reverted, and
|
|
70
|
-
* objects are cleaned, restoring the pre-call
|
|
71
|
-
*
|
|
80
|
+
* already-committed chunk is deleted and its count reverted, and the batch's
|
|
81
|
+
* S3 objects are cleaned once their rows are gone, restoring the pre-call
|
|
82
|
+
* state before the error is rethrown. Except on a failed rollback, which
|
|
83
|
+
* surfaces as {@link CompensationFailedError} and deliberately leaves the
|
|
84
|
+
* committed chunks' S3 objects behind, since their rows may survive.
|
|
72
85
|
*/
|
|
73
86
|
async function appendChunks(context, sessionId, chunks, fields) {
|
|
74
87
|
const committed = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"append-saga.js","sourceRoot":"","sources":["../../../src/history/internal/append-saga.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"append-saga.js","sourceRoot":"","sources":["../../../src/history/internal/append-saga.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"item-mapper.js","sourceRoot":"","sources":["../../../src/history/internal/item-mapper.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"item-mapper.js","sourceRoot":"","sources":["../../../src/history/internal/item-mapper.ts"],"names":[],"mappings":";;;;AAEA,oDAAwF;AAExF,iCAA0D;AAG1D,SAAS,SAAS,CAAC,OAAuB;IACxC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC;AAClG,CAAC;AAED;;;;GAIG;AACI,KAAK,2BACV,OAAuB,EACvB,SAAiB,EACjB,IAAY,EACZ,OAAsB,EACtB,YAAqB;IAErB,MAAM,UAAU,GAAG,MAAM,IAAA,qBAAa,EAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE;QAClE,QAAQ,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC;KAC5B,CAAC,CAAC;IACH,MAAM,IAAI,GAAoB;QAC5B,EAAE,EAAE,IAAA,uBAAgB,EAAC,SAAS,CAAC;QAC/B,EAAE,EAAE,IAAA,qBAAc,EAAC,IAAI,CAAC;QACxB,SAAS;QACT,OAAO,EAAE,UAAU;KACpB,CAAC;IACF,IAAI,YAAY,KAAK,SAAS;QAAE,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC;IACxD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,iEAAiE;AAC1D,KAAK,4BACV,OAAuB,EACvB,IAAqB;IAErB,OAAO,IAAA,qBAAa,EAAgB,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;AACxE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/history/internal/keys.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/history/internal/keys.ts"],"names":[],"mappings":";;;;;;AAAA,wDAAwD;AAC3C,QAAA,gBAAgB,GAAG,SAAS,CAAC;AAE1C,MAAM,cAAc,GAAG,MAAM,CAAC;AAE9B,+DAA+D;AAC/D,0BAAiC,SAAiB;IAChD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,yEAAyE;AACzE,wBAA+B,IAAY;IACzC,OAAO,GAAG,cAAc,GAAG,IAAI,EAAE,CAAC;AACpC,CAAC;AAED,sEAAsE;AACtE;IACE,OAAO,cAAc,CAAC;AACxB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-chunker.js","sourceRoot":"","sources":["../../../src/history/internal/message-chunker.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"message-chunker.js","sourceRoot":"","sources":["../../../src/history/internal/message-chunker.ts"],"names":[],"mappings":";;;;AAAA,oDAAmF;AAGnF;;;;;;GAMG;AACH,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC,SAAS,eAAe,CAAC,UAA6B;IACpD,MAAM,IAAI,GACR,UAAU,CAAC,QAAQ,KAAK,uBAAe,CAAC,MAAM;QAC5C,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM;QACzB,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC;IAC9B,OAAO,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC;AAC5C,CAAC;AAED;;;;GAIG;AACH,2BAAkC,IAAqB;IACrD,OAAO,CACL,IAAI,CAAC,EAAE,CAAC,MAAM;QACd,IAAI,CAAC,EAAE,CAAC,MAAM;QACd,IAAI,CAAC,SAAS,CAAC,MAAM;QACrB,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;QAC7B,mBAAmB,CACpB,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAClB,KAAa,EACb,KAAa,EACb,IAAY,EACZ,GAAW,EACX,QAAgB;IAEhB,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9B,OAAO,KAAK,IAAI,GAAG,IAAI,KAAK,GAAG,IAAI,GAAG,QAAQ,CAAC;AACjD,CAAC;AAED;;;;GAIG;AACH,qBACE,KAAwB,EACxB,QAAgB,EAChB,QAAgB;IAEhB,MAAM,MAAM,GAAwB,EAAE,CAAC;IACvC,IAAI,OAAO,GAAsB,EAAE,CAAC;IACpC,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;YACxE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACrB,OAAO,GAAG,EAAE,CAAC;YACb,YAAY,GAAG,CAAC,CAAC;QACnB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,YAAY,IAAI,IAAI,CAAC;IACvB,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7C,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -12,6 +12,10 @@ export interface ChunkRetryOptions {
|
|
|
12
12
|
* call, so `messageCount` can never disagree with the messages that landed. A
|
|
13
13
|
* single `ClientRequestToken` is reused across retries so a re-sent commit (e.g.
|
|
14
14
|
* after a lost response) is idempotent and never double-applies the count `ADD`.
|
|
15
|
+
* The transaction always touches the session's shared metadata row, so
|
|
16
|
+
* concurrent appends to the same session contend on it; retries use
|
|
17
|
+
* {@link MESSAGE_APPEND_RETRY_MAX_ATTEMPTS} rather than the default budget so a
|
|
18
|
+
* burst of concurrent callers can drain via backoff instead of erroring.
|
|
15
19
|
*/
|
|
16
20
|
export declare function writeMessageChunk(context: HistoryContext, items: ChatMessageItem[], fields: SessionUpdateFields, retry?: ChunkRetryOptions): Promise<void>;
|
|
17
21
|
//# sourceMappingURL=message-transaction.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-transaction.d.ts","sourceRoot":"","sources":["../../../src/history/internal/message-transaction.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"message-transaction.d.ts","sourceRoot":"","sources":["../../../src/history/internal/message-transaction.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAA0B,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,wEAAwE;AACxE,MAAM,WAAW,iBAAiB;IAChC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,eAAe,EAAE,EACxB,MAAM,EAAE,mBAAmB,EAC3B,KAAK,GAAE,iBAAsB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAaf"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.writeMessageChunk = writeMessageChunk;
|
|
4
4
|
const node_crypto_1 = require("node:crypto");
|
|
5
|
+
const constants_1 = require("../../shared/constants");
|
|
5
6
|
const retry_1 = require("../../shared/dynamodb/retry");
|
|
6
7
|
const session_update_1 = require("./session-update");
|
|
7
8
|
/**
|
|
@@ -10,6 +11,10 @@ const session_update_1 = require("./session-update");
|
|
|
10
11
|
* call, so `messageCount` can never disagree with the messages that landed. A
|
|
11
12
|
* single `ClientRequestToken` is reused across retries so a re-sent commit (e.g.
|
|
12
13
|
* after a lost response) is idempotent and never double-applies the count `ADD`.
|
|
14
|
+
* The transaction always touches the session's shared metadata row, so
|
|
15
|
+
* concurrent appends to the same session contend on it; retries use
|
|
16
|
+
* {@link MESSAGE_APPEND_RETRY_MAX_ATTEMPTS} rather than the default budget so a
|
|
17
|
+
* burst of concurrent callers can drain via backoff instead of erroring.
|
|
13
18
|
*/
|
|
14
19
|
async function writeMessageChunk(context, items, fields, retry = {}) {
|
|
15
20
|
const input = {
|
|
@@ -20,6 +25,7 @@ async function writeMessageChunk(context, items, fields, retry = {}) {
|
|
|
20
25
|
ClientRequestToken: (0, node_crypto_1.randomUUID)(),
|
|
21
26
|
};
|
|
22
27
|
await (0, retry_1.withDynamoDBRetry)(() => context.client.transactWrite(input), {
|
|
28
|
+
maxAttempts: constants_1.MESSAGE_APPEND_RETRY_MAX_ATTEMPTS,
|
|
23
29
|
rng: retry.rng,
|
|
24
30
|
signal: retry.signal,
|
|
25
31
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-transaction.js","sourceRoot":"","sources":["../../../src/history/internal/message-transaction.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"message-transaction.js","sourceRoot":"","sources":["../../../src/history/internal/message-transaction.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAEzC,sDAA2E;AAC3E,uDAAgE;AAEhE,qDAAoF;AASpF;;;;;;;;;;GAUG;AACI,KAAK,4BACV,OAAuB,EACvB,KAAwB,EACxB,MAA2B,EAC3B,KAAK,GAAsB,EAAE;IAE7B,MAAM,KAAK,GAAG;QACZ,aAAa,EAAE;YACb,IAAA,uCAAsB,EAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;YACjD,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;SAChF;QACD,kBAAkB,EAAE,IAAA,wBAAU,GAAE;KACjC,CAAC;IACF,MAAM,IAAA,yBAAiB,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;QACjE,WAAW,EAAE,6CAAiC;QAC9C,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/history/internal/query.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/history/internal/query.ts"],"names":[],"mappings":";;;;AAEA,iCAAgE;AAEhE,uFAAuF;AACvF,2BAAkC,SAAiB,EAAE,SAAiB;IACpE,OAAO;QACL,SAAS,EAAE,SAAS;QACpB,sBAAsB,EAAE,WAAW;QACnC,wBAAwB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;QACzC,yBAAyB,EAAE,EAAE,KAAK,EAAE,IAAA,uBAAgB,EAAC,SAAS,CAAC,EAAE;KAClE,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,sBAA6B,SAAiB,EAAE,SAAiB;IAC/D,OAAO;QACL,SAAS,EAAE,SAAS;QACpB,sBAAsB,EAAE,sCAAsC;QAC9D,wBAAwB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;QACtD,yBAAyB,EAAE;YACzB,KAAK,EAAE,IAAA,uBAAgB,EAAC,SAAS,CAAC;YAClC,MAAM,EAAE,IAAA,2BAAoB,GAAE;SAC/B;QACD,gBAAgB,EAAE,IAAI;KACvB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-update.js","sourceRoot":"","sources":["../../../src/history/internal/session-update.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"session-update.js","sourceRoot":"","sources":["../../../src/history/internal/session-update.ts"],"names":[],"mappings":";;;AAEA,iCAA4D;AAc5D;;;;;;GAMG;AACH,gCACE,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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/history/internal/setup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/history/internal/setup.ts"],"names":[],"mappings":";;;AAKA,8DAA2D;AAC3D,+DAA8D;AAC9D,yDAAqE;AACrE,wDAAyE;AACzE,4CAAsD;AAuBtD,gFAAgF;AAChF,sBAA6B,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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"title-generator.js","sourceRoot":"","sources":["../../../src/history/internal/title-generator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"title-generator.js","sourceRoot":"","sources":["../../../src/history/internal/title-generator.ts"],"names":[],"mappings":";;;AAEA,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAE5B;;;GAGG;AACH,qBAA4B,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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ttl-anchor.js","sourceRoot":"","sources":["../../../src/history/internal/ttl-anchor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ttl-anchor.js","sourceRoot":"","sources":["../../../src/history/internal/ttl-anchor.ts"],"names":[],"mappings":";;;AAAA,uDAAgE;AAChE,iCAA4D;AAG5D;;;;;;;;GAQG;AACI,KAAK,2BACV,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 +1 @@
|
|
|
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;
|
|
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;IAE9D,YACmB,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,MAAM,EAGnC;IAED,WAAW,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAEpC;IAED,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9C;IAED,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAElD;IAED,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAErB;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-adapter.js","sourceRoot":"","sources":["../../src/history/session-adapter.ts"],"names":[],"mappings":";;;AAAA,+DAA0E;AAU1E;;;GAGG;AACH,
|
|
1
|
+
{"version":3,"file":"session-adapter.js","sourceRoot":"","sources":["../../src/history/session-adapter.ts"],"names":[],"mappings":";;;AAAA,+DAA0E;AAU1E;;;GAGG;AACH,uCAA+C,SAAQ,yCAA0B;IAI5D,OAAO;IACP,SAAS;IAJ5B,YAAY,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAE9D,YACmB,OAAuB,EACvB,SAAiB;QAElC,KAAK,EAAE,CAAC;uBAHS,OAAO;yBACP,SAAS;IAG5B,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"}
|
package/dist/shared/clock.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clock.js","sourceRoot":"","sources":["../../src/shared/clock.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"clock.js","sourceRoot":"","sources":["../../src/shared/clock.ts"],"names":[],"mappings":";;;AAAA,mFAAmF;AACnF;IACE,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAC5C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codec.js","sourceRoot":"","sources":["../../../src/shared/codec/codec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"codec.js","sourceRoot":"","sources":["../../../src/shared/codec/codec.ts"],"names":[],"mappings":";;;;;AAEA,+CAA2F;AAG3F,sCAAsC;AACtC,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,oCAAiB,CAAA;IACjB,4BAAS,CAAA;AACX,CAAC,EAHW,eAAe,aAAf,eAAe,GAAf,eAAe,QAG1B;AAiCD,SAAS,gBAAgB,CAAC,IAAe;IACvC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC;AACxB,CAAC;AAED;;;;GAIG;AACI,KAAK,wBACV,KAAQ,EACR,IAAe,EACf,OAAsB;IAEtB,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,GAAsB,IAAI,CAAC,WAAW;QAC/D,CAAC,CAAC,MAAM,IAAA,sBAAQ,EAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC;QACvC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACtC,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxD,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1C,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACxE,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;AAC5E,CAAC;AAED,4EAA4E;AACrE,KAAK,wBAA2B,UAA6B,EAAE,IAAe;IACnF,MAAM,GAAG,GACP,UAAU,CAAC,QAAQ,KAAK,eAAe,CAAC,EAAE;QACxC,CAAC,CAAC,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC;QACzD,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;IACvB,MAAM,KAAK,GAAG,MAAM,IAAA,wBAAU,EAC5B,GAAG,EACH,UAAU,CAAC,UAAU,EACrB,IAAI,CAAC,WAAW,EAAE,oBAAoB,CACvC,CAAC;IACF,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AAC5D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compression.js","sourceRoot":"","sources":["../../../src/shared/codec/compression.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compression.js","sourceRoot":"","sources":["../../../src/shared/codec/compression.ts"],"names":[],"mappings":";;;;AAAA,yCAAsC;AACtC,yCAAyC;AAEzC,4CAIsB;AACtB,qDAA8D;AAC9D,qDAAiD;AAEjD,MAAM,SAAS,GAAG,IAAA,qBAAS,EAAC,gBAAI,CAAC,CAAC;AAClC,MAAM,WAAW,GAAG,IAAA,qBAAS,EAAC,kBAAM,CAAC,CAAC;AAEtC,kFAAkF;AAClF,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAgBnC;;;;GAIG;AACI,KAAK,mBACV,IAAgB,EAChB,MAAyB;IAEzB,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,IAAI,yCAA6B,CAAC;IACrE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,GAAG,OAAO;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IACxF,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,qCAAyB,CAAC;IACxD,MAAM,OAAO,GAAG,IAAI,UAAU,CAAC,MAAM,SAAS,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IACjE,IAAI,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;QAC3D,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC;IAC5C,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;AAC9C,CAAC;AAED;;;;GAIG;AACI,KAAK,qBACV,IAAgB,EAChB,UAAmB,EACnB,QAAQ,GAAW,0CAA8B;IAEjD,IAAI,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAC7B,IAAI,CAAC;QACH,OAAO,IAAI,UAAU,CAAC,MAAM,WAAW,CAAC,IAAI,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IAChF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,KAA0B,CAAC;QACvC,IAAI,GAAG,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;YACxC,MAAM,IAAI,mCAAsB,CAC9B,+CAA+C,QAAQ,QAAQ,EAC/D,sBAAS,CAAC,iBAAiB,EAC3B,EAAE,EACF,KAAc,CACf,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"descriptor-keys.js","sourceRoot":"","sources":["../../../src/shared/codec/descriptor-keys.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"descriptor-keys.js","sourceRoot":"","sources":["../../../src/shared/codec/descriptor-keys.ts"],"names":[],"mappings":";;;AAAA,mCAAkE;AAElE,4EAA4E;AAC5E,uBAA8B,WAAyC;IACrE,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;QACrC,IAAI,UAAU,CAAC,QAAQ,KAAK,uBAAe,CAAC,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/shared/codec/s3/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/shared/codec/s3/client.ts"],"names":[],"mappings":";;;;AAEA,IAAI,UAAoE,CAAC;AAEzE,gFAAgF;AACzE,KAAK;IACV,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,UAAU,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,yEAAyE;AAClE,KAAK,gCAAgC,MAAsB;IAChE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,MAAM,SAAS,EAAE,CAAC;IACrD,OAAO,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC"}
|
|
@@ -9,7 +9,13 @@ export interface S3OffloadConfig {
|
|
|
9
9
|
clientConfig?: S3ClientConfig;
|
|
10
10
|
createS3Client?: (config: S3ClientConfig) => S3Client;
|
|
11
11
|
}
|
|
12
|
-
/**
|
|
12
|
+
/**
|
|
13
|
+
* Build a fully-qualified S3 key: `${prefix}${parts, each base64url-encoded,
|
|
14
|
+
* joined with '/'}.bin`. Encoding (not rejecting) is what makes two distinct
|
|
15
|
+
* `parts` arrays never collide, since a namespace element or key is allowed
|
|
16
|
+
* to contain '/' (only the DynamoDB '#' separator is forbidden at the
|
|
17
|
+
* validation layer) and base64url's output alphabet never contains '/'.
|
|
18
|
+
*/
|
|
13
19
|
export declare function buildS3Key(prefix: string, parts: readonly string[]): string;
|
|
14
20
|
/** Build a deterministic, TTL-independent lifecycle rule id from the prefix. */
|
|
15
21
|
export declare function buildLifecycleRuleId(prefix: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/shared/codec/s3/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEnE,yDAAyD;AACzD,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,QAAQ,CAAC;CACvD;AAED
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/shared/codec/s3/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEnE,yDAAyD;AACzD,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,QAAQ,CAAC;CACvD;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAG3E;AAED,gFAAgF;AAChF,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG3D"}
|
|
@@ -2,9 +2,16 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.buildS3Key = buildS3Key;
|
|
4
4
|
exports.buildLifecycleRuleId = buildLifecycleRuleId;
|
|
5
|
-
/**
|
|
5
|
+
/**
|
|
6
|
+
* Build a fully-qualified S3 key: `${prefix}${parts, each base64url-encoded,
|
|
7
|
+
* joined with '/'}.bin`. Encoding (not rejecting) is what makes two distinct
|
|
8
|
+
* `parts` arrays never collide, since a namespace element or key is allowed
|
|
9
|
+
* to contain '/' (only the DynamoDB '#' separator is forbidden at the
|
|
10
|
+
* validation layer) and base64url's output alphabet never contains '/'.
|
|
11
|
+
*/
|
|
6
12
|
function buildS3Key(prefix, parts) {
|
|
7
|
-
|
|
13
|
+
const encoded = parts.map((part) => Buffer.from(part, 'utf8').toString('base64url'));
|
|
14
|
+
return `${prefix}${encoded.join('/')}.bin`;
|
|
8
15
|
}
|
|
9
16
|
/** Build a deterministic, TTL-independent lifecycle rule id from the prefix. */
|
|
10
17
|
function buildLifecycleRuleId(prefix) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/shared/codec/s3/config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/shared/codec/s3/config.ts"],"names":[],"mappings":";;;;AAaA;;;;;;GAMG;AACH,oBAA2B,MAAc,EAAE,KAAwB;IACjE,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACrF,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;AAC7C,CAAC;AAED,gFAAgF;AAChF,8BAAqC,MAAc;IACjD,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,IAAI,SAAS,CAAC;IACpF,OAAO,iBAAiB,IAAI,EAAE,CAAC;AACjC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../src/shared/codec/s3/delete.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../../src/shared/codec/s3/delete.ts"],"names":[],"mappings":";;;AAEA,+CAAsD;AACtD,qCAAqC;AAErC;;;;GAIG;AACI,KAAK,wBACV,MAAgB,EAChB,MAAc,EACd,IAAc;IAEd,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACjC,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;IACnD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,+BAAmB,EAAE,CAAC;QACzE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,+BAAmB,CAAC,CAAC;QAC/D,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAChC,IAAI,oBAAoB,CAAC;YACvB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;SACrE,CAAC,CACH,CAAC;QACF,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;YAC1C,IAAI,KAAK,CAAC,GAAG;gBAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../../src/shared/codec/s3/lifecycle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../../../src/shared/codec/s3/lifecycle.ts"],"names":[],"mappings":";;;AAEA,qCAAqC;AACrC,qCAAgD;AAEhD,KAAK,UAAU,SAAS,CAAC,MAAgB,EAAE,MAAc;IACvD,MAAM,EAAE,sCAAsC,EAAE,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;IACrE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAChC,IAAI,sCAAsC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAC/D,CAAC;QACF,OAAO,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA2B,CAAC,IAAI,KAAK,8BAA8B;YAAE,OAAO,EAAE,CAAC;QACpF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,IAA+B,EAAE,OAAe;IACtE,OAAO,IAAI,EAAE,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,KAAK,OAAO,CAAC;AACzE,CAAC;AAED;;;;GAIG;AACI,KAAK,8BACV,MAAgB,EAChB,MAAc,EACd,MAAc,EACd,OAAe;IAEf,MAAM,MAAM,GAAG,IAAA,6BAAoB,EAAC,MAAM,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;IAC1D,IAAI,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC;QAAE,OAAO;IAC9C,MAAM,OAAO,GAAkB;QAC7B,EAAE,EAAE,MAAM;QACV,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE;QAC1B,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE;KAC9B,CAAC;IACF,MAAM,MAAM,GAAG,QAAQ;QACrB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC;IACxB,MAAM,EAAE,sCAAsC,EAAE,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;IACrE,MAAM,MAAM,CAAC,IAAI,CACf,IAAI,sCAAsC,CAAC;QACzC,MAAM,EAAE,MAAM;QACd,sBAAsB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;KAC1C,CAAC,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -4,7 +4,8 @@ import { S3OffloadConfig } from './config';
|
|
|
4
4
|
* S3 client and delegates all real work; every method is a small delegation.
|
|
5
5
|
*/
|
|
6
6
|
export declare class S3Offloader {
|
|
7
|
-
private
|
|
7
|
+
private clientPromise;
|
|
8
|
+
private resolvedClient;
|
|
8
9
|
private readonly bucketName;
|
|
9
10
|
private readonly keyPrefix;
|
|
10
11
|
private readonly thresholdBytes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"offloader.d.ts","sourceRoot":"","sources":["../../../../src/shared/codec/s3/offloader.ts"],"names":[],"mappings":"AAIA,OAAO,EAAc,eAAe,EAAE,MAAM,UAAU,CAAC;AAKvD;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"offloader.d.ts","sourceRoot":"","sources":["../../../../src/shared/codec/s3/offloader.ts"],"names":[],"mappings":"AAIA,OAAO,EAAc,eAAe,EAAE,MAAM,UAAU,CAAC;AAKvD;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,aAAa,CAAgC;IACrD,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkB;IAEzC,YAAY,MAAM,EAAE,eAAe,EAOlC;IAED,OAAO,CAAC,SAAS;IAqBjB,8DAA8D;IAC9D,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAEvC;IAED,gDAAgD;IAChD,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAEzC;IAED,iCAAiC;IACjC,YAAY,IAAI,MAAM,CAErB;IAED,oDAAoD;IAC9C,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAS3D;IAED,6CAA6C;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAE/C;IAED,+DAA+D;IACzD,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAEnD;IAED,iFAAiF;IAC3E,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAExD;IAED,4DAA4D;IAC5D,OAAO,IAAI,IAAI,CAEd;CACF"}
|