@reventlessdev/reventless-infra 3.0.0-alpha.140 → 3.0.0-alpha.142
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 +14 -0
- package/package.json +3 -3
- package/src/components/Api.res +2 -2
- package/src/types/Platform.res +16 -3
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,20 @@
|
|
|
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.142 (2026-08-15)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* **core:** curate the pages a shell builds across a plugin's views ([589835a](https://github.com/ReventlessDev/reventless-core/commit/589835a1ad428c5e2dea8bf6e4c64e49d2f67e0d))
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
# 3.0.0-alpha.141 (2026-08-14)
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
|
|
17
|
+
* **core:** one contract for which refusal a platform gave ([7705c13](https://github.com/ReventlessDev/reventless-core/commit/7705c13ec63f41a3a659bc98cfb45b880fd5b222))
|
|
18
|
+
|
|
19
|
+
|
|
6
20
|
# 3.0.0-alpha.140 (2026-08-14)
|
|
7
21
|
|
|
8
22
|
**Note:** Version bump only for package @reventlessdev/reventless-infra
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@reventlessdev/reventless-infra",
|
|
3
|
-
"version": "3.0.0-alpha.
|
|
3
|
+
"version": "3.0.0-alpha.142",
|
|
4
4
|
"description": "Infrastructure types for Reventless framework",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"jest": {
|
|
@@ -16,9 +16,9 @@
|
|
|
16
16
|
"sury": "11.0.0-alpha.4",
|
|
17
17
|
"sury-ppx": "11.0.0-alpha.2",
|
|
18
18
|
"uuid": "^13.0.0",
|
|
19
|
-
"@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.19",
|
|
20
19
|
"@reventlessdev/rescript-effect": "0.1.0-alpha.32",
|
|
21
|
-
"@reventlessdev/
|
|
20
|
+
"@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.19",
|
|
21
|
+
"@reventlessdev/reventless-spec": "3.0.0-alpha.114",
|
|
22
22
|
"@reventlessdev/rescript-uuid": "2.0.0-alpha.0"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
package/src/components/Api.res
CHANGED
|
@@ -53,7 +53,7 @@ type mutationSchemaEntry = {
|
|
|
53
53
|
authorization?: Reventless.ReadModel.authorization,
|
|
54
54
|
/** Spec-level per-field authorization derived from `Spec.commandAuthorization`,
|
|
55
55
|
keyed by mutation field name. Used by AWS to inject
|
|
56
|
-
`@
|
|
56
|
+
`@aws_cognito_user_pools(cognito_groups: ...)` per field (Stage E2 in
|
|
57
57
|
`docs/plans/host-ui-login-core.md`). In-memory enforcement still happens
|
|
58
58
|
at the resolver layer via the same `commandAuthorization` function. */
|
|
59
59
|
fieldPermissions?: dict<Reventless.Authorization.permission>,
|
|
@@ -106,7 +106,7 @@ type querySchemaEntry = {
|
|
|
106
106
|
authorization: option<Reventless.ReadModel.authorization>,
|
|
107
107
|
/** Spec-level read-model authorization derived from `Spec.authorization`.
|
|
108
108
|
Applies to both the single-id and list query fields. Used by AWS to
|
|
109
|
-
inject `@
|
|
109
|
+
inject `@aws_cognito_user_pools(cognito_groups: ...)` (Stage E2 in
|
|
110
110
|
`docs/plans/host-ui-login-core.md`). In-memory enforcement happens at
|
|
111
111
|
the QueryDb resolver via the same field. */
|
|
112
112
|
permission?: Reventless.Authorization.permission,
|
package/src/types/Platform.res
CHANGED
|
@@ -114,16 +114,29 @@ type capability =
|
|
|
114
114
|
// A provisioned geocoding place index, as returned by the framework's geocoding
|
|
115
115
|
// capability helper. A record rather than a bare name so the handle can grow
|
|
116
116
|
// (ARN, data source) without moving every call site.
|
|
117
|
-
/** One plugin's slice of the baked manifest. `views` / `commands`
|
|
118
|
-
every public component of that kind; set ⇒ exactly the named ones.
|
|
117
|
+
/** One plugin's slice of the baked manifest. `views` / `commands` / `derived`
|
|
118
|
+
unset ⇒ every public component of that kind; set ⇒ exactly the named ones.
|
|
119
119
|
An include-list rather than an exclude-list, so a component added later
|
|
120
120
|
has to be opted in and cannot silently widen a curated shell's surface.
|
|
121
121
|
A name that matches nothing fails the deploy naming it — a silent no-op
|
|
122
|
-
here produces a missing page no log explains.
|
|
122
|
+
here produces a missing page no log explains.
|
|
123
|
+
|
|
124
|
+
`derived` curates the pages a shell builds ACROSS a plugin's views rather
|
|
125
|
+
than from any one of them — the dashboard, the lifecycle diagrams, the
|
|
126
|
+
canvases, the schedulers. They belong here for the reason the views do:
|
|
127
|
+
they are surfaces an audience either has or does not, and a deployment that
|
|
128
|
+
curated the views a lifecycle page is drawn from and still got the page
|
|
129
|
+
would have curated nothing. Kinds rather than page names, because what a
|
|
130
|
+
canvas is CALLED is resolved in the browser from the hints and the modes
|
|
131
|
+
that deployment registered, and a server validating names it cannot know
|
|
132
|
+
would fail deploys over a spelling only the shell can check.
|
|
133
|
+
|
|
134
|
+
The vocabulary is `Platform_BakedManifest.derivedKinds`. */
|
|
123
135
|
type bakedManifestSelection = {
|
|
124
136
|
plugin: string,
|
|
125
137
|
views?: array<string>,
|
|
126
138
|
commands?: array<string>,
|
|
139
|
+
derived?: array<string>,
|
|
127
140
|
}
|
|
128
141
|
|
|
129
142
|
/** Declaration for the baked component manifest — the static JSON a shell
|