You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
Screen forms can continue with the submitted command's typed response — scalar, concept or record values — in both generated applications and the live Stage host. (part of #175)
Render given-only Translate specifications from private events into keyed read-model assertions, including read models in separate view slices. (part of #14)
New applications can now select rendering configuration version 4, which renders running totals (add, subtract, increment, decrement) and clear in flat projections as model-bound read model attributes instead of a separate projection class. Version 3 applications keep their output unchanged. Moving an existing application from version 3 to 4 changes the observer identity of the newly eligible projections, so plan a rebuild or replay and remove the obsolete generated fluent projection files before using the new output; Stage does not migrate observer state or remove those files automatically. Older Stage versions refuse version 4. (part of #496)
$eventContext projection mappings (occurred, sequenceNumber, correlationId, eventSourceId) now render as Chronicle ToEventContextProperty in from, every and all blocks and in nested properties, when the target type is compatible. Before, they were refused or dropped with STAGE-DEGRADE-002. Other event-context paths still degrade. (#876)
Reaction specifications that expect command invocations (then invokes) now render as generated specifications that assert the recorded commands. (#907)
Rendered applications can require Microsoft Entra ID sign-in for every endpoint, configured with Cratis:Authentication settings and off by default. See the Entra ID sign-in guide. (part of #120)
Command fields that reference another entity can offer a searchable picker using an unambiguous modeled list query instead of requiring a raw identifier. (#744)
New application scaffolds preapprove recently published @Cratis packages in .yarnrc.yml. (#734)
The ui profile root option showThemeSwitcher controls the theme switcher. (#740)
Changed
Rendering now admits Screenplay models at ESM semantic version 34; specifications that expect then invokes are still refused with STAGE-ESM-016 for the selected slices. (#905)
STAGE-ESM-017 names the from block, event and mapping it rejects. (#735)
Destination-less produced events report STAGE-ESM-053 rather than STAGE-ESM-006. (#629)
Rendered C# now carries XML documentation and no longer leaves unused usings in rendered specifications. (#497)
Generated specification projects now reference Cratis.Specifications and Cratis.Specifications.XUnit 5.1.0, and Stage's own specifications run on Cratis.Specifications 5.1.0. (#853)
Composite-key lookup refusals now identify the Stage issue and the Chronicle lookup dependency. (part of #839)
Creation actions no longer borrow unrelated selected-row identifiers, while explicitly modeled item bindings remain enforced. (part of #693)
Board toolbar forms use the selected card and wait for required item selection, with screen-local isolation. (#696)
Command dialog date pickers use the non-modal calendar configuration. (part of #717) (part of #718)
Clarified in the reaction rendering reference how redelivery and [OnceOnly] apply to reactions that both produce events and invoke commands. (part of #342)
CI starts the slower verification lanes right after the build instead of after the specs, so pull requests get feedback sooner, and the nightly failure alert now works. (#632)
Changes to files outside known areas now always run the full CI suite. (#632)
Fixed
Rendering no longer throws when a scene object carries a property named kind whose value is an object or a number, such as a command or response member named kind. (#908)
Classic-convention reducer files now import the application's Common namespace when their read model uses concepts or types, so reducer bodies can name those concepts. (#903)
Debug builds of Host no longer republish SpecRunner and BodyWorker when nothing in their sources changed. (#910)
Security
Generated applications with Entra sign-in pin the patched System.Security.Cryptography.Pkcs package. (#937)