Skip to main content

Module faults

Module faults 

Source
Expand description

The fault surface: every measured lie, armable on its own.

Two ways to arm. By NAME, in which case the fault fires every time it can — that is the mode a regression test uses, because a test that only sometimes provokes the defect is a test that only sometimes passes. Or from a SEED, in which case the whole run’s weather is derived from that one number: which faults are armed, at what rate, and for how long. A storm prints the seed of every distinct failure, and the seed alone replays it.

§Sticky faults

Fault::OutOfStock and Fault::RevokedCredential are STICKY: once they fire they keep firing until disarmed. That is what was measured — on SCALEWAY, not UpCloud (both are kept as generic cloud-provider faults): Scaleway’s fr-par-1 refused poweron with 412 out_of_stock for days, and a revoked Scaleway key answered 0 servers from the moment it was revoked. A fault that fires once and clears would let a retry loop paper over both, which is precisely the bug that shipped.

Structs§

Faults
The armed set plus the run’s generator.

Enums§

Fault
One measured behaviour, armable.