Repository navigation
Release v4.21.0
Added
- Render Screenplay ESM v3 reducers with verified portable C# bodies as Chronicle reducers and typed context adapters. Supported deterministic, finite operations are admitted explicitly; unsupported or mismatched bodies fail with actionable diagnostics.
- Generate read-model and command specifications for reducer-backed models, including collection event expectations and deletion. The Billing payment reducer is an executable example.
- Guard every non-null reducer output so its identifier matches the event-source key; mismatches fail rather than silently routing a keyed query to unrelated state.
Changed
- Bundle the pinned .NET reference assemblies used for audited body binding, expose the Roslyn runtime dependency, and verify a standalone packed consumer in CI. Existing projection and body-less reducer refusal remains unchanged.
Verification
- Whole-solution Debug specs pass in serial execution (
dotnet test --configuration Debug -m:1); one optional Mongo-backed test is skipped without a configured connection. Parallel local runs suffered external SIGTERM of testhost from another worktree command; isolated Rendering.Cratis 1,751 pass + 1 skip. - Release build zero warnings, NuGet pack and standalone consumer, frontend test/build and Python compatibility/entrypoint checks pass. Full cross-provider review on the exact committed diff passed with no findings.
Closes #119