Module panic_strategy

Module panic_strategy 

Source
Expand description

Self-check for the panic strategy this binary was actually built with.

CatchPanicLayer (see build_router) only contains a malformed-IFC panic to the offending request if the build unwinds. Under [profile.release] panic = 'abort' the panic is a process abort: the layer never runs, spawn_blocking never turns it into a JoinError, and every other tenant’s in-flight request dies with the process. That precondition is a property of the ARTEFACT, so the release pipeline asserts it against the artefact (--panic-strategy-selftest, wired in .github/workflows/server-binaries.yml) rather than against the flags that were meant to produce it.

Constants§

SELFTEST_FLAG
Argument that runs the self-check instead of starting the server.
UNWIND_VERDICT
Line printed by the self-check when the binary unwinds.

Functions§

panic_unwinds
Whether a panic in this binary unwinds (true) rather than aborting.