@reventlessdev/online-shop-dcb-ordering 1.0.0-alpha.224 → 1.0.0-alpha.225

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 (45) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/lib/bs/.compiler.log +2 -2
  3. package/lib/bs/compiler-info.json +1 -1
  4. package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation-OrderingPlugin.cmi +0 -0
  5. package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation-OrderingPlugin.cmj +0 -0
  6. package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation-OrderingPlugin.cmt +0 -0
  7. package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation.ast +0 -0
  8. package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation.res +5 -0
  9. package/lib/bs/src/Order/AutomationSlice/AutoShipOrder_Automation.res.mjs +5 -0
  10. package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation-OrderingPlugin.cmi +0 -0
  11. package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation-OrderingPlugin.cmj +0 -0
  12. package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation-OrderingPlugin.cmt +0 -0
  13. package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.ast +0 -0
  14. package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.res +5 -0
  15. package/lib/bs/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.res.mjs +5 -0
  16. package/lib/bs/src/Plugin-OrderingPlugin.cmi +0 -0
  17. package/lib/bs/src/Plugin-OrderingPlugin.cmt +0 -0
  18. package/lib/bs/src/Plugin.res.mjs +2 -0
  19. package/lib/bs/tests/Order/AutomationSlice/AutoShipOrder_GWT-OrderingPlugin.cmi +0 -0
  20. package/lib/bs/tests/Order/AutomationSlice/AutoShipOrder_GWT-OrderingPlugin.cmt +0 -0
  21. package/lib/bs/tests/Order/OutboundTranslationSlice/SendOrderConfirmation_GWT-OrderingPlugin.cmi +0 -0
  22. package/lib/bs/tests/Order/OutboundTranslationSlice/SendOrderConfirmation_GWT-OrderingPlugin.cmt +0 -0
  23. package/lib/ocaml/.compiler.log +2 -2
  24. package/lib/ocaml/AutoShipOrder_Automation-OrderingPlugin.cmi +0 -0
  25. package/lib/ocaml/AutoShipOrder_Automation-OrderingPlugin.cmj +0 -0
  26. package/lib/ocaml/AutoShipOrder_Automation-OrderingPlugin.cmt +0 -0
  27. package/lib/ocaml/AutoShipOrder_Automation.ast +0 -0
  28. package/lib/ocaml/AutoShipOrder_Automation.res +5 -0
  29. package/lib/ocaml/AutoShipOrder_GWT-OrderingPlugin.cmi +0 -0
  30. package/lib/ocaml/AutoShipOrder_GWT-OrderingPlugin.cmt +0 -0
  31. package/lib/ocaml/Plugin-OrderingPlugin.cmi +0 -0
  32. package/lib/ocaml/Plugin-OrderingPlugin.cmt +0 -0
  33. package/lib/ocaml/SendOrderConfirmation_GWT-OrderingPlugin.cmi +0 -0
  34. package/lib/ocaml/SendOrderConfirmation_GWT-OrderingPlugin.cmt +0 -0
  35. package/lib/ocaml/SendOrderConfirmation_Translation-OrderingPlugin.cmi +0 -0
  36. package/lib/ocaml/SendOrderConfirmation_Translation-OrderingPlugin.cmj +0 -0
  37. package/lib/ocaml/SendOrderConfirmation_Translation-OrderingPlugin.cmt +0 -0
  38. package/lib/ocaml/SendOrderConfirmation_Translation.ast +0 -0
  39. package/lib/ocaml/SendOrderConfirmation_Translation.res +5 -0
  40. package/package.json +7 -7
  41. package/src/Order/AutomationSlice/AutoShipOrder_Automation.res +5 -0
  42. package/src/Order/AutomationSlice/AutoShipOrder_Automation.res.mjs +5 -0
  43. package/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.res +5 -0
  44. package/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.res.mjs +5 -0
  45. package/src/Plugin.res.mjs +2 -0
package/CHANGELOG.md CHANGED
@@ -3,6 +3,21 @@
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
+ # 1.0.0-alpha.225 (2026-08-22)
7
+
8
+ * feat(core)!: a slice that has given up says so ([f5559ab](https://github.com/ReventlessDev/reventless-core/commit/f5559abede3a9cf2c9a48aadc69a666c46cc75bf))
9
+
10
+ ### BREAKING CHANGES
11
+
12
+ * `onExhausted` is required on the Translation and Automation
13
+ module types. ReScript has no optional module-type fields, so the alternative
14
+ was a PPX-injected default — and defaulting this one to silence is the bug.
15
+ A slice now states what abandonment means for its domain, `None` included.
16
+ GeocodeCustomerAddress answers with MarkAddressUnresolvable; the others say
17
+ nothing, on purpose.
18
+
19
+
20
+
6
21
  # 1.0.0-alpha.224 (2026-08-21)
7
22
 
8
23
  ### Bug Fixes
@@ -1,2 +1,2 @@
1
- #Start(1787354416654)
2
- #Done(1787354419544)
1
+ #Start(1787396508173)
2
+ #Done(1787396510928)
@@ -4,5 +4,5 @@
4
4
  "bsc_hash": "75e3a59c95cc953608fd3dd6ea6ed68141bba4414a20a52f114261b8a48385fa",
5
5
  "rescript_config_hash": "2b45634c4ef9d26c69e2cd8282eb5d077ce9cf087ded0065001d0f0d889e241c",
6
6
  "runtime_path": "/home/runner/work/reventless-core/reventless-core/node_modules/@rescript/runtime",
7
- "generated_at": "1787354419564"
7
+ "generated_at": "1787396510932"
8
8
  }
@@ -32,3 +32,8 @@ module FromOrderingDcb = Mapping.Make(
32
32
  let mappings: array<module(Mapping)> = [module(FromOrderingDcb)]
33
33
 
34
34
  let process = (id, _item) => Some((id, ShipOrder({orderId: id})))
35
+
36
+ // Nothing to say: an order the shipping automation gave up on is a Placed order
37
+ // that never shipped, which the Orders view already shows. A command here would
38
+ // be inventing a lifecycle state the domain does not have.
39
+ let onExhausted = (_id, _item) => None
@@ -85,6 +85,10 @@ function process(id, _item) {
85
85
  ];
86
86
  }
87
87
 
88
+ function onExhausted(_id, _item) {
89
+
90
+ }
91
+
88
92
  let Spec;
89
93
 
90
94
  let moduleUrl = "@reventlessdev/online-shop-dcb-ordering/src/Order/AutomationSlice/AutoShipOrder_Automation.res.mjs";
@@ -96,6 +100,7 @@ export {
96
100
  FromOrderingDcb,
97
101
  mappings,
98
102
  process,
103
+ onExhausted,
99
104
  moduleUrl,
100
105
  }
101
106
  /* M Not a pure module */
@@ -25,3 +25,8 @@ let translate = async (_id, item, ~capabilities as _) => {
25
25
  Error(msg)
26
26
  }
27
27
  }
28
+
29
+ // Nothing to say: a confirmation email that could not be sent is not a fact the
30
+ // order aggregate models, and inventing one to record a mail failure would put
31
+ // the mail server inside the domain. The Abandoned row is the record.
32
+ let onExhausted = (_id, _item, ~lastError as _) => None
@@ -33,6 +33,10 @@ async function translate(_id, item, param) {
33
33
  }
34
34
  }
35
35
 
36
+ function onExhausted(_id, _item, param) {
37
+
38
+ }
39
+
36
40
  let Spec;
37
41
 
38
42
  let moduleUrl = "@reventlessdev/online-shop-dcb-ordering/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.res.mjs";
@@ -41,6 +45,7 @@ export {
41
45
  Spec,
42
46
  collect,
43
47
  translate,
48
+ onExhausted,
44
49
  moduleUrl,
45
50
  }
46
51
  /* Stdlib_JsExn Not a pure module */
@@ -211,6 +211,7 @@ function Make(Platform) {
211
211
  targetName: AutoShipOrder$OrderingPlugin.targetName
212
212
  })({
213
213
  process: AutoShipOrder_Automation$OrderingPlugin.process,
214
+ onExhausted: AutoShipOrder_Automation$OrderingPlugin.onExhausted,
214
215
  moduleUrl: AutoShipOrder_Automation$OrderingPlugin.moduleUrl,
215
216
  mappings: AutoShipOrder_Automation$OrderingPlugin.mappings
216
217
  });
@@ -228,6 +229,7 @@ function Make(Platform) {
228
229
  })({
229
230
  collect: SendOrderConfirmation_Translation$OrderingPlugin.collect,
230
231
  translate: SendOrderConfirmation_Translation$OrderingPlugin.translate,
232
+ onExhausted: SendOrderConfirmation_Translation$OrderingPlugin.onExhausted,
231
233
  moduleUrl: SendOrderConfirmation_Translation$OrderingPlugin.moduleUrl
232
234
  });
233
235
  let Orders_ExtensionPoint = Platform.ExtensionPoint.Make({
@@ -1,2 +1,2 @@
1
- #Start(1787354416654)
2
- #Done(1787354419544)
1
+ #Start(1787396508173)
2
+ #Done(1787396510928)
@@ -32,3 +32,8 @@ module FromOrderingDcb = Mapping.Make(
32
32
  let mappings: array<module(Mapping)> = [module(FromOrderingDcb)]
33
33
 
34
34
  let process = (id, _item) => Some((id, ShipOrder({orderId: id})))
35
+
36
+ // Nothing to say: an order the shipping automation gave up on is a Placed order
37
+ // that never shipped, which the Orders view already shows. A command here would
38
+ // be inventing a lifecycle state the domain does not have.
39
+ let onExhausted = (_id, _item) => None
Binary file
Binary file
@@ -25,3 +25,8 @@ let translate = async (_id, item, ~capabilities as _) => {
25
25
  Error(msg)
26
26
  }
27
27
  }
28
+
29
+ // Nothing to say: a confirmation email that could not be sent is not a fact the
30
+ // order aggregate models, and inventing one to record a mail failure would put
31
+ // the mail server inside the domain. The Abandoned row is the record.
32
+ let onExhausted = (_id, _item, ~lastError as _) => None
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reventlessdev/online-shop-dcb-ordering",
3
- "version": "1.0.0-alpha.224",
3
+ "version": "1.0.0-alpha.225",
4
4
  "description": "Online Shop example — Ordering bounded context (Customer & Order) using the DCB pattern",
5
5
  "license": "Apache-2.0",
6
6
  "jest": {
@@ -21,13 +21,13 @@
21
21
  },
22
22
  "dependencies": {
23
23
  "sury": "11.0.0-rc.2",
24
- "@reventlessdev/online-shop-dcb-ordering-spec": "1.0.0-alpha.121",
25
- "@reventlessdev/online-shop-dcb-catalog-spec": "1.0.0-alpha.121",
24
+ "@reventlessdev/online-shop-dcb-catalog-spec": "1.0.0-alpha.122",
25
+ "@reventlessdev/online-shop-dcb-ordering-spec": "1.0.0-alpha.122",
26
26
  "@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.19",
27
- "@reventlessdev/reventless-gwt": "1.0.0-alpha.193",
28
- "@reventlessdev/reventless-infra": "3.0.0-alpha.149",
29
- "@reventlessdev/reventless-spec": "3.0.0-alpha.121",
30
- "@reventlessdev/reventless-local": "3.0.0-alpha.234"
27
+ "@reventlessdev/reventless-gwt": "1.0.0-alpha.194",
28
+ "@reventlessdev/reventless-infra": "3.0.0-alpha.150",
29
+ "@reventlessdev/reventless-local": "3.0.0-alpha.235",
30
+ "@reventlessdev/reventless-spec": "3.0.0-alpha.122"
31
31
  },
32
32
  "devDependencies": {
33
33
  "rescript": "12.3.0",
@@ -32,3 +32,8 @@ module FromOrderingDcb = Mapping.Make(
32
32
  let mappings: array<module(Mapping)> = [module(FromOrderingDcb)]
33
33
 
34
34
  let process = (id, _item) => Some((id, ShipOrder({orderId: id})))
35
+
36
+ // Nothing to say: an order the shipping automation gave up on is a Placed order
37
+ // that never shipped, which the Orders view already shows. A command here would
38
+ // be inventing a lifecycle state the domain does not have.
39
+ let onExhausted = (_id, _item) => None
@@ -85,6 +85,10 @@ function process(id, _item) {
85
85
  ];
86
86
  }
87
87
 
88
+ function onExhausted(_id, _item) {
89
+
90
+ }
91
+
88
92
  let Spec;
89
93
 
90
94
  let moduleUrl = "@reventlessdev/online-shop-dcb-ordering/src/Order/AutomationSlice/AutoShipOrder_Automation.res.mjs";
@@ -96,6 +100,7 @@ export {
96
100
  FromOrderingDcb,
97
101
  mappings,
98
102
  process,
103
+ onExhausted,
99
104
  moduleUrl,
100
105
  }
101
106
  /* M Not a pure module */
@@ -25,3 +25,8 @@ let translate = async (_id, item, ~capabilities as _) => {
25
25
  Error(msg)
26
26
  }
27
27
  }
28
+
29
+ // Nothing to say: a confirmation email that could not be sent is not a fact the
30
+ // order aggregate models, and inventing one to record a mail failure would put
31
+ // the mail server inside the domain. The Abandoned row is the record.
32
+ let onExhausted = (_id, _item, ~lastError as _) => None
@@ -33,6 +33,10 @@ async function translate(_id, item, param) {
33
33
  }
34
34
  }
35
35
 
36
+ function onExhausted(_id, _item, param) {
37
+
38
+ }
39
+
36
40
  let Spec;
37
41
 
38
42
  let moduleUrl = "@reventlessdev/online-shop-dcb-ordering/src/Order/OutboundTranslationSlice/SendOrderConfirmation_Translation.res.mjs";
@@ -41,6 +45,7 @@ export {
41
45
  Spec,
42
46
  collect,
43
47
  translate,
48
+ onExhausted,
44
49
  moduleUrl,
45
50
  }
46
51
  /* Stdlib_JsExn Not a pure module */
@@ -211,6 +211,7 @@ function Make(Platform) {
211
211
  targetName: AutoShipOrder$OrderingPlugin.targetName
212
212
  })({
213
213
  process: AutoShipOrder_Automation$OrderingPlugin.process,
214
+ onExhausted: AutoShipOrder_Automation$OrderingPlugin.onExhausted,
214
215
  moduleUrl: AutoShipOrder_Automation$OrderingPlugin.moduleUrl,
215
216
  mappings: AutoShipOrder_Automation$OrderingPlugin.mappings
216
217
  });
@@ -228,6 +229,7 @@ function Make(Platform) {
228
229
  })({
229
230
  collect: SendOrderConfirmation_Translation$OrderingPlugin.collect,
230
231
  translate: SendOrderConfirmation_Translation$OrderingPlugin.translate,
232
+ onExhausted: SendOrderConfirmation_Translation$OrderingPlugin.onExhausted,
231
233
  moduleUrl: SendOrderConfirmation_Translation$OrderingPlugin.moduleUrl
232
234
  });
233
235
  let Orders_ExtensionPoint = Platform.ExtensionPoint.Make({