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

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 (127) hide show
  1. package/README.md +7 -0
  2. package/REFERENCE.md +131 -7
  3. package/dist/entity/agent-execution-record-spec.d.ts +87 -0
  4. package/dist/entity/agent-execution-record-spec.d.ts.map +1 -0
  5. package/dist/entity/agent-execution-record-spec.js +230 -0
  6. package/dist/entity/agent-execution-record-spec.js.map +1 -0
  7. package/dist/entity/agent-execution-sizes.d.ts +30 -0
  8. package/dist/entity/agent-execution-sizes.d.ts.map +1 -0
  9. package/dist/entity/agent-execution-sizes.js +51 -0
  10. package/dist/entity/agent-execution-sizes.js.map +1 -0
  11. package/dist/entity/agent-execution-transitions.d.ts +72 -0
  12. package/dist/entity/agent-execution-transitions.d.ts.map +1 -0
  13. package/dist/entity/agent-execution-transitions.js +165 -0
  14. package/dist/entity/agent-execution-transitions.js.map +1 -0
  15. package/dist/entity/agent-execution-values.d.ts +143 -0
  16. package/dist/entity/agent-execution-values.d.ts.map +1 -0
  17. package/dist/entity/agent-execution-values.js +251 -0
  18. package/dist/entity/agent-execution-values.js.map +1 -0
  19. package/dist/entity/agent-execution.d.ts +235 -0
  20. package/dist/entity/agent-execution.d.ts.map +1 -0
  21. package/dist/entity/agent-execution.js +15 -0
  22. package/dist/entity/agent-execution.js.map +1 -0
  23. package/dist/entity/agent-history-conformance.d.ts +78 -0
  24. package/dist/entity/agent-history-conformance.d.ts.map +1 -0
  25. package/dist/entity/agent-history-conformance.js +493 -0
  26. package/dist/entity/agent-history-conformance.js.map +1 -0
  27. package/dist/entity/agent-history-provider-page.d.ts +39 -0
  28. package/dist/entity/agent-history-provider-page.d.ts.map +1 -0
  29. package/dist/entity/agent-history-provider-page.js +82 -0
  30. package/dist/entity/agent-history-provider-page.js.map +1 -0
  31. package/dist/entity/agent-history-record-spec.d.ts +79 -0
  32. package/dist/entity/agent-history-record-spec.d.ts.map +1 -0
  33. package/dist/entity/agent-history-record-spec.js +147 -0
  34. package/dist/entity/agent-history-record-spec.js.map +1 -0
  35. package/dist/entity/agent-history.d.ts +196 -0
  36. package/dist/entity/agent-history.d.ts.map +1 -0
  37. package/dist/entity/agent-history.js +136 -0
  38. package/dist/entity/agent-history.js.map +1 -0
  39. package/dist/event/event-store.d.ts +41 -35
  40. package/dist/event/event-store.d.ts.map +1 -1
  41. package/dist/event/event-store.js +149 -144
  42. package/dist/event/event-store.js.map +1 -1
  43. package/dist/index.d.ts +1 -1
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +1 -1
  46. package/dist/index.js.map +1 -1
  47. package/dist/internal/agent-execution.d.ts +51 -0
  48. package/dist/internal/agent-execution.d.ts.map +1 -0
  49. package/dist/internal/agent-execution.js +53 -0
  50. package/dist/internal/agent-execution.js.map +1 -0
  51. package/dist/internal/agent-history.d.ts +48 -0
  52. package/dist/internal/agent-history.d.ts.map +1 -0
  53. package/dist/internal/agent-history.js +52 -0
  54. package/dist/internal/agent-history.js.map +1 -0
  55. package/dist/internal/entity-commit.d.ts +30 -11
  56. package/dist/internal/entity-commit.d.ts.map +1 -1
  57. package/dist/internal/entity-commit.js +45 -2
  58. package/dist/internal/entity-commit.js.map +1 -1
  59. package/dist/internal/entity-history.d.ts +11 -0
  60. package/dist/internal/entity-history.d.ts.map +1 -1
  61. package/dist/internal/entity-history.js +10 -0
  62. package/dist/internal/entity-history.js.map +1 -1
  63. package/dist/internal/event-store.d.ts +1 -1
  64. package/dist/internal/event-store.d.ts.map +1 -1
  65. package/dist/internal/event-store.js +1 -1
  66. package/dist/internal/event-store.js.map +1 -1
  67. package/dist/internal/tenancy.d.ts +87 -1
  68. package/dist/internal/tenancy.d.ts.map +1 -1
  69. package/dist/internal/tenancy.js +39 -0
  70. package/dist/internal/tenancy.js.map +1 -1
  71. package/dist/memory/agent-execution-head-index.d.ts +52 -0
  72. package/dist/memory/agent-execution-head-index.d.ts.map +1 -0
  73. package/dist/memory/agent-execution-head-index.js +91 -0
  74. package/dist/memory/agent-execution-head-index.js.map +1 -0
  75. package/dist/memory/agent-history-index.d.ts +49 -0
  76. package/dist/memory/agent-history-index.d.ts.map +1 -0
  77. package/dist/memory/agent-history-index.js +239 -0
  78. package/dist/memory/agent-history-index.js.map +1 -0
  79. package/dist/memory/agent-history-mutation-queue.d.ts +17 -0
  80. package/dist/memory/agent-history-mutation-queue.d.ts.map +1 -0
  81. package/dist/memory/agent-history-mutation-queue.js +31 -0
  82. package/dist/memory/agent-history-mutation-queue.js.map +1 -0
  83. package/dist/memory/in-memory-agent-execution.d.ts +21 -0
  84. package/dist/memory/in-memory-agent-execution.d.ts.map +1 -0
  85. package/dist/memory/in-memory-agent-execution.js +587 -0
  86. package/dist/memory/in-memory-agent-execution.js.map +1 -0
  87. package/dist/memory/in-memory-agent-history.d.ts +21 -0
  88. package/dist/memory/in-memory-agent-history.d.ts.map +1 -0
  89. package/dist/memory/in-memory-agent-history.js +133 -0
  90. package/dist/memory/in-memory-agent-history.js.map +1 -0
  91. package/dist/memory/in-memory-entity-commit.d.ts +107 -28
  92. package/dist/memory/in-memory-entity-commit.d.ts.map +1 -1
  93. package/dist/memory/in-memory-entity-commit.js +198 -286
  94. package/dist/memory/in-memory-entity-commit.js.map +1 -1
  95. package/dist/memory/in-memory-entity-history.d.ts +1 -1
  96. package/dist/memory/in-memory-entity-history.d.ts.map +1 -1
  97. package/dist/memory/in-memory-entity-history.js.map +1 -1
  98. package/dist/memory/in-memory-storage-backend.d.ts +18 -0
  99. package/dist/memory/in-memory-storage-backend.d.ts.map +1 -1
  100. package/dist/memory/in-memory-storage-backend.js +71 -0
  101. package/dist/memory/in-memory-storage-backend.js.map +1 -1
  102. package/dist/memory/in-memory-storage-factory.d.ts +38 -3
  103. package/dist/memory/in-memory-storage-factory.d.ts.map +1 -1
  104. package/dist/memory/in-memory-storage-factory.js +146 -10
  105. package/dist/memory/in-memory-storage-factory.js.map +1 -1
  106. package/dist/memory/tenant-records.d.ts +1 -1
  107. package/dist/memory/tenant-records.d.ts.map +1 -1
  108. package/dist/memory/tenant-records.js +3 -2
  109. package/dist/memory/tenant-records.js.map +1 -1
  110. package/dist/provider.d.ts +0 -1
  111. package/dist/provider.d.ts.map +1 -1
  112. package/dist/provider.js +0 -1
  113. package/dist/provider.js.map +1 -1
  114. package/dist/record/record-query.d.ts +10 -2
  115. package/dist/record/record-query.d.ts.map +1 -1
  116. package/dist/record/record-query.js +9 -0
  117. package/dist/record/record-query.js.map +1 -1
  118. package/dist/tsconfig.tsbuildinfo +1 -1
  119. package/package.json +3 -2
  120. package/dist/internal/delivery-cleanup.d.ts +0 -99
  121. package/dist/internal/delivery-cleanup.d.ts.map +0 -1
  122. package/dist/internal/delivery-cleanup.js +0 -38
  123. package/dist/internal/delivery-cleanup.js.map +0 -1
  124. package/dist/memory/memory-delivery-cleanup.d.ts +0 -32
  125. package/dist/memory/memory-delivery-cleanup.d.ts.map +0 -1
  126. package/dist/memory/memory-delivery-cleanup.js +0 -61
  127. package/dist/memory/memory-delivery-cleanup.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export { EventStore, type EventRollback, type EventStoreContext, type OnEventAccepted, } from "./event/event-store.js";
1
+ export { EventStore, type EventStoreContext, type OnEventAccepted } from "./event/event-store.js";
2
2
  export type { EntityEventStorage, EntityStateHistoryStorage, } from "./entity/entity-history-storage.js";
3
3
  export { InMemoryRecordStorage } from "./memory/in-memory-record-storage.js";
4
4
  export { InMemoryStorageBackend } from "./memory/in-memory-storage-backend.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAcA,OAAO,EACL,UAAU,EACV,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,eAAe,GACrB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,YAAY,EACV,4BAA4B,EAC5B,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EACL,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,iBAAiB,GACvB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACV,kBAAkB,EAClB,uBAAuB,EACvB,YAAY,EACZ,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,UAAU,EAAE,KAAK,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAClG,YAAY,EACV,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACvE,YAAY,EACV,4BAA4B,EAC5B,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,mBAAmB,GACpB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EACL,cAAc,EACd,KAAK,aAAa,EAClB,KAAK,iBAAiB,GACvB,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACV,kBAAkB,EAClB,uBAAuB,EACvB,YAAY,EACZ,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC"}
package/dist/index.js CHANGED
@@ -11,7 +11,7 @@
11
11
  * or implied. See the License for the specific language governing permissions and limitations under
12
12
  * the License.
13
13
  */
14
- export { EventStore, } from "./event/event-store.js";
14
+ export { EventStore } from "./event/event-store.js";
15
15
  export { InMemoryRecordStorage } from "./memory/in-memory-record-storage.js";
16
16
  export { InMemoryStorageBackend } from "./memory/in-memory-storage-backend.js";
17
17
  export { InMemoryStorageFactory } from "./memory/in-memory-storage-factory.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,UAAU,GAIX,MAAM,wBAAwB,CAAC;AAKhC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AAUpC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAyB,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EACL,cAAc,GAGf,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAA0B,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,UAAU,EAAgD,MAAM,wBAAwB,CAAC;AAKlG,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EACL,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AAUpC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAyB,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EACL,cAAc,GAGf,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAA0B,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC"}
@@ -0,0 +1,51 @@
1
+ import type { Message } from "@bufbuild/protobuf";
2
+ import type { AgentExecutionStorage, AgentExecutionStorageInput } from "../entity/agent-execution.js";
3
+ import type { StorageFactory } from "../storage/storage-factory.js";
4
+ /**
5
+ * Opens provider handles for durable Agent execution.
6
+ */
7
+ export interface AgentExecutionStorageFactory {
8
+ /**
9
+ * Opens a closeable provider handle for one Agent repository.
10
+ *
11
+ * @typeParam I Typed Agent identifier.
12
+ * @typeParam S Generated Agent state.
13
+ * @param input Entity layout and generated Agent state type.
14
+ * @returns Provider execution handle.
15
+ */
16
+ createAgentExecutionStorage<I, S extends Message>(input: AgentExecutionStorageInput<I, S>): AgentExecutionStorage<I, S>;
17
+ }
18
+ /**
19
+ * Registers and opens the provider-only durable Agent execution capability.
20
+ */
21
+ export interface AgentExecutionFactoryAccess {
22
+ /**
23
+ * Returns whether a storage factory registered durable Agent execution.
24
+ *
25
+ * @param factory Storage factory checked at Bounded Context registration.
26
+ * @returns Whether the provider offers Agent execution handles.
27
+ */
28
+ supports(factory: StorageFactory): boolean;
29
+ /**
30
+ * Registers a provider capability.
31
+ *
32
+ * @param factory Storage factory offering execution.
33
+ * @param creator Provider-specific handle creator.
34
+ */
35
+ register(factory: StorageFactory, creator: AgentExecutionStorageFactory): void;
36
+ /**
37
+ * Opens the required provider capability.
38
+ *
39
+ * @typeParam I Typed Agent identifier.
40
+ * @typeParam S Generated Agent state.
41
+ * @param factory Storage factory offering execution.
42
+ * @param input Agent repository scope and Entity layout.
43
+ * @returns Closeable provider execution handle.
44
+ */
45
+ create<I, S extends Message>(factory: StorageFactory, input: AgentExecutionStorageInput<I, S>): AgentExecutionStorage<I, S>;
46
+ }
47
+ /**
48
+ * Registers and creates provider execution handles without exposing them to applications.
49
+ */
50
+ export declare const AgentExecutionStorageFactories: AgentExecutionFactoryAccess;
51
+ //# sourceMappingURL=agent-execution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-execution.d.ts","sourceRoot":"","sources":["../../src/internal/agent-execution.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,KAAK,EACV,qBAAqB,EACrB,0BAA0B,EAC3B,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C;;;;;;;OAOG;IACH,2BAA2B,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EAC9C,KAAK,EAAE,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,GACtC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAChC;AAID;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC;IAE3C;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,4BAA4B,GAAG,IAAI,CAAC;IAE/E;;;;;;;;OAQG;IACH,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EACzB,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,0BAA0B,CAAC,CAAC,EAAE,CAAC,CAAC,GACtC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,eAAO,MAAM,8BAA8B,EAAE,2BAuC3C,CAAC"}
@@ -0,0 +1,53 @@
1
+ /*
2
+ * Copyright 2026, CodeMatters. All rights reserved.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
5
+ * in compliance with the License. You may obtain a copy of the License at
6
+ *
7
+ * https://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
10
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11
+ * or implied. See the License for the specific language governing permissions and limitations under
12
+ * the License.
13
+ */
14
+ const factories = new WeakMap();
15
+ /**
16
+ * Registers and creates provider execution handles without exposing them to applications.
17
+ */
18
+ export const AgentExecutionStorageFactories = Object.freeze({
19
+ /**
20
+ * Checks provider registration without selecting or fabricating a tenant.
21
+ *
22
+ * @param factory Storage factory checked at Bounded Context registration.
23
+ * @returns Whether the provider offers Agent execution handles.
24
+ */
25
+ supports(factory) {
26
+ return factories.has(factory);
27
+ },
28
+ /**
29
+ * Registers one provider's execution capability.
30
+ *
31
+ * @param factory Storage factory offering execution.
32
+ * @param creator Provider-specific handle creator.
33
+ */
34
+ register(factory, creator) {
35
+ factories.set(factory, creator);
36
+ },
37
+ /**
38
+ * Rejects providers without durable Agent execution support before intake.
39
+ *
40
+ * @typeParam I Typed Agent identifier.
41
+ * @typeParam S Generated Agent state.
42
+ * @param factory Storage factory offering execution.
43
+ * @param input Agent repository scope and Entity layout.
44
+ * @returns Closeable provider execution handle.
45
+ */
46
+ create(factory, input) {
47
+ const creator = factories.get(factory);
48
+ if (creator === undefined)
49
+ throw new Error("StorageFactory does not provide durable Agent execution storage.");
50
+ return creator.createAgentExecutionStorage(input);
51
+ },
52
+ });
53
+ //# sourceMappingURL=agent-execution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-execution.js","sourceRoot":"","sources":["../../src/internal/agent-execution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AA2BH,MAAM,SAAS,GAAG,IAAI,OAAO,EAAgD,CAAC;AAqC9E;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAgC,MAAM,CAAC,MAAM,CAAC;IACvF;;;;;OAKG;IACH,QAAQ,CAAC,OAAuB;QAC9B,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,QAAQ,CAAC,OAAuB,EAAE,OAAqC;QACrE,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CACJ,OAAuB,EACvB,KAAuC;QAEvC,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,OAAO,KAAK,SAAS;YACvB,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;QACtF,OAAO,OAAO,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;CACF,CAAC,CAAC"}
@@ -0,0 +1,48 @@
1
+ import type { AgentHistoryStorage, AgentHistoryStorageInput } from "../entity/agent-history.js";
2
+ import type { StorageFactory } from "../storage/storage-factory.js";
3
+ /**
4
+ * Creates provider handles for one Agent history scope.
5
+ */
6
+ export interface AgentHistoryStorageFactory {
7
+ /**
8
+ * Opens the provider's indexed Agent history handle.
9
+ *
10
+ * @typeParam Id Typed Agent identifier.
11
+ * @param input Bounded Context, tenant, state type, and ID codec.
12
+ * @returns Independently closeable history handle.
13
+ */
14
+ createAgentHistoryStorage<Id>(input: AgentHistoryStorageInput<Id>): AgentHistoryStorage<Id>;
15
+ }
16
+ /**
17
+ * Registers provider capability and opens its scoped handles.
18
+ */
19
+ export interface AgentHistoryFactoryAccess {
20
+ /**
21
+ * Returns whether the provider registered mandatory Agent history.
22
+ *
23
+ * @param factory Storage factory checked before a tenant is selected.
24
+ * @returns Whether indexed Agent history handles are available.
25
+ */
26
+ supports(factory: StorageFactory): boolean;
27
+ /**
28
+ * Registers an Agent history provider capability.
29
+ *
30
+ * @param factory Provider storage factory.
31
+ * @param creator Provider-specific handle creator.
32
+ */
33
+ register(factory: StorageFactory, creator: AgentHistoryStorageFactory): void;
34
+ /**
35
+ * Opens the required Agent history provider capability.
36
+ *
37
+ * @typeParam Id Typed Agent identifier.
38
+ * @param factory Provider storage factory.
39
+ * @param input Bounded Context, state type, and typed ID scope.
40
+ * @returns Independently closeable history handle.
41
+ */
42
+ create<Id>(factory: StorageFactory, input: AgentHistoryStorageInput<Id>): AgentHistoryStorage<Id>;
43
+ }
44
+ /**
45
+ * Registers and opens the provider-only Agent history capability.
46
+ */
47
+ export declare const AgentHistoryStorageFactories: AgentHistoryFactoryAccess;
48
+ //# sourceMappingURL=agent-history.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-history.d.ts","sourceRoot":"","sources":["../../src/internal/agent-history.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAChG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC;;;;;;OAMG;IACH,yBAAyB,CAAC,EAAE,EAAE,KAAK,EAAE,wBAAwB,CAAC,EAAE,CAAC,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;CAC7F;AAID;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC;IAE3C;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAE7E;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,wBAAwB,CAAC,EAAE,CAAC,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;CACnG;AAED;;GAEG;AACH,eAAO,MAAM,4BAA4B,EAAE,yBAsCzC,CAAC"}
@@ -0,0 +1,52 @@
1
+ /*
2
+ * Copyright 2026, CodeMatters. All rights reserved.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
5
+ * in compliance with the License. You may obtain a copy of the License at
6
+ *
7
+ * https://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software distributed under the License
10
+ * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
11
+ * or implied. See the License for the specific language governing permissions and limitations under
12
+ * the License.
13
+ */
14
+ const factories = new WeakMap();
15
+ /**
16
+ * Registers and opens the provider-only Agent history capability.
17
+ */
18
+ export const AgentHistoryStorageFactories = Object.freeze({
19
+ /**
20
+ * Checks registration without creating a handle for an invented tenant.
21
+ *
22
+ * @param factory Storage factory checked at Bounded Context registration.
23
+ * @returns Whether Agent history handles are available.
24
+ */
25
+ supports(factory) {
26
+ return factories.has(factory);
27
+ },
28
+ /**
29
+ * Registers a provider's Agent history handle factory.
30
+ *
31
+ * @param factory Storage factory offering the capability.
32
+ * @param creator Provider-specific handle creator.
33
+ */
34
+ register(factory, creator) {
35
+ factories.set(factory, creator);
36
+ },
37
+ /**
38
+ * Opens an Agent history handle or fails when the provider lacks one.
39
+ *
40
+ * @typeParam Id Typed Agent identifier.
41
+ * @param factory Provider storage factory.
42
+ * @param input Bounded Context, tenant, state type, and ID codec.
43
+ * @returns Independently closeable history handle.
44
+ */
45
+ create(factory, input) {
46
+ const creator = factories.get(factory);
47
+ if (creator === undefined)
48
+ throw new Error("StorageFactory does not provide required Agent history storage.");
49
+ return creator.createAgentHistoryStorage(input);
50
+ },
51
+ });
52
+ //# sourceMappingURL=agent-history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-history.js","sourceRoot":"","sources":["../../src/internal/agent-history.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAmBH,MAAM,SAAS,GAAG,IAAI,OAAO,EAA8C,CAAC;AAiC5E;;GAEG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAA8B,MAAM,CAAC,MAAM,CAAC;IACnF;;;;;OAKG;IACH,QAAQ,CAAC,OAAuB;QAC9B,OAAO,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,QAAQ,CAAC,OAAuB,EAAE,OAAmC;QACnE,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CACJ,OAAuB,EACvB,KAAmC;QAEnC,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,OAAO,KAAK,SAAS;YACvB,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACrF,OAAO,OAAO,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;CACF,CAAC,CAAC"}
@@ -1,16 +1,17 @@
1
- import type { Message } from "@bufbuild/protobuf";
2
- import type { Event } from "@spine-event-engine/proto";
1
+ import { type Message } from "@bufbuild/protobuf";
2
+ import { type Event } from "@spine-event-engine/proto";
3
3
  import type { EntityRecord } from "../entity/entity-record.js";
4
4
  import type { StorageContext } from "../storage/storage.js";
5
5
  import type { EntityStorageInput } from "./entity-history.js";
6
6
  import type { StorageFactory } from "../storage/storage-factory.js";
7
7
  /**
8
- * Describes one coordinated provider mutation for an Entity commit.
8
+ * Describes one prepared provider mutation for an Entity commit.
9
9
  *
10
10
  * This provider-only contract combines current state, retained histories, and
11
- * framework delivery events. Memory and transactional database providers apply
12
- * the changes atomically. MyISAM and Aria tables can retain partial writes.
13
- * This contract is not an application-level transaction API.
11
+ * framework delivery events. Providers write histories, diagnostic events,
12
+ * delivery events, then current state independently. A failed commit can leave
13
+ * a completed prefix on every provider. Single-record conditional operations
14
+ * remain atomic per storage slot; this port does not coordinate multiple records.
14
15
  *
15
16
  * @typeParam I Entity identifier type.
16
17
  * @typeParam S Entity state message type.
@@ -46,10 +47,28 @@ export interface EntityCommitInput<I, S extends Message> {
46
47
  readonly events?: readonly Event[];
47
48
  }
48
49
  /**
49
- * A provider handle for coordinated changes to one bounded Entity scope.
50
+ * Captures prepared Entity records before provider I/O or a bounded retry.
50
51
  *
51
- * Memory and transactional database providers apply each commit atomically.
52
- * MyISAM and Aria tables can retain partial writes if a commit fails.
52
+ * Every retry reuses the same Entity ID, versions, and Event IDs; providers
53
+ * never invoke the application handler to prepare a second mutation.
54
+ */
55
+ export declare const EntityCommitSnapshots: Readonly<{
56
+ /**
57
+ * Captures one prepared mutation before provider I/O.
58
+ *
59
+ * @typeParam I Entity identifier type.
60
+ * @typeParam S Entity state message type.
61
+ * @param input Supplies the prepared mutation.
62
+ * @returns An independent mutation snapshot.
63
+ */
64
+ capture<I, S extends Message>(input: EntityCommitInput<I, S>): EntityCommitInput<I, S>;
65
+ }>;
66
+ /**
67
+ * A provider handle for one bounded Entity scope.
68
+ *
69
+ * A commit may retain a completed prefix when a later record fails. Replaying
70
+ * the same captured input reuses versions and Event IDs. An Event's presence
71
+ * alone does not establish that current state was saved.
53
72
  */
54
73
  export interface EntityCommitStorage {
55
74
  /**
@@ -71,7 +90,7 @@ export interface EntityCommitStorage {
71
90
  */
72
91
  export interface EntityCommitStorageFactory {
73
92
  /**
74
- * Creates a handle that coordinates Entity persistence changes for one provider.
93
+ * Creates a handle that persists one Entity's prepared records.
75
94
  *
76
95
  * @typeParam I Entity identifier type.
77
96
  * @typeParam S Entity state message type.
@@ -103,7 +122,7 @@ interface EntityCommitFactoryAccess {
103
122
  create<I, S extends Message>(factory: StorageFactory, input: EntityStorageInput<I, S>): EntityCommitStorage;
104
123
  }
105
124
  /**
106
- * Provides the typed internal lookup for provider-managed atomic commit handles.
125
+ * Provides the typed internal lookup for provider-managed Entity commit handles.
107
126
  *
108
127
  * Provider adapters register their creator while constructing their factory;
109
128
  * the end-user storage root deliberately exposes no commit-construction method.
@@ -1 +1 @@
1
- {"version":3,"file":"entity-commit.d.ts","sourceRoot":"","sources":["../../src/internal/entity-commit.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAEpE;;;;;;;;;;GAUG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO;IAGrD;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC;CACpC;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAGlC;;;;;;;OAOG;IACH,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5E;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IAGzC;;;;;;;OAOG;IACH,yBAAyB,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EAC5C,KAAK,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC9B,mBAAmB,CAAC;CACxB;AAED;;GAEG;AACH,UAAU,yBAAyB;IAGjC;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAE7E;;;;;;;;OAQG;IACH,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EACzB,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC9B,mBAAmB,CAAC;CACxB;AAED;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,EAAE,yBAuBzC,CAAC"}
1
+ {"version":3,"file":"entity-commit.d.ts","sourceRoot":"","sources":["../../src/internal/entity-commit.ts"],"names":[],"mappings":"AAcA,OAAO,EAAS,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAe,KAAK,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAGpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAGpE;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO;IAGrD;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IAEjC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IAErB;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,KAAK,EAAE,CAAC;CACpC;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,CAAC;IAC3C;;;;;;;OAOG;IACH,OAAO,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACxF,CAiCC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAGlC;;;;;;;OAOG;IACH,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5E;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IAGzC;;;;;;;OAOG;IACH,yBAAyB,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EAC5C,KAAK,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC9B,mBAAmB,CAAC;CACxB;AAED;;GAEG;AACH,UAAU,yBAAyB;IAGjC;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,0BAA0B,GAAG,IAAI,CAAC;IAE7E;;;;;;;;OAQG;IACH,MAAM,CAAC,CAAC,EAAE,CAAC,SAAS,OAAO,EACzB,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,GAC9B,mBAAmB,CAAC;CACxB;AAED;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,EAAE,yBAuBzC,CAAC"}
@@ -11,8 +11,51 @@
11
11
  * or implied. See the License for the specific language governing permissions and limitations under
12
12
  * the License.
13
13
  */
14
+ import { clone } from "@bufbuild/protobuf";
15
+ import { EventSchema } from "@spine-event-engine/proto";
16
+ import { EntityRecordSchema } from "@spine-event-engine/proto/generated/spine/server/entity/entity_pb.js";
17
+ import { TenantBoundary } from "./tenancy.js";
14
18
  /**
15
- * Provides the typed internal lookup for provider-managed atomic commit handles.
19
+ * Captures prepared Entity records before provider I/O or a bounded retry.
20
+ *
21
+ * Every retry reuses the same Entity ID, versions, and Event IDs; providers
22
+ * never invoke the application handler to prepare a second mutation.
23
+ */
24
+ export const EntityCommitSnapshots = Object.freeze({
25
+ // prettier-ignore
26
+ /**
27
+ * Copies one mutation and its tenant boundary before the first await.
28
+ *
29
+ * @typeParam I Entity identifier type.
30
+ * @typeParam S Entity state type.
31
+ * @param input Supplies the prepared mutation.
32
+ * @returns Independent records for every provider attempt.
33
+ */
34
+ capture(input) {
35
+ const boundary = TenantBoundary.of(input.context);
36
+ const context = boundary.tenantId === undefined
37
+ ? { name: input.context.name, multitenant: false }
38
+ : { name: input.context.name, multitenant: true, tenantId: boundary.tenantId };
39
+ return {
40
+ ...input,
41
+ context,
42
+ entity: { ...input.entity, context },
43
+ entityId: input.entity.id.clone(input.entityId),
44
+ next: clone(EntityRecordSchema, input.next),
45
+ ...(input.states === undefined
46
+ ? {}
47
+ : { states: input.states.map((record) => clone(EntityRecordSchema, record)) }),
48
+ ...(input.diagnostics === undefined
49
+ ? {}
50
+ : { diagnostics: input.diagnostics.map((event) => clone(EventSchema, event)) }),
51
+ ...(input.events === undefined
52
+ ? {}
53
+ : { events: input.events.map((event) => clone(EventSchema, event)) }),
54
+ };
55
+ },
56
+ });
57
+ /**
58
+ * Provides the typed internal lookup for provider-managed Entity commit handles.
16
59
  *
17
60
  * Provider adapters register their creator while constructing their factory;
18
61
  * the end-user storage root deliberately exposes no commit-construction method.
@@ -33,7 +76,7 @@ export const EntityCommitStorageFactories = Object.freeze({
33
76
  create(factory, input) {
34
77
  const creator = creators.get(factory);
35
78
  if (creator === undefined)
36
- throw new Error("StorageFactory does not provide the required atomic Entity commit storage.");
79
+ throw new Error("StorageFactory does not provide the required Entity commit storage.");
37
80
  return creator.createEntityCommitStorage(input);
38
81
  },
39
82
  });
@@ -1 +1 @@
1
- {"version":3,"file":"entity-commit.js","sourceRoot":"","sources":["../../src/internal/entity-commit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAqIH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAA8B,MAAM,CAAC,MAAM,CAAC;IACnF,QAAQ,CAAC,OAAuB,EAAE,OAAmC;QACnE,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CACJ,OAAuB,EACvB,KAA+B;QAE/B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,OAAO,KAAK,SAAS;YACvB,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;QAChG,OAAO,OAAO,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,IAAI,OAAO,EAA8C,CAAC"}
1
+ {"version":3,"file":"entity-commit.js","sourceRoot":"","sources":["../../src/internal/entity-commit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,KAAK,EAAgB,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAc,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sEAAsE,CAAC;AAM1G,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAqD9C;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAU7B,MAAM,CAAC,MAAM,CAAC;IACjB,kBAAkB;IAElB;;;;;;;OAOG;IACH,OAAO,CAAuB,KAA8B;QAC1D,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,OAAO,GAAmB,QAAQ,CAAC,QAAQ,KAAK,SAAS;YAC7D,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE;YAClD,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACjF,OAAO;YACL,GAAG,KAAK;YACR,OAAO;YACP,MAAM,EAAE,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE;YACpC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;YAC/C,IAAI,EAAE,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,IAAI,CAAC;YAC3C,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS;gBAC5B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;YAChF,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS;gBACjC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS;gBAC5B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;SACxE,CAAC;IACJ,CAAC;CACF,CAAC,CAAC;AA4EH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAA8B,MAAM,CAAC,MAAM,CAAC;IACnF,QAAQ,CAAC,OAAuB,EAAE,OAAmC;QACnE,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CACJ,OAAuB,EACvB,KAA+B;QAE/B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,OAAO,KAAK,SAAS;YACvB,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACzF,OAAO,OAAO,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,IAAI,OAAO,EAA8C,CAAC"}
@@ -6,7 +6,18 @@ export type { EntityEventHistoryPort, EntityStateHistoryPort, } from "../entity/
6
6
  export { disabledEventHistoryPort, disabledStateHistoryPort, } from "../entity/entity-history-storage.js";
7
7
  export type { EntityRecord, EntityRecordStorage } from "../entity/entity-record.js";
8
8
  export { eventHistorySpec, stateHistorySpec } from "../entity/entity-history-record-spec.js";
9
+ export { AgentHistoryRecords } from "../entity/agent-history-record-spec.js";
10
+ export { AgentExecutionRecords } from "../entity/agent-execution-record-spec.js";
11
+ export { AgentExecutionSizes } from "../entity/agent-execution-sizes.js";
12
+ export { AgentExecutionTransitions } from "../entity/agent-execution-transitions.js";
13
+ export { AgentExecutionValues } from "../entity/agent-execution-values.js";
14
+ export { AgentHistoryPages } from "../entity/agent-history-provider-page.js";
9
15
  export { EntityHistoryConformance, type EntityHistoryConformanceAdapter, type EntityStorageConformance, } from "../entity/history-conformance.js";
10
16
  export type { EntityIdCodec, EntityStorageInput } from "../memory/in-memory-entity-history.js";
17
+ export { AgentHistoryKeys, type AgentHistoryOrderKey, type AgentHistoryView, type AgentHistoryStorageInput, type AgentHistoryRead, type AgentHistoryPage, type AgentHistoryStorage, } from "../entity/agent-history.js";
18
+ export { AgentHistoryStorageFactories, type AgentHistoryStorageFactory } from "./agent-history.js";
19
+ export { AgentExecutionStorageFactories, type AgentExecutionStorageFactory, } from "./agent-execution.js";
20
+ export type { AgentExecutionStorage, AgentExecutionCapacity, AgentExecutionStorageInput, AgentExecutionClaim, AgentExecutionUpdate, AgentExecutionComplete, AgentPendingRead, AgentPendingKey, AgentPendingCursor, AgentPendingPage, } from "../entity/agent-execution.js";
21
+ export { AgentHistoryConformance, type AgentHistoryConformanceAdapter, } from "../entity/agent-history-conformance.js";
11
22
  export type { EntityCommitInput, EntityCommitStorage, EntityCommitStorageFactory, } from "./entity-commit.js";
12
23
  //# sourceMappingURL=entity-history.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity-history.d.ts","sourceRoot":"","sources":["../../src/internal/entity-history.ts"],"names":[],"mappings":"AAcA;;;GAGG;AACH,YAAY,EACV,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC7F,OAAO,EACL,wBAAwB,EACxB,KAAK,+BAA+B,EACpC,KAAK,wBAAwB,GAC9B,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC/F,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"entity-history.d.ts","sourceRoot":"","sources":["../../src/internal/entity-history.ts"],"names":[],"mappings":"AAcA;;;GAGG;AACH,YAAY,EACV,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC7E,OAAO,EACL,wBAAwB,EACxB,KAAK,+BAA+B,EACpC,KAAK,wBAAwB,GAC9B,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC/F,OAAO,EACL,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,4BAA4B,EAAE,KAAK,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AACnG,OAAO,EACL,8BAA8B,EAC9B,KAAK,4BAA4B,GAClC,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,qBAAqB,EACrB,sBAAsB,EACtB,0BAA0B,EAC1B,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,uBAAuB,EACvB,KAAK,8BAA8B,GACpC,MAAM,wCAAwC,CAAC;AAChD,YAAY,EACV,iBAAiB,EACjB,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC"}
@@ -13,5 +13,15 @@
13
13
  */
14
14
  export { disabledEventHistoryPort, disabledStateHistoryPort, } from "../entity/entity-history-storage.js";
15
15
  export { eventHistorySpec, stateHistorySpec } from "../entity/entity-history-record-spec.js";
16
+ export { AgentHistoryRecords } from "../entity/agent-history-record-spec.js";
17
+ export { AgentExecutionRecords } from "../entity/agent-execution-record-spec.js";
18
+ export { AgentExecutionSizes } from "../entity/agent-execution-sizes.js";
19
+ export { AgentExecutionTransitions } from "../entity/agent-execution-transitions.js";
20
+ export { AgentExecutionValues } from "../entity/agent-execution-values.js";
21
+ export { AgentHistoryPages } from "../entity/agent-history-provider-page.js";
16
22
  export { EntityHistoryConformance, } from "../entity/history-conformance.js";
23
+ export { AgentHistoryKeys, } from "../entity/agent-history.js";
24
+ export { AgentHistoryStorageFactories } from "./agent-history.js";
25
+ export { AgentExecutionStorageFactories, } from "./agent-execution.js";
26
+ export { AgentHistoryConformance, } from "../entity/agent-history-conformance.js";
17
27
  //# sourceMappingURL=entity-history.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"entity-history.js","sourceRoot":"","sources":["../../src/internal/entity-history.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAUH,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC7F,OAAO,EACL,wBAAwB,GAGzB,MAAM,kCAAkC,CAAC"}
1
+ {"version":3,"file":"entity-history.js","sourceRoot":"","sources":["../../src/internal/entity-history.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAUH,OAAO,EACL,wBAAwB,EACxB,wBAAwB,GACzB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC7E,OAAO,EACL,wBAAwB,GAGzB,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EACL,gBAAgB,GAOjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,4BAA4B,EAAmC,MAAM,oBAAoB,CAAC;AACnG,OAAO,EACL,8BAA8B,GAE/B,MAAM,sBAAsB,CAAC;AAa9B,OAAO,EACL,uBAAuB,GAExB,MAAM,wCAAwC,CAAC"}
@@ -4,5 +4,5 @@
4
4
  * Storage adapters use this subpath to address the same durable records as the
5
5
  * framework Event Store without adding the layout to the end-user package root.
6
6
  */
7
- export { eventStoreAccess, eventStoreRecordSpec } from "../event/event-store.js";
7
+ export { eventStoreRecordSpec } from "../event/event-store.js";
8
8
  //# sourceMappingURL=event-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-store.d.ts","sourceRoot":"","sources":["../../src/internal/event-store.ts"],"names":[],"mappings":"AAcA;;;;;GAKG;AACH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"event-store.d.ts","sourceRoot":"","sources":["../../src/internal/event-store.ts"],"names":[],"mappings":"AAcA;;;;;GAKG;AACH,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -17,5 +17,5 @@
17
17
  * Storage adapters use this subpath to address the same durable records as the
18
18
  * framework Event Store without adding the layout to the end-user package root.
19
19
  */
20
- export { eventStoreAccess, eventStoreRecordSpec } from "../event/event-store.js";
20
+ export { eventStoreRecordSpec } from "../event/event-store.js";
21
21
  //# sourceMappingURL=event-store.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-store.js","sourceRoot":"","sources":["../../src/internal/event-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;;;;GAKG;AACH,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC"}
1
+ {"version":3,"file":"event-store.js","sourceRoot":"","sources":["../../src/internal/event-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;;;;GAKG;AACH,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -33,7 +33,7 @@ interface TenantBoundaryFactory {
33
33
  */
34
34
  from(tenantId: TenantId): MultitenantTenantBoundary;
35
35
  /**
36
- * Selects the boundary declared by a storage context.
36
+ * Validates a storage context and returns its complete tenant boundary.
37
37
  *
38
38
  * @param context The storage context.
39
39
  * @returns The validated tenant boundary.
@@ -46,6 +46,85 @@ interface TenantBoundaryFactory {
46
46
  * @internal
47
47
  */
48
48
  export declare const TenantBoundary: TenantBoundaryFactory;
49
+ /**
50
+ * Opaque continuation issued by one provider catalog instance.
51
+ */
52
+ export interface TenantCatalogCursor {
53
+ /**
54
+ * Identifies an opaque in-process catalog continuation.
55
+ */
56
+ readonly [Symbol.toStringTag]: "TenantCatalogCursor";
57
+ }
58
+ /**
59
+ * Structural cancellation accepted from a platform AbortSignal.
60
+ */
61
+ export interface TenantCatalogSignal {
62
+ /**
63
+ * Whether cancellation has already been requested.
64
+ */
65
+ readonly aborted: boolean;
66
+ /**
67
+ * Throws when cancellation has been requested.
68
+ */
69
+ throwIfAborted(): void;
70
+ /**
71
+ * Observes one cancellation notification.
72
+ *
73
+ * @param type Abort event name.
74
+ * @param onAbort Callback notified on cancellation.
75
+ * @param options One-shot listener selection.
76
+ */
77
+ addEventListener(type: "abort", onAbort: () => void, options?: {
78
+ once?: boolean;
79
+ }): void;
80
+ /**
81
+ * Removes a previously registered cancellation listener.
82
+ *
83
+ * @param type Abort event name.
84
+ * @param onAbort Callback to remove.
85
+ */
86
+ removeEventListener(type: "abort", onAbort: () => void): void;
87
+ }
88
+ /**
89
+ * Bounded provider tenant-page request.
90
+ */
91
+ export interface TenantCatalogRead {
92
+ /**
93
+ * Positive safe page size bounding native candidates.
94
+ */
95
+ readonly count: number;
96
+ /**
97
+ * Cancels discovery before native work and before results become visible.
98
+ */
99
+ readonly signal: TenantCatalogSignal;
100
+ /**
101
+ * Continuation issued by this same catalog instance.
102
+ */
103
+ readonly after?: TenantCatalogCursor;
104
+ }
105
+ /**
106
+ * One finite tenant-catalog page.
107
+ */
108
+ export interface TenantCatalogPage {
109
+ /**
110
+ * Complete boundaries selected from this page's native candidates.
111
+ */
112
+ readonly boundaries: readonly TenantBoundary[];
113
+ /**
114
+ * Continuation when more candidates remain.
115
+ */
116
+ readonly after?: TenantCatalogCursor;
117
+ /**
118
+ * Whether another page belongs to this finite sweep.
119
+ */
120
+ readonly hasMore: boolean;
121
+ }
122
+ /**
123
+ * Validates common finite-page limits for provider catalogs.
124
+ */
125
+ export declare const TenantCatalogReads: Readonly<{
126
+ require(request: TenantCatalogRead): void;
127
+ }>;
49
128
  /**
50
129
  * Provider-owned enumeration of storage tenant boundaries.
51
130
  *
@@ -58,6 +137,13 @@ export interface TenantCatalog {
58
137
  * @returns The available tenant boundaries.
59
138
  */
60
139
  all(): Promise<readonly TenantBoundary[]>;
140
+ /**
141
+ * Reads at most the requested number of native candidates per page.
142
+ *
143
+ * @param request Finite page request and opaque continuation.
144
+ * @returns A possibly empty continuing page or terminal page.
145
+ */
146
+ page(request: TenantCatalogRead): Promise<TenantCatalogPage>;
61
147
  /**
62
148
  * Closes resources owned by this catalog.
63
149
  *
@@ -1 +1 @@
1
- {"version":3,"file":"tenancy.d.ts","sourceRoot":"","sources":["../../src/internal/tenancy.ts"],"names":[],"mappings":"AAeA,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAI5D;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAG7B;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;CACzC;AAED,UAAU,yBAA0B,SAAQ,cAAc;IACxD,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;CAC7B;AAED,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAEhC;;;;;OAKG;IACH,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,yBAAyB,CAAC;IAEpD;;;;;OAKG;IACH,EAAE,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAAC;CAC7C;AAQD;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,qBAuC5B,CAAC;AA0CF;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAG5B;;;;OAIG;IACH,GAAG,IAAI,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC,CAAC;IAE1C;;;;OAIG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;;;;OAKG;IACH,IAAI,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IAGpC;;;;OAIG;IACH,aAAa,IAAI,aAAa,CAAC;CAChC"}
1
+ {"version":3,"file":"tenancy.d.ts","sourceRoot":"","sources":["../../src/internal/tenancy.ts"],"names":[],"mappings":"AAeA,OAAO,EAAkB,KAAK,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAI5D;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAG7B;;OAEG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAE9B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;CACzC;AAED,UAAU,yBAA0B,SAAQ,cAAc;IACxD,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;CAC7B;AAED,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAEhC;;;;;OAKG;IACH,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,yBAAyB,CAAC;IAEpD;;;;;OAKG;IACH,EAAE,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAAC;CAC7C;AAQD;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,qBAuC5B,CAAC;AAoEF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,qBAAqB,CAAC;CACtD;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAE1B;;OAEG;IACH,cAAc,IAAI,IAAI,CAAC;IAEvB;;;;;;OAMG;IACH,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAEzF;;;;;OAKG;IACH,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;CAC/D;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,mBAAmB,CAAC;IAErC;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,mBAAmB,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,SAAS,cAAc,EAAE,CAAC;IAE/C;;OAEG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAErC;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,QAAQ,CAAC;IAAE,OAAO,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAA;CAAE,CAYnF,CAAC;AAEL;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAG5B;;;;OAIG;IACH,GAAG,IAAI,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC,CAAC;IAE1C;;;;;OAKG;IACH,IAAI,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAE7D;;;;OAIG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;;;;OAKG;IACH,IAAI,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/C;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IAGpC;;;;OAIG;IACH,aAAa,IAAI,aAAa,CAAC;CAChC"}