Skip to content

Release v4.160.0

Choose a tag to compare

@github-actions github-actions released this 14 Oct 03:21
d0f3f5a

Added

  • Reaction refusal branches are executable: invokes <Command> can carry ordered on refused [by validation | by constraint [Name] | by authorization] branches that produces events or acknowledge; the first matching branch wins, a bare on refused covers validation and constraint refusals but never authorization, and a handled refusal stops the trigger's remaining invocations while other reactions continue (#433)
  • $refusal.reason, $refusal.constraint and $refusal.message can be mapped in branch productions: the refusal kind, the first violated constraint's name, and the error messages joined with a newline exactly as authored (#433)
  • Executable model version 19 carries refusal branches as onRefused on invocations and refusal values as refusal expressions, written only when used; models without them keep their version, bytes and outcomes (#433)
  • The Invoicing sample records a refused payment reconciliation as PaymentReconciliationRefused (#433)

Changed

  • A mixed refusal is classified as authorization first, then constraint, then validation; concurrency conflicts, exceptions and unsupported outcomes are never refusals and keep failing the reaction, matching Arc reactors (#433)
  • PLAY0268 no longer reports reaction refusal handling, and the editor no longer describes refusal branches as syntax-only (#433)