@reventlessdev/reventless-core 3.0.0-alpha.255 → 3.0.0-alpha.257
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 +58 -0
- package/package.json +9 -9
- package/src/adapter/Monitoring/Monitoring.res +79 -5
- package/src/adapter/Monitoring/Monitoring.res.mjs +42 -2
- package/src/admin/Platform_Admin_Structure.res.mjs +1 -1
- package/src/admin/Platform_ComponentDefinitionsApi.res +5 -1
- package/src/admin/Platform_ComponentDefinitionsApi.res.mjs +5 -1
- package/src/admin/Platform_UiSlots.res +21 -0
- package/src/admin/Platform_UiSlots.res.mjs +15 -0
- package/src/admin/UiFragmentRegistry/StateChangeSlice/UiFragmentRegistry.res.mjs +1 -1
- package/src/components/Aggregate/Aggregate_Callback.res +13 -4
- package/src/components/Aggregate/Aggregate_Callback.res.mjs +6 -5
- package/src/components/Api/GraphQL_FragmentGenerator.res +2 -0
- package/src/components/Api/GraphQL_FragmentGenerator.res.mjs +4 -0
- package/src/components/Api/MCP_SchemaGenerator.res.mjs +2 -2
- package/src/components/Api/SchemaType.res +8 -0
- package/src/components/Api/SchemaType.res.mjs +15 -5
- package/src/components/Api/SuryToJsonSchema.res +70 -12
- package/src/components/Api/SuryToJsonSchema.res.mjs +43 -16
- package/src/components/StateChangeSlice/StateChangeSlice_Callback.res +8 -3
- package/src/components/StateChangeSlice/StateChangeSlice_Callback.res.mjs +1 -1
- package/src/plugin/component/Plugin.res +1 -0
- package/src/plugin/component/Plugin_Builder.res +2 -0
- package/src/plugin/component/Plugin_Builder.res.mjs +3 -2
- package/src/plugin/component/Plugin_Structure.res +105 -10
- package/src/plugin/component/Plugin_Structure.res.mjs +71 -27
- package/src/plugin/lifecycle/PluginsReadModelSpec.res +1 -1
- package/src/plugin/lifecycle/PluginsReadModelSpec.res.mjs +1 -1
- package/src/util/Validation.res +1 -1
- package/src/util/Validation.res.mjs +2 -2
- package/tests/adapter/MonitoringTest.res +46 -7
- package/tests/adapter/MonitoringTest.res.mjs +47 -5
- package/tests/admin/AdminApiSchemaDriftTest.res +1 -0
- package/tests/admin/AdminApiSchemaDriftTest.res.mjs +3 -0
- package/tests/admin/Platform_Admin_StructureTest.res.mjs +2 -14
- package/tests/admin/Platform_ComponentDefinitionsApiTest.res +1 -0
- package/tests/admin/Platform_ComponentDefinitionsApiTest.res.mjs +2 -0
- package/tests/admin/Platform_PluginStructuresApiTest.res +8 -14
- package/tests/admin/Platform_PluginStructuresApiTest.res.mjs +3 -3
- package/tests/aggregate/AggregateCacheTest.res.mjs +1 -1
- package/tests/aggregate/AggregateConflictTest.res.mjs +1 -1
- package/tests/aggregate/AggregateFixtures.res.mjs +1 -1
- package/tests/aggregate/AggregateSnapshotTest.res.mjs +1 -1
- package/tests/api/GraphQL_FragmentGeneratorTest.res +6 -4
- package/tests/api/GraphQL_FragmentGeneratorTest.res.mjs +5 -5
- package/tests/api/SuryToJsonSchemaTest.res.mjs +57 -57
- package/tests/api/TaggedUnionSchemaTest.res.mjs +1 -1
- package/tests/commandgenerator/CommandGeneratorFixtures.res.mjs +1 -1
- package/tests/commandtopic/CommandTopicCallbackFixtures.res.mjs +1 -1
- package/tests/dcb/DcbFixtures.res.mjs +1 -1
- package/tests/eventmapper/EventMapperFixtures.res.mjs +1 -1
- package/tests/extensionpoint/ExtensionPointFixtures.res.mjs +1 -1
- package/tests/extensionpoint/ExtensionPointOperationsTest.res.mjs +1 -1
- package/tests/fixtures/plugin-lifecycle/2026-07-22-versionconnected-no-requiredstores.json +1 -1
- package/tests/fixtures/plugin-lifecycle/2026-07-22-versionsuperseded-nested-definitions.json +1 -1
- package/tests/fixtures/plugin-lifecycle/2026-07-28-versionconnected-requiredstores-only.json +1 -1
- package/tests/fixtures/plugin-lifecycle/2026-07-30-versionconnected-declarations-without-annotation.json +1 -1
- package/tests/fixtures/plugin-lifecycle/2026-07-30-versiondisconnected-declarations-without-annotation.json +1 -1
- package/tests/fixtures/plugin-lifecycle/README.md +12 -0
- package/tests/logger/LogFormatTest.res +1 -1
- package/tests/logger/LogFormatTest.res.mjs +1 -1
- package/tests/plugin/ManifestVisibilityTest.res.mjs +1 -1
- package/tests/plugin/PluginDefinitionRequiredScalarsTest.res +1 -1
- package/tests/plugin/PluginDefinitionScalars.res +13 -8
- package/tests/plugin/PluginDefinitionScalars.res.mjs +13 -5
- package/tests/plugin/PluginStructureAccessTest.res.mjs +1 -1
- package/tests/plugin/PluginStructureTest.res +184 -0
- package/tests/plugin/PluginStructureTest.res.mjs +142 -17
- package/tests/plugin/StateChangeSlice/PsAttachInvoice.res.mjs +1 -1
- package/tests/plugin/StateChangeSlice/PsChangePhoto.res.mjs +1 -1
- package/tests/plugin/StateChangeSlice/PsGatedCommands.res.mjs +1 -1
- package/tests/plugin/StateChangeSlice/PsPlaceOrder.res.mjs +1 -1
- package/tests/plugin/StateChangeSlice/PsReserveStock.res +14 -1
- package/tests/plugin/StateChangeSlice/PsReserveStock.res.mjs +9 -2
- package/tests/plugin/StateChangeSlice/PsTypoStore.res.mjs +1 -1
- package/tests/plugin/StateChangeSlice/PsUploadAvatar.res.mjs +1 -1
- package/tests/plugin/StateChangeSlice/PsUploadImages.res.mjs +1 -1
- package/tests/plugin/pluginDefinitionRequiredScalars.txt +13 -14
- package/tests/util/CommandPublisherTest.res.mjs +1 -1
|
@@ -6,20 +6,19 @@
|
|
|
6
6
|
# one means every message stored before it decodes with a value this framework invented
|
|
7
7
|
# (`""` / `0` / `false`), reported at runtime as a warning and nowhere else.
|
|
8
8
|
#
|
|
9
|
-
# So a diff here is a design decision, not a chore. If your new field can be absent,
|
|
10
|
-
# it
|
|
11
|
-
#
|
|
12
|
-
# value for it.
|
|
9
|
+
# So a diff here is a design decision, not a chore. If your new field can be absent, make
|
|
10
|
+
# it `option` and this list does not change. If it genuinely must be a required scalar, add
|
|
11
|
+
# the line and accept that older payloads carry a fabricated value for it.
|
|
13
12
|
#
|
|
14
13
|
# Regenerate ONLY after making that call — never to make a red build green.
|
|
15
14
|
# See docs/analysis/plugin-definition-schema-evolution-wedge.md.
|
|
16
15
|
#
|
|
17
|
-
#
|
|
18
|
-
# shape the rule asks for. A scalar nested inside
|
|
16
|
+
# An optional scalar is NOT listed: absent stays absent and decodes to `None`, which is the
|
|
17
|
+
# shape the rule asks for. A scalar nested inside an optional object or array IS listed —
|
|
19
18
|
# when an old payload carries the parent, the new field still has to be invented. That is
|
|
20
|
-
# how requiredStoreDeclarations[].annotation, a required string inside
|
|
19
|
+
# how requiredStoreDeclarations[].annotation, a required string inside an optional array,
|
|
21
20
|
# froze a plugin's registration for two days; it is absent from this list because it has
|
|
22
|
-
# since been made
|
|
21
|
+
# since been made optional.
|
|
23
22
|
#
|
|
24
23
|
# The `.$offload.*` lines are the reference arm of an `@offload` field. They are not new
|
|
25
24
|
# fields — they have been persisted since `@offload` existed. They appear here because the
|
|
@@ -94,8 +93,8 @@
|
|
|
94
93
|
.structure.inboundTranslationSlices[].name: string
|
|
95
94
|
.structure.inboundTranslationSlices[].targetName: string
|
|
96
95
|
.structure.outboundTranslationSlices[].consumedEventTypes[]: string
|
|
97
|
-
# `consumedSources` is itself
|
|
98
|
-
# carries the array: a stored structure heals to
|
|
96
|
+
# `consumedSources` is itself optional and is NEW, so no persisted payload
|
|
97
|
+
# carries the array: a stored structure heals to `None` and this line is never
|
|
99
98
|
# reached — the same call `traitDeclarations` made below. Required inside it
|
|
100
99
|
# because a source name is a topic key the slice subscribes to, and a fabricated
|
|
101
100
|
# `""` would name a topic that does not exist rather than saying nothing.
|
|
@@ -111,15 +110,15 @@
|
|
|
111
110
|
.structure.readModels[].retiredValues[]: string
|
|
112
111
|
.structure.readModels[].schema: string
|
|
113
112
|
.structure.readModels[].searchableFields[]: string
|
|
114
|
-
# `requiredCapabilities` is itself
|
|
115
|
-
# carries the array: a stored structure heals to
|
|
113
|
+
# `requiredCapabilities` is itself optional and is NEW, so no persisted payload
|
|
114
|
+
# carries the array: a stored structure heals to `None` and these two are never reached.
|
|
116
115
|
# Required inside it because a declaration naming no capability, or no declaring
|
|
117
116
|
# component, is not a declaration — the same call `requiredStoreDeclarations` made for
|
|
118
117
|
# `store`/`component`/`field`.
|
|
119
118
|
.structure.requiredCapabilities[].capability: string
|
|
120
119
|
.structure.requiredCapabilities[].component: string
|
|
121
|
-
# `traitDeclarations` is itself
|
|
122
|
-
# carries the array: a stored structure heals to
|
|
120
|
+
# `traitDeclarations` is itself optional and is NEW, so no persisted payload
|
|
121
|
+
# carries the array: a stored structure heals to `None` and these four are never
|
|
123
122
|
# reached. Required inside it for the same reason the two above are — a graft
|
|
124
123
|
# naming no trait, no version, no posture or no component is not a record of a
|
|
125
124
|
# graft, and a fabricated `""` here would read as "grafted from nothing", which is
|