@powerhousedao/reactor 5.1.0-dev.21 → 5.1.0-dev.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.
Files changed (52) hide show
  1. package/dist/src/cache/document-meta-cache-types.d.ts +114 -0
  2. package/dist/src/cache/document-meta-cache-types.d.ts.map +1 -0
  3. package/dist/src/cache/document-meta-cache-types.js +2 -0
  4. package/dist/src/cache/document-meta-cache-types.js.map +1 -0
  5. package/dist/src/cache/document-meta-cache.d.ts +30 -0
  6. package/dist/src/cache/document-meta-cache.d.ts.map +1 -0
  7. package/dist/src/cache/document-meta-cache.js +127 -0
  8. package/dist/src/cache/document-meta-cache.js.map +1 -0
  9. package/dist/src/cache/kysely-operation-index.d.ts +4 -2
  10. package/dist/src/cache/kysely-operation-index.d.ts.map +1 -1
  11. package/dist/src/cache/kysely-operation-index.js +54 -0
  12. package/dist/src/cache/kysely-operation-index.js.map +1 -1
  13. package/dist/src/cache/operation-index-types.d.ts +3 -2
  14. package/dist/src/cache/operation-index-types.d.ts.map +1 -1
  15. package/dist/src/cache/operation-index-types.js.map +1 -1
  16. package/dist/src/core/reactor-builder.d.ts.map +1 -1
  17. package/dist/src/core/reactor-builder.js +7 -2
  18. package/dist/src/core/reactor-builder.js.map +1 -1
  19. package/dist/src/executor/simple-job-executor.d.ts +3 -1
  20. package/dist/src/executor/simple-job-executor.d.ts.map +1 -1
  21. package/dist/src/executor/simple-job-executor.js +68 -20
  22. package/dist/src/executor/simple-job-executor.js.map +1 -1
  23. package/dist/src/index.d.ts +1 -0
  24. package/dist/src/index.d.ts.map +1 -1
  25. package/dist/src/index.js +1 -0
  26. package/dist/src/index.js.map +1 -1
  27. package/dist/src/read-models/base-read-model.d.ts +60 -0
  28. package/dist/src/read-models/base-read-model.d.ts.map +1 -0
  29. package/dist/src/read-models/base-read-model.js +143 -0
  30. package/dist/src/read-models/base-read-model.js.map +1 -0
  31. package/dist/src/read-models/document-view.d.ts +6 -7
  32. package/dist/src/read-models/document-view.d.ts.map +1 -1
  33. package/dist/src/read-models/document-view.js +16 -81
  34. package/dist/src/read-models/document-view.js.map +1 -1
  35. package/dist/src/read-models/types.d.ts +2 -1
  36. package/dist/src/read-models/types.d.ts.map +1 -1
  37. package/dist/src/storage/interfaces.d.ts +1 -0
  38. package/dist/src/storage/interfaces.d.ts.map +1 -1
  39. package/dist/src/storage/kysely/store.d.ts.map +1 -1
  40. package/dist/src/storage/kysely/store.js +1 -0
  41. package/dist/src/storage/kysely/store.js.map +1 -1
  42. package/dist/src/storage/migrations/008_create_view_state_table.d.ts +1 -1
  43. package/dist/src/storage/migrations/008_create_view_state_table.d.ts.map +1 -1
  44. package/dist/src/storage/migrations/008_create_view_state_table.js +2 -1
  45. package/dist/src/storage/migrations/008_create_view_state_table.js.map +1 -1
  46. package/dist/src/sync/channels/composite-channel-factory.d.ts.map +1 -1
  47. package/dist/src/sync/channels/composite-channel-factory.js +1 -1
  48. package/dist/src/sync/channels/composite-channel-factory.js.map +1 -1
  49. package/dist/src/sync/sync-manager.d.ts.map +1 -1
  50. package/dist/src/sync/sync-manager.js +1 -0
  51. package/dist/src/sync/sync-manager.js.map +1 -1
  52. package/package.json +3 -3
@@ -0,0 +1,114 @@
1
+ import type { PHDocumentState } from "document-model";
2
+ /**
3
+ * Configuration options for the document metadata cache.
4
+ */
5
+ export type DocumentMetaCacheConfig = {
6
+ /**
7
+ * Maximum number of document metadata entries to cache (LRU eviction).
8
+ * Default: 1000
9
+ */
10
+ maxDocuments: number;
11
+ };
12
+ /**
13
+ * Cached document metadata from the "document" scope.
14
+ *
15
+ * This lightweight structure holds essential document information needed by
16
+ * the job executor without fetching full scope state. It provides an explicit
17
+ * cross-scope contract for accessing document scope metadata.
18
+ */
19
+ export type CachedDocumentMeta = {
20
+ /**
21
+ * The full PHDocumentState from document.state.document.
22
+ * Contains version, hash, isDeleted, deletedAtUtcIso, etc.
23
+ */
24
+ state: PHDocumentState;
25
+ /**
26
+ * The document type (from header), cached for convenience.
27
+ */
28
+ documentType: string;
29
+ /**
30
+ * The revision of the document scope when this metadata was captured.
31
+ * Used for cache invalidation and consistency checks.
32
+ */
33
+ documentScopeRevision: number;
34
+ };
35
+ /**
36
+ * Interface for the document metadata cache.
37
+ *
38
+ * This cache provides an explicit cross-scope contract for accessing document
39
+ * scope metadata. It solves the problem where job execution in one scope (e.g.,
40
+ * "global") needs access to document scope state (version, isDeleted, etc.)
41
+ * which may be stale in scope-specific caches or keyframes.
42
+ *
43
+ * The cache supports:
44
+ * - Latest metadata retrieval with LRU caching
45
+ * - Historical metadata reconstruction for reshuffling scenarios
46
+ * - Eager updates after document scope operations
47
+ */
48
+ export interface IDocumentMetaCache {
49
+ /**
50
+ * Retrieves the LATEST document metadata from cache or rebuilds from operations.
51
+ *
52
+ * On cache miss, fetches all document scope operations and reconstructs the
53
+ * current PHDocumentState by applying UPGRADE_DOCUMENT and DELETE_DOCUMENT
54
+ * operations.
55
+ *
56
+ * @param documentId - The document identifier
57
+ * @param branch - Branch name
58
+ * @param signal - Optional abort signal to cancel the operation
59
+ * @returns The cached or rebuilt document metadata
60
+ * @throws {Error} "Operation aborted" if signal is aborted
61
+ * @throws {Error} If document not found (no CREATE_DOCUMENT operation)
62
+ */
63
+ getDocumentMeta(documentId: string, branch: string, signal?: AbortSignal): Promise<CachedDocumentMeta>;
64
+ /**
65
+ * Rebuilds document metadata at a SPECIFIC revision (always rebuilds, no caching).
66
+ *
67
+ * Used during reshuffling when operations need to be inserted at a previous
68
+ * revision and we need the document scope state as of that point in time.
69
+ *
70
+ * @param documentId - The document identifier
71
+ * @param branch - Branch name
72
+ * @param targetRevision - The document scope revision to reconstruct up to
73
+ * @param signal - Optional abort signal to cancel the operation
74
+ * @returns Document metadata as of the target revision
75
+ * @throws {Error} "Operation aborted" if signal is aborted
76
+ * @throws {Error} If document not found
77
+ */
78
+ rebuildAtRevision(documentId: string, branch: string, targetRevision: number, signal?: AbortSignal): Promise<CachedDocumentMeta>;
79
+ /**
80
+ * Eagerly updates cached metadata after document scope operations.
81
+ *
82
+ * Called by the job executor after CREATE_DOCUMENT, UPGRADE_DOCUMENT, or
83
+ * DELETE_DOCUMENT operations to keep the cache current.
84
+ *
85
+ * @param documentId - The document identifier
86
+ * @param branch - Branch name
87
+ * @param meta - The new metadata to cache
88
+ */
89
+ putDocumentMeta(documentId: string, branch: string, meta: CachedDocumentMeta): void;
90
+ /**
91
+ * Invalidates cached document metadata.
92
+ *
93
+ * Call before reshuffling operations that modify the document scope, or
94
+ * when document state may have changed externally.
95
+ *
96
+ * @param documentId - The document identifier
97
+ * @param branch - Optional branch to narrow invalidation (if omitted, all branches)
98
+ * @returns Number of entries invalidated
99
+ */
100
+ invalidate(documentId: string, branch?: string): number;
101
+ /**
102
+ * Clears all cached document metadata.
103
+ */
104
+ clear(): void;
105
+ /**
106
+ * Performs startup initialization.
107
+ */
108
+ startup(): Promise<void>;
109
+ /**
110
+ * Performs graceful shutdown.
111
+ */
112
+ shutdown(): Promise<void>;
113
+ }
114
+ //# sourceMappingURL=document-meta-cache-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-meta-cache-types.d.ts","sourceRoot":"","sources":["../../../src/cache/document-meta-cache-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B;;;OAGG;IACH,KAAK,EAAE,eAAe,CAAC;IAEvB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,qBAAqB,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;;;;;;;;;OAaG;IACH,eAAe,CACb,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/B;;;;;;;;;;;;;OAaG;IACH,iBAAiB,CACf,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/B;;;;;;;;;OASG;IACH,eAAe,CACb,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,kBAAkB,GACvB,IAAI,CAAC;IAER;;;;;;;;;OASG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAExD;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;OAEG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=document-meta-cache-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-meta-cache-types.js","sourceRoot":"","sources":["../../../src/cache/document-meta-cache-types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,30 @@
1
+ import type { IOperationStore } from "../storage/interfaces.js";
2
+ import type { CachedDocumentMeta, DocumentMetaCacheConfig, IDocumentMetaCache } from "./document-meta-cache-types.js";
3
+ /**
4
+ * In-memory document metadata cache with LRU eviction.
5
+ *
6
+ * Caches PHDocumentState per (documentId, branch) key. On cache miss,
7
+ * rebuilds from document scope operations. Provides an explicit cross-scope
8
+ * contract for accessing document scope metadata.
9
+ *
10
+ * **Thread Safety:**
11
+ * Not thread-safe. Designed for single-threaded job executor environment.
12
+ */
13
+ export declare class DocumentMetaCache implements IDocumentMetaCache {
14
+ private cache;
15
+ private lruTracker;
16
+ private operationStore;
17
+ private config;
18
+ constructor(operationStore: IOperationStore, config: DocumentMetaCacheConfig);
19
+ startup(): Promise<void>;
20
+ shutdown(): Promise<void>;
21
+ getDocumentMeta(documentId: string, branch: string, signal?: AbortSignal): Promise<CachedDocumentMeta>;
22
+ rebuildAtRevision(documentId: string, branch: string, targetRevision: number, signal?: AbortSignal): Promise<CachedDocumentMeta>;
23
+ putDocumentMeta(documentId: string, branch: string, meta: CachedDocumentMeta): void;
24
+ invalidate(documentId: string, branch?: string): number;
25
+ clear(): void;
26
+ private makeKey;
27
+ private rebuildLatest;
28
+ private rebuildFromOperations;
29
+ }
30
+ //# sourceMappingURL=document-meta-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-meta-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/document-meta-cache.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,gCAAgC,CAAC;AAGxC;;;;;;;;;GASG;AACH,qBAAa,iBAAkB,YAAW,kBAAkB;IAC1D,OAAO,CAAC,KAAK,CAAkC;IAC/C,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,MAAM,CAA0B;gBAGtC,cAAc,EAAE,eAAe,EAC/B,MAAM,EAAE,uBAAuB;IAU3B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,eAAe,CACnB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kBAAkB,CAAC;IAkBxB,iBAAiB,CACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kBAAkB,CAAC;IAa9B,eAAe,CACb,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,kBAAkB,GACvB,IAAI;IAcP,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IAuBvD,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,OAAO;YAID,aAAa;YAQb,qBAAqB;CA4DpC"}
@@ -0,0 +1,127 @@
1
+ import { applyDeleteDocumentAction, applyUpgradeDocumentAction, createDocumentFromAction, } from "../executor/util.js";
2
+ import { LRUTracker } from "./lru/lru-tracker.js";
3
+ /**
4
+ * In-memory document metadata cache with LRU eviction.
5
+ *
6
+ * Caches PHDocumentState per (documentId, branch) key. On cache miss,
7
+ * rebuilds from document scope operations. Provides an explicit cross-scope
8
+ * contract for accessing document scope metadata.
9
+ *
10
+ * **Thread Safety:**
11
+ * Not thread-safe. Designed for single-threaded job executor environment.
12
+ */
13
+ export class DocumentMetaCache {
14
+ cache;
15
+ lruTracker;
16
+ operationStore;
17
+ config;
18
+ constructor(operationStore, config) {
19
+ this.operationStore = operationStore;
20
+ this.config = {
21
+ maxDocuments: config.maxDocuments,
22
+ };
23
+ this.cache = new Map();
24
+ this.lruTracker = new LRUTracker();
25
+ }
26
+ async startup() {
27
+ return Promise.resolve();
28
+ }
29
+ async shutdown() {
30
+ return Promise.resolve();
31
+ }
32
+ async getDocumentMeta(documentId, branch, signal) {
33
+ if (signal?.aborted) {
34
+ throw new Error("Operation aborted");
35
+ }
36
+ const key = this.makeKey(documentId, branch);
37
+ const cached = this.cache.get(key);
38
+ if (cached) {
39
+ this.lruTracker.touch(key);
40
+ return cached;
41
+ }
42
+ const meta = await this.rebuildLatest(documentId, branch, signal);
43
+ this.putDocumentMeta(documentId, branch, meta);
44
+ return meta;
45
+ }
46
+ async rebuildAtRevision(documentId, branch, targetRevision, signal) {
47
+ if (signal?.aborted) {
48
+ throw new Error("Operation aborted");
49
+ }
50
+ return this.rebuildFromOperations(documentId, branch, targetRevision, signal);
51
+ }
52
+ putDocumentMeta(documentId, branch, meta) {
53
+ const key = this.makeKey(documentId, branch);
54
+ if (!this.cache.has(key) && this.cache.size >= this.config.maxDocuments) {
55
+ const evictKey = this.lruTracker.evict();
56
+ if (evictKey) {
57
+ this.cache.delete(evictKey);
58
+ }
59
+ }
60
+ this.cache.set(key, structuredClone(meta));
61
+ this.lruTracker.touch(key);
62
+ }
63
+ invalidate(documentId, branch) {
64
+ let evicted = 0;
65
+ if (branch === undefined) {
66
+ for (const key of this.cache.keys()) {
67
+ if (key.startsWith(`${documentId}:`)) {
68
+ this.cache.delete(key);
69
+ this.lruTracker.remove(key);
70
+ evicted++;
71
+ }
72
+ }
73
+ }
74
+ else {
75
+ const key = this.makeKey(documentId, branch);
76
+ if (this.cache.has(key)) {
77
+ this.cache.delete(key);
78
+ this.lruTracker.remove(key);
79
+ evicted = 1;
80
+ }
81
+ }
82
+ return evicted;
83
+ }
84
+ clear() {
85
+ this.cache.clear();
86
+ this.lruTracker.clear();
87
+ }
88
+ makeKey(documentId, branch) {
89
+ return `${documentId}:${branch}`;
90
+ }
91
+ async rebuildLatest(documentId, branch, signal) {
92
+ return this.rebuildFromOperations(documentId, branch, undefined, signal);
93
+ }
94
+ async rebuildFromOperations(documentId, branch, targetRevision, signal) {
95
+ const docScopeOps = await this.operationStore.getSince(documentId, "document", branch, -1, undefined, signal);
96
+ if (docScopeOps.items.length === 0) {
97
+ throw new Error(`Document ${documentId} not found`);
98
+ }
99
+ const createOp = docScopeOps.items[0];
100
+ if (createOp.action.type !== "CREATE_DOCUMENT") {
101
+ throw new Error(`Invalid document: first operation must be CREATE_DOCUMENT, found ${createOp.action.type}`);
102
+ }
103
+ const createAction = createOp.action;
104
+ const documentType = createAction.input.model;
105
+ let document = createDocumentFromAction(createAction);
106
+ let documentScopeRevision = 0;
107
+ for (const op of docScopeOps.items) {
108
+ if (targetRevision !== undefined && op.index > targetRevision) {
109
+ break;
110
+ }
111
+ documentScopeRevision = op.index;
112
+ if (op.action.type === "UPGRADE_DOCUMENT") {
113
+ document = applyUpgradeDocumentAction(document, op.action);
114
+ }
115
+ else if (op.action.type === "DELETE_DOCUMENT") {
116
+ document = applyDeleteDocumentAction(document, op.action);
117
+ }
118
+ // for now, we are skipping relationship operations
119
+ }
120
+ return {
121
+ state: document.state.document,
122
+ documentType,
123
+ documentScopeRevision: documentScopeRevision + 1,
124
+ };
125
+ }
126
+ }
127
+ //# sourceMappingURL=document-meta-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-meta-cache.js","sourceRoot":"","sources":["../../../src/cache/document-meta-cache.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,15 @@
1
1
  import type { Kysely } from "kysely";
2
- import type { PagedResults, PagingOptions, ViewFilter } from "../storage/interfaces.js";
2
+ import type { OperationWithContext, PagedResults, PagingOptions, ViewFilter } from "../storage/interfaces.js";
3
3
  import type { Database } from "../storage/kysely/types.js";
4
4
  import type { IOperationIndex, IOperationIndexTxn, OperationIndexEntry } from "./operation-index-types.js";
5
5
  export declare class KyselyOperationIndex implements IOperationIndex {
6
6
  private db;
7
7
  constructor(db: Kysely<Database>);
8
8
  start(): IOperationIndexTxn;
9
- commit(txn: IOperationIndexTxn, signal?: AbortSignal): Promise<void>;
9
+ commit(txn: IOperationIndexTxn, signal?: AbortSignal): Promise<number[]>;
10
10
  find(collectionId: string, cursor?: number, view?: ViewFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationIndexEntry>>;
11
+ getSinceOrdinal(ordinal: number, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationWithContext>>;
12
+ private rowToOperationWithContext;
11
13
  private rowToOperationIndexEntry;
12
14
  }
13
15
  //# sourceMappingURL=kysely-operation-index.d.ts.map
@@ -1 +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"}
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,oBAAoB,EACpB,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,CACV,GAAG,EAAE,kBAAkB,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,EAAE,CAAC;IA8Gd,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;IA4DvC,eAAe,CACnB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;IA0C9C,OAAO,CAAC,yBAAyB;IAsBjC,OAAO,CAAC,wBAAwB;CAiBjC"}
@@ -62,6 +62,7 @@ export class KyselyOperationIndex {
62
62
  const memberships = kyselyTxn.getCollectionMemberships();
63
63
  const removals = kyselyTxn.getCollectionRemovals();
64
64
  const operations = kyselyTxn.getOperations();
65
+ let resultOrdinals = [];
65
66
  await this.db.transaction().execute(async (trx) => {
66
67
  if (collections.length > 0) {
67
68
  const collectionRows = collections.map((collectionId) => ({
@@ -106,6 +107,7 @@ export class KyselyOperationIndex {
106
107
  .returning("ordinal")
107
108
  .execute();
108
109
  operationOrdinals = insertedOps.map((row) => row.ordinal);
110
+ resultOrdinals = operationOrdinals;
109
111
  }
110
112
  if (memberships.length > 0) {
111
113
  for (const m of memberships) {
@@ -142,6 +144,7 @@ export class KyselyOperationIndex {
142
144
  }
143
145
  }
144
146
  });
147
+ return resultOrdinals;
145
148
  }
146
149
  async find(collectionId, cursor, view, paging, signal) {
147
150
  if (signal?.aborted) {
@@ -188,6 +191,57 @@ export class KyselyOperationIndex {
188
191
  hasMore,
189
192
  };
190
193
  }
194
+ async getSinceOrdinal(ordinal, paging, signal) {
195
+ if (signal?.aborted) {
196
+ throw new Error("Operation aborted");
197
+ }
198
+ let query = this.db
199
+ .selectFrom("operation_index_operations")
200
+ .selectAll()
201
+ .where("ordinal", ">", ordinal)
202
+ .orderBy("ordinal", "asc");
203
+ if (paging?.cursor) {
204
+ const cursorOrdinal = Number.parseInt(paging.cursor, 10);
205
+ query = query.where("ordinal", ">", cursorOrdinal);
206
+ }
207
+ if (paging?.limit) {
208
+ query = query.limit(paging.limit + 1);
209
+ }
210
+ const rows = await query.execute();
211
+ let hasMore = false;
212
+ let items = rows;
213
+ if (paging?.limit && rows.length > paging.limit) {
214
+ hasMore = true;
215
+ items = rows.slice(0, paging.limit);
216
+ }
217
+ const nextCursor = hasMore && items.length > 0
218
+ ? items[items.length - 1].ordinal.toString()
219
+ : undefined;
220
+ return {
221
+ items: items.map((row) => this.rowToOperationWithContext(row)),
222
+ nextCursor,
223
+ hasMore,
224
+ };
225
+ }
226
+ rowToOperationWithContext(row) {
227
+ return {
228
+ operation: {
229
+ index: row.index,
230
+ timestampUtcMs: row.timestampUtcMs.toString(),
231
+ hash: row.hash,
232
+ skip: row.skip,
233
+ action: row.action,
234
+ id: row.opId,
235
+ },
236
+ context: {
237
+ documentId: row.documentId,
238
+ documentType: row.documentType,
239
+ scope: row.scope,
240
+ branch: row.branch,
241
+ ordinal: row.ordinal,
242
+ },
243
+ };
244
+ }
191
245
  rowToOperationIndexEntry(row) {
192
246
  return {
193
247
  ordinal: row.ordinal,
@@ -1 +1 @@
1
- {"version":3,"file":"kysely-operation-index.js","sourceRoot":"","sources":["../../../src/cache/kysely-operation-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"kysely-operation-index.js","sourceRoot":"","sources":["../../../src/cache/kysely-operation-index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { Operation } from "document-model";
2
2
  import type { Generated, Insertable, Selectable, Updateable } from "kysely";
3
- import type { PagedResults, PagingOptions, ViewFilter } from "../storage/interfaces.js";
3
+ import type { OperationWithContext, PagedResults, PagingOptions, ViewFilter } from "../storage/interfaces.js";
4
4
  export type OperationIndexEntry = Operation & {
5
5
  ordinal?: number;
6
6
  documentId: string;
@@ -16,8 +16,9 @@ export interface IOperationIndexTxn {
16
16
  }
17
17
  export interface IOperationIndex {
18
18
  start(): IOperationIndexTxn;
19
- commit(txn: IOperationIndexTxn, signal?: AbortSignal): Promise<void>;
19
+ commit(txn: IOperationIndexTxn, signal?: AbortSignal): Promise<number[]>;
20
20
  find(collectionId: string, cursor?: number, view?: ViewFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationIndexEntry>>;
21
+ getSinceOrdinal(ordinal: number, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationWithContext>>;
21
22
  }
22
23
  export interface DocumentCollectionTable {
23
24
  documentId: string;
@@ -1 +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"}
1
+ {"version":3,"file":"operation-index-types.d.ts","sourceRoot":"","sources":["../../../src/cache/operation-index-types.ts"],"names":[],"mappings":"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"}
@@ -1 +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"}
1
+ {"version":3,"file":"operation-index-types.js","sourceRoot":"","sources":["../../../src/cache/operation-index-types.ts"],"names":[],"mappings":"AA0EA,MAAM,UAAU,iBAAiB,CAAC,MAAc,EAAE,OAAe;IAC/D,OAAO,SAAS,MAAM,IAAI,OAAO,EAAE,CAAC;AACtC,CAAC"}
@@ -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;AAG1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAQtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAO/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,eAAe,EACf,aAAa,EAEd,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AAGvE,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;IACtD,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,CAAY;IACtB,eAAe,CAAC,EAAE,gBAAgB,CAAC;IAC1C,OAAO,CAAC,iBAAiB,CAAC,CAA+B;IACzD,OAAO,CAAC,cAAc,CAAC,CAAmB;IAE1C,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,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAKxD,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAKxC,YAAY,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI;IAKvC,qBAAqB,CAAC,QAAQ,EAAE,4BAA4B,GAAG,IAAI;IAKnE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI;IAKpC,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;IAK1B,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;CA4K5C"}
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;AAI1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAQtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAO/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,KAAK,EACV,QAAQ,EACR,cAAc,EACd,QAAQ,EACR,eAAe,EACf,aAAa,EAEd,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AAGvE,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;IACtD,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,CAAY;IACtB,eAAe,CAAC,EAAE,gBAAgB,CAAC;IAC1C,OAAO,CAAC,iBAAiB,CAAC,CAA+B;IACzD,OAAO,CAAC,cAAc,CAAC,CAAmB;IAE1C,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,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAKxD,QAAQ,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI;IAKxC,YAAY,CAAC,QAAQ,EAAE,SAAS,GAAG,IAAI;IAKvC,qBAAqB,CAAC,QAAQ,EAAE,4BAA4B,GAAG,IAAI;IAKnE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAI;IAKpC,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC;IAK1B,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;CAoL5C"}
@@ -1,4 +1,5 @@
1
1
  import { ReactorBuilder as DriveReactorBuilder, MemoryStorage, } from "document-drive";
2
+ import { DocumentMetaCache } from "../cache/document-meta-cache.js";
2
3
  import { KyselyOperationIndex } from "../cache/kysely-operation-index.js";
3
4
  import { KyselyWriteCache } from "../cache/kysely-write-cache.js";
4
5
  import { EventBus } from "../events/event-bus.js";
@@ -124,16 +125,20 @@ export class ReactorBuilder {
124
125
  const writeCache = new KyselyWriteCache(keyframeStore, operationStore, documentModelRegistry, cacheConfig);
125
126
  await writeCache.startup();
126
127
  const operationIndex = new KyselyOperationIndex(database);
128
+ const documentMetaCache = new DocumentMetaCache(operationStore, {
129
+ maxDocuments: 1000,
130
+ });
131
+ await documentMetaCache.startup();
127
132
  let executorManager = this.executorManager;
128
133
  if (!executorManager) {
129
- executorManager = new SimpleJobExecutorManager(() => new SimpleJobExecutor(documentModelRegistry, storage, storage, operationStore, eventBus, writeCache, operationIndex, { legacyStorageEnabled: this.features.legacyStorageEnabled }, this.signatureVerifier), eventBus, queue, jobTracker);
134
+ executorManager = new SimpleJobExecutorManager(() => new SimpleJobExecutor(documentModelRegistry, storage, storage, operationStore, eventBus, writeCache, operationIndex, documentMetaCache, { legacyStorageEnabled: this.features.legacyStorageEnabled }, this.signatureVerifier), eventBus, queue, jobTracker);
130
135
  }
131
136
  await executorManager.start(this.executorConfig.count);
132
137
  const readModelInstances = Array.from(new Set([...this.readModels]));
133
138
  const documentViewConsistencyTracker = new ConsistencyTracker();
134
139
  const documentView = new KyselyDocumentView(
135
140
  // @ts-expect-error - Database type is a superset that includes all required tables
136
- database, operationStore, documentViewConsistencyTracker);
141
+ database, operationStore, operationIndex, writeCache, documentViewConsistencyTracker);
137
142
  try {
138
143
  await documentView.init();
139
144
  }
@@ -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,4 +1,5 @@
1
1
  import type { IDocumentOperationStorage, IDocumentStorage } from "document-drive";
2
+ import type { IDocumentMetaCache } from "../cache/document-meta-cache-types.js";
2
3
  import type { IOperationIndex } from "../cache/operation-index-types.js";
3
4
  import type { IWriteCache } from "../cache/write/interfaces.js";
4
5
  import type { IEventBus } from "../events/interfaces.js";
@@ -23,9 +24,10 @@ export declare class SimpleJobExecutor implements IJobExecutor {
23
24
  private eventBus;
24
25
  private writeCache;
25
26
  private operationIndex;
27
+ private documentMetaCache;
26
28
  private signatureVerifier?;
27
29
  private config;
28
- constructor(registry: IDocumentModelRegistry, documentStorage: IDocumentStorage, operationStorage: IDocumentOperationStorage, operationStore: IOperationStore, eventBus: IEventBus, writeCache: IWriteCache, operationIndex: IOperationIndex, config: JobExecutorConfig, signatureVerifier?: SignatureVerificationHandler | undefined);
30
+ constructor(registry: IDocumentModelRegistry, documentStorage: IDocumentStorage, operationStorage: IDocumentOperationStorage, operationStore: IOperationStore, eventBus: IEventBus, writeCache: IWriteCache, operationIndex: IOperationIndex, documentMetaCache: IDocumentMetaCache, config: JobExecutorConfig, signatureVerifier?: SignatureVerificationHandler | undefined);
29
31
  /**
30
32
  * Execute a single job by applying all its actions through the appropriate reducers.
31
33
  * Actions are processed sequentially in order.
@@ -1 +1 @@
1
- {"version":3,"file":"simple-job-executor.d.ts","sourceRoot":"","sources":["../../../src/executor/simple-job-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAYxB,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAKzD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAKxE,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAU/D;;;;;;GAMG;AACH,qBAAa,iBAAkB,YAAW,YAAY;IAIlD,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,cAAc;IAEtB,OAAO,CAAC,iBAAiB,CAAC;IAX5B,OAAO,CAAC,MAAM,CAA8B;gBAGlC,QAAQ,EAAE,sBAAsB,EAChC,eAAe,EAAE,gBAAgB,EACjC,gBAAgB,EAAE,yBAAyB,EAC3C,cAAc,EAAE,eAAe,EAC/B,QAAQ,EAAE,SAAS,EACnB,UAAU,EAAE,WAAW,EACvB,cAAc,EAAE,eAAe,EACvC,MAAM,EAAE,iBAAiB,EACjB,iBAAiB,CAAC,EAAE,4BAA4B,YAAA;IAW1D;;;OAGG;IACG,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC;YAmDhC,cAAc;IA6S5B;;;;OAIG;YACW,2BAA2B;IAgIzC;;;;OAIG;YACW,2BAA2B;IAuHzC;;;;OAIG;YACW,4BAA4B;YAoI5B,4BAA4B;YAoK5B,+BAA+B;IA8H7C,OAAO,CAAC,eAAe;YAcT,cAAc;YAuGd,qBAAqB;IAiCnC,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,kBAAkB;IA4B1B,OAAO,CAAC,gBAAgB;YAaV,yBAAyB;YA8CzB,sBAAsB;IAqDpC,OAAO,CAAC,6BAA6B;CAgBtC"}
1
+ {"version":3,"file":"simple-job-executor.d.ts","sourceRoot":"","sources":["../../../src/executor/simple-job-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AAYxB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAKzD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAKxE,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAU/D;;;;;;GAMG;AACH,qBAAa,iBAAkB,YAAW,YAAY;IAIlD,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,iBAAiB;IAEzB,OAAO,CAAC,iBAAiB,CAAC;IAZ5B,OAAO,CAAC,MAAM,CAA8B;gBAGlC,QAAQ,EAAE,sBAAsB,EAChC,eAAe,EAAE,gBAAgB,EACjC,gBAAgB,EAAE,yBAAyB,EAC3C,cAAc,EAAE,eAAe,EAC/B,QAAQ,EAAE,SAAS,EACnB,UAAU,EAAE,WAAW,EACvB,cAAc,EAAE,eAAe,EAC/B,iBAAiB,EAAE,kBAAkB,EAC7C,MAAM,EAAE,iBAAiB,EACjB,iBAAiB,CAAC,EAAE,4BAA4B,YAAA;IAW1D;;;OAGG;IACG,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC;YAoEhC,cAAc;IAsU5B;;;;OAIG;YACW,2BAA2B;IAsIzC;;;;OAIG;YACW,2BAA2B;IA6HzC;;;;OAIG;YACW,4BAA4B;YA0I5B,4BAA4B;YAoK5B,+BAA+B;IA8H7C,OAAO,CAAC,eAAe;YAcT,cAAc;YA+Fd,qBAAqB;IAiCnC,OAAO,CAAC,sBAAsB;IAW9B,OAAO,CAAC,eAAe;IAgBvB,OAAO,CAAC,kBAAkB;IA6B1B,OAAO,CAAC,gBAAgB;YAaV,yBAAyB;YA8CzB,sBAAsB;IAqDpC,OAAO,CAAC,6BAA6B;CAgBtC"}