@reventlessdev/reventless-infra 3.0.0-alpha.141 → 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 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.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
+
6
13
  # 3.0.0-alpha.141 (2026-08-14)
7
14
 
8
15
  ### Features
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reventlessdev/reventless-infra",
3
- "version": "3.0.0-alpha.141",
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,10 +16,10 @@
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/rescript-uuid": "2.0.0-alpha.0",
22
- "@reventlessdev/reventless-spec": "3.0.0-alpha.113"
20
+ "@reventlessdev/rescript-pulumi-pulumi": "2.3.0-alpha.19",
21
+ "@reventlessdev/reventless-spec": "3.0.0-alpha.114",
22
+ "@reventlessdev/rescript-uuid": "2.0.0-alpha.0"
23
23
  },
24
24
  "devDependencies": {
25
25
  "rescript": "12.3.0",
@@ -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` unset
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