Framework internal-fault model¶
Gap capability: the runtime distinguishes two classes of in-cycle fault — a recoverable fault contained at the task boundary, and a non-recoverable violation of an internal dispatch invariant that fails fast.
The runtime distinguishes two classes of in-cycle fault and handles them oppositely. A recoverable fault — a user item returning an error, panicking, or overrunning its deadline — is contained at the task boundary and surfaced as a Cycle-overrun fault primitive (FEAT_0018) fault transition, leaving sibling tasks and the process running. A non-recoverable fault — a violation of an internal dispatch invariant (lock poisoning, ready-ring overflow, broken in-degree accounting) — means the executor’s own state is unsound; the runtime fails fast rather than execute further logic over corrupt state. This feature is the runtime realisation of Internal fault detection an... (AFSR_0004) for the panic case. |
Any panic that escapes the per-item On such a violation the runtime shall, in order: (1) invoke a
user-registered fatal handler (see User-registered fatal handler (REQ_0125)) on a best-effort,
time-bounded basis; then (2) call The containment carve-out of User-item panic is containe... (REQ_0124) covers only a user
item’s |
A panic originating in a user item’s A panicking item does not transition the task to the
|
The runtime shall accept an optional fatal handler, registered at
|