How it works
The keeper
What Fuelgauge's keeper does every ten minutes, and what it never does.
The keeper is a small service that runs every ten minutes. It holds one wallet key, which pays network fees and is allowed to use the spending limits written for it. It is never a member of any vault.
#Each cycle, for every listed coin
- Re-check the listing on chain (see Trust model), and flag the coin if a required check fails.
- Push pump.fun's payout of accrued creator fees to the coin's split, once at least 0.05 SOL is waiting.
- Read new receipts from the vault's history. A cursor guarantees every transaction is read, even under spam; until the history is complete, the sunset waits.
- Pay the next automatic line that is due this period. If it has a proof URL, the keeper pays only while the URL answers. It skips lines the vault cannot cover.
- Run the sunset if it is due: move up to the weekly cap to the coin's sunset wallet, buy the coin back, and burn it.
- Publish the coin's gauge, receipts and checks for the website.
Then, once per cycle, it burns $GAUGE: the burn wallet buys $GAUGE with what it holds above a small reserve and burns it.
#How it avoids paying twice
Every transaction the keeper sends is recorded before it is broadcast. While any recorded transaction has no final outcome, nothing new is sent, and the next cycle resolves it first. Only identical signed bytes are ever re-sent.
Every plan also re-reads the chain: a line already paid this period has nothing left to pay.
#What it never does
- Hold or move anything outside the spending limits written for it.
- Change a vault's members, limits or settings.
- Sign for any creator.
- Pay a coin whose checks are failing.
#Its health
/api/health answers 200 while the keeper is reporting, and 503 once it has gone quiet for three cycles. The $GAUGE page shows when it last ran.