Scan
Read a contract's entries through Soroban RPC: what remains, what expires first, what it costs to keep alive, and whether the code entry is shared — or whether that cannot be determined.
Stellar testnet · built by Apex
Soroban state has a time to live measured in ledgers, about five seconds each. Every closed ledger takes one off. When it reaches zero, most entries are archived and temporary ones are deleted — and nothing tells you it is coming.
The four kinds of entry
instance
The contract's own state pointer.
archived
code
The compiled Wasm. Every contract built from it shares this one entry.
archived
persistent
Durable stored values.
archived
temporary
Disposable stored values. Gone permanently, with no restore.
deleted
Read from the network's own configuration: a temporary entry's minimum is 720 ledgers, about an hour. Our own temporary entry had 688 left when it was first sampled.
The thesis
A contract's instance can be healthy until December while the code it runs expires in October. Without the code it cannot execute, so the real expiry is the earliest entry — and that entry is shared by every contract deployed from the same Wasm.
of the rent
98%
is that one shared code entry — 8,116,648 of 8,264,289 stroops, across all four of guinea-pig A's entries. Scanning only its instance and code, the same entry is 99%: identical rent, different denominator. The scope travels with the number.
What the tool actually prints
A real scan of guinea-pig A. It reports what it read, says that a single-contract scan cannot settle whether the code entry is shared, and says that storage it was not given keys for is unread.
Captured on 2026-09-12 and committed at docs/evidence/2026-09-12-w2-review/scan-a-human.txt. Its ledger numbers are from that day; the dashboard reads the chain now.
How it works
Read a contract's entries through Soroban RPC: what remains, what expires first, what it costs to keep alive, and whether the code entry is shared — or whether that cannot be determined.
A scheduled job re-reads the entries you configure and alerts before they cross the thresholds: seven days for a warning, one day to act.
Evergreen has no authority over your contract. Extending a TTL needs no permission from anyone — it is a property of the chain, not a promise from us. It can pay rent, and nothing else.