When to Use This Pattern
Monitors and limits cumulative token outflows to prevent catastrophic asset loss during exploits, creating a response window for protocol operators. Use it for lending reserves, vault custody, bridge escrows, treasuries, liquidity pools, and other contracts where rapid ERC20 withdrawals are a critical risk. This is a V2 Reshiram circuit-breaker pattern. The rolling-window accounting is handled by the trigger/precompile machinery, not by assertion-authored storage.What This Pattern Checks
Registers a percentage-based cumulative outflow limit:registerAssertionSpec(AssertionSpec.Reshiram): Registers the assertion as a Reshiram assertion.watchCumulativeOutflow(token, thresholdBps, windowDuration, assertFn): Watches ERC20 outflow over a rolling window.ph.outflowContext(): Reads the token context inside the triggered assertion.- Reverts when cumulative outflow breaches the configured threshold.
Assertion Pattern
Full examples and mock protocol code are available in credible-std.

