@powerhousedao/reactor 5.0.1-staging.12 → 5.0.1-staging.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/dist/src/cache/index.d.ts +3 -0
  2. package/dist/src/cache/index.d.ts.map +1 -0
  3. package/dist/src/cache/index.js +2 -0
  4. package/dist/src/cache/index.js.map +1 -0
  5. package/dist/src/cache/kysely-operation-index.d.ts +13 -0
  6. package/dist/src/cache/kysely-operation-index.d.ts.map +1 -0
  7. package/dist/src/cache/kysely-operation-index.js +207 -0
  8. package/dist/src/cache/kysely-operation-index.js.map +1 -0
  9. package/dist/src/cache/kysely-write-cache.d.ts +1 -1
  10. package/dist/src/cache/kysely-write-cache.d.ts.map +1 -1
  11. package/dist/src/cache/operation-index-types.d.ts +49 -0
  12. package/dist/src/cache/operation-index-types.d.ts.map +1 -0
  13. package/dist/src/cache/operation-index-types.js +4 -0
  14. package/dist/src/cache/operation-index-types.js.map +1 -0
  15. package/dist/src/cache/{types.d.ts → write-cache-types.d.ts} +1 -1
  16. package/dist/src/cache/write-cache-types.d.ts.map +1 -0
  17. package/dist/src/cache/write-cache-types.js +2 -0
  18. package/dist/src/cache/write-cache-types.js.map +1 -0
  19. package/dist/src/core/reactor-builder.d.ts +1 -1
  20. package/dist/src/core/reactor-builder.d.ts.map +1 -1
  21. package/dist/src/core/reactor-builder.js +3 -1
  22. package/dist/src/core/reactor-builder.js.map +1 -1
  23. package/dist/src/core/reactor.d.ts.map +1 -1
  24. package/dist/src/core/reactor.js +0 -3
  25. package/dist/src/core/reactor.js.map +1 -1
  26. package/dist/src/executor/simple-job-executor.d.ts +3 -1
  27. package/dist/src/executor/simple-job-executor.d.ts.map +1 -1
  28. package/dist/src/executor/simple-job-executor.js +90 -17
  29. package/dist/src/executor/simple-job-executor.js.map +1 -1
  30. package/dist/src/index.d.ts +1 -1
  31. package/dist/src/index.d.ts.map +1 -1
  32. package/dist/src/storage/kysely/types.d.ts +28 -0
  33. package/dist/src/storage/kysely/types.d.ts.map +1 -1
  34. package/dist/src/storage/migrations/009_create_operation_index_tables.d.ts +3 -0
  35. package/dist/src/storage/migrations/009_create_operation_index_tables.d.ts.map +1 -0
  36. package/dist/src/storage/migrations/009_create_operation_index_tables.js +50 -0
  37. package/dist/src/storage/migrations/009_create_operation_index_tables.js.map +1 -0
  38. package/dist/src/storage/migrations/migrator.d.ts.map +1 -1
  39. package/dist/src/storage/migrations/migrator.js +2 -0
  40. package/dist/src/storage/migrations/migrator.js.map +1 -1
  41. package/package.json +3 -3
  42. package/dist/src/cache/types.d.ts.map +0 -1
  43. package/dist/src/cache/types.js +0 -2
  44. package/dist/src/cache/types.js.map +0 -1
@@ -0,0 +1,3 @@
1
+ export type { IOperationIndex, IOperationIndexTxn, OperationIndexEntry, } from "./operation-index-types.js";
2
+ export { KyselyOperationIndex } from "./kysely-operation-index.js";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cache/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { KyselyOperationIndex } from "./kysely-operation-index.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cache/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { Kysely } from "kysely";
2
+ import type { PagedResults, PagingOptions, ViewFilter } from "../storage/interfaces.js";
3
+ import type { Database } from "../storage/kysely/types.js";
4
+ import type { IOperationIndex, IOperationIndexTxn, OperationIndexEntry } from "./operation-index-types.js";
5
+ export declare class KyselyOperationIndex implements IOperationIndex {
6
+ private db;
7
+ constructor(db: Kysely<Database>);
8
+ start(): IOperationIndexTxn;
9
+ commit(txn: IOperationIndexTxn, signal?: AbortSignal): Promise<void>;
10
+ find(collectionId: string, cursor?: number, view?: ViewFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationIndexEntry>>;
11
+ private rowToOperationIndexEntry;
12
+ }
13
+ //# sourceMappingURL=kysely-operation-index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kysely-operation-index.d.ts","sourceRoot":"","sources":["../../../src/cache/kysely-operation-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAGV,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EAEpB,MAAM,4BAA4B,CAAC;AAsEpC,qBAAa,oBAAqB,YAAW,eAAe;IAC9C,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC;IAExC,KAAK,IAAI,kBAAkB;IAIrB,MAAM,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;IAyGpE,IAAI,CACR,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,UAAU,EACjB,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;IA4D7C,OAAO,CAAC,wBAAwB;CAiBjC"}
@@ -0,0 +1,207 @@
1
+ import { sql } from "kysely";
2
+ class KyselyOperationIndexTxn {
3
+ collections = [];
4
+ collectionMemberships = [];
5
+ collectionRemovals = [];
6
+ operations = [];
7
+ createCollection(collectionId) {
8
+ this.collections.push(collectionId);
9
+ }
10
+ addToCollection(collectionId, documentId) {
11
+ const lastOpIndex = this.operations.length - 1;
12
+ if (lastOpIndex < 0) {
13
+ throw new Error("addToCollection must be called after write() - no operations in transaction");
14
+ }
15
+ this.collectionMemberships.push({
16
+ collectionId,
17
+ documentId,
18
+ operationIndex: lastOpIndex,
19
+ });
20
+ }
21
+ removeFromCollection(collectionId, documentId) {
22
+ const lastOpIndex = this.operations.length - 1;
23
+ if (lastOpIndex < 0) {
24
+ throw new Error("removeFromCollection must be called after write() - no operations in transaction");
25
+ }
26
+ this.collectionRemovals.push({
27
+ collectionId,
28
+ documentId,
29
+ operationIndex: lastOpIndex,
30
+ });
31
+ }
32
+ write(operations) {
33
+ this.operations.push(...operations);
34
+ }
35
+ getCollections() {
36
+ return this.collections;
37
+ }
38
+ getCollectionMemberships() {
39
+ return this.collectionMemberships;
40
+ }
41
+ getCollectionRemovals() {
42
+ return this.collectionRemovals;
43
+ }
44
+ getOperations() {
45
+ return this.operations;
46
+ }
47
+ }
48
+ export class KyselyOperationIndex {
49
+ db;
50
+ constructor(db) {
51
+ this.db = db;
52
+ }
53
+ start() {
54
+ return new KyselyOperationIndexTxn();
55
+ }
56
+ async commit(txn, signal) {
57
+ if (signal?.aborted) {
58
+ throw new Error("Operation aborted");
59
+ }
60
+ const kyselyTxn = txn;
61
+ const collections = kyselyTxn.getCollections();
62
+ const memberships = kyselyTxn.getCollectionMemberships();
63
+ const removals = kyselyTxn.getCollectionRemovals();
64
+ const operations = kyselyTxn.getOperations();
65
+ await this.db.transaction().execute(async (trx) => {
66
+ if (collections.length > 0) {
67
+ const collectionRows = collections.map((collectionId) => ({
68
+ documentId: collectionId,
69
+ collectionId,
70
+ joinedOrdinal: BigInt(0),
71
+ leftOrdinal: null,
72
+ }));
73
+ await trx
74
+ .insertInto("document_collections")
75
+ .values(collectionRows)
76
+ .onConflict((oc) => oc.doNothing())
77
+ .execute();
78
+ }
79
+ let operationOrdinals = [];
80
+ if (operations.length > 0) {
81
+ const operationRows = operations.map((op) => {
82
+ const timestamp = op.timestampUtcMs;
83
+ let timestampMs;
84
+ if (/^\d+$/.test(timestamp)) {
85
+ timestampMs = Number(timestamp);
86
+ }
87
+ else {
88
+ timestampMs = new Date(timestamp).getTime();
89
+ }
90
+ return {
91
+ opId: op.id || "",
92
+ documentId: op.documentId,
93
+ documentType: op.documentType,
94
+ scope: op.scope,
95
+ branch: op.branch,
96
+ timestampUtcMs: BigInt(timestampMs || 0),
97
+ index: op.index,
98
+ skip: op.skip,
99
+ hash: op.hash,
100
+ action: op.action,
101
+ };
102
+ });
103
+ const insertedOps = await trx
104
+ .insertInto("operation_index_operations")
105
+ .values(operationRows)
106
+ .returning("ordinal")
107
+ .execute();
108
+ operationOrdinals = insertedOps.map((row) => row.ordinal);
109
+ }
110
+ if (memberships.length > 0) {
111
+ for (const m of memberships) {
112
+ // this is guaranteed to be defined because we enforce in KyselyOperationIndexTxn
113
+ const ordinal = operationOrdinals[m.operationIndex];
114
+ await trx
115
+ .insertInto("document_collections")
116
+ .values({
117
+ documentId: m.documentId,
118
+ collectionId: m.collectionId,
119
+ joinedOrdinal: BigInt(ordinal),
120
+ leftOrdinal: null,
121
+ })
122
+ .onConflict((oc) => oc.columns(["documentId", "collectionId"]).doUpdateSet({
123
+ joinedOrdinal: BigInt(ordinal),
124
+ leftOrdinal: null,
125
+ }))
126
+ .execute();
127
+ }
128
+ }
129
+ if (removals.length > 0) {
130
+ for (const r of removals) {
131
+ // this is guaranteed to be defined because we enforce in KyselyOperationIndexTxn
132
+ const ordinal = operationOrdinals[r.operationIndex];
133
+ await trx
134
+ .updateTable("document_collections")
135
+ .set({
136
+ leftOrdinal: BigInt(ordinal),
137
+ })
138
+ .where("collectionId", "=", r.collectionId)
139
+ .where("documentId", "=", r.documentId)
140
+ .where("leftOrdinal", "is", null)
141
+ .execute();
142
+ }
143
+ }
144
+ });
145
+ }
146
+ async find(collectionId, cursor, view, paging, signal) {
147
+ if (signal?.aborted) {
148
+ throw new Error("Operation aborted");
149
+ }
150
+ let query = this.db
151
+ .selectFrom("operation_index_operations as oi")
152
+ .innerJoin("document_collections as dc", "oi.documentId", "dc.documentId")
153
+ .selectAll("oi")
154
+ .select(["dc.documentId", "dc.collectionId"])
155
+ .where("dc.collectionId", "=", collectionId)
156
+ .whereRef("oi.ordinal", ">=", "dc.joinedOrdinal")
157
+ .where(sql `dc."leftOrdinal" IS NULL OR oi.ordinal < dc."leftOrdinal"`)
158
+ .orderBy("oi.ordinal", "asc");
159
+ if (cursor !== undefined) {
160
+ query = query.where("oi.ordinal", ">", cursor);
161
+ }
162
+ if (view?.branch) {
163
+ query = query.where("oi.branch", "=", view.branch);
164
+ }
165
+ if (view?.scopes && view.scopes.length > 0) {
166
+ query = query.where("oi.scope", "in", view.scopes);
167
+ }
168
+ if (paging?.cursor) {
169
+ const cursorOrdinal = Number.parseInt(paging.cursor, 10);
170
+ query = query.where("oi.ordinal", ">", cursorOrdinal);
171
+ }
172
+ if (paging?.limit) {
173
+ query = query.limit(paging.limit + 1);
174
+ }
175
+ const rows = await query.execute();
176
+ let hasMore = false;
177
+ let items = rows;
178
+ if (paging?.limit && rows.length > paging.limit) {
179
+ hasMore = true;
180
+ items = rows.slice(0, paging.limit);
181
+ }
182
+ const nextCursor = hasMore && items.length > 0
183
+ ? items[items.length - 1].ordinal.toString()
184
+ : undefined;
185
+ return {
186
+ items: items.map((row) => this.rowToOperationIndexEntry(row)),
187
+ nextCursor,
188
+ hasMore,
189
+ };
190
+ }
191
+ rowToOperationIndexEntry(row) {
192
+ return {
193
+ ordinal: row.ordinal,
194
+ documentId: row.documentId,
195
+ documentType: row.documentType,
196
+ branch: row.branch,
197
+ scope: row.scope,
198
+ index: row.index,
199
+ timestampUtcMs: row.timestampUtcMs.toString(),
200
+ hash: row.hash,
201
+ skip: row.skip,
202
+ action: row.action,
203
+ id: row.opId,
204
+ };
205
+ }
206
+ }
207
+ //# sourceMappingURL=kysely-operation-index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kysely-operation-index.js","sourceRoot":"","sources":["../../../src/cache/kysely-operation-index.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import type { PHDocument } from "document-model";
2
2
  import type { IDocumentModelRegistry } from "../registry/interfaces.js";
3
3
  import type { IKeyframeStore, IOperationStore } from "../storage/interfaces.js";
4
4
  import { RingBuffer } from "./buffer/ring-buffer.js";
5
- import type { CachedSnapshot, WriteCacheConfig } from "./types.js";
5
+ import type { CachedSnapshot, WriteCacheConfig } from "./write-cache-types.js";
6
6
  import type { IWriteCache } from "./write/interfaces.js";
7
7
  type DocumentStream = {
8
8
  key: string;
@@ -1 +1 @@
1
- {"version":3,"file":"kysely-write-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/kysely-write-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwB,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAMvE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,KAAK,cAAc,GAAG;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;CACxC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAClD,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,MAAM,CAA6B;gBAGzC,aAAa,EAAE,cAAc,EAC7B,cAAc,EAAE,eAAe,EAC/B,QAAQ,EAAE,sBAAsB,EAChC,MAAM,EAAE,gBAAgB;IAc1B;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B;;;;;;;;;;;;;;;;;;OAkBG;IACG,QAAQ,CACZ,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC;IAiEtB;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CACN,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,IAAI;IAuBP;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IA+BvE;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;;OAGG;IACH,SAAS,CACP,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,cAAc,GAAG,SAAS;YAKf,mBAAmB;YAoBnB,eAAe;YAmJf,eAAe;IA6D7B,OAAO,CAAC,wBAAwB;IAiBhC,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,kBAAkB;CAG3B"}
1
+ {"version":3,"file":"kysely-write-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/kysely-write-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAwB,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAMvE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,KAAK,cAAc,GAAG;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;CACxC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAClD,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,MAAM,CAA6B;gBAGzC,aAAa,EAAE,cAAc,EAC7B,cAAc,EAAE,eAAe,EAC/B,QAAQ,EAAE,sBAAsB,EAChC,MAAM,EAAE,gBAAgB;IAc1B;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B;;;;;;;;;;;;;;;;;;OAkBG;IACG,QAAQ,CACZ,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC;IAiEtB;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CACN,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,IAAI;IAuBP;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IA+BvE;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;;OAGG;IACH,SAAS,CACP,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,cAAc,GAAG,SAAS;YAKf,mBAAmB;YAoBnB,eAAe;YAmJf,eAAe;IA6D7B,OAAO,CAAC,wBAAwB;IAiBhC,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,kBAAkB;CAG3B"}
@@ -0,0 +1,49 @@
1
+ import type { Operation } from "document-model";
2
+ import type { Generated, Insertable, Selectable, Updateable } from "kysely";
3
+ import type { PagedResults, PagingOptions, ViewFilter } from "../storage/interfaces.js";
4
+ export type OperationIndexEntry = Operation & {
5
+ ordinal?: number;
6
+ documentId: string;
7
+ documentType: string;
8
+ branch: string;
9
+ scope: string;
10
+ };
11
+ export interface IOperationIndexTxn {
12
+ createCollection(collectionId: string): void;
13
+ addToCollection(collectionId: string, documentId: string): void;
14
+ removeFromCollection(collectionId: string, documentId: string): void;
15
+ write(operations: OperationIndexEntry[]): void;
16
+ }
17
+ export interface IOperationIndex {
18
+ start(): IOperationIndexTxn;
19
+ commit(txn: IOperationIndexTxn, signal?: AbortSignal): Promise<void>;
20
+ find(collectionId: string, cursor?: number, view?: ViewFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationIndexEntry>>;
21
+ }
22
+ export interface DocumentCollectionTable {
23
+ documentId: string;
24
+ collectionId: string;
25
+ joinedOrdinal: bigint;
26
+ leftOrdinal: bigint | null;
27
+ }
28
+ export interface OperationIndexOperationTable {
29
+ ordinal: Generated<number>;
30
+ opId: string;
31
+ documentId: string;
32
+ documentType: string;
33
+ scope: string;
34
+ branch: string;
35
+ timestampUtcMs: bigint;
36
+ writeTimestampUtcMs: Generated<Date>;
37
+ index: number;
38
+ skip: number;
39
+ hash: string;
40
+ action: unknown;
41
+ }
42
+ export type DocumentCollectionRow = Selectable<DocumentCollectionTable>;
43
+ export type InsertableDocumentCollection = Insertable<DocumentCollectionTable>;
44
+ export type UpdateableDocumentCollection = Updateable<DocumentCollectionTable>;
45
+ export type OperationIndexOperationRow = Selectable<OperationIndexOperationTable>;
46
+ export type InsertableOperationIndexOperation = Insertable<OperationIndexOperationTable>;
47
+ export type UpdateableOperationIndexOperation = Updateable<OperationIndexOperationTable>;
48
+ export declare function driveCollectionId(branch: string, driveId: string): string;
49
+ //# sourceMappingURL=operation-index-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-index-types.d.ts","sourceRoot":"","sources":["../../../src/cache/operation-index-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC5E,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,0BAA0B,CAAC;AAElC,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,WAAW,kBAAkB;IACjC,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAChE,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACrE,KAAK,CAAC,UAAU,EAAE,mBAAmB,EAAE,GAAG,IAAI,CAAC;CAChD;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,IAAI,kBAAkB,CAAC;IAC5B,MAAM,CAAC,GAAG,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrE,IAAI,CACF,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,UAAU,EACjB,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,uBAAuB,CAAC,CAAC;AAC/E,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,uBAAuB,CAAC,CAAC;AAE/E,MAAM,MAAM,0BAA0B,GACpC,UAAU,CAAC,4BAA4B,CAAC,CAAC;AAC3C,MAAM,MAAM,iCAAiC,GAC3C,UAAU,CAAC,4BAA4B,CAAC,CAAC;AAC3C,MAAM,MAAM,iCAAiC,GAC3C,UAAU,CAAC,4BAA4B,CAAC,CAAC;AAE3C,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzE"}
@@ -0,0 +1,4 @@
1
+ export function driveCollectionId(branch, driveId) {
2
+ return `drive.${branch}.${driveId}`;
3
+ }
4
+ //# sourceMappingURL=operation-index-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operation-index-types.js","sourceRoot":"","sources":["../../../src/cache/operation-index-types.ts"],"names":[],"mappings":"AAoEA,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,OAAe;IAC/D,OAAO,SAAS,MAAM,IAAI,OAAO,EAAE,CAAC;AACtC,CAAC"}
@@ -39,4 +39,4 @@ export type KeyframeSnapshot = {
39
39
  /** Serialized document state */
40
40
  document: string;
41
41
  };
42
- //# sourceMappingURL=types.d.ts.map
42
+ //# sourceMappingURL=write-cache-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-cache-types.d.ts","sourceRoot":"","sources":["../../../src/cache/write-cache-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,gFAAgF;IAChF,YAAY,EAAE,MAAM,CAAC;IAErB,8EAA8E;IAC9E,cAAc,EAAE,MAAM,CAAC;IAEvB,iEAAiE;IACjE,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,0BAA0B;IAC1B,UAAU,EAAE,MAAM,CAAC;IAEnB,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC;IAEd,kBAAkB;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IAEjB,0CAA0C;IAC1C,QAAQ,EAAE,UAAU,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IAEjB,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=write-cache-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-cache-types.js","sourceRoot":"","sources":["../../../src/cache/write-cache-types.ts"],"names":[],"mappings":""}
@@ -1,6 +1,6 @@
1
1
  import type { IDocumentOperationStorage, IDocumentStorage } from "document-drive";
2
2
  import type { DocumentModelModule } from "document-model";
3
- import type { WriteCacheConfig } from "../cache/types.js";
3
+ import type { WriteCacheConfig } from "../cache/write-cache-types.js";
4
4
  import type { IReadModel } from "../read-models/interfaces.js";
5
5
  import type { ExecutorConfig, IReactor, ReactorFeatures } from "./types.js";
6
6
  import type { IJobExecutorManager } from "#executor/interfaces.js";
@@ -1 +1 @@
1
- {"version":3,"file":"reactor-builder.d.ts","sourceRoot":"","sources":["../../../src/core/reactor-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAQ1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAQ/D,OAAO,KAAK,EAEV,cAAc,EACd,QAAQ,EACR,eAAe,EAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAGnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAGxE,MAAM,MAAM,4BAA4B,GAAG,CACzC,QAAQ,EAAE,SAAS,EACnB,UAAU,EAAE,UAAU,EAAE,KACrB,qBAAqB,CAAC;AAE3B,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,OAAO,CAAC,CAA+C;IAC/D,OAAO,CAAC,QAAQ,CAAmD;IACnE,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,cAAc,CAAgC;IACtD,OAAO,CAAC,gBAAgB,CAAC,CAA4B;IACrD,OAAO,CAAC,2BAA2B,CAAC,CAA+B;IACnE,OAAO,CAAC,iBAAiB,CAA6B;IAEtD,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAI;IAKvD,iBAAiB,CACf,OAAO,EAAE,gBAAgB,GAAG,yBAAyB,GACpD,IAAI;IAKP,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAK7C,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;IAK1C,+BAA+B,CAAC,OAAO,EAAE,4BAA4B,GAAG,IAAI;IAK5E,YAAY,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAKjD,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAKzD,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAK7D,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAKjD,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;CAgHjC"}
1
+ {"version":3,"file":"reactor-builder.d.ts","sourceRoot":"","sources":["../../../src/core/reactor-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAG1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAQtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAQ/D,OAAO,KAAK,EAEV,cAAc,EACd,QAAQ,EACR,eAAe,EAChB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAGnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAE1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAExE,MAAM,MAAM,4BAA4B,GAAG,CACzC,QAAQ,EAAE,SAAS,EACnB,UAAU,EAAE,UAAU,EAAE,KACrB,qBAAqB,CAAC;AAE3B,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,OAAO,CAAC,CAA+C;IAC/D,OAAO,CAAC,QAAQ,CAAmD;IACnE,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,eAAe,CAAkC;IACzD,OAAO,CAAC,cAAc,CAAgC;IACtD,OAAO,CAAC,gBAAgB,CAAC,CAA4B;IACrD,OAAO,CAAC,2BAA2B,CAAC,CAA+B;IACnE,OAAO,CAAC,iBAAiB,CAA6B;IAEtD,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,EAAE,GAAG,IAAI;IAKvD,iBAAiB,CACf,OAAO,EAAE,gBAAgB,GAAG,yBAAyB,GACpD,IAAI;IAKP,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAK7C,aAAa,CAAC,SAAS,EAAE,UAAU,GAAG,IAAI;IAK1C,+BAA+B,CAAC,OAAO,EAAE,4BAA4B,GAAG,IAAI;IAK5E,YAAY,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAKjD,kBAAkB,CAAC,MAAM,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAKzD,oBAAoB,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAK7D,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAKjD,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;CAqHjC"}
@@ -1,4 +1,5 @@
1
1
  import { ReactorBuilder as DriveReactorBuilder, MemoryStorage, } from "document-drive";
2
+ import { KyselyOperationIndex } from "../cache/kysely-operation-index.js";
2
3
  import { KyselyWriteCache } from "../cache/kysely-write-cache.js";
3
4
  import { EventBus } from "../events/event-bus.js";
4
5
  import { SimpleJobExecutorManager } from "../executor/simple-job-executor-manager.js";
@@ -93,8 +94,9 @@ export class ReactorBuilder {
93
94
  };
94
95
  const writeCache = new KyselyWriteCache(keyframeStore, operationStore, registry, cacheConfig);
95
96
  await writeCache.startup();
97
+ const operationIndex = new KyselyOperationIndex(db);
96
98
  if (!this.executorManager) {
97
- this.executorManager = new SimpleJobExecutorManager(() => new SimpleJobExecutor(registry, storage, storage, operationStore, eventBus, writeCache, { legacyStorageEnabled: this.features.legacyStorageEnabled }), eventBus, queue, jobTracker);
99
+ this.executorManager = new SimpleJobExecutorManager(() => new SimpleJobExecutor(registry, storage, storage, operationStore, eventBus, writeCache, operationIndex, { legacyStorageEnabled: this.features.legacyStorageEnabled }), eventBus, queue, jobTracker);
98
100
  }
99
101
  await this.executorManager.start(this.executorConfig.count);
100
102
  const readModelInstances = Array.from(new Set([...this.readModels]));
@@ -1 +1 @@
1
- {"version":3,"file":"reactor-builder.js","sourceRoot":"","sources":["../../../src/core/reactor-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reactor-builder.js","sourceRoot":"","sources":["../../../src/core/reactor-builder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"reactor.d.ts","sourceRoot":"","sources":["../../../src/core/reactor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reactor.d.ts","sourceRoot":"","sources":["../../../src/core/reactor.ts"],"names":[],"mappings":"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"}
@@ -446,9 +446,6 @@ export class Reactor {
446
446
  if (!operation.timestampUtcMs) {
447
447
  throw new Error(`Operation at position ${index} is missing timestampUtcMs`);
448
448
  }
449
- if (operation.hash === undefined || operation.hash === null) {
450
- throw new Error(`Operation at position ${index} is missing hash`);
451
- }
452
449
  });
453
450
  const createdAtUtcIso = new Date().toISOString();
454
451
  const job = {
@@ -1 +1 @@
1
- {"version":3,"file":"reactor.js","sourceRoot":"","sources":["../../../src/core/reactor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reactor.js","sourceRoot":"","sources":["../../../src/core/reactor.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { IDocumentOperationStorage, IDocumentStorage } from "document-drive";
2
+ import type { IOperationIndex } from "../cache/operation-index-types.js";
2
3
  import type { IWriteCache } from "../cache/write/interfaces.js";
3
4
  import type { IEventBus } from "../events/interfaces.js";
4
5
  import type { Job } from "../queue/types.js";
@@ -20,8 +21,9 @@ export declare class SimpleJobExecutor implements IJobExecutor {
20
21
  private operationStore;
21
22
  private eventBus;
22
23
  private writeCache;
24
+ private operationIndex;
23
25
  private config;
24
- constructor(registry: IDocumentModelRegistry, documentStorage: IDocumentStorage, operationStorage: IDocumentOperationStorage, operationStore: IOperationStore, eventBus: IEventBus, writeCache: IWriteCache, config: JobExecutorConfig);
26
+ constructor(registry: IDocumentModelRegistry, documentStorage: IDocumentStorage, operationStorage: IDocumentOperationStorage, operationStore: IOperationStore, eventBus: IEventBus, writeCache: IWriteCache, operationIndex: IOperationIndex, config: JobExecutorConfig);
25
27
  /**
26
28
  * Execute a single job by applying all its actions through the appropriate reducers.
27
29
  * Actions are processed sequentially in order.