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
Render portable Screenplay policies for commands and queries as registered Arc authorization policies, including module- and feature-level authorize. A command or query is [AllowAnonymous] only when no authorization applies. Expressions Arc would enforce differently fail with STAGE-ESM-015: role-only or claim-only policies that do not require authentication, ambiguous command subjects, and non-text claim targets. (part of #57)
Render all thirteen ESM validation rule kinds, concept validation rules and command requirements as generated validators, with the reference default messages. Warning and information severities, $strings. messages, and combinations whose failure order Arc cannot preserve are still rejected. (part of #116)
Render ESM projection scopes: several from events, root joins, children identified by a property, and property and arithmetic mappings. Several read models and keyed queries in one state-view slice are now admitted. Nested blocks, every/all, removals, composite keys, event-context mappings, whole-number arithmetic, and scopes that leave a required property unset fail with STAGE-ESM-017. (part of #117)
Render given events that state their event source in generated command, read-model and query specifications. Read-model and query assertions without exactly now check only the stated properties, as the reference does, and query specifications check projected state. (part of #14)
Generated rejection specifications now check the first validation message against the modeled then error.
Changed
Query arguments typed as a validated concept are rejected with STAGE-ESM-010, because Arc validates them and the reference does not.
Fixed
The legacy syntax renderer no longer renders [AllowAnonymous] for a command or query that inherits authorize from its module or feature. It now fails with AuthorizationCannotBeRendered.