Replay: one closure, start to finish
A loan is opened, shielded before Friday's close, refused a restore over the weekend, restored on Monday, and its guardian is paid. Recorded on a fork of BSC mainnet at block 126,572,111, against the contracts deployed there.
Demo recordingRecorded on a fork of BSC mainnet at block 126,572,111 (Fri Oct 9). 18 real fork transactions; 7 of 9 steps also have a transaction on BNB Chain itself.
The wheel
The meridian at the top is the moment of the step. The arc marks the weekend closure the loan crosses.
The steps
Lista NVDAB / USD1, borrower 0x180E1E...8387, desk agent 368122. Times are New York time on the fork's clock.
The fork carries Ballast as deployed: the Session Oracle names 0xccD7f069275549793b2A8804A5691fCa6665D152 as publisher, registered as ERC-8004 agent 368122. This replay runs against those contracts, not a copy.
Transactions on the fork
None: the fork already carries these contracts.
Decoded result
- Session Oracle
- 0x8Fc983...5388
- Session-aware feed
- 0xC54423...aE20
- Account factory
- 0xE12f14...0a72
- Cushion vault
- 0xf0089b...E334
- Guardian
- 0x1049E9...BcD8
- Publisher
- 0xccD7f0...D152
- Publisher's ERC-8004 id
- 368122
- Restore delay
- 90 min
- Longest overlay life
- 360 min
State after this step
- New York
- overnight, closed
- Oracle: may risk be added
- No: not regular
- Feed band
- plus or minus 5.6%
Reproduce it
pnpm verify:onchainOn BNB Chain- 0x751156e3...c37d47 Desk agent registered in the ERC-8004 identity registry (agentId 368122)
- 0x7384932d...0a582d Desk agent registration file written (setAgentURI)
- 0x46fbea5b...5a949f First deployment transaction: SessionCalendar
What a fork changes, and what it does not
The contracts, the calendar and every rule are the ones on BNB Chain. A fork lets the clock move and stands in for the parties that cannot be present.
- The fork's clock is moved forward: a close, a weekend and an open pass in seconds.
- Lista's price sources are frozen behind a fixed-price mock (32 prices kept as read), because they go stale when the clock moves.
- The NVDA Chainlink feed is replaced by a mock that reprints the frozen per-share price after each move, because a fork receives no new rounds.
- The desk's address 0xccD7f069275549793b2A8804A5691fCa6665D152 is impersonated by the local node. No key of the desk is used.
- The borrower 0x180E1EeF864aA14c501921C4802A42fAa8D88387 is a throwaway address, funded with 20 NVDAB and 1,000 USD1 from an exchange wallet on the fork.
Record it again yourself: start anvil --fork-url <BNB Chain archive RPC> --chain-id 31337 --port 8571 --auto-impersonate, run forge build in contracts, then FORK_RPC=http://127.0.0.1:8571 pnpm tsx scripts/demo/record-replay.ts. The recording this page plays is at /replay/cycle.json.