@reventlessdev/online-shop-aggregates-catalog 3.0.0-alpha.104 → 3.0.0-alpha.105

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 (58) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/lib/bs/.compiler.log +2 -2
  3. package/lib/bs/compiler-info.json +1 -1
  4. package/lib/bs/src/Plugin-CatalogPlugin.cmi +0 -0
  5. package/lib/bs/src/Plugin-CatalogPlugin.cmt +0 -0
  6. package/lib/bs/src/Plugin.res.mjs +1 -1
  7. package/lib/bs/src/Product/Aggregate/Product_Behavior-CatalogPlugin.cmi +0 -0
  8. package/lib/bs/src/Product/Aggregate/Product_Behavior-CatalogPlugin.cmj +0 -0
  9. package/lib/bs/src/Product/Aggregate/Product_Behavior-CatalogPlugin.cmt +0 -0
  10. package/lib/bs/src/Product/Aggregate/Product_Behavior.ast +0 -0
  11. package/lib/bs/src/Product/Aggregate/Product_Behavior.res +6 -0
  12. package/lib/bs/src/Product/Aggregate/Product_Behavior.res.mjs +5 -2
  13. package/lib/bs/tests/Category/Aggregate/Category_GWT-CatalogPlugin.cmi +0 -0
  14. package/lib/bs/tests/Category/Aggregate/Category_GWT-CatalogPlugin.cmt +0 -0
  15. package/lib/bs/tests/Category/ReadModel/Categories_GWT-CatalogPlugin.cmi +0 -0
  16. package/lib/bs/tests/Category/ReadModel/Categories_GWT-CatalogPlugin.cmt +0 -0
  17. package/lib/bs/tests/Extension/Orders_Extension_GWT-CatalogPlugin.cmi +0 -0
  18. package/lib/bs/tests/Extension/Orders_Extension_GWT-CatalogPlugin.cmt +0 -0
  19. package/lib/bs/tests/ExtensionPoint/Products_ExtensionPointMapping_GWT-CatalogPlugin.cmi +0 -0
  20. package/lib/bs/tests/ExtensionPoint/Products_ExtensionPointMapping_GWT-CatalogPlugin.cmt +0 -0
  21. package/lib/bs/tests/Product/Aggregate/Product_GWT-CatalogPlugin.cmi +0 -0
  22. package/lib/bs/tests/Product/Aggregate/Product_GWT-CatalogPlugin.cmt +0 -0
  23. package/lib/bs/tests/Product/Aggregate/Product_GWT.res.mjs +1 -1
  24. package/lib/bs/tests/Product/ReadModel/Products_GWT-CatalogPlugin.cmi +0 -0
  25. package/lib/bs/tests/Product/ReadModel/Products_GWT-CatalogPlugin.cmt +0 -0
  26. package/lib/bs/tests/ProductDemand/Aggregate/ProductDemand_GWT-CatalogPlugin.cmi +0 -0
  27. package/lib/bs/tests/ProductDemand/Aggregate/ProductDemand_GWT-CatalogPlugin.cmt +0 -0
  28. package/lib/bs/tests/ProductDemand/ReadModel/ProductDemands_GWT-CatalogPlugin.cmi +0 -0
  29. package/lib/bs/tests/ProductDemand/ReadModel/ProductDemands_GWT-CatalogPlugin.cmt +0 -0
  30. package/lib/ocaml/.compiler.log +2 -2
  31. package/lib/ocaml/Categories_GWT-CatalogPlugin.cmi +0 -0
  32. package/lib/ocaml/Categories_GWT-CatalogPlugin.cmt +0 -0
  33. package/lib/ocaml/Category_GWT-CatalogPlugin.cmi +0 -0
  34. package/lib/ocaml/Category_GWT-CatalogPlugin.cmt +0 -0
  35. package/lib/ocaml/Orders_Extension_GWT-CatalogPlugin.cmi +0 -0
  36. package/lib/ocaml/Orders_Extension_GWT-CatalogPlugin.cmt +0 -0
  37. package/lib/ocaml/Plugin-CatalogPlugin.cmi +0 -0
  38. package/lib/ocaml/Plugin-CatalogPlugin.cmt +0 -0
  39. package/lib/ocaml/ProductDemand_GWT-CatalogPlugin.cmi +0 -0
  40. package/lib/ocaml/ProductDemand_GWT-CatalogPlugin.cmt +0 -0
  41. package/lib/ocaml/ProductDemands_GWT-CatalogPlugin.cmi +0 -0
  42. package/lib/ocaml/ProductDemands_GWT-CatalogPlugin.cmt +0 -0
  43. package/lib/ocaml/Product_Behavior-CatalogPlugin.cmi +0 -0
  44. package/lib/ocaml/Product_Behavior-CatalogPlugin.cmj +0 -0
  45. package/lib/ocaml/Product_Behavior-CatalogPlugin.cmt +0 -0
  46. package/lib/ocaml/Product_Behavior.ast +0 -0
  47. package/lib/ocaml/Product_Behavior.res +6 -0
  48. package/lib/ocaml/Product_GWT-CatalogPlugin.cmi +0 -0
  49. package/lib/ocaml/Product_GWT-CatalogPlugin.cmt +0 -0
  50. package/lib/ocaml/Products_ExtensionPointMapping_GWT-CatalogPlugin.cmi +0 -0
  51. package/lib/ocaml/Products_ExtensionPointMapping_GWT-CatalogPlugin.cmt +0 -0
  52. package/lib/ocaml/Products_GWT-CatalogPlugin.cmi +0 -0
  53. package/lib/ocaml/Products_GWT-CatalogPlugin.cmt +0 -0
  54. package/package.json +5 -5
  55. package/src/Plugin.res.mjs +1 -1
  56. package/src/Product/Aggregate/Product_Behavior.res +6 -0
  57. package/src/Product/Aggregate/Product_Behavior.res.mjs +5 -2
  58. package/tests/Product/Aggregate/Product_GWT.res.mjs +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,13 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # 3.0.0-alpha.105 (2026-07-04)
7
+
8
+ ### Features
9
+
10
+ * **examples,docs:** enable aggregate snapshots on the Product example + document the feature (aggregate-snapshotting plan, steps 6-7, COMPLETE) ([fdda793](https://github.com/ReventlessDev/reventless-core/commit/fdda793e7bba0cd7482b4ba3ac1c73572f75a3c0))
11
+
12
+
6
13
  # 3.0.0-alpha.104 (2026-07-03)
7
14
 
8
15
  **Note:** Version bump only for package @reventlessdev/online-shop-aggregates-catalog
@@ -1,2 +1,2 @@
1
- #Start(1783092777169)
2
- #Done(1783092778540)
1
+ #Start(1783190314371)
2
+ #Done(1783190315724)
@@ -4,5 +4,5 @@
4
4
  "bsc_hash": "75e3a59c95cc953608fd3dd6ea6ed68141bba4414a20a52f114261b8a48385fa",
5
5
  "rescript_config_hash": "50d5358a2cbe328e82ae9b442e4615b86dbfe6b2ce05e9eca04a0c78da0e4708",
6
6
  "runtime_path": "/home/runner/work/reventless-core/reventless-core/node_modules/@rescript/runtime",
7
- "generated_at": "1783092778551"
7
+ "generated_at": "1783190315738"
8
8
  }
Binary file
Binary file
@@ -53,7 +53,7 @@ function Make(Platform) {
53
53
  initialState: Product_Behavior$CatalogPlugin.initialState,
54
54
  evolve: Product_Behavior$CatalogPlugin.evolve,
55
55
  decide: Product_Behavior$CatalogPlugin.decide,
56
- snapshot: undefined,
56
+ snapshot: Product_Behavior$CatalogPlugin.snapshot,
57
57
  moduleUrl: Product_Behavior$CatalogPlugin.moduleUrl
58
58
  })(NoEventMappings$ReventlessInfra.Make({
59
59
  name: Product$CatalogPlugin.name,
@@ -1,7 +1,13 @@
1
1
  // Product aggregate behavior.
2
2
  // Implements the state machine for adding and updating products.
3
+ //
4
+ // Snapshotting is enabled (every 50 events): a long-lived product with many
5
+ // price/name updates seeds its cold replay from the latest snapshot instead of
6
+ // folding full history. See the "Replay cost and snapshots" section of the
7
+ // aggregate component docs.
3
8
 
4
9
  @@reventless.behavior
10
+ @@reventless.snapshots(50)
5
11
 
6
12
  @schema
7
13
  type state =
@@ -133,14 +133,17 @@ function decide(state, command) {
133
133
  }
134
134
  }
135
135
 
136
+ let snapshot = {
137
+ interval: 50,
138
+ stateSchema: stateSchema
139
+ };
140
+
136
141
  let Spec;
137
142
 
138
143
  let initialState = "NotCreated";
139
144
 
140
145
  let moduleUrl = "@reventlessdev/online-shop-aggregates-catalog/src/Product/Aggregate/Product_Behavior.res.mjs";
141
146
 
142
- let snapshot;
143
-
144
147
  export {
145
148
  Spec,
146
149
  stateSchema,
@@ -19,7 +19,7 @@ let include = Behavior_GWT$ReventlessGwt.MakeFromAggregate({
19
19
  initialState: Product_Behavior$CatalogPlugin.initialState,
20
20
  evolve: Product_Behavior$CatalogPlugin.evolve,
21
21
  decide: Product_Behavior$CatalogPlugin.decide,
22
- snapshot: undefined,
22
+ snapshot: Product_Behavior$CatalogPlugin.snapshot,
23
23
  moduleUrl: Product_Behavior$CatalogPlugin.moduleUrl
24
24
  });
25
25
 
@@ -1,2 +1,2 @@
1
- #Start(1783092777169)
2
- #Done(1783092778540)
1
+ #Start(1783190314371)
2
+ #Done(1783190315724)
Binary file
Binary file
Binary file
@@ -1,7 +1,13 @@
1
1
  // Product aggregate behavior.
2
2
  // Implements the state machine for adding and updating products.
3
+ //
4
+ // Snapshotting is enabled (every 50 events): a long-lived product with many
5
+ // price/name updates seeds its cold replay from the latest snapshot instead of
6
+ // folding full history. See the "Replay cost and snapshots" section of the
7
+ // aggregate component docs.
3
8
 
4
9
  @@reventless.behavior
10
+ @@reventless.snapshots(50)
5
11
 
6
12
  @schema
7
13
  type state =
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reventlessdev/online-shop-aggregates-catalog",
3
- "version": "3.0.0-alpha.104",
3
+ "version": "3.0.0-alpha.105",
4
4
  "description": "Online Shop example — Catalog plugin (Product & Category aggregates)",
5
5
  "license": "Apache-2.0",
6
6
  "jest": {
@@ -21,12 +21,12 @@
21
21
  },
22
22
  "dependencies": {
23
23
  "sury": "^11.0.0-alpha.4",
24
- "@reventlessdev/online-shop-aggregates-ordering-spec": "3.0.0-alpha.60",
25
- "@reventlessdev/reventless-infra": "3.0.0-alpha.84",
26
24
  "@reventlessdev/online-shop-aggregates-catalog-spec": "3.0.0-alpha.60",
27
- "@reventlessdev/reventless-local": "3.0.0-alpha.116",
28
- "@reventlessdev/reventless-gwt": "1.0.0-alpha.77",
25
+ "@reventlessdev/online-shop-aggregates-ordering-spec": "3.0.0-alpha.60",
29
26
  "@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.14",
27
+ "@reventlessdev/reventless-gwt": "1.0.0-alpha.78",
28
+ "@reventlessdev/reventless-infra": "3.0.0-alpha.84",
29
+ "@reventlessdev/reventless-local": "3.0.0-alpha.117",
30
30
  "@reventlessdev/reventless-spec": "3.0.0-alpha.64"
31
31
  },
32
32
  "devDependencies": {
@@ -53,7 +53,7 @@ function Make(Platform) {
53
53
  initialState: Product_Behavior$CatalogPlugin.initialState,
54
54
  evolve: Product_Behavior$CatalogPlugin.evolve,
55
55
  decide: Product_Behavior$CatalogPlugin.decide,
56
- snapshot: undefined,
56
+ snapshot: Product_Behavior$CatalogPlugin.snapshot,
57
57
  moduleUrl: Product_Behavior$CatalogPlugin.moduleUrl
58
58
  })(NoEventMappings$ReventlessInfra.Make({
59
59
  name: Product$CatalogPlugin.name,
@@ -1,7 +1,13 @@
1
1
  // Product aggregate behavior.
2
2
  // Implements the state machine for adding and updating products.
3
+ //
4
+ // Snapshotting is enabled (every 50 events): a long-lived product with many
5
+ // price/name updates seeds its cold replay from the latest snapshot instead of
6
+ // folding full history. See the "Replay cost and snapshots" section of the
7
+ // aggregate component docs.
3
8
 
4
9
  @@reventless.behavior
10
+ @@reventless.snapshots(50)
5
11
 
6
12
  @schema
7
13
  type state =
@@ -133,14 +133,17 @@ function decide(state, command) {
133
133
  }
134
134
  }
135
135
 
136
+ let snapshot = {
137
+ interval: 50,
138
+ stateSchema: stateSchema
139
+ };
140
+
136
141
  let Spec;
137
142
 
138
143
  let initialState = "NotCreated";
139
144
 
140
145
  let moduleUrl = "@reventlessdev/online-shop-aggregates-catalog/src/Product/Aggregate/Product_Behavior.res.mjs";
141
146
 
142
- let snapshot;
143
-
144
147
  export {
145
148
  Spec,
146
149
  stateSchema,
@@ -19,7 +19,7 @@ let include = Behavior_GWT$ReventlessGwt.MakeFromAggregate({
19
19
  initialState: Product_Behavior$CatalogPlugin.initialState,
20
20
  evolve: Product_Behavior$CatalogPlugin.evolve,
21
21
  decide: Product_Behavior$CatalogPlugin.decide,
22
- snapshot: undefined,
22
+ snapshot: Product_Behavior$CatalogPlugin.snapshot,
23
23
  moduleUrl: Product_Behavior$CatalogPlugin.moduleUrl
24
24
  });
25
25