@powerhousedao/reactor 5.1.0-staging.0 → 5.2.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (215) hide show
  1. package/dist/src/actions/index.d.ts +24 -0
  2. package/dist/src/actions/index.d.ts.map +1 -0
  3. package/dist/src/actions/index.js +76 -0
  4. package/dist/src/actions/index.js.map +1 -0
  5. package/dist/src/cache/document-meta-cache-types.d.ts +114 -0
  6. package/dist/src/cache/document-meta-cache-types.d.ts.map +1 -0
  7. package/dist/src/cache/document-meta-cache-types.js +2 -0
  8. package/dist/src/cache/document-meta-cache-types.js.map +1 -0
  9. package/dist/src/cache/document-meta-cache.d.ts +30 -0
  10. package/dist/src/cache/document-meta-cache.d.ts.map +1 -0
  11. package/dist/src/cache/document-meta-cache.js +128 -0
  12. package/dist/src/cache/document-meta-cache.js.map +1 -0
  13. package/dist/src/cache/kysely-operation-index.d.ts +4 -2
  14. package/dist/src/cache/kysely-operation-index.d.ts.map +1 -1
  15. package/dist/src/cache/kysely-operation-index.js +67 -24
  16. package/dist/src/cache/kysely-operation-index.js.map +1 -1
  17. package/dist/src/cache/kysely-write-cache.d.ts.map +1 -1
  18. package/dist/src/cache/kysely-write-cache.js +3 -2
  19. package/dist/src/cache/kysely-write-cache.js.map +1 -1
  20. package/dist/src/cache/operation-index-types.d.ts +4 -3
  21. package/dist/src/cache/operation-index-types.d.ts.map +1 -1
  22. package/dist/src/cache/operation-index-types.js.map +1 -1
  23. package/dist/src/client/reactor-client.d.ts +16 -4
  24. package/dist/src/client/reactor-client.d.ts.map +1 -1
  25. package/dist/src/client/reactor-client.js +122 -5
  26. package/dist/src/client/reactor-client.js.map +1 -1
  27. package/dist/src/client/types.d.ts +22 -3
  28. package/dist/src/client/types.d.ts.map +1 -1
  29. package/dist/src/core/reactor-builder.d.ts +10 -9
  30. package/dist/src/core/reactor-builder.d.ts.map +1 -1
  31. package/dist/src/core/reactor-builder.js +73 -17
  32. package/dist/src/core/reactor-builder.js.map +1 -1
  33. package/dist/src/core/reactor-client-builder.d.ts +10 -1
  34. package/dist/src/core/reactor-client-builder.d.ts.map +1 -1
  35. package/dist/src/core/reactor-client-builder.js +16 -1
  36. package/dist/src/core/reactor-client-builder.js.map +1 -1
  37. package/dist/src/core/reactor.d.ts +11 -10
  38. package/dist/src/core/reactor.d.ts.map +1 -1
  39. package/dist/src/core/reactor.js +78 -91
  40. package/dist/src/core/reactor.js.map +1 -1
  41. package/dist/src/core/types.d.ts +22 -7
  42. package/dist/src/core/types.d.ts.map +1 -1
  43. package/dist/src/core/utils.d.ts +1 -2
  44. package/dist/src/core/utils.d.ts.map +1 -1
  45. package/dist/src/core/utils.js +2 -2
  46. package/dist/src/core/utils.js.map +1 -1
  47. package/dist/src/events/types.d.ts +1 -0
  48. package/dist/src/events/types.d.ts.map +1 -1
  49. package/dist/src/executor/simple-job-executor-manager.d.ts +3 -1
  50. package/dist/src/executor/simple-job-executor-manager.d.ts.map +1 -1
  51. package/dist/src/executor/simple-job-executor-manager.js +10 -7
  52. package/dist/src/executor/simple-job-executor-manager.js.map +1 -1
  53. package/dist/src/executor/simple-job-executor.d.ts +17 -3
  54. package/dist/src/executor/simple-job-executor.d.ts.map +1 -1
  55. package/dist/src/executor/simple-job-executor.js +329 -221
  56. package/dist/src/executor/simple-job-executor.js.map +1 -1
  57. package/dist/src/executor/types.d.ts +2 -0
  58. package/dist/src/executor/types.d.ts.map +1 -1
  59. package/dist/src/executor/types.js.map +1 -1
  60. package/dist/src/executor/util.d.ts +14 -5
  61. package/dist/src/executor/util.d.ts.map +1 -1
  62. package/dist/src/executor/util.js +36 -9
  63. package/dist/src/executor/util.js.map +1 -1
  64. package/dist/src/index.d.ts +12 -5
  65. package/dist/src/index.d.ts.map +1 -1
  66. package/dist/src/index.js +10 -2
  67. package/dist/src/index.js.map +1 -1
  68. package/dist/src/logging/console.d.ts +11 -1
  69. package/dist/src/logging/console.d.ts.map +1 -1
  70. package/dist/src/logging/console.js +45 -14
  71. package/dist/src/logging/console.js.map +1 -1
  72. package/dist/src/logging/types.d.ts +1 -0
  73. package/dist/src/logging/types.d.ts.map +1 -1
  74. package/dist/src/processors/index.d.ts +3 -0
  75. package/dist/src/processors/index.d.ts.map +1 -0
  76. package/dist/src/processors/index.js +2 -0
  77. package/dist/src/processors/index.js.map +1 -0
  78. package/dist/src/processors/processor-manager.d.ts +38 -0
  79. package/dist/src/processors/processor-manager.d.ts.map +1 -0
  80. package/dist/src/processors/processor-manager.js +165 -0
  81. package/dist/src/processors/processor-manager.js.map +1 -0
  82. package/dist/src/processors/types.d.ts +63 -0
  83. package/dist/src/processors/types.d.ts.map +1 -0
  84. package/dist/src/processors/types.js +2 -0
  85. package/dist/src/processors/types.js.map +1 -0
  86. package/dist/src/processors/utils.d.ts +10 -0
  87. package/dist/src/processors/utils.d.ts.map +1 -0
  88. package/dist/src/processors/utils.js +58 -0
  89. package/dist/src/processors/utils.js.map +1 -0
  90. package/dist/src/queue/types.d.ts +2 -0
  91. package/dist/src/queue/types.d.ts.map +1 -1
  92. package/dist/src/queue/types.js.map +1 -1
  93. package/dist/src/read-models/base-read-model.d.ts +60 -0
  94. package/dist/src/read-models/base-read-model.d.ts.map +1 -0
  95. package/dist/src/read-models/base-read-model.js +143 -0
  96. package/dist/src/read-models/base-read-model.js.map +1 -0
  97. package/dist/src/read-models/coordinator.d.ts +3 -2
  98. package/dist/src/read-models/coordinator.d.ts.map +1 -1
  99. package/dist/src/read-models/coordinator.js +12 -13
  100. package/dist/src/read-models/coordinator.js.map +1 -1
  101. package/dist/src/read-models/document-view.d.ts +6 -7
  102. package/dist/src/read-models/document-view.d.ts.map +1 -1
  103. package/dist/src/read-models/document-view.js +18 -81
  104. package/dist/src/read-models/document-view.js.map +1 -1
  105. package/dist/src/read-models/types.d.ts +2 -1
  106. package/dist/src/read-models/types.d.ts.map +1 -1
  107. package/dist/src/registry/implementation.d.ts +42 -34
  108. package/dist/src/registry/implementation.d.ts.map +1 -1
  109. package/dist/src/registry/implementation.js +168 -48
  110. package/dist/src/registry/implementation.js.map +1 -1
  111. package/dist/src/registry/interfaces.d.ts +69 -8
  112. package/dist/src/registry/interfaces.d.ts.map +1 -1
  113. package/dist/src/shared/errors.d.ts +16 -0
  114. package/dist/src/shared/errors.d.ts.map +1 -1
  115. package/dist/src/shared/errors.js +28 -0
  116. package/dist/src/shared/errors.js.map +1 -1
  117. package/dist/src/shared/types.d.ts +4 -0
  118. package/dist/src/shared/types.d.ts.map +1 -1
  119. package/dist/src/shared/types.js.map +1 -1
  120. package/dist/src/signer/passthrough-signer.d.ts +9 -3
  121. package/dist/src/signer/passthrough-signer.d.ts.map +1 -1
  122. package/dist/src/signer/passthrough-signer.js +13 -0
  123. package/dist/src/signer/passthrough-signer.js.map +1 -1
  124. package/dist/src/signer/types.d.ts +2 -22
  125. package/dist/src/signer/types.d.ts.map +1 -1
  126. package/dist/src/storage/consistency-aware-legacy-storage.d.ts +33 -0
  127. package/dist/src/storage/consistency-aware-legacy-storage.d.ts.map +1 -0
  128. package/dist/src/storage/consistency-aware-legacy-storage.js +65 -0
  129. package/dist/src/storage/consistency-aware-legacy-storage.js.map +1 -0
  130. package/dist/src/storage/interfaces.d.ts +94 -1
  131. package/dist/src/storage/interfaces.d.ts.map +1 -1
  132. package/dist/src/storage/interfaces.js +2 -2
  133. package/dist/src/storage/interfaces.js.map +1 -1
  134. package/dist/src/storage/kysely/store.d.ts +1 -0
  135. package/dist/src/storage/kysely/store.d.ts.map +1 -1
  136. package/dist/src/storage/kysely/store.js +41 -4
  137. package/dist/src/storage/kysely/store.js.map +1 -1
  138. package/dist/src/storage/kysely/sync-cursor-storage.js +2 -2
  139. package/dist/src/storage/kysely/sync-cursor-storage.js.map +1 -1
  140. package/dist/src/storage/kysely/sync-remote-storage.js +8 -8
  141. package/dist/src/storage/kysely/sync-remote-storage.js.map +1 -1
  142. package/dist/src/storage/kysely/types.d.ts +6 -6
  143. package/dist/src/storage/migrations/001_create_operation_table.d.ts.map +1 -1
  144. package/dist/src/storage/migrations/001_create_operation_table.js +2 -1
  145. package/dist/src/storage/migrations/001_create_operation_table.js.map +1 -1
  146. package/dist/src/storage/migrations/008_create_view_state_table.d.ts +1 -1
  147. package/dist/src/storage/migrations/008_create_view_state_table.d.ts.map +1 -1
  148. package/dist/src/storage/migrations/008_create_view_state_table.js +2 -1
  149. package/dist/src/storage/migrations/008_create_view_state_table.js.map +1 -1
  150. package/dist/src/storage/migrations/009_create_operation_index_tables.js +1 -1
  151. package/dist/src/storage/migrations/009_create_operation_index_tables.js.map +1 -1
  152. package/dist/src/storage/migrations/010_create_sync_tables.js +5 -5
  153. package/dist/src/storage/migrations/010_create_sync_tables.js.map +1 -1
  154. package/dist/src/storage/migrations/migrator.d.ts +3 -2
  155. package/dist/src/storage/migrations/migrator.d.ts.map +1 -1
  156. package/dist/src/storage/migrations/migrator.js +29 -6
  157. package/dist/src/storage/migrations/migrator.js.map +1 -1
  158. package/dist/src/storage/txn.d.ts.map +1 -1
  159. package/dist/src/storage/txn.js +2 -3
  160. package/dist/src/storage/txn.js.map +1 -1
  161. package/dist/src/subs/subscription-notification-read-model.d.ts +17 -0
  162. package/dist/src/subs/subscription-notification-read-model.d.ts.map +1 -0
  163. package/dist/src/subs/subscription-notification-read-model.js +62 -0
  164. package/dist/src/subs/subscription-notification-read-model.js.map +1 -0
  165. package/dist/src/sync/channels/composite-channel-factory.d.ts +30 -0
  166. package/dist/src/sync/channels/composite-channel-factory.d.ts.map +1 -0
  167. package/dist/src/sync/channels/composite-channel-factory.js +87 -0
  168. package/dist/src/sync/channels/composite-channel-factory.js.map +1 -0
  169. package/dist/src/sync/channels/gql-channel-factory.d.ts +5 -2
  170. package/dist/src/sync/channels/gql-channel-factory.d.ts.map +1 -1
  171. package/dist/src/sync/channels/gql-channel-factory.js +8 -2
  172. package/dist/src/sync/channels/gql-channel-factory.js.map +1 -1
  173. package/dist/src/sync/channels/gql-channel.d.ts +28 -1
  174. package/dist/src/sync/channels/gql-channel.d.ts.map +1 -1
  175. package/dist/src/sync/channels/gql-channel.js +150 -22
  176. package/dist/src/sync/channels/gql-channel.js.map +1 -1
  177. package/dist/src/sync/channels/index.d.ts +2 -1
  178. package/dist/src/sync/channels/index.d.ts.map +1 -1
  179. package/dist/src/sync/channels/index.js +2 -1
  180. package/dist/src/sync/channels/index.js.map +1 -1
  181. package/dist/src/sync/channels/polling-channel.d.ts +39 -0
  182. package/dist/src/sync/channels/polling-channel.d.ts.map +1 -0
  183. package/dist/src/sync/channels/polling-channel.js +72 -0
  184. package/dist/src/sync/channels/polling-channel.js.map +1 -0
  185. package/dist/src/sync/channels/utils.d.ts +17 -2
  186. package/dist/src/sync/channels/utils.d.ts.map +1 -1
  187. package/dist/src/sync/channels/utils.js +76 -6
  188. package/dist/src/sync/channels/utils.js.map +1 -1
  189. package/dist/src/sync/errors.d.ts +1 -1
  190. package/dist/src/sync/errors.d.ts.map +1 -1
  191. package/dist/src/sync/errors.js +2 -2
  192. package/dist/src/sync/errors.js.map +1 -1
  193. package/dist/src/sync/index.d.ts +2 -2
  194. package/dist/src/sync/index.d.ts.map +1 -1
  195. package/dist/src/sync/index.js +2 -2
  196. package/dist/src/sync/index.js.map +1 -1
  197. package/dist/src/sync/interfaces.d.ts +16 -1
  198. package/dist/src/sync/interfaces.d.ts.map +1 -1
  199. package/dist/src/sync/sync-builder.d.ts +3 -2
  200. package/dist/src/sync/sync-builder.d.ts.map +1 -1
  201. package/dist/src/sync/sync-builder.js +4 -4
  202. package/dist/src/sync/sync-builder.js.map +1 -1
  203. package/dist/src/sync/sync-manager.d.ts +4 -1
  204. package/dist/src/sync/sync-manager.d.ts.map +1 -1
  205. package/dist/src/sync/sync-manager.js +65 -8
  206. package/dist/src/sync/sync-manager.js.map +1 -1
  207. package/dist/src/sync/utils.d.ts +19 -0
  208. package/dist/src/sync/utils.d.ts.map +1 -1
  209. package/dist/src/sync/utils.js +44 -0
  210. package/dist/src/sync/utils.js.map +1 -1
  211. package/package.json +3 -3
  212. package/dist/src/sync/channels/internal-channel.d.ts +0 -57
  213. package/dist/src/sync/channels/internal-channel.d.ts.map +0 -1
  214. package/dist/src/sync/channels/internal-channel.js +0 -106
  215. package/dist/src/sync/channels/internal-channel.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/read-models/coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAOzD,OAAO,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAEzE;;;;;;;;;;;;GAYG;AACH,qBAAa,oBAAqB,YAAW,qBAAqB;IAK9D,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,UAAU;IALpB,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,SAAS,CAAS;gBAGhB,QAAQ,EAAE,SAAS,EACnB,UAAU,EAAE,UAAU,EAAE;IAGlC;;;OAGG;IACH,KAAK,IAAI,IAAI;IAgBb;;;OAGG;IACH,IAAI,IAAI,IAAI;IAaZ;;;OAGG;YACW,sBAAsB;CAuBrC"}
1
+ {"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/read-models/coordinator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAOzD,OAAO,KAAK,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAEzE;;;;;;;;;;;;GAYG;AACH,qBAAa,oBAAqB,YAAW,qBAAqB;IAK9D,OAAO,CAAC,QAAQ;aACA,QAAQ,EAAE,UAAU,EAAE;aACtB,SAAS,EAAE,UAAU,EAAE;IANzC,OAAO,CAAC,WAAW,CAAC,CAAc;IAClC,OAAO,CAAC,SAAS,CAAS;gBAGhB,QAAQ,EAAE,SAAS,EACX,QAAQ,EAAE,UAAU,EAAE,EACtB,SAAS,EAAE,UAAU,EAAE;IAKzC;;;OAGG;IACH,KAAK,IAAI,IAAI;IAgBb;;;OAGG;IACH,IAAI,IAAI,IAAI;IAaZ;;;OAGG;YACW,sBAAsB;CAwBrC"}
@@ -14,12 +14,15 @@ import { OperationEventTypes, } from "../events/types.js";
14
14
  */
15
15
  export class ReadModelCoordinator {
16
16
  eventBus;
17
- readModels;
17
+ preReady;
18
+ postReady;
18
19
  unsubscribe;
19
20
  isRunning = false;
20
- constructor(eventBus, readModels) {
21
+ constructor(eventBus, preReady, postReady) {
21
22
  this.eventBus = eventBus;
22
- this.readModels = readModels;
23
+ this.preReady = preReady;
24
+ this.postReady = postReady;
25
+ //
23
26
  }
24
27
  /**
25
28
  * Start listening for operation events and updating read models.
@@ -54,20 +57,16 @@ export class ReadModelCoordinator {
54
57
  * Errors from individual read models are collected and re-thrown as an aggregate.
55
58
  */
56
59
  async handleOperationWritten(event) {
57
- // Index into all read models in parallel
58
- // If any read model fails, the error will be collected by the event bus
59
- await Promise.all(this.readModels.map((readModel) => readModel.indexOperations(event.operations)));
60
- // Emit OPERATIONS_READY event after all read models have completed
61
- // Use fire-and-forget pattern to avoid blocking
60
+ // Index into pre-ready read models in parallel
61
+ await Promise.all(this.preReady.map((readModel) => readModel.indexOperations(event.operations)));
62
+ // Emit OPERATIONS_READY event after all pre-ready read models have completed
62
63
  const readyEvent = {
63
64
  jobId: event.jobId,
64
65
  operations: event.operations,
65
66
  };
66
- this.eventBus
67
- .emit(OperationEventTypes.OPERATIONS_READY, readyEvent)
68
- .catch(() => {
69
- // No-op: Event emission is fire-and-forget
70
- });
67
+ await this.eventBus.emit(OperationEventTypes.OPERATIONS_READY, readyEvent);
68
+ // Process post-ready read models (e.g., subscription notifications)
69
+ await Promise.all(this.postReady.map((readModel) => readModel.indexOperations(event.operations)));
71
70
  }
72
71
  }
73
72
  //# sourceMappingURL=coordinator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../../src/read-models/coordinator.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,GAIpB,MAAM,oBAAoB,CAAC;AAG5B;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,oBAAoB;IAKrB;IACA;IALF,WAAW,CAAe;IAC1B,SAAS,GAAG,KAAK,CAAC;IAE1B,YACU,QAAmB,EACnB,UAAwB;QADxB,aAAQ,GAAR,QAAQ,CAAW;QACnB,eAAU,GAAV,UAAU,CAAc;IAC/B,CAAC;IAEJ;;;OAGG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,wCAAwC;QACxC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CACxC,mBAAmB,CAAC,iBAAiB,EACrC,KAAK,EAAE,IAAI,EAAE,KAA4B,EAAE,EAAE;YAC3C,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAED;;;OAGG;IACH,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,sBAAsB,CAClC,KAA4B;QAE5B,yCAAyC;QACzC,wEAAwE;QACxE,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAChC,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,CAC5C,CACF,CAAC;QAEF,mEAAmE;QACnE,gDAAgD;QAChD,MAAM,UAAU,GAAyB;YACvC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CAAC;QACF,IAAI,CAAC,QAAQ;aACV,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,UAAU,CAAC;aACtD,KAAK,CAAC,GAAG,EAAE;YACV,2CAA2C;QAC7C,CAAC,CAAC,CAAC;IACP,CAAC;CACF"}
1
+ {"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../../src/read-models/coordinator.ts"],"names":[],"mappings":"AACA,OAAO,EACL,mBAAmB,GAIpB,MAAM,oBAAoB,CAAC;AAG5B;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,oBAAoB;IAKrB;IACQ;IACA;IANV,WAAW,CAAe;IAC1B,SAAS,GAAG,KAAK,CAAC;IAE1B,YACU,QAAmB,EACX,QAAsB,EACtB,SAAuB;QAF/B,aAAQ,GAAR,QAAQ,CAAW;QACX,aAAQ,GAAR,QAAQ,CAAc;QACtB,cAAS,GAAT,SAAS,CAAc;QAEvC,EAAE;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QAED,wCAAwC;QACxC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CACxC,mBAAmB,CAAC,iBAAiB,EACrC,KAAK,EAAE,IAAI,EAAE,KAA4B,EAAE,EAAE;YAC3C,MAAM,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC3C,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAED;;;OAGG;IACH,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,sBAAsB,CAClC,KAA4B;QAE5B,+CAA+C;QAC/C,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAC9B,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,CAC5C,CACF,CAAC;QAEF,6EAA6E;QAC7E,MAAM,UAAU,GAAyB;YACvC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CAAC;QACF,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;QAE3E,oEAAoE;QACpE,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAC/B,SAAS,CAAC,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,CAC5C,CACF,CAAC;IACJ,CAAC;CACF"}
@@ -1,20 +1,19 @@
1
1
  import type { PHDocument } from "document-model";
2
2
  import type { Kysely } from "kysely";
3
+ import type { IOperationIndex } from "../cache/operation-index-types.js";
4
+ import type { IWriteCache } from "../cache/write/interfaces.js";
3
5
  import type { IConsistencyTracker } from "../shared/consistency-tracker.js";
4
6
  import type { ConsistencyToken } from "../shared/types.js";
5
7
  import type { IDocumentView, IOperationStore, OperationWithContext, PagedResults, PagingOptions, ViewFilter } from "../storage/interfaces.js";
6
8
  import type { Database as StorageDatabase } from "../storage/kysely/types.js";
9
+ import { BaseReadModel } from "./base-read-model.js";
7
10
  import type { DocumentViewDatabase } from "./types.js";
8
11
  type Database = StorageDatabase & DocumentViewDatabase;
9
- export declare class KyselyDocumentView implements IDocumentView {
10
- private db;
12
+ export declare class KyselyDocumentView extends BaseReadModel implements IDocumentView {
11
13
  private operationStore;
12
- private consistencyTracker;
13
- private lastOperationId;
14
- constructor(db: Kysely<Database>, operationStore: IOperationStore, consistencyTracker: IConsistencyTracker);
15
- init(): Promise<void>;
14
+ private _db;
15
+ constructor(db: Kysely<Database>, operationStore: IOperationStore, operationIndex: IOperationIndex, writeCache: IWriteCache, consistencyTracker: IConsistencyTracker);
16
16
  indexOperations(items: OperationWithContext[]): Promise<void>;
17
- waitForConsistency(token: ConsistencyToken, timeoutMs?: number, signal?: AbortSignal): Promise<void>;
18
17
  exists(documentIds: string[], consistencyToken?: ConsistencyToken, signal?: AbortSignal): Promise<boolean[]>;
19
18
  get<TDocument extends PHDocument>(documentId: string, view?: ViewFilter, consistencyToken?: ConsistencyToken, signal?: AbortSignal): Promise<TDocument>;
20
19
  getByIdOrSlug<TDocument extends PHDocument>(identifier: string, view?: ViewFilter, consistencyToken?: ConsistencyToken, signal?: AbortSignal): Promise<TDocument>;
@@ -1 +1 @@
1
- {"version":3,"file":"document-view.d.ts","sourceRoot":"","sources":["../../../src/read-models/document-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,UAAU,EAAoB,MAAM,gBAAgB,CAAC;AAC9E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,KAAK,EAEV,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,KAAK,EACV,oBAAoB,EAErB,MAAM,YAAY,CAAC;AAEpB,KAAK,QAAQ,GAAG,eAAe,GAAG,oBAAoB,CAAC;AAEvD,qBAAa,kBAAmB,YAAW,aAAa;IAIpD,OAAO,CAAC,EAAE;IACV,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,kBAAkB;IAL5B,OAAO,CAAC,eAAe,CAAa;gBAG1B,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,EACpB,cAAc,EAAE,eAAe,EAC/B,kBAAkB,EAAE,mBAAmB;IAG3C,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA+BrB,eAAe,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgL7D,kBAAkB,CACtB,KAAK,EAAE,gBAAgB,EACvB,SAAS,CAAC,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,IAAI,CAAC;IAOV,MAAM,CACV,WAAW,EAAE,MAAM,EAAE,EACrB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,OAAO,EAAE,CAAC;IA0Bf,GAAG,CAAC,SAAS,SAAS,UAAU,EACpC,UAAU,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,UAAU,EACjB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,SAAS,CAAC;IA4Hf,aAAa,CAAC,SAAS,SAAS,UAAU,EAC9C,UAAU,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,UAAU,EACjB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,SAAS,CAAC;IAsDf,UAAU,CACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,UAAU,EACjB,MAAM,CAAC,EAAE,aAAa,EACtB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAsE9B,WAAW,CACf,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,UAAU,EACjB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CA2C/B"}
1
+ {"version":3,"file":"document-view.d.ts","sourceRoot":"","sources":["../../../src/read-models/document-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,UAAU,EAAoB,MAAM,gBAAgB,CAAC;AAE9E,OAAO,KAAK,EAAE,MAAM,EAAe,MAAM,QAAQ,CAAC;AAElD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,YAAY,EACZ,aAAa,EACb,UAAU,EACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EACV,oBAAoB,EAErB,MAAM,YAAY,CAAC;AAEpB,KAAK,QAAQ,GAAG,eAAe,GAAG,oBAAoB,CAAC;AAEvD,qBAAa,kBAAmB,SAAQ,aAAc,YAAW,aAAa;IAK1E,OAAO,CAAC,cAAc;IAJxB,OAAO,CAAC,GAAG,CAAmB;gBAG5B,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,EACZ,cAAc,EAAE,eAAe,EACvC,cAAc,EAAE,eAAe,EAC/B,UAAU,EAAE,WAAW,EACvB,kBAAkB,EAAE,mBAAmB;IAY1B,eAAe,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA0KtE,MAAM,CACV,WAAW,EAAE,MAAM,EAAE,EACrB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,OAAO,EAAE,CAAC;IA0Bf,GAAG,CAAC,SAAS,SAAS,UAAU,EACpC,UAAU,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,UAAU,EACjB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,SAAS,CAAC;IA2Gf,aAAa,CAAC,SAAS,SAAS,UAAU,EAC9C,UAAU,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,UAAU,EACjB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,SAAS,CAAC;IAsDf,UAAU,CACd,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,UAAU,EACjB,MAAM,CAAC,EAAE,aAAa,EACtB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IAsE9B,WAAW,CACf,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,UAAU,EACjB,gBAAgB,CAAC,EAAE,gBAAgB,EACnC,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;CA2C/B"}
@@ -1,48 +1,22 @@
1
+ import { deriveOperationId } from "document-model/core";
1
2
  import { v4 as uuidv4 } from "uuid";
2
- export class KyselyDocumentView {
3
- db;
3
+ import { BaseReadModel } from "./base-read-model.js";
4
+ export class KyselyDocumentView extends BaseReadModel {
4
5
  operationStore;
5
- consistencyTracker;
6
- lastOperationId = 0;
7
- constructor(db, operationStore, consistencyTracker) {
8
- this.db = db;
6
+ _db;
7
+ constructor(db, operationStore, operationIndex, writeCache, consistencyTracker) {
8
+ super(db, operationIndex, writeCache, consistencyTracker, "document-view");
9
9
  this.operationStore = operationStore;
10
- this.consistencyTracker = consistencyTracker;
11
- }
12
- async init() {
13
- const viewState = await this.db
14
- .selectFrom("ViewState")
15
- .selectAll()
16
- .executeTakeFirst();
17
- if (viewState) {
18
- this.lastOperationId = viewState.lastOperationId;
19
- const missedOperations = await this.operationStore.getSinceId(this.lastOperationId);
20
- if (missedOperations.items.length > 0) {
21
- await this.indexOperations(missedOperations.items);
22
- }
23
- }
24
- else {
25
- await this.db
26
- .insertInto("ViewState")
27
- .values({
28
- lastOperationId: 0,
29
- })
30
- .execute();
31
- const allOperations = await this.operationStore.getSinceId(0);
32
- if (allOperations.items.length > 0) {
33
- await this.indexOperations(allOperations.items);
34
- }
35
- }
10
+ this._db = db;
36
11
  }
37
12
  async indexOperations(items) {
38
13
  if (items.length === 0)
39
14
  return;
40
- await this.db.transaction().execute(async (trx) => {
15
+ await this._db.transaction().execute(async (trx) => {
41
16
  for (const item of items) {
42
17
  const { operation, context } = item;
43
18
  const { documentId, scope, branch, documentType, resultingState } = context;
44
19
  const { index, hash } = operation;
45
- // We never rebuild here
46
20
  if (!resultingState) {
47
21
  throw new Error(`Missing resultingState in context for operation ${operation.id || "unknown"}. ` +
48
22
  `IDocumentView requires resultingState from upstream - it does not rebuild documents.`);
@@ -171,24 +145,9 @@ export class KyselyDocumentView {
171
145
  }
172
146
  }
173
147
  }
148
+ await this.saveState(trx, items);
174
149
  });
175
- const coordinates = [];
176
- for (let i = 0; i < items.length; i++) {
177
- const item = items[i];
178
- coordinates.push({
179
- documentId: item.context.documentId,
180
- scope: item.context.scope,
181
- branch: item.context.branch,
182
- operationIndex: item.operation.index,
183
- });
184
- }
185
- this.consistencyTracker.update(coordinates);
186
- }
187
- async waitForConsistency(token, timeoutMs, signal) {
188
- if (token.coordinates.length === 0) {
189
- return;
190
- }
191
- await this.consistencyTracker.waitFor(token.coordinates, timeoutMs, signal);
150
+ this.updateConsistencyTracker(items);
192
151
  }
193
152
  async exists(documentIds, consistencyToken, signal) {
194
153
  if (consistencyToken) {
@@ -200,7 +159,7 @@ export class KyselyDocumentView {
200
159
  if (documentIds.length === 0) {
201
160
  return [];
202
161
  }
203
- const snapshots = await this.db
162
+ const snapshots = await this._db
204
163
  .selectFrom("DocumentSnapshot")
205
164
  .select(["documentId"])
206
165
  .where("documentId", "in", documentIds)
@@ -218,29 +177,22 @@ export class KyselyDocumentView {
218
177
  throw new Error("Operation aborted");
219
178
  }
220
179
  const branch = view?.branch || "main";
221
- // Determine which scopes to retrieve
222
180
  let scopesToQuery;
223
181
  if (view?.scopes && view.scopes.length > 0) {
224
- // If scopes has values, always include header + document + specified scopes
225
- // (header and document are the minimum scopes that must be returned)
226
182
  scopesToQuery = [...new Set(["header", "document", ...view.scopes])];
227
183
  }
228
184
  else {
229
- // If scopes is undefined, null, or empty array [], get all scopes (no filter)
230
185
  scopesToQuery = [];
231
186
  }
232
- // Build query to get snapshots
233
- let query = this.db
187
+ let query = this._db
234
188
  .selectFrom("DocumentSnapshot")
235
189
  .selectAll()
236
190
  .where("documentId", "=", documentId)
237
191
  .where("branch", "=", branch)
238
192
  .where("isDeleted", "=", false);
239
- // Apply scope filter if we have specific scopes to query
240
193
  if (scopesToQuery.length > 0) {
241
194
  query = query.where("scope", "in", scopesToQuery);
242
195
  }
243
- // Execute the query
244
196
  const snapshots = await query.execute();
245
197
  if (snapshots.length === 0) {
246
198
  throw new Error(`Document not found: ${documentId}`);
@@ -248,54 +200,39 @@ export class KyselyDocumentView {
248
200
  if (signal?.aborted) {
249
201
  throw new Error("Operation aborted");
250
202
  }
251
- // Find the header snapshot
252
203
  const headerSnapshot = snapshots.find((s) => s.scope === "header");
253
204
  if (!headerSnapshot) {
254
205
  throw new Error(`Document header not found: ${documentId}`);
255
206
  }
256
- // Get the header from JSONB content (already parsed)
257
207
  const header = headerSnapshot.content;
258
- // Reconstruct cross-scope header metadata (revision, lastModifiedAtUtcIso)
259
- // by aggregating information from all scopes
260
208
  const revisions = await this.operationStore.getRevisions(documentId, branch, signal);
261
209
  header.revision = revisions.revision;
262
210
  header.lastModifiedAtUtcIso = revisions.latestTimestamp;
263
- // Reconstruct the document state from all snapshots
264
- // Note: exclude "header" scope from state since it's already in the header field
265
211
  const state = {};
266
212
  for (const snapshot of snapshots) {
267
- // Skip header scope - it's stored separately in the header field
268
213
  if (snapshot.scope === "header") {
269
214
  continue;
270
215
  }
271
- // Content is already an object from JSONB
272
216
  state[snapshot.scope] = snapshot.content;
273
217
  }
274
- // Retrieve operations from the operation store to match legacy storage format
275
218
  const operations = {};
276
- // Get all operations for this document across all scopes
277
219
  const allOps = await this.operationStore.getSinceId(0, undefined, signal);
278
220
  const docOps = allOps.items.filter((op) => op.context.documentId === documentId && op.context.branch === branch);
279
- // Group operations by scope and normalize to match legacy storage structure
280
221
  for (const { operation, context } of docOps) {
281
222
  operations[context.scope] ??= [];
282
- // Normalize operation to match legacy storage format
283
- // Legacy storage includes redundant top-level fields that duplicate action fields
284
223
  const normalizedOp = {
224
+ id: deriveOperationId(context.documentId, context.scope, context.branch, operation.action.id),
285
225
  action: operation.action,
286
226
  index: operation.index,
287
227
  timestampUtcMs: operation.timestampUtcMs,
288
228
  hash: operation.hash,
289
229
  skip: operation.skip,
290
- // Add top-level fields that mirror action fields (legacy format)
291
230
  ...operation.action,
292
- // Legacy storage includes these optional fields
293
231
  error: operation.error,
294
232
  resultingState: operation.resultingState,
295
233
  };
296
234
  operations[context.scope].push(normalizedOp);
297
235
  }
298
- // Construct the PHDocument
299
236
  const document = {
300
237
  header,
301
238
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
@@ -315,14 +252,14 @@ export class KyselyDocumentView {
315
252
  throw new Error("Operation aborted");
316
253
  }
317
254
  const branch = view?.branch || "main";
318
- const idCheckPromise = this.db
255
+ const idCheckPromise = this._db
319
256
  .selectFrom("DocumentSnapshot")
320
257
  .select("documentId")
321
258
  .where("documentId", "=", identifier)
322
259
  .where("branch", "=", branch)
323
260
  .where("isDeleted", "=", false)
324
261
  .executeTakeFirst();
325
- const slugCheckPromise = this.db
262
+ const slugCheckPromise = this._db
326
263
  .selectFrom("SlugMapping")
327
264
  .select("documentId")
328
265
  .where("slug", "=", identifier)
@@ -360,7 +297,7 @@ export class KyselyDocumentView {
360
297
  const documents = [];
361
298
  const processedDocumentIds = new Set();
362
299
  const allDocumentIds = [];
363
- const snapshots = await this.db
300
+ const snapshots = await this._db
364
301
  .selectFrom("DocumentSnapshot")
365
302
  .selectAll()
366
303
  .where("documentType", "=", type)
@@ -407,7 +344,7 @@ export class KyselyDocumentView {
407
344
  throw new Error("Operation aborted");
408
345
  }
409
346
  const branch = view?.branch || "main";
410
- const mapping = await this.db
347
+ const mapping = await this._db
411
348
  .selectFrom("SlugMapping")
412
349
  .select("documentId")
413
350
  .where("slug", "=", slug)
@@ -420,7 +357,7 @@ export class KyselyDocumentView {
420
357
  throw new Error("Operation aborted");
421
358
  }
422
359
  if (view?.scopes && view.scopes.length > 0) {
423
- const scopeCheck = await this.db
360
+ const scopeCheck = await this._db
424
361
  .selectFrom("DocumentSnapshot")
425
362
  .select("scope")
426
363
  .where("documentId", "=", mapping.documentId)
@@ -1 +1 @@
1
- {"version":3,"file":"document-view.js","sourceRoot":"","sources":["../../../src/read-models/document-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-view.js","sourceRoot":"","sources":["../../../src/read-models/document-view.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import type { Generated, Insertable, Selectable, Updateable } from "kysely";
2
2
  export interface ViewStateTable {
3
- lastOperationId: number;
3
+ readModelId: string;
4
+ lastOrdinal: number;
4
5
  lastOperationTimestamp: Generated<Date>;
5
6
  }
6
7
  export interface DocumentSnapshotTable {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/read-models/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAE5E,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,eAAe,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACnC,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,cAAc,CAAC;IAC1B,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,WAAW,EAAE,gBAAgB,CAAC;CAC/B;AAED,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;AAC7D,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;AAE7D,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;AAC3E,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;AAE3E,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;AACjE,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/read-models/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAE5E,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,eAAe,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACnC,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;CAC5B;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,cAAc,CAAC;IAC1B,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,WAAW,EAAE,gBAAgB,CAAC;CAC/B;AAED,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;AAC7D,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;AAE7D,MAAM,MAAM,mBAAmB,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;AAC3E,MAAM,MAAM,0BAA0B,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;AAE3E,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;AACjE,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC"}
@@ -1,16 +1,16 @@
1
- import type { DocumentModelModule } from "document-model";
1
+ import type { DocumentModelModule, UpgradeManifest, UpgradeReducer, UpgradeTransition } from "document-model";
2
2
  import type { IDocumentModelRegistry } from "./interfaces.js";
3
3
  /**
4
4
  * Error thrown when a document model module is not found in the registry.
5
5
  */
6
6
  export declare class ModuleNotFoundError extends Error {
7
- constructor(documentType: string);
7
+ constructor(documentType: string, version?: number);
8
8
  }
9
9
  /**
10
10
  * Error thrown when attempting to register a module that already exists.
11
11
  */
12
12
  export declare class DuplicateModuleError extends Error {
13
- constructor(documentType: string);
13
+ constructor(documentType: string, version?: number);
14
14
  }
15
15
  /**
16
16
  * Error thrown when a module is invalid or malformed.
@@ -18,45 +18,53 @@ export declare class DuplicateModuleError extends Error {
18
18
  export declare class InvalidModuleError extends Error {
19
19
  constructor(message: string);
20
20
  }
21
+ /**
22
+ * Error thrown when attempting to register an upgrade manifest that already exists.
23
+ */
24
+ export declare class DuplicateManifestError extends Error {
25
+ constructor(documentType: string);
26
+ }
27
+ /**
28
+ * Error thrown when an upgrade manifest is not found.
29
+ */
30
+ export declare class ManifestNotFoundError extends Error {
31
+ constructor(documentType: string);
32
+ }
33
+ /**
34
+ * Error thrown when attempting a downgrade operation.
35
+ */
36
+ export declare class DowngradeNotSupportedError extends Error {
37
+ constructor(documentType: string, fromVersion: number, toVersion: number);
38
+ }
39
+ /**
40
+ * Error thrown when a required upgrade transition is missing from the manifest.
41
+ */
42
+ export declare class MissingUpgradeTransitionError extends Error {
43
+ constructor(documentType: string, fromVersion: number, toVersion: number);
44
+ }
45
+ /**
46
+ * Error thrown when getUpgradeReducer is called with a non-single-step version increment.
47
+ */
48
+ export declare class InvalidUpgradeStepError extends Error {
49
+ constructor(documentType: string, fromVersion: number, toVersion: number);
50
+ }
21
51
  /**
22
52
  * In-memory implementation of the IDocumentModelRegistry interface.
23
- * Manages document model modules and provides centralized access to their reducers, utils, and specifications.
53
+ * Manages document model modules with version-aware storage and upgrade manifest support.
24
54
  */
25
55
  export declare class DocumentModelRegistry implements IDocumentModelRegistry {
26
56
  private modules;
27
- /**
28
- * Register multiple modules at once.
29
- *
30
- * @param modules Document model modules to register
31
- * @throws DuplicateModuleError if a module with the same document type is already registered
32
- * @throws InvalidModuleError if a module is malformed
33
- */
57
+ private manifests;
34
58
  registerModules(...modules: DocumentModelModule<any>[]): void;
35
- /**
36
- * Unregister multiple document model modules at once.
37
- *
38
- * @param documentTypes The document types to unregister
39
- * @returns true if all modules were unregistered, false if any were not found
40
- */
41
59
  unregisterModules(...documentTypes: string[]): boolean;
42
- /**
43
- * Get a specific document model module by document type.
44
- *
45
- * @param documentType The document type identifier
46
- * @returns The document model module
47
- * @throws ModuleNotFoundError if the document type is not registered
48
- */
49
- getModule(documentType: string): DocumentModelModule<any>;
50
- /**
51
- * Get all registered document model modules.
52
- * Note: This only returns loaded modules, not lazy-loaded ones.
53
- *
54
- * @returns Array of all registered modules
55
- */
60
+ getModule(documentType: string, version?: number): DocumentModelModule<any>;
56
61
  getAllModules(): DocumentModelModule<any>[];
57
- /**
58
- * Clear all registered modules
59
- */
60
62
  clear(): void;
63
+ getSupportedVersions(documentType: string): number[];
64
+ getLatestVersion(documentType: string): number;
65
+ registerUpgradeManifests(...manifests: UpgradeManifest<readonly number[]>[]): void;
66
+ getUpgradeManifest(documentType: string): UpgradeManifest<readonly number[]>;
67
+ computeUpgradePath(documentType: string, fromVersion: number, toVersion: number): UpgradeTransition[];
68
+ getUpgradeReducer(documentType: string, fromVersion: number, toVersion: number): UpgradeReducer<any, any>;
61
69
  }
62
70
  //# sourceMappingURL=implementation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"implementation.d.ts","sourceRoot":"","sources":["../../../src/registry/implementation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAE9D;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,YAAY,EAAE,MAAM;CAIjC;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,YAAY,EAAE,MAAM;CAIjC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAI5B;AAED;;;GAGG;AACH,qBAAa,qBAAsB,YAAW,sBAAsB;IAClE,OAAO,CAAC,OAAO,CAA+C;IAE9D;;;;;;OAMG;IACH,eAAe,CAAC,GAAG,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI;IAY7D;;;;;OAKG;IACH,iBAAiB,CAAC,GAAG,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO;IAatD;;;;;;OAMG;IACH,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC;IAUzD;;;;;OAKG;IACH,aAAa,IAAI,mBAAmB,CAAC,GAAG,CAAC,EAAE;IAI3C;;OAEG;IACH,KAAK,IAAI,IAAI;CAGd"}
1
+ {"version":3,"file":"implementation.d.ts","sourceRoot":"","sources":["../../../src/registry/implementation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAE9D;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAOnD;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAOnD;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,YAAY,EAAE,MAAM;CAIjC;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,YAAY,EAAE,MAAM;CAIjC;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,KAAK;gBACvC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAMzE;AAED;;GAEG;AACH,qBAAa,6BAA8B,SAAQ,KAAK;gBAC1C,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAMzE;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;CAMzE;AAED;;;GAGG;AACH,qBAAa,qBAAsB,YAAW,sBAAsB;IAClE,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,SAAS,CAA4C;IAE7D,eAAe,CAAC,GAAG,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI;IAmB7D,iBAAiB,CAAC,GAAG,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO;IAoBtD,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC;IA4B3E,aAAa,IAAI,mBAAmB,CAAC,GAAG,CAAC,EAAE;IAI3C,KAAK,IAAI,IAAI;IAKb,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE;IAgBpD,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAqB9C,wBAAwB,CACtB,GAAG,SAAS,EAAE,eAAe,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GACjD,IAAI;IAWP,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,eAAe,CAAC,SAAS,MAAM,EAAE,CAAC;IAS5E,kBAAkB,CAChB,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,iBAAiB,EAAE;IA+BtB,iBAAiB,CACf,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,cAAc,CAAC,GAAG,EAAE,GAAG,CAAC;CAoB5B"}