Transparency
Contracts
ObseroWatchBoard Obsero
Deployed0x9e193c0170f317885c1b6f06144ff9963b30122b
Public board of watch presets. publish(target, label, rules) stores the preset with the keccak-256 of its rule bytes and emits the bytes in PresetPublished, so anyone can import the rules and check them against the hash. retire(id) flags your own preset. Paged reads by target and by publisher. Gas: about 919k to deploy, 240k to publish, 36k to retire.
Permissions: Nobody holds special rights: there is no owner, admin role, fee, pause, upgrade path or constructor argument. Holds no funds: nothing is payable. Only a preset's publisher can retire it, and a retired preset stays readable. Publishing gives nobody any permission over the target address.
Chainlink ETH / USD External
Read only0x78F3556b67E17Df817D51Ef5a990cDaF09E8d3A9
Price feed the site reads for the ETH / USD figure on the dashboard and the status page (latestRoundData).
Permissions: Operated by Chainlink, not by Obsero. Obsero only reads it.
USDG External
Read only0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168
The Global Dollar stablecoin (6 decimals). The watchlist reads wallet balances from it and a starter preset watches its large transfers.
Permissions: Issued and controlled by its issuer, not by Obsero.
WETH External
Read only0x0Bd7D308f8E1639FAb988df18A8011f41EAcAD73
Wrapped ETH. The watchlist reads balances from it and a starter preset follows wraps and unwraps.
Permissions: Not operated by Obsero. Obsero only reads it.
ArbSys Precompile
Chain built-in0x0000000000000000000000000000000000000064
Robinhood Chain is Arbitrum-based, so block.number inside a contract reports the parent chain's block. ObseroWatchBoard asks the ArbSys precompile for the chain's own block number (with a gas cap and a fallback) and stores that on each preset.
Permissions: Part of the chain itself.
Source · MIT
Source and tests
Every line of the Obsero contract and its tests, as they are compiled. The public repository with the rest of the site is coming. Once deployed, a script in the repository checks that the address runs exactly this build.
Contracts
Tests
- ObseroWatchBoard.t.solUnit and fuzz tests: limits, repeats, retiring, paging, ETH refusal, ArbSys paths.ViewDownload
- ObseroWatchBoard.invariant.t.solInvariants: counts match a ghost model, every preset is consistent, the board never holds ETH.ViewDownload
- ObseroFork.t.solFork test on Robinhood Chain mainnet against the real USDG contract.ViewDownload
Read path and contract health is tracked on the status page.