FlowDrop Workflow Specification 1.0-draft

A terminal outcome reaps the signals it never observed

A signal is accepted whenever the run is still alive, but the run only looks at it between iterations. A run that finishes first leaves the request pending against a corpse.

The rule

Normative: this is the rule
  1. When a run reaches a terminal outcome, inward signals still pending against it are cancelled, after the outcome's own handling has completed.
  2. A paused run must not be reaped: a pending inward pause signal is that run's resume key (INT-5), and cancelling it would strand the run with no way back.
  3. A stateless run has nothing targeting it and is skipped.
  4. A failure while reaping is recorded and never raised; the outcome is already recorded and hygiene must not corrupt it.
Rule identifiers are permanent and are never renumbered. Each implementation publishes its own standing against these rules; this specification does not.spec 1.0-draft · INT-17 · changed in spec 1.0