Documentation · 05 / 11
Fuel & epochs
Fuel is gas, metered twice.
- Per frame. The runtime calls each plugin with
min(fuelCap, epoch fuel left, dispatch budget left, 63/64 of usable gas, frame ceiling). The 63/64 term matters: without it EIP-150 would quietly hand the callee less than its cap and a well-behaved plugin would look broken. - Per epoch.
FuelGaugegives each plugin an allowance per epoch of blocks: a base amount plus fuel per whole EVH bonded behind it, up to a ceiling. Allowances refill lazily on the first run of a new epoch — no keeper.
When the allowance is spent the plugin is bypassed until the epoch rolls. Running out of fuel mid-frame is reported as starved and is not a strike. Declare a cap that covers the cold start: a fresh memory namespace pays cold SSTORE prices on its first write.