@spine-event-engine/storage-datastore 2.0.0-snapshot.22 → 2.0.0-snapshot.23

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-execution.js","sourceRoot":"","sources":["../../src/datastore/agent-execution.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,108 @@
1
+ import type { AgentHistoryEntry } from "@spine-event-engine/proto/agent";
2
+ import type { AgentHistoryRecord } from "@spine-event-engine/proto/generated/spine/server/agent/history_record_pb.js";
3
+ import { type AgentHistoryPage, type AgentHistoryRead, type AgentHistoryStorage, type AgentHistoryStorageInput } from "@spine-event-engine/storage/provider";
4
+ import { DatastoreRecordStorage } from "./record-storage.js";
5
+ /**
6
+ * Hashes complete identities into bounded physical IDs and indexed scope keys.
7
+ */
8
+ export declare const AgentHistoryHash: {
9
+ /**
10
+ * Calculates the fixed-width digest of a complete logical identity.
11
+ *
12
+ * @param value Complete logical identity.
13
+ * @returns Full SHA-256 hex digest.
14
+ */
15
+ value(value: string): string;
16
+ };
17
+ /**
18
+ * Stores Agent history in the shared Datastore immutable record kind.
19
+ *
20
+ * @typeParam Id Typed Agent identifier.
21
+ */
22
+ export declare class DatastoreAgentHistory<Id> implements AgentHistoryStorage<Id> {
23
+ #private;
24
+ private readonly input;
25
+ private readonly records;
26
+ /**
27
+ * Binds one typed Agent repository to the provider record handle.
28
+ *
29
+ * @param input Repository and complete tenant scope.
30
+ * @param records Native record-family storage.
31
+ */
32
+ constructor(input: AgentHistoryStorageInput<Id>, records: DatastoreRecordStorage<string, AgentHistoryRecord>);
33
+ /**
34
+ * Writes one original entry or confirms byte-identical content.
35
+ *
36
+ * @param entityId Typed Agent identifier.
37
+ * @param entry Complete history entry.
38
+ * @returns Completion after immutable storage confirms the entry.
39
+ */
40
+ append(entityId: Id, entry: AgentHistoryEntry): Promise<void>;
41
+ /**
42
+ * Reads a bounded indexed page in full Timestamp/category/UTF-8 order.
43
+ *
44
+ * @param request Typed Agent, view, continuation, and response limits.
45
+ * @returns Original entries and continuation status.
46
+ */
47
+ read(request: AgentHistoryRead<Id>): Promise<AgentHistoryPage>;
48
+ /**
49
+
50
+ * Closes this handle without deleting stored records.
51
+
52
+ */
53
+ close(): void;
54
+ /**
55
+ * Reads bounded native pages with complete scope and view predicates.
56
+ *
57
+ * @param agentKey Canonical Agent key.
58
+ * @param request View and response bounds.
59
+ * @param after Exclusive encoded order key.
60
+ * @param limit Maximum native rows for this chunk.
61
+ * @returns Complete original stored records.
62
+ */
63
+ private fetch;
64
+ /**
65
+ * Adds one indexed category or conversation predicate.
66
+ *
67
+ * @param request Selected history view.
68
+ * @param filters Mutable native Datastore filters.
69
+ */
70
+ private viewPredicate;
71
+ /**
72
+ * Rejects a digest collision rather than exposing another repository's row.
73
+ *
74
+ * @param record Decoded original storage envelope.
75
+ * @param agentKey Complete requested Agent key.
76
+ * @param request Selected view and conversation.
77
+ * @returns Record after its complete scope is checked.
78
+ */
79
+ private assertScope;
80
+ /**
81
+ * Validates view identity and complete-key continuation category.
82
+ *
83
+ * @param request View and continuation key.
84
+ */
85
+ private validateView;
86
+ /**
87
+ * Converts a typed Agent ID to its canonical key.
88
+ *
89
+ * @param id Typed Agent identifier.
90
+ * @returns Canonical storage key.
91
+ */
92
+ private key;
93
+ /**
94
+
95
+ * Rejects calls after this handle closes.
96
+
97
+ */
98
+ private requireOpen;
99
+ /**
100
+ * Compares complete stored Proto bytes for immutable repeats.
101
+ *
102
+ * @param left Existing complete storage record.
103
+ * @param right Requested complete storage record.
104
+ * @returns Whether both records have identical serialized bytes.
105
+ */
106
+ private sameRecord;
107
+ }
108
+ //# sourceMappingURL=agent-history.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-history.d.ts","sourceRoot":"","sources":["../../src/datastore/agent-history.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,6EAA6E,CAAC;AACtH,OAAO,EAGL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC9B,MAAM,sCAAsC,CAAC;AAG9C,OAAO,EACL,sBAAsB,EAGvB,MAAM,qBAAqB,CAAC;AAE7B;;GAEG;AACH,eAAO,MAAM,gBAAgB;IAC3B;;;;;OAKG;iBACU,MAAM,GAAG,MAAM;CAG7B,CAAC;AAEF;;;;GAIG;AACH,qBAAa,qBAAqB,CAAC,EAAE,CAAE,YAAW,mBAAmB,CAAC,EAAE,CAAC;;IAarE,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAR1B;;;;;OAKG;gBAEgB,KAAK,EAAE,wBAAwB,CAAC,EAAE,CAAC,EACnC,OAAO,EAAE,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,CAAC;IAG9E;;;;;;OAMG;IACG,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAYnE;;;;;OAKG;IACG,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAWpE;;;;OAIG;IACH,KAAK,IAAI,IAAI;IAMb;;;;;;;;OAQG;YACW,KAAK;IA+BnB;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAcrB;;;;;;;OAOG;IACH,OAAO,CAAC,WAAW;IAgBnB;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAQpB;;;;;OAKG;IACH,OAAO,CAAC,GAAG;IAMX;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAInB;;;;;;OAMG;IACH,OAAO,CAAC,UAAU;CAKnB"}
@@ -0,0 +1,219 @@
1
+ /*
2
+ * Copyright 2026, CodeMatters. All rights reserved.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
5
+ * in compliance with the License. You may obtain a copy of the License at
6
+ *
7
+ * https://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
10
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11
+ * or implied. See the License for the specific language governing permissions and limitations under
12
+ * the License.
13
+ */
14
+ import { createHash } from "node:crypto";
15
+ import { toBinary } from "@bufbuild/protobuf";
16
+ import { AgentHistoryRecordSchema } from "@spine-event-engine/proto/generated/spine/server/agent/history_record_pb.js";
17
+ import { AgentHistoryKeys, AgentHistoryPages, } from "@spine-event-engine/storage/provider";
18
+ import { AgentHistoryRecords } from "@spine-event-engine/storage/provider";
19
+ import { DatastoreRecordStorage, } from "./record-storage.js";
20
+ /**
21
+ * Hashes complete identities into bounded physical IDs and indexed scope keys.
22
+ */
23
+ export const AgentHistoryHash = {
24
+ /**
25
+ * Calculates the fixed-width digest of a complete logical identity.
26
+ *
27
+ * @param value Complete logical identity.
28
+ * @returns Full SHA-256 hex digest.
29
+ */
30
+ value(value) {
31
+ return createHash("sha256").update(value, "utf8").digest("hex");
32
+ },
33
+ };
34
+ /**
35
+ * Stores Agent history in the shared Datastore immutable record kind.
36
+ *
37
+ * @typeParam Id Typed Agent identifier.
38
+ */
39
+ export class DatastoreAgentHistory {
40
+ input;
41
+ records;
42
+ /**
43
+ * Records whether this handle accepts calls.
44
+ */
45
+ #open = true;
46
+ /**
47
+ * Binds one typed Agent repository to the provider record handle.
48
+ *
49
+ * @param input Repository and complete tenant scope.
50
+ * @param records Native record-family storage.
51
+ */
52
+ constructor(input, records) {
53
+ this.input = input;
54
+ this.records = records;
55
+ }
56
+ /**
57
+ * Writes one original entry or confirms byte-identical content.
58
+ *
59
+ * @param entityId Typed Agent identifier.
60
+ * @param entry Complete history entry.
61
+ * @returns Completion after immutable storage confirms the entry.
62
+ */
63
+ async append(entityId, entry) {
64
+ this.requireOpen();
65
+ if (AgentHistoryKeys.indexValue(AgentHistoryKeys.fromEntry(entry)).length > 1500)
66
+ throw new RangeError("Agent history ordering key exceeds the Datastore indexed-value limit.");
67
+ const record = AgentHistoryRecords.record(this.input.stateType, this.key(entityId), entry);
68
+ const id = AgentHistoryHash.value(AgentHistoryRecords.slot(record));
69
+ if (await this.records.compareAndSet(id, undefined, record))
70
+ return;
71
+ const stored = await this.records.read(id);
72
+ if (stored !== undefined && this.sameRecord(stored, record))
73
+ return;
74
+ throw new Error("Datastore Agent history record ID conflicts with immutable content.");
75
+ }
76
+ /**
77
+ * Reads a bounded indexed page in full Timestamp/category/UTF-8 order.
78
+ *
79
+ * @param request Typed Agent, view, continuation, and response limits.
80
+ * @returns Original entries and continuation status.
81
+ */
82
+ async read(request) {
83
+ this.requireOpen();
84
+ const agentKey = this.key(request.entityId);
85
+ const after = request.after === undefined ? undefined : AgentHistoryKeys.indexValue(request.after);
86
+ this.validateView(request);
87
+ return AgentHistoryPages.read(request, after, (cursor, limit) => this.fetch(agentKey, request, cursor, limit));
88
+ }
89
+ /**
90
+
91
+ * Closes this handle without deleting stored records.
92
+
93
+ */
94
+ close() {
95
+ if (!this.#open)
96
+ return;
97
+ this.#open = false;
98
+ this.records.close();
99
+ }
100
+ /**
101
+ * Reads bounded native pages with complete scope and view predicates.
102
+ *
103
+ * @param agentKey Canonical Agent key.
104
+ * @param request View and response bounds.
105
+ * @param after Exclusive encoded order key.
106
+ * @param limit Maximum native rows for this chunk.
107
+ * @returns Complete original stored records.
108
+ */
109
+ async fetch(agentKey, request, after, limit) {
110
+ const filters = [
111
+ {
112
+ property: "scope_digest",
113
+ operator: "=",
114
+ value: AgentHistoryHash.value(AgentHistoryRecords.scope(this.input.stateType, agentKey)),
115
+ },
116
+ ];
117
+ this.viewPredicate(request, filters);
118
+ if (after !== undefined)
119
+ filters.push({ property: "order_key", operator: ">", value: after });
120
+ const result = [];
121
+ let cursor;
122
+ do {
123
+ const page = await this.records.queryProviderPage({
124
+ filters,
125
+ order: [{ property: "order_key", direction: "asc" }],
126
+ limit: limit - result.length,
127
+ ...(cursor === undefined ? {} : { cursor }),
128
+ });
129
+ result.push(...page.entries.map(({ record }) => this.assertScope(record, agentKey, request)));
130
+ cursor = page.cursor;
131
+ if (!page.hasMore)
132
+ break;
133
+ } while (result.length < limit && cursor !== undefined);
134
+ return result;
135
+ }
136
+ /**
137
+ * Adds one indexed category or conversation predicate.
138
+ *
139
+ * @param request Selected history view.
140
+ * @param filters Mutable native Datastore filters.
141
+ */
142
+ viewPredicate(request, filters) {
143
+ if (request.view.kind === "full")
144
+ return;
145
+ if (request.view.kind === "conversation") {
146
+ const conversation = request.view.conversation.value;
147
+ filters.push({
148
+ property: "conversation_digest",
149
+ operator: "=",
150
+ value: AgentHistoryHash.value(conversation),
151
+ });
152
+ return;
153
+ }
154
+ filters.push({ property: "category", operator: "=", value: request.view.kind });
155
+ }
156
+ /**
157
+ * Rejects a digest collision rather than exposing another repository's row.
158
+ *
159
+ * @param record Decoded original storage envelope.
160
+ * @param agentKey Complete requested Agent key.
161
+ * @param request Selected view and conversation.
162
+ * @returns Record after its complete scope is checked.
163
+ */
164
+ assertScope(record, agentKey, request) {
165
+ if (record.scope?.stateType !== this.input.stateType || record.scope.agentKey !== agentKey)
166
+ throw new Error("Datastore Agent history scope digest collides.");
167
+ if (request.view.kind === "conversation" &&
168
+ (record.entry?.item.case !== "conversationRecord" ||
169
+ record.entry.item.value.conversation?.value !== request.view.conversation.value))
170
+ throw new Error("Datastore Agent history conversation digest collides.");
171
+ return record;
172
+ }
173
+ /**
174
+ * Validates view identity and complete-key continuation category.
175
+ *
176
+ * @param request View and continuation key.
177
+ */
178
+ validateView(request) {
179
+ const kind = request.view.kind;
180
+ if (kind === "conversation" && request.view.conversation.value.length === 0)
181
+ throw new TypeError("Conversation history requires a ConversationId.");
182
+ if (request.after !== undefined && kind !== "full" && request.after.category !== kind)
183
+ throw new TypeError("Agent history boundary category does not match the view.");
184
+ }
185
+ /**
186
+ * Converts a typed Agent ID to its canonical key.
187
+ *
188
+ * @param id Typed Agent identifier.
189
+ * @returns Canonical storage key.
190
+ */
191
+ key(id) {
192
+ const key = this.input.id.key(id);
193
+ if (key.length === 0)
194
+ throw new TypeError("Agent history Entity ID is required.");
195
+ return key;
196
+ }
197
+ /**
198
+
199
+ * Rejects calls after this handle closes.
200
+
201
+ */
202
+ requireOpen() {
203
+ if (!this.#open)
204
+ throw new Error("Agent history storage handle is closed.");
205
+ }
206
+ /**
207
+ * Compares complete stored Proto bytes for immutable repeats.
208
+ *
209
+ * @param left Existing complete storage record.
210
+ * @param right Requested complete storage record.
211
+ * @returns Whether both records have identical serialized bytes.
212
+ */
213
+ sameRecord(left, right) {
214
+ const first = toBinary(AgentHistoryRecordSchema, left);
215
+ const second = toBinary(AgentHistoryRecordSchema, right);
216
+ return first.length === second.length && first.every((byte, index) => byte === second[index]);
217
+ }
218
+ }
219
+ //# sourceMappingURL=agent-history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-history.js","sourceRoot":"","sources":["../../src/datastore/agent-history.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,6EAA6E,CAAC;AAGvH,OAAO,EACL,gBAAgB,EAChB,iBAAiB,GAKlB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAE3E,OAAO,EACL,sBAAsB,GAGvB,MAAM,qBAAqB,CAAC;AAE7B;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B;;;;;OAKG;IACH,KAAK,CAAC,KAAa;QACjB,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClE,CAAC;CACF,CAAC;AAEF;;;;GAIG;AACH,MAAM,OAAO,qBAAqB;IAab;IACA;IAbnB;;OAEG;IACH,KAAK,GAAG,IAAI,CAAC;IAEb;;;;;OAKG;IACH,YACmB,KAAmC,EACnC,OAA2D;QAD3D,UAAK,GAAL,KAAK,CAA8B;QACnC,YAAO,GAAP,OAAO,CAAoD;IAC3E,CAAC;IAEJ;;;;;;OAMG;IACH,KAAK,CAAC,MAAM,CAAC,QAAY,EAAE,KAAwB;QACjD,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,gBAAgB,CAAC,UAAU,CAAC,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI;YAC9E,MAAM,IAAI,UAAU,CAAC,uEAAuE,CAAC,CAAC;QAChG,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3F,MAAM,EAAE,GAAG,gBAAgB,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QACpE,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC;YAAE,OAAO;QACpE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC;YAAE,OAAO;QACpE,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;IACzF,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,IAAI,CAAC,OAA6B;QACtC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,KAAK,GACT,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACvF,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC3B,OAAO,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAC9D,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAC7C,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,KAAK,CACjB,QAAgB,EAChB,OAA6B,EAC7B,KAAyB,EACzB,KAAa;QAEb,MAAM,OAAO,GAA2B;YACtC;gBACE,QAAQ,EAAE,cAAc;gBACxB,QAAQ,EAAE,GAAG;gBACb,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;aACzF;SACF,CAAC;QACF,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACrC,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9F,MAAM,MAAM,GAAyB,EAAE,CAAC;QACxC,IAAI,MAAuC,CAAC;QAC5C,GAAG,CAAC;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC;gBAChD,OAAO;gBACP,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;gBACpD,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM;gBAC5B,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;aAC5C,CAAC,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAC9F,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,MAAM;QAC3B,CAAC,QAAQ,MAAM,CAAC,MAAM,GAAG,KAAK,IAAI,MAAM,KAAK,SAAS,EAAE;QACxD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACK,aAAa,CAAC,OAA6B,EAAE,OAA+B;QAClF,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO;QACzC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACzC,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YACrD,OAAO,CAAC,IAAI,CAAC;gBACX,QAAQ,EAAE,qBAAqB;gBAC/B,QAAQ,EAAE,GAAG;gBACb,KAAK,EAAE,gBAAgB,CAAC,KAAK,CAAC,YAAY,CAAC;aAC5C,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IAClF,CAAC;IAED;;;;;;;OAOG;IACK,WAAW,CACjB,MAA0B,EAC1B,QAAgB,EAChB,OAA6B;QAE7B,IAAI,MAAM,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ;YACxF,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACpE,IACE,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc;YACpC,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,oBAAoB;gBAC/C,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC;YAElF,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACK,YAAY,CAAC,OAA6B;QAChD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/B,IAAI,IAAI,KAAK,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YACzE,MAAM,IAAI,SAAS,CAAC,iDAAiD,CAAC,CAAC;QACzE,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,KAAK,IAAI;YACnF,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;IACpF,CAAC;IAED;;;;;OAKG;IACK,GAAG,CAAC,EAAM;QAChB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QAClF,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;OAIG;IACK,WAAW;QACjB,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;;OAMG;IACK,UAAU,CAAC,IAAwB,EAAE,KAAyB;QACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,QAAQ,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QACzD,OAAO,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAChG,CAAC;CACF"}
@@ -119,6 +119,13 @@ export declare class DatastoreRecordStorage<I, R extends Message> extends Record
119
119
  readonly data: Record<string, unknown>;
120
120
  readonly excludeFromIndexes: readonly string[];
121
121
  };
122
+ /**
123
+ * Returns the exact tenant-scoped native key for a typed record ID.
124
+ *
125
+ * @param id Complete persisted record identity.
126
+ * @returns Native key for the typed record identity.
127
+ */
128
+ transactionKey(id: I): ReturnType<Datastore["key"]>;
122
129
  /**
123
130
  * Decodes one entity read by a provider-owned multi-record transaction.
124
131
  *
@@ -147,6 +154,15 @@ export declare class DatastoreRecordStorage<I, R extends Message> extends Record
147
154
  * @internal
148
155
  */
149
156
  queryProviderPage(request: DatastorePageQuery): Promise<DatastorePage<I, R>>;
157
+ /**
158
+ * Reads at most two indexed successor records inside the caller's transaction.
159
+ *
160
+ * @param filters Native indexed query predicates.
161
+ * @param orderProperty Native property containing the complete order key.
162
+ * @param transaction Current native transaction.
163
+ * @returns Earliest scoped rows in native order.
164
+ */
165
+ queryTransactionSuccessors(transaction: ReturnType<Datastore["transaction"]>, filters: readonly DatastoreRangeFilter[], orderProperty: string): Promise<readonly R[]>;
150
166
  /**
151
167
  * Deletes a bounded group of provider entries.
152
168
  *
@@ -157,23 +173,27 @@ export declare class DatastoreRecordStorage<I, R extends Message> extends Record
157
173
  deleteProviderEntries(entries: readonly RecordEntry<I, R>[]): Promise<void>;
158
174
  /**
159
175
  * Deletes the record at one storage slot.
176
+ *
160
177
  * @param id The storage slot identifier.
161
178
  * @returns Whether a record was deleted.
162
179
  */
163
180
  protected deleteRecord(id: I): Promise<boolean>;
164
181
  /**
165
182
  * Returns records matching a query.
183
+ *
166
184
  * @param _query The record query.
167
185
  * @returns The matching storage entries.
168
186
  */
169
187
  protected queryRecordEntries(_query: RecordQuery<I>): Promise<readonly RecordEntry<I, R>[]>;
170
188
  /**
171
189
  * Returns the supported Datastore query capabilities.
190
+ *
172
191
  * @returns The supported query capabilities.
173
192
  */
174
193
  protected queryCapabilities(): StorageQueryCapabilities;
175
194
  /**
176
195
  * Returns candidate records for a normalized query plan.
196
+ *
177
197
  * @param plan The normalized query plan.
178
198
  * @returns The candidate storage entries.
179
199
  */
@@ -210,12 +230,14 @@ export declare class DatastoreRecordStorage<I, R extends Message> extends Record
210
230
  private planQuery;
211
231
  /**
212
232
  * Reads the record at one storage slot.
233
+ *
213
234
  * @param id The storage slot identifier.
214
235
  * @returns The stored record, if present.
215
236
  */
216
237
  protected readRecord(id: I): Promise<R | undefined>;
217
238
  /**
218
239
  * Compares and conditionally replaces the record at one storage slot.
240
+ *
219
241
  * @param id The storage slot identifier.
220
242
  * @param expected The expected materialized record.
221
243
  * @param next The replacement materialized record, if any.
@@ -233,12 +255,14 @@ export declare class DatastoreRecordStorage<I, R extends Message> extends Record
233
255
  private attemptCompareAndSet;
234
256
  /**
235
257
  * Writes materialized records.
258
+ *
236
259
  * @param records The materialized records to write.
237
260
  * @returns Completes when the records are written.
238
261
  */
239
262
  protected writeAllRecords(records: readonly ReturnType<RecordSpec<I, R>["materialize"]>[]): Promise<void>;
240
263
  /**
241
264
  * Writes one materialized record.
265
+ *
242
266
  * @param record The materialized record to write.
243
267
  * @returns Completes when the record is written.
244
268
  */
@@ -1 +1 @@
1
- {"version":3,"file":"record-storage.d.ts","sourceRoot":"","sources":["../../src/datastore/record-storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record-storage.d.ts","sourceRoot":"","sources":["../../src/datastore/record-storage.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@
14
14
  import { fromBinary, toBinary } from "@bufbuild/protobuf";
15
15
  import { and, Datastore, or, PropertyFilter } from "@google-cloud/datastore";
16
16
  import { StringifierRegistry } from "@spine-event-engine/core";
17
+ import { AgentHistoryRecordSchema } from "@spine-event-engine/proto/generated/spine/server/agent/history_record_pb.js";
17
18
  import { ColumnMappings, defaultQueryCandidateLimit, RecordStorage, } from "@spine-event-engine/storage";
18
19
  import { TenantBoundary } from "@spine-event-engine/storage/provider";
19
20
  import { StorageQueryValues } from "@spine-event-engine/storage/provider";
@@ -84,6 +85,7 @@ class FlatEntityCodec {
84
85
  }
85
86
  /**
86
87
  * Returns the canonical Datastore key name for a logical record ID.
88
+ *
87
89
  * @param id Typed record identifier.
88
90
  * @returns Key name shared by equivalent logical IDs.
89
91
  */
@@ -138,6 +140,8 @@ class FlatEntityCodec {
138
140
  */
139
141
  unindexedProperties(data) {
140
142
  void data;
143
+ if (this.recordSpec.recordType.typeName === AgentHistoryRecordSchema.typeName)
144
+ return [payloadProperty, "state_type", "agent_key", "conversation_key"];
141
145
  return [payloadProperty];
142
146
  }
143
147
  /**
@@ -227,7 +231,8 @@ class FlatEntityCodec {
227
231
  throw new Error("Datastore entity cannot be decoded.");
228
232
  }
229
233
  try {
230
- return fromBinary(this.recordSpec.recordType, payload, { readUnknownFields: false });
234
+ const bytes = Buffer.isBuffer(payload) ? Uint8Array.from(payload) : payload;
235
+ return fromBinary(this.recordSpec.recordType, bytes, { readUnknownFields: false });
231
236
  }
232
237
  catch {
233
238
  throw new Error("Datastore entity cannot be decoded.");
@@ -308,12 +313,22 @@ export class DatastoreRecordStorage extends RecordStorage {
308
313
  */
309
314
  transactionEntity(record) {
310
315
  const materialized = this.recordSpec.materialize(record);
316
+ const data = this.#codec.encode(materialized.record, materialized.columns);
311
317
  return {
312
318
  key: this.#codec.key(this.client, materialized.id),
313
- data: this.#codec.encode(materialized.record, materialized.columns),
314
- excludeFromIndexes: [payloadProperty],
319
+ data,
320
+ excludeFromIndexes: this.#codec.unindexedProperties(data),
315
321
  };
316
322
  }
323
+ /**
324
+ * Returns the exact tenant-scoped native key for a typed record ID.
325
+ *
326
+ * @param id Complete persisted record identity.
327
+ * @returns Native key for the typed record identity.
328
+ */
329
+ transactionKey(id) {
330
+ return this.#codec.key(this.client, id);
331
+ }
317
332
  /**
318
333
  * Decodes one entity read by a provider-owned multi-record transaction.
319
334
  *
@@ -384,6 +399,23 @@ export class DatastoreRecordStorage extends RecordStorage {
384
399
  hasMore: info.more,
385
400
  };
386
401
  }
402
+ /**
403
+ * Reads at most two indexed successor records inside the caller's transaction.
404
+ *
405
+ * @param filters Native indexed query predicates.
406
+ * @param orderProperty Native property containing the complete order key.
407
+ * @param transaction Current native transaction.
408
+ * @returns Earliest scoped rows in native order.
409
+ */
410
+ async queryTransactionSuccessors(transaction, filters, orderProperty) {
411
+ const query = this.#codec.createQuery(this.client);
412
+ for (const filter of filters)
413
+ query.filter(new PropertyFilter(filter.property, filter.operator, this.#codec.columnValue(filter.property, filter.value)));
414
+ query.order(orderProperty);
415
+ query.limit(2);
416
+ const response = await transaction.runQuery(query, wrappedReadOptions);
417
+ return DatastoreResults.entities(response).map((entity) => this.#codec.decode(entity));
418
+ }
387
419
  /**
388
420
  * Deletes a bounded group of provider entries.
389
421
  *
@@ -400,6 +432,7 @@ export class DatastoreRecordStorage extends RecordStorage {
400
432
  }
401
433
  /**
402
434
  * Deletes the record at one storage slot.
435
+ *
403
436
  * @param id The storage slot identifier.
404
437
  * @returns Whether a record was deleted.
405
438
  */
@@ -414,6 +447,7 @@ export class DatastoreRecordStorage extends RecordStorage {
414
447
  }
415
448
  /**
416
449
  * Returns records matching a query.
450
+ *
417
451
  * @param _query The record query.
418
452
  * @returns The matching storage entries.
419
453
  */
@@ -437,6 +471,7 @@ export class DatastoreRecordStorage extends RecordStorage {
437
471
  }
438
472
  /**
439
473
  * Returns the supported Datastore query capabilities.
474
+ *
440
475
  * @returns The supported query capabilities.
441
476
  */
442
477
  queryCapabilities() {
@@ -447,6 +482,7 @@ export class DatastoreRecordStorage extends RecordStorage {
447
482
  }
448
483
  /**
449
484
  * Returns candidate records for a normalized query plan.
485
+ *
450
486
  * @param plan The normalized query plan.
451
487
  * @returns The candidate storage entries.
452
488
  */
@@ -552,6 +588,7 @@ export class DatastoreRecordStorage extends RecordStorage {
552
588
  }
553
589
  /**
554
590
  * Reads the record at one storage slot.
591
+ *
555
592
  * @param id The storage slot identifier.
556
593
  * @returns The stored record, if present.
557
594
  */
@@ -561,6 +598,7 @@ export class DatastoreRecordStorage extends RecordStorage {
561
598
  }
562
599
  /**
563
600
  * Compares and conditionally replaces the record at one storage slot.
601
+ *
564
602
  * @param id The storage slot identifier.
565
603
  * @param expected The expected materialized record.
566
604
  * @param next The replacement materialized record, if any.
@@ -620,6 +658,7 @@ export class DatastoreRecordStorage extends RecordStorage {
620
658
  }
621
659
  /**
622
660
  * Writes materialized records.
661
+ *
623
662
  * @param records The materialized records to write.
624
663
  * @returns Completes when the records are written.
625
664
  */
@@ -638,6 +677,7 @@ export class DatastoreRecordStorage extends RecordStorage {
638
677
  }
639
678
  /**
640
679
  * Writes one materialized record.
680
+ *
641
681
  * @param record The materialized record to write.
642
682
  * @returns Completes when the record is written.
643
683
  */