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
The Stage sandbox can run a model on the Screenplay executable semantic model with the opt-in Stage__Runtime__Engine=semantic. The default engine is unchanged. (part of #23)
Commands run through Screenplay's reference evaluator. That covers authorization, validation rules and requirements, produces when, destinations, $context values and constraints, so the sandbox behaves as the model specifies.
Accepted events are appended to Chronicle in one atomic call.
Unauthorized commands return 403. Validation and constraint rejections return 400 with the modeled messages and constraint name. Anything the engine cannot realize exactly returns a typed 501.
/stage/semantic/admission reports which commands, queries, events and projections the semantic engine supports, and why the others are not supported. (part of #23)
Changed
In the semantic engine, keyed queries are served with their modeled authorization. The compatibility Get…ById/All… queries are served only for read models whose keyed queries are unprotected. (part of #23)
The semantic engine refuses a model it cannot compile, or a Chronicle log that is not empty, with a typed status instead of starting partially. If an append's outcome is unknown, it stops serving requests rather than drift from the event log. (part of #23)