reject
Refuses the command being decided with the rejection code, message and structured extensions: it throws a RejectedException, which the kernel answers as that rejection. message is shown to the caller. Nothing is appended unless the rejection carries events: ordinary events of the aggregate, each sourced by it, appended with the rejection in one stream, and the answer then names the version they reached (an audit of the attempt, a counter of refusals). A rejection of a creation, whose aggregate does not exist, appends nothing. The way a decide function that returns its event type rejects, with or without a DecideScope; require (wow.command.invalid) and check (wow.command.refused) reject a broken precondition alike. It is inline like error(), so the rejecting line is the caller's.