@reventlessdev/reventless-core 3.0.0-alpha.240 → 3.0.0-alpha.241

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,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.241 (2026-08-19)
7
+
8
+ ### Bug Fixes
9
+
10
+ * **aws:** build the platform's definition asset from the shared value ([c0e432d](https://github.com/ReventlessDev/reventless-core/commit/c0e432d98d96af3ff4c305b62f658ae102c5d142))
11
+
12
+
6
13
  # 3.0.0-alpha.240 (2026-08-18)
7
14
 
8
15
  ### Bug Fixes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reventlessdev/reventless-core",
3
- "version": "3.0.0-alpha.240",
3
+ "version": "3.0.0-alpha.241",
4
4
  "description": "Core package for Reventless framework",
5
5
  "license": "Apache-2.0",
6
6
  "jest": {
@@ -30,15 +30,15 @@
30
30
  "uuid": "^13.0.0",
31
31
  "@reventlessdev/rescript-effect": "0.1.0-alpha.32",
32
32
  "@reventlessdev/rescript-fast-csv": "2.0.0-alpha.8",
33
- "@reventlessdev/rescript-node": "2.0.0-alpha.8",
34
33
  "@reventlessdev/rescript-jest": "1.0.0-alpha.10",
35
34
  "@reventlessdev/rescript-hash-object": "1.2.0-alpha.14",
35
+ "@reventlessdev/rescript-node": "2.0.0-alpha.8",
36
36
  "@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.19",
37
37
  "@reventlessdev/rescript-ssh2": "2.0.0-alpha.8",
38
- "@reventlessdev/reventless-interop": "3.0.0-alpha.32",
39
38
  "@reventlessdev/reventless-infra": "3.0.0-alpha.146",
39
+ "@reventlessdev/rescript-uuid": "2.0.0-alpha.0",
40
40
  "@reventlessdev/reventless-spec": "3.0.0-alpha.118",
41
- "@reventlessdev/rescript-uuid": "2.0.0-alpha.0"
41
+ "@reventlessdev/reventless-interop": "3.0.0-alpha.32"
42
42
  },
43
43
  "devDependencies": {
44
44
  "rescript": "12.3.0",
@@ -75,23 +75,8 @@ module Make = (
75
75
  )
76
76
 
77
77
  resources->Pulumi.Output.apply(resources => {
78
- let fakePluginDefinition: Reventless.Plugin.pluginDefinition = {
79
- id: Platform_Admin_Structure.pluginId ++ "@INTERNAL",
80
- name: Platform_Admin_Structure.pluginId,
81
- version: "INTERNAL",
82
- extensionPoints: [],
83
- extensions: [],
84
- eventCollector: "NOT-SET",
85
- extensionProtocols: [],
86
- apiSchemaFragment: None,
87
- apiTarget: None,
88
- structure: None,
89
- dcbEventLog: None,
90
- kind: Domain,
91
- }
92
-
93
78
  module Callback = Platform_Admin_Callback.Make({
94
- let pluginDefinition = fakePluginDefinition
79
+ let pluginDefinition = Platform_Admin_Structure.internalPluginDefinition
95
80
  let outgoingExtensionPointJsonEventsHandlers = extensionPointsOutgoingJsonEventsHandlers
96
81
  })
97
82
  let handler = PlatformEventCollector.makeHandler(
@@ -38,22 +38,8 @@ function Make(RuntimeEnvironment) {
38
38
  let connect = (eventCollector, eventTopics, extensionPointsOutputs, extensionPointsOutgoingJsonEventsHandlers) => {
39
39
  let resources = Pulumi.all(extensionPointsOutputs.map(extensionPoint => extensionPoint.eventTopic)).apply(eventTopics => eventTopics.map(eventTopic => eventTopic.resources).flat());
40
40
  return resources.apply(resources => {
41
- let fakePluginDefinition = {
42
- id: Platform_Admin_Structure$ReventlessCore.pluginId + "@INTERNAL",
43
- name: Platform_Admin_Structure$ReventlessCore.pluginId,
44
- version: "INTERNAL",
45
- extensionPoints: [],
46
- extensions: [],
47
- eventCollector: "NOT-SET",
48
- extensionProtocols: [],
49
- apiSchemaFragment: undefined,
50
- apiTarget: undefined,
51
- structure: undefined,
52
- dcbEventLog: undefined,
53
- kind: "Domain"
54
- };
55
41
  let Callback = Platform_Admin_Callback$ReventlessCore.Make({
56
- pluginDefinition: fakePluginDefinition,
42
+ pluginDefinition: Platform_Admin_Structure$ReventlessCore.internalPluginDefinition,
57
43
  outgoingExtensionPointJsonEventsHandlers: extensionPointsOutgoingJsonEventsHandlers
58
44
  });
59
45
  let handler = PlatformEventCollector.makeHandler(eventCollector, Callback.handleJsonEvents);
@@ -195,22 +181,8 @@ function Make(RuntimeEnvironment) {
195
181
  let connect = (eventCollector, eventTopics, extensionPointsOutputs, extensionPointsOutgoingJsonEventsHandlers) => {
196
182
  let resources = Pulumi.all(extensionPointsOutputs.map(extensionPoint => extensionPoint.eventTopic)).apply(eventTopics => eventTopics.map(eventTopic => eventTopic.resources).flat());
197
183
  return resources.apply(resources => {
198
- let fakePluginDefinition = {
199
- id: Platform_Admin_Structure$ReventlessCore.pluginId + "@INTERNAL",
200
- name: Platform_Admin_Structure$ReventlessCore.pluginId,
201
- version: "INTERNAL",
202
- extensionPoints: [],
203
- extensions: [],
204
- eventCollector: "NOT-SET",
205
- extensionProtocols: [],
206
- apiSchemaFragment: undefined,
207
- apiTarget: undefined,
208
- structure: undefined,
209
- dcbEventLog: undefined,
210
- kind: "Domain"
211
- };
212
184
  let Callback = Platform_Admin_Callback$ReventlessCore.Make({
213
- pluginDefinition: fakePluginDefinition,
185
+ pluginDefinition: Platform_Admin_Structure$ReventlessCore.internalPluginDefinition,
214
186
  outgoingExtensionPointJsonEventsHandlers: extensionPointsOutgoingJsonEventsHandlers
215
187
  });
216
188
  let handler = PlatformEventCollector.makeHandler(eventCollector, Callback.handleJsonEvents);
@@ -77,3 +77,28 @@ let structure: pluginStructure = {
77
77
  requiredStores: None,
78
78
  requiredStoreDeclarations: None,
79
79
  }
80
+
81
+ /** The definition the platform's own EventCollector ships as its
82
+ `pluginDefinition.json` asset, and hands to `Platform_Admin_Callback`.
83
+
84
+ The admin IS the Plugin extension point, so it never travels the connect
85
+ handshake and every field here is a placeholder. The asset is still read back
86
+ on the same path as every other plugin's, so it is declared as a value and
87
+ encoded through `pluginDefinitionSchema` at both sites rather than written out
88
+ as JSON: the hand-written twin that used to live in the AWS builder predated
89
+ `dcbEventLog` and `kind` and silently stopped matching the schema, which only
90
+ surfaced once the read side decoded instead of casting. */
91
+ let internalPluginDefinition: pluginDefinition = {
92
+ id: pluginId ++ "@INTERNAL",
93
+ name: pluginId,
94
+ version: "INTERNAL",
95
+ extensionPoints: [],
96
+ extensions: [],
97
+ eventCollector: "NOT-SET",
98
+ extensionProtocols: [],
99
+ apiSchemaFragment: None,
100
+ apiTarget: None,
101
+ structure: None,
102
+ dcbEventLog: None,
103
+ kind: Domain,
104
+ }
@@ -63,6 +63,21 @@ let structure = {
63
63
  requiredStoreDeclarations: undefined
64
64
  };
65
65
 
66
+ let internalPluginDefinition = {
67
+ id: pluginId + "@INTERNAL",
68
+ name: pluginId,
69
+ version: "INTERNAL",
70
+ extensionPoints: [],
71
+ extensions: [],
72
+ eventCollector: "NOT-SET",
73
+ extensionProtocols: [],
74
+ apiSchemaFragment: undefined,
75
+ apiTarget: undefined,
76
+ structure: undefined,
77
+ dcbEventLog: undefined,
78
+ kind: "Domain"
79
+ };
80
+
66
81
  let pluginName = pluginId;
67
82
 
68
83
  let commandSchema = PluginSpec$ReventlessCore.commandSchema;
@@ -75,5 +90,6 @@ export {
75
90
  pluginAggregate,
76
91
  pluginReadModel,
77
92
  structure,
93
+ internalPluginDefinition,
78
94
  }
79
95
  /* pluginCommands Not a pure module */