What is deployed
Hedera gives every contract two names: a native 0.0.x id and the
0x EVM address the same bytecode answers to. Both point at one contract,
and HashScan accepts either. A mandate is signed against the EVM address,
because that is what the guard reads when it recovers a signature.
| Contract | Hedera id | EVM address |
|---|---|---|
| MandateGuard | 0.0.10324250 | 0x4336d946527e546ef2c38455d3d89d21efbf6098 |
| MandateRegistry | 0.0.10324245 | 0x07a4686ffead5c0a9ca0b0210a61aa1db95cba7f |
| VenueRegistry | 0.0.10324247 | 0xa5268f8513f8a491ed508868a47491bf1806486e |
| Intent commitments | 0.0.10324322 | HCS topic: Hedera-native, no EVM address |
The instruments the demonstration moves are synthetic and deployed alongside the enforcement contracts, so a reader can follow a transaction end to end without holding anything of value. They carry no authority: the guard's bounds apply to them exactly as they would to a token somebody cared about.
| Synthetic instrument | Hedera id | EVM address |
|---|---|---|
| TestUSDC, 6 decimals | 0.0.10324252 | 0x840c830ff97a066df344b2ebc369bf983c1e102a |
| TestEURC, 6 decimals | 0.0.10324253 | 0x388fd08814d42213aece971679f5b2b288a9f37d |
| MockDex, primary venue | 0.0.10324256 | 0xcad167649f055b983756602a6752dbf512a77c94 |
| MockDex, secondary venue | 0.0.10324257 | 0xb3fd3cfe7708ea9e2623a42bd7c35bcb7c01bf0a |
Every contract is source-verified. Addresses are read from
packages/contracts/deployments/296.json and never hardcoded: Hedera testnet
can be reset, and one deploy command restores the whole system.