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.
Changed
The specification executor and the semantic Host now run ESM v22 models that declare reaction batches atomic. Each trigger occurrence's direct productions, and each selected refusal branch, are validated as one unit before anything is appended: a mapping failure, constraint violation, projection refusal or exhausted fact budget appends none of that unit, while earlier successful units remain in the executor. Invoked commands stay separate units, constraint refusals keep their authored message and constraint name, and property-value claims reserved within a batch stay reserved until the batch ends. The live Host keeps its stricter boundary and rolls back the whole initiating command if any unit fails. Models without the declaration keep per-fact reaction execution. The Cratis renderer still refuses atomic batches with STAGE-ESM-043. (part of #422)