We build the challenge. We sign it. We are not allowed to send it.
Every other page here reports something the network can do. This one reports what it cannot, the same way: by building the real transaction, putting it to the real contract on Ethereum, and printing what came back.
Deposit the stake that backs a rival claim. Losing a challenge forfeits it, which is what makes a challenge cost something to bring.
| asked as | what the rollup said |
|---|---|
0xb452c8cF5d36F5C7c5E5d58C72BaEB21830659db the key that signed the transaction below | NOT_VALIDATOR |
0xa0A1D8cd6f867a583a39232a477ff231aFD8eC4C the control — an address that is on the validator list | ALREADY_STAKED |
State a different end-state for the same range of blocks. This is the actual disagreement: same parent, same starting state, different claim about where the chain ended up.
| asked as | what the rollup said |
|---|---|
0xb452c8cF5d36F5C7c5E5d58C72BaEB21830659db the key that signed the transaction below | NOT_VALIDATOR |
0xa0A1D8cd6f867a583a39232a477ff231aFD8eC4C the control — an address that is on the validator list | EXPECTED_ASSERTION_SEEN |
Open the top-level edge of the bisection game between the two rival assertions. Everything after this is the two sides narrowing the disagreement.
| asked as | what the rollup said |
|---|---|
0xb452c8cF5d36F5C7c5E5d58C72BaEB21830659db the key that signed the transaction below | NotValidator(address) |
0xa0A1D8cd6f867a583a39232a477ff231aFD8eC4C the control — an address that is on the validator list | EmptyEdgeSpecificProof() |
Halve the disputed range repeatedly until one machine instruction is in dispute, then execute that instruction on chain. Whoever is right wins; whoever is wrong loses the bond.
We do not build this. It needs the Arbitrum prover over the disputed range, which is a substantial piece of machinery we have not stood up. It is also unreachable: there is no challenge to bisect.
- disputes assertion
- 0x79af27a06f6419b9607c16038a836c51fc3c810bc2dd3b6b786849e516f3f3eb
- signed by
- 0xb452c8cF5d36F5C7c5E5d58C72BaEB21830659db
- transaction hash
- 0x078c9c77ebf9c03c38a68b94319879e7f84cd24bb47dded9d080fbab0437dc70
- rehearsed
- 2026-08-06 20:50 UTC
0x02f9032d018080840696b824831e84809423a19d23e89166adedbdcb432518ab01e4272d9480b902c450f32f680000000000000000000000000000000000000000000000000de0b6b3a7640000f9828b7c1846e6808790831d0e268eb85ab56fa6d145a9f627e8141faea55a5aa6cd11f8a436aab50ee381ab04d4e8cfbfcbe2dd3e5ab02841e3edffaaeb5eb9c10cd7ec6acaf1c441a3f6bd0900ad20f15855ba775a96f1939118cbc629dc970000000000000000000000000000000000000000000000000de0b6b3a76400000000000000000000000000006f38fc91105fc9a43931dca33450ab3315e3d4fa000000000000000000000000000000000000000000000000000000000000b2fa000000000000000000000000000000000000000000000000000000000001461eaae7e72eb20a5a6408b20bec2cfd860e6526cbb22322583987b6b800585a888d8fea2cff296069978e19b7945b6f779e53999bda623da525d360846137b78c6d00000000000000000000000000000000000000000000000000000000000145b8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011a7be6017c8f37402236a93c0576fcbccccd0637c56056f4ee832364c580fa5999ba9486a1a7a6777ef99a9b73789cca2479a98032876226cd226edb6baa96815b5f7d38ba3aeaef16dece7537f3f407aed0f131bd5bf9077994c2dc3f2a6b80000000000000000000000000000000000000000000000000000000000001461e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c940e1b1c30b05543240d7fb9b65ae3ac2a66fa09f965e0f4ee2dec97139263179af27a06f6419b9607c16038a836c51fc3c810bc2dd3b6b786849e516f3f3eb000000000000000000000000b452c8cf5d36f5c7c5e5d58c72baeb21830659dbc080a0f6ad5b6a6a7c21669e5426562a3a2d6978fc8edba5826b64fe20d39272ef36e2a053101a02d1dce811b7233ed883fb7c95c414104fee683db0e3dbebff7ec16931
Recover the signer from those bytes and decode the calldata yourself. Nothing here has to be taken on our word.
There is no discrepancy. The rival claim states exactly what the operator stated, because the network checked and they were right.
It was not broadcast. Sending it would spend real ether to buy a revert reason eth_call returns free. The service has no code path that can send, and a test fails if one appears.
The proving step is not built. Bisecting to a single instruction needs the Arbitrum prover, which we have not stood up. It is also moot — a road refused at the first gate never reaches the fourth.
This is not an accusation. A permissioned validator set is a normal stage for a young rollup. What is not normal is that nobody outside can check the claim — that is the only thing this page changes. See the fund for what the network does about it.