@cratis/pi 7.27.1 → 7.27.3
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/package/corpus/skills/cratis-screenplay-model-authoring/references/screen-authoring-workflow.md +32 -2
- package/package/corpus/skills/cratis-screenplay-ui-composition/references/screen-composition-contract.md +33 -3
- package/package/corpus/skills/cratis-stage-rendering-and-sandbox/SKILL.md +1 -1
- package/package.json +1 -1
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
- 4. Validate authoring and executable readiness
|
|
13
13
|
- 5. Run/render using the same configuration
|
|
14
14
|
- 6. Use Screenplay-owned fixtures
|
|
15
|
+
- Replay the workflow in CI without a Screenplay checkout
|
|
15
16
|
- Edit, render, run and see it in the browser
|
|
16
17
|
- Transcript checklist
|
|
17
18
|
|
|
@@ -109,6 +110,25 @@ contract for `--workspace` and keep its application identity equal to the source
|
|
|
109
110
|
name. Build/tests/runtime checks are then the V5 steps owned by
|
|
110
111
|
`cratis-screenplay-render-and-gap-fill` and `cratis-stage-rendering-and-sandbox`.
|
|
111
112
|
|
|
113
|
+
Before re-rendering an edited model over an earlier render, preview it:
|
|
114
|
+
|
|
115
|
+
```shell
|
|
116
|
+
cratis render <model-folder> --name <ApplicationName> --destination <render-dir> --check -o json
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
`--check` (CLI 3.44.0) plans exactly like a render and reports per path what a real
|
|
120
|
+
render would write, delete, leave unchanged or refuse, without writing anything. It
|
|
121
|
+
exits `0` when the destination is current, `6` (`changes_pending`) when a render
|
|
122
|
+
would change it and `5` when planning is refused. Since CLI 3.45.0 the receipt lists
|
|
123
|
+
for every path the semantic declarations it realizes (`sources`: id, kind and a
|
|
124
|
+
`Module/Feature/Slice/Name` address) and a `bySource` view mapping each declaration
|
|
125
|
+
to its files. After an MCP edit, use `bySource` to confirm the edited screen or
|
|
126
|
+
binding changed exactly the files you expect, and `semantic-diff` (MCP, Screenplay
|
|
127
|
+
4.131.0: `before` and `after` as `{ "workspace": "active" }`, `{ "path": "<folder>" }`
|
|
128
|
+
or `{ "workspaceJson": "<export>" }`) to compare the model before and after the
|
|
129
|
+
edit. These are newer than the verified vector: report them as published, not as
|
|
130
|
+
executed there.
|
|
131
|
+
|
|
112
132
|
For screens-release parity, the smoke check must assert that every authored
|
|
113
133
|
screen, template, component, form, toolbar, outlet, route and package/icon use is
|
|
114
134
|
represented in the generated plan or runtime diagnostics. A consumer that cannot
|
|
@@ -125,8 +145,9 @@ maintained duplicate.
|
|
|
125
145
|
Verified public vector and executable checks:
|
|
126
146
|
|
|
127
147
|
- toolchain: public CLI 3.43.0 (`23e5a24`), whose default runtime is
|
|
128
|
-
`cratis/stage:4.52.0` and which bundles Screenplay 4.127.0.
|
|
129
|
-
|
|
148
|
+
`cratis/stage:4.52.0` and which bundles Screenplay 4.127.0. Published since,
|
|
149
|
+
and not verified by this vector: Scene 4.17.0, Screenplay 4.133.1, Stage 4.64.0, CLI
|
|
150
|
+
3.46.1 (bundling Screenplay 4.130.0, default Stage still 4.52.0) and Studio 0.152.2;
|
|
130
151
|
claims made through `cratis` are 4.127.0 compiler claims;
|
|
131
152
|
- fixture root: `Source/DotNET/Screenplay.CanonicalCorpus/Corpus/ScreenComposition/v1/source/folder`
|
|
132
153
|
in the Screenplay repository;
|
|
@@ -150,6 +171,15 @@ Verified public vector and executable checks:
|
|
|
150
171
|
Play proof (test-account decision). UI-profile rejection and render-then-recover
|
|
151
172
|
shipped in Cratis/cli#301.
|
|
152
173
|
|
|
174
|
+
## Replay the workflow in CI without a Screenplay checkout
|
|
175
|
+
|
|
176
|
+
`screens-smoke.sh <work-folder>` in the AI repository's `screens-smoke` verification folder installs the pinned public `cratis` CLI,
|
|
177
|
+
materializes the published `Cratis.Screenplay.CanonicalCorpus` folder source (so the corpus stays Screenplay-owned and
|
|
178
|
+
is never copied), replays the MCP transcript with the revision-checked column edit, renders the edited folder and
|
|
179
|
+
requires the column in the generated `scene.json`. The pins live in `screens-smoke.json` and follow the verified
|
|
180
|
+
vector above; the corpus package is the one that records that vector. The corpus verification job runs it on every
|
|
181
|
+
change. The browser step below needs Docker and Chromium, so it stays a manual step.
|
|
182
|
+
|
|
153
183
|
## Edit, render, run and see it in the browser
|
|
154
184
|
|
|
155
185
|
The loop above proves an agent can change the model. This proves the change
|
|
@@ -34,8 +34,10 @@ hand-writing an alternate shape.
|
|
|
34
34
|
Keep those three lines separate in reports. Correct an old limitation only when
|
|
35
35
|
the package/version you are using proves the new level. Verified public vector:
|
|
36
36
|
CLI 3.43.0 with its default `cratis/stage:4.52.0` and bundled Screenplay 4.127.0;
|
|
37
|
-
|
|
38
|
-
|
|
37
|
+
the executed vector renders on Scene 4.15.0. Packages published since are newer than
|
|
38
|
+
that vector and are not claimed verified: Scene 4.17.0, Screenplay 4.133.1, Stage
|
|
39
|
+
4.64.0, CLI 3.46.1 (its default Stage is still 4.52.0) and Studio 0.152.2. All
|
|
40
|
+
three levels hold for the canonical `ScreenComposition`
|
|
39
41
|
corpus:
|
|
40
42
|
|
|
41
43
|
- authoring and executable admission: MCP opens it with `sourceSuccess true`,
|
|
@@ -210,10 +212,38 @@ screen owns the button. Dialog opening stays an interaction (`on click open dial
|
|
|
210
212
|
node. A dialog destination must state every input with a typed `with`/`parameter`
|
|
211
213
|
binding; a runtime default is not an authored contract.
|
|
212
214
|
|
|
215
|
+
What Scene 4.17 adds to the runtime side of this contract, so an agent knows what a
|
|
216
|
+
destination can do once it is authored (authoring acceptance and executable
|
|
217
|
+
admission are separate, see Support levels - a Scene release is not a Stage
|
|
218
|
+
release):
|
|
219
|
+
|
|
220
|
+
- **Nested outlets.** A `core:outlet` component declares a named nested outlet on a
|
|
221
|
+
screen. A destination into it opens its screen there and keeps the declaring
|
|
222
|
+
screen on the page; the opened screen may declare outlets of its own, so
|
|
223
|
+
composition nests to any depth. A deep link to the innermost level composes
|
|
224
|
+
every level above it, and back closes the innermost level only. An outlet
|
|
225
|
+
declares the template types it accepts; a destination into a missing or
|
|
226
|
+
incompatible outlet is a navigation diagnostic, not a fallback.
|
|
227
|
+
- **Toolbar buttons open destinations.** The Cratis Components toolbar button runs
|
|
228
|
+
its attached interactions and opens its authored `destination` (a dialog or a
|
|
229
|
+
slice screen) through the enclosing navigation host. Label, icon, text and
|
|
230
|
+
presentation are properties of the button, so author them on the toolbar item
|
|
231
|
+
rather than on a wrapper.
|
|
232
|
+
- **Settings pages.** `@cratis/scene.blueprint.components` ships a `SettingsPage`
|
|
233
|
+
screen template: a module's settings as a generated command form with save and
|
|
234
|
+
discard. Prefer it to a hand-built form for settings, and expose its command as
|
|
235
|
+
template configuration.
|
|
236
|
+
- **Embedded hosts.** `WebViewPackageHost` renders a custom package set inside a
|
|
237
|
+
webview (VS Code, Event Models) with no Studio dependency; the same package set
|
|
238
|
+
must produce the same screens in the standalone host.
|
|
239
|
+
|
|
240
|
+
Whether a given Stage or CLI release renders each of these is a runtime level
|
|
241
|
+
claim: confirm it from the render receipt and diagnostics before reporting it.
|
|
242
|
+
|
|
213
243
|
## Design-time generation results
|
|
214
244
|
|
|
215
245
|
Design-time actions belong to component packages, not to the model and not to an
|
|
216
|
-
agent. Scene 4.15 declares them as data (`PackageDesignTimeMetadata`) and ships
|
|
246
|
+
agent. Scene 4.15 (unchanged in 4.17) declares them as data (`PackageDesignTimeMetadata`) and ships
|
|
217
247
|
their code in an optional design-time bundle; a runtime host that does not set
|
|
218
248
|
`loadDesignTime` loads none of it, so nothing a design-time action does can exist
|
|
219
249
|
only at runtime. The one Cratis action today is **Generate fields**
|
|
@@ -42,7 +42,7 @@ argument or an invalid semantic option.
|
|
|
42
42
|
|
|
43
43
|
| Source | Pin | Notes |
|
|
44
44
|
| --- | --- | --- |
|
|
45
|
-
| Stage | `4.52.0` (`v4.52.0`, `0e4fd87`) as the CLI 3.43.0 default;
|
|
45
|
+
| Stage | `4.52.0` (`v4.52.0`, `0e4fd87`) as the CLI 3.43.0 default; newer public packages exist (latest `4.64.0`, built on Scene 4.16.0) and are not part of the verified vector | Renderer, sandbox host, spec runner; the CLI default image is `cratis/stage:4.52.0`. Both define `STAGE-SCENE-ACTION-001` and `STAGE-SCENE-INTERACTION-001`. Earlier executed baselines: 4.51.3, 4.51.1, 4.49.5 and `v4.24.2` (`32dcac4`) |
|
|
46
46
|
| cratis CLI | `3.43.0` (`v3.43.0`, `23e5a24`) | `cratis render`, `cratis run`; the tag pins `StageVersion` 4.52.0 and `ScreenplayVersion` 4.127.0. The public CLI renders the canonical corpus and runs the stdio MCP transcript; refusing an unresolvable UI profile and recovering a rendered application shipped in Cratis/cli#301. Older baselines: 3.41.0, 3.40.7, `v3.28.2` (`141c499`, Cratis/cli#253) |
|
|
47
47
|
| Screenplay | bundled `4.127.0`; latest public language package `4.129.0` | The CLI bundles 4.127.0, so compiler claims made through `cratis` are 4.127.0 claims; use the standalone 4.129.0 tool only for language features newer than the bundle |
|
|
48
48
|
| Rendered applications | Arc, Chronicle, Scene 4.15.0, .NET 10 | CLI 3.43.0 renders the canonical corpus to `.cratis-render.json`, backend artifacts, `.frontend/**`, `scene.json`, `src/bindings.ts`. Verify the generated package set for each render before claiming exact Scene runtime parity |
|