Module language::supervision

Supervision

A supervisor owns named child roles and fungible pools. It restarts failed children under its strategy and restart budget.

A child role resolves the current incarnation on a call. A direct incarnation handle remains tied to that actor; restarting a role does not revive a stale incarnation. Restart reconstructs declared state, so persist application data elsewhere when it must survive a child fault.

Calls on children wait for completion, including void handlers, and return actor outcomes. A missing child or exhausted restart budget must be handled as failure. Do not use a sleep as proof that a replacement is ready.

stop(supervisor) requests graceful shutdown of children in reverse declaration order; terminate(supervisor) requests cancellation. stopped(supervisor) waits for the whole tree's terminal cleanup.

See the language guide's actor and lifecycle sections and the supervision contract in HEW-SPEC-2026. Source declarations alone do not establish support for every supervisor strategy or target.