@reventlessdev/reventless-local 3.0.0-alpha.158 → 3.0.0-alpha.160

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.
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
+ # 3.0.0-alpha.160 (2026-07-20)
7
+
8
+ ### Features
9
+
10
+ * **core:** annotate comp + causationId at the dispatch boundary ([ef6d56d](https://github.com/ReventlessDev/reventless-core/commit/ef6d56d0104dbdb21b7cfbb8f3b2b1ead9787595))
11
+
12
+
13
+ # 3.0.0-alpha.159 (2026-07-17)
14
+
15
+ **Note:** Version bump only for package @reventlessdev/reventless-local
16
+
17
+
18
+
19
+
20
+
6
21
  # 3.0.0-alpha.158 (2026-07-17)
7
22
 
8
23
  ### Features
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reventlessdev/reventless-local",
3
- "version": "3.0.0-alpha.158",
3
+ "version": "3.0.0-alpha.160",
4
4
  "description": "Local platform for Reventless (in-memory or SQLite backend, for development and testing without AWS)",
5
5
  "license": "Apache-2.0",
6
6
  "jest": {
@@ -31,16 +31,16 @@
31
31
  "graphql-yoga": "^5.21.0",
32
32
  "sury": "11.0.0-alpha.4",
33
33
  "ws": "^8.18.0",
34
- "@reventlessdev/rescript-effect": "0.1.0-alpha.29",
35
34
  "@reventlessdev/rescript-graphql-yoga": "1.0.0-alpha.24",
35
+ "@reventlessdev/rescript-effect": "0.1.0-alpha.29",
36
36
  "@reventlessdev/rescript-mcp-sdk": "1.0.0-alpha.20",
37
37
  "@reventlessdev/rescript-jest": "1.0.0-alpha.9",
38
38
  "@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.17",
39
- "@reventlessdev/reventless-core": "3.0.0-alpha.171",
40
- "@reventlessdev/reventless-graphql-server": "1.0.0-alpha.18",
41
- "@reventlessdev/reventless-gwt": "1.0.0-alpha.118",
39
+ "@reventlessdev/reventless-core": "3.0.0-alpha.173",
42
40
  "@reventlessdev/reventless-infra": "3.0.0-alpha.102",
43
- "@reventlessdev/reventless-postgres": "3.0.0-alpha.35",
41
+ "@reventlessdev/reventless-graphql-server": "1.0.0-alpha.20",
42
+ "@reventlessdev/reventless-postgres": "3.0.0-alpha.37",
43
+ "@reventlessdev/reventless-gwt": "1.0.0-alpha.120",
44
44
  "@reventlessdev/reventless-spec": "3.0.0-alpha.79"
45
45
  },
46
46
  "devDependencies": {
@@ -761,6 +761,7 @@ function MakeWithConfig(Config) {
761
761
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
762
762
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
763
763
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
764
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
764
765
  asEventHandler: prim => prim,
765
766
  asEffectHandler: prim => prim
766
767
  })(EventCollectorChannel)({
@@ -769,6 +770,7 @@ function MakeWithConfig(Config) {
769
770
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
770
771
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
771
772
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
773
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
772
774
  asEventHandler: prim => prim,
773
775
  asEffectHandler: prim => prim
774
776
  })(EventCollectorChannel))(LocalDcbEventLogStorage$ReventlessLocal.Make(Bus))(LocalEventTopicPublisher$ReventlessLocal.Make(Bus))({
@@ -2424,6 +2426,7 @@ function Make($star) {
2424
2426
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
2425
2427
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
2426
2428
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
2429
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
2427
2430
  asEventHandler: prim => prim,
2428
2431
  asEffectHandler: prim => prim
2429
2432
  })(EventCollectorChannel)({
@@ -2432,6 +2435,7 @@ function Make($star) {
2432
2435
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
2433
2436
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
2434
2437
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
2438
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
2435
2439
  asEventHandler: prim => prim,
2436
2440
  asEffectHandler: prim => prim
2437
2441
  })(EventCollectorChannel))(LocalDcbEventLogStorage$ReventlessLocal.Make(Bus))(LocalEventTopicPublisher$ReventlessLocal.Make(Bus))({
@@ -31,12 +31,18 @@ module Make = (
31
31
  // The runtime's handlerRef is unused by the GraphQL resolver path, but we create a proper
32
32
  // runtime so the type is satisfied and future callers that need handlerRef will work.
33
33
  let resource = commandGenerator->ReventlessCore.Component.toPulumiResource
34
+ let name =
35
+ resource.name->ReventlessCore.ComponentType.nameOpt(ReventlessCore.CommandGenerator.componentType)
34
36
  let runtime = LocalRuntimeEnvironment.make(
35
- ~name=resource.name->ReventlessCore.ComponentType.nameOpt(
36
- ReventlessCore.CommandGenerator.componentType,
37
- ),
37
+ ~name,
38
38
  ~handler=handler->Pulumi.Output.apply(h =>
39
- h->LocalRuntimeEnvironment.asEffectHandler->ReventlessCore.Runtime.runEffectHandler
39
+ h
40
+ ->LocalRuntimeEnvironment.asEffectHandler
41
+ ->ReventlessCore.Runtime.runEffectHandler(
42
+ ~extractCorrelationId=LocalRuntimeEnvironment.extractCorrelationId,
43
+ ~extractCausationId=LocalRuntimeEnvironment.extractCausationId,
44
+ ~comp=name,
45
+ )
40
46
  ),
41
47
  )
42
48
  connect(~runtime)
@@ -50,10 +56,18 @@ module Make = (
50
56
  commandTopic,
51
57
  ) => {
52
58
  let resource = commandTopic->ReventlessCore.Component.toPulumiResource
59
+ let name =
60
+ resource.name->ReventlessCore.ComponentType.nameOpt(ReventlessCore.CommandTopic.componentType)
53
61
  let runtime = LocalRuntimeEnvironment.make(
54
- ~name=resource.name->ReventlessCore.ComponentType.nameOpt(ReventlessCore.CommandTopic.componentType),
62
+ ~name,
55
63
  ~handler=handler->Pulumi.Output.apply(h =>
56
- h->LocalRuntimeEnvironment.asEffectHandler->ReventlessCore.Runtime.runEffectHandler
64
+ h
65
+ ->LocalRuntimeEnvironment.asEffectHandler
66
+ ->ReventlessCore.Runtime.runEffectHandler(
67
+ ~extractCorrelationId=LocalRuntimeEnvironment.extractCorrelationId,
68
+ ~extractCausationId=LocalRuntimeEnvironment.extractCausationId,
69
+ ~comp=name,
70
+ )
57
71
  ),
58
72
  )
59
73
  connect(~runtime)
@@ -74,7 +88,13 @@ module Make = (
74
88
  let runtime = LocalRuntimeEnvironment.make(
75
89
  ~name,
76
90
  ~handler=handler->Pulumi.Output.apply(h =>
77
- h->LocalRuntimeEnvironment.asEffectHandler->ReventlessCore.Runtime.runEffectHandler
91
+ h
92
+ ->LocalRuntimeEnvironment.asEffectHandler
93
+ ->ReventlessCore.Runtime.runEffectHandler(
94
+ ~extractCorrelationId=LocalRuntimeEnvironment.extractCorrelationId,
95
+ ~extractCausationId=LocalRuntimeEnvironment.extractCausationId,
96
+ ~comp=name,
97
+ )
78
98
  ),
79
99
  )
80
100
  let _connectResources = EventCollectorChannel.connect(
@@ -12,11 +12,13 @@ function Make(Bus) {
12
12
  return CommandTopicChannel => (EventCollectorChannel => {
13
13
  let forCommandGenerator = (handler, connect, param, param$1, commandGenerator) => {
14
14
  let resource = Component$ReventlessCore.toPulumiResource(commandGenerator);
15
- return connect(LocalRuntimeEnvironment$ReventlessLocal.make(ComponentType$ReventlessCore.nameOpt(resource.__name, CommandGenerator$ReventlessCore.componentType), handler.apply(Runtime$ReventlessCore.runEffectHandler), undefined, undefined, undefined));
15
+ let name = ComponentType$ReventlessCore.nameOpt(resource.__name, CommandGenerator$ReventlessCore.componentType);
16
+ return connect(LocalRuntimeEnvironment$ReventlessLocal.make(name, handler.apply(h => Runtime$ReventlessCore.runEffectHandler(LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId, LocalRuntimeEnvironment$ReventlessLocal.extractCausationId, name, undefined, h)), undefined, undefined, undefined));
16
17
  };
17
18
  let forCommandTopic = (handler, connect, param, param$1, commandTopic) => {
18
19
  let resource = Component$ReventlessCore.toPulumiResource(commandTopic);
19
- return connect(LocalRuntimeEnvironment$ReventlessLocal.make(ComponentType$ReventlessCore.nameOpt(resource.__name, CommandTopic$ReventlessCore.componentType), handler.apply(Runtime$ReventlessCore.runEffectHandler), undefined, undefined, undefined));
20
+ let name = ComponentType$ReventlessCore.nameOpt(resource.__name, CommandTopic$ReventlessCore.componentType);
21
+ return connect(LocalRuntimeEnvironment$ReventlessLocal.make(name, handler.apply(h => Runtime$ReventlessCore.runEffectHandler(LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId, LocalRuntimeEnvironment$ReventlessLocal.extractCausationId, name, undefined, h)), undefined, undefined, undefined));
20
22
  };
21
23
  let forEventCollector = (handler, eventTopics, resources, param, param$1, eventCollector) => {
22
24
  let resource = Component$ReventlessCore.toPulumiResource(eventCollector);
@@ -25,7 +27,7 @@ function Make(Bus) {
25
27
  let opts = {
26
28
  parent: opts_parent
27
29
  };
28
- let runtime = LocalRuntimeEnvironment$ReventlessLocal.make(name, handler.apply(Runtime$ReventlessCore.runEffectHandler), undefined, undefined, undefined);
30
+ let runtime = LocalRuntimeEnvironment$ReventlessLocal.make(name, handler.apply(h => Runtime$ReventlessCore.runEffectHandler(LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId, LocalRuntimeEnvironment$ReventlessLocal.extractCausationId, name, undefined, h)), undefined, undefined, undefined);
29
31
  EventCollectorChannel.connect(name, [{
30
32
  channel: eventCollector.channel,
31
33
  eventTopics: eventTopics,
@@ -30,7 +30,13 @@ module Make = (
30
30
  let runtime = LocalRuntimeEnvironment.make(
31
31
  ~name,
32
32
  ~handler=handler->Pulumi.Output.apply(h =>
33
- h->LocalRuntimeEnvironment.asEffectHandler->ReventlessCore.Runtime.runEffectHandler
33
+ h
34
+ ->LocalRuntimeEnvironment.asEffectHandler
35
+ ->ReventlessCore.Runtime.runEffectHandler(
36
+ ~extractCorrelationId=LocalRuntimeEnvironment.extractCorrelationId,
37
+ ~extractCausationId=LocalRuntimeEnvironment.extractCausationId,
38
+ ~comp=name,
39
+ )
34
40
  ),
35
41
  )
36
42
  let _connectResources = EventCollectorChannel.connect(
@@ -15,7 +15,7 @@ function Make(Bus) {
15
15
  let opts = {
16
16
  parent: opts_parent
17
17
  };
18
- let runtime = LocalRuntimeEnvironment$ReventlessLocal.make(name, handler.apply(Runtime$ReventlessCore.runEffectHandler), undefined, undefined, undefined);
18
+ let runtime = LocalRuntimeEnvironment$ReventlessLocal.make(name, handler.apply(h => Runtime$ReventlessCore.runEffectHandler(LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId, LocalRuntimeEnvironment$ReventlessLocal.extractCausationId, name, undefined, h)), undefined, undefined, undefined);
19
19
  EventCollectorChannel.connect(name, [{
20
20
  channel: eventCollector.channel,
21
21
  eventTopics: eventTopics,
@@ -10,6 +10,7 @@ function Make(Bus) {
10
10
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
11
11
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
12
12
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
13
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
13
14
  asEventHandler: prim => prim,
14
15
  asEffectHandler: prim => prim
15
16
  })(ECChannel);
@@ -41,14 +41,17 @@ let groupBySource = (event: JSON.t) => {
41
41
  dict
42
42
  }
43
43
 
44
- let extractCorrelationId = (event: event) =>
44
+ let extractMetaField = (event: event, field) =>
45
45
  event
46
46
  ->JSON.Decode.object
47
47
  ->Option.flatMap(obj => obj->Dict.get("meta"))
48
48
  ->Option.flatMap(JSON.Decode.object)
49
- ->Option.flatMap(meta => meta->Dict.get("correlationId"))
49
+ ->Option.flatMap(meta => meta->Dict.get(field))
50
50
  ->Option.flatMap(JSON.Decode.string)
51
51
 
52
+ let extractCorrelationId = (event: event) => event->extractMetaField("correlationId")
53
+ let extractCausationId = (event: event) => event->extractMetaField("causationId")
54
+
52
55
  external asEventHandler: 'a => ReventlessCore.Runtime.eventHandler<event, context, 'r> = "%identity"
53
56
  external asEffectHandler: 'a => ReventlessCore.Runtime.effectHandler<event, context, 'r, 'error> =
54
57
  "%identity"
@@ -28,13 +28,23 @@ function groupBySource(event) {
28
28
  return dict;
29
29
  }
30
30
 
31
+ function extractMetaField(event, field) {
32
+ return Stdlib_Option.flatMap(Stdlib_Option.flatMap(Stdlib_Option.flatMap(Stdlib_Option.flatMap(Stdlib_JSON.Decode.object(event), obj => obj["meta"]), Stdlib_JSON.Decode.object), meta => meta[field]), Stdlib_JSON.Decode.string);
33
+ }
34
+
31
35
  function extractCorrelationId(event) {
32
- return Stdlib_Option.flatMap(Stdlib_Option.flatMap(Stdlib_Option.flatMap(Stdlib_Option.flatMap(Stdlib_JSON.Decode.object(event), obj => obj["meta"]), Stdlib_JSON.Decode.object), meta => meta["correlationId"]), Stdlib_JSON.Decode.string);
36
+ return extractMetaField(event, "correlationId");
37
+ }
38
+
39
+ function extractCausationId(event) {
40
+ return extractMetaField(event, "causationId");
33
41
  }
34
42
 
35
43
  export {
36
44
  make,
37
45
  groupBySource,
46
+ extractMetaField,
38
47
  extractCorrelationId,
48
+ extractCausationId,
39
49
  }
40
50
  /* effect/Effect Not a pure module */
@@ -64,6 +64,7 @@ function MakeWithHooks(Bus) {
64
64
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
65
65
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
66
66
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
67
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
67
68
  asEventHandler: prim => prim,
68
69
  asEffectHandler: prim => prim
69
70
  })({
@@ -110,6 +111,7 @@ function Make(Bus) {
110
111
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
111
112
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
112
113
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
114
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
113
115
  asEventHandler: prim => prim,
114
116
  asEffectHandler: prim => prim
115
117
  })({
@@ -22,6 +22,7 @@ function Make(Bus) {
22
22
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
23
23
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
24
24
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
25
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
25
26
  asEventHandler: prim => prim,
26
27
  asEffectHandler: prim => prim
27
28
  })({
@@ -13,6 +13,7 @@ function Make(Bus) {
13
13
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
14
14
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
15
15
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
16
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
16
17
  asEventHandler: prim => prim,
17
18
  asEffectHandler: prim => prim
18
19
  })({
@@ -26,6 +27,7 @@ function Make(Bus) {
26
27
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
27
28
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
28
29
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
30
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
29
31
  asEventHandler: prim => prim,
30
32
  asEffectHandler: prim => prim
31
33
  })({
@@ -23,6 +23,7 @@ function Make(Bus) {
23
23
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
24
24
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
25
25
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
26
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
26
27
  asEventHandler: prim => prim,
27
28
  asEffectHandler: prim => prim
28
29
  })({
@@ -31,6 +31,7 @@ function Make(Bus) {
31
31
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
32
32
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
33
33
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
34
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
34
35
  asEventHandler: prim => prim,
35
36
  asEffectHandler: prim => prim
36
37
  })(EventCollectorChannel)({
@@ -20,6 +20,7 @@ function Make(Bus) {
20
20
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
21
21
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
22
22
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
23
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
23
24
  asEventHandler: prim => prim,
24
25
  asEffectHandler: prim => prim
25
26
  })({
@@ -37,6 +38,7 @@ function Make(Bus) {
37
38
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
38
39
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
39
40
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
41
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
40
42
  asEventHandler: prim => prim,
41
43
  asEffectHandler: prim => prim
42
44
  })({
@@ -26,6 +26,7 @@ function Make(Bus) {
26
26
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
27
27
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
28
28
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
29
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
29
30
  asEventHandler: prim => prim,
30
31
  asEffectHandler: prim => prim
31
32
  })({
@@ -15,6 +15,7 @@ function Make(Bus) {
15
15
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
16
16
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
17
17
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
18
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
18
19
  asEventHandler: prim => prim,
19
20
  asEffectHandler: prim => prim
20
21
  })(LocalTaskBucket$ReventlessLocal);
@@ -26,6 +27,7 @@ function Make(Bus) {
26
27
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
27
28
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
28
29
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
30
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
29
31
  asEventHandler: prim => prim,
30
32
  asEffectHandler: prim => prim
31
33
  })(EventCollectorChannel)(EventCollectorRuntimeBuilder)(TaskRuntimeBuilder)(LocalTaskBucket$ReventlessLocal)(LocalSideEffectHandler$ReventlessLocal)(Defaults);
@@ -31,6 +31,7 @@ let EventCollectorMaker = EventCollector_Builder$ReventlessCore.Make({
31
31
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
32
32
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
33
33
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
34
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
34
35
  asEventHandler: prim => prim,
35
36
  asEffectHandler: prim => prim
36
37
  })(LocalEventCollectorChannel$ReventlessLocal.Make(Bus));
@@ -58,6 +58,7 @@ let SpecificEventCollector = EventCollector_Builder$ReventlessCore.Make({
58
58
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
59
59
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
60
60
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
61
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
61
62
  asEventHandler: prim => prim,
62
63
  asEffectHandler: prim => prim
63
64
  })(EventCollectorCh);
@@ -68,6 +69,7 @@ let SEHBuilder = SideEffectHandler_Builder$ReventlessCore.Make({
68
69
  make: LocalRuntimeEnvironment$ReventlessLocal.make,
69
70
  groupBySource: LocalRuntimeEnvironment$ReventlessLocal.groupBySource,
70
71
  extractCorrelationId: LocalRuntimeEnvironment$ReventlessLocal.extractCorrelationId,
72
+ extractCausationId: LocalRuntimeEnvironment$ReventlessLocal.extractCausationId,
71
73
  asEventHandler: prim => prim,
72
74
  asEffectHandler: prim => prim
73
75
  })(EventCollectorCh)(SpecificEventCollector)(ECRTBuilder);