# Tezos Bridge E2E Runbook End-to-end flow for Tezos L1 bridging: deploy TezosAdapter and relay, run E2E on testnet (Ghostnet), then mainnet with rate limits. ## Prerequisites - TezosAdapter deployed via [DeployAllAdapters.s.sol](script/deploy/chains/DeployAllAdapters.s.sol). - BridgeRegistry destination chainId 1 (Tezos-Mainnet) registered via [InitializeRegistry.s.sol](scripts/bridge/interop/InitializeRegistry.s.sol). - ChainRegistry: Tezos-Mainnet registered (ChainType.Other). - Relay service: event monitor + Tezos-side mint/transfer + confirmTransaction (see [TEZOS_L1_RELAY_RUNBOOK](TEZOS_L1_RELAY_RUNBOOK.md)). ## E2E on Ghostnet (Tezos testnet) 1. Deploy a test TezosAdapter on an EVM testnet (e.g. ChainID 138 testnet or local anvil). 2. Run relay against Ghostnet: configure Tezos RPC for Ghostnet; map test token to a Ghostnet FA1.2/FA2 or custody account. 3. User flow: call TezosAdapter.bridge(token, amount, destination, recipient) with a Ghostnet Tezos address (tz1/...). 4. Relay: watch TezosBridgeInitiated, mint/transfer on Ghostnet, call confirmTransaction(requestId, tezosOpHash). 5. Verify: getBridgeStatus(requestId) shows Confirmed; Tezos balance updated. ## Mainnet with rate limits 1. Deploy TezosAdapter and register on production (138 or target chain). 2. Run relay with mainnet Tezos RPC; use production token mapping and custody/mint contracts. 3. Apply rate limits and caps per token/chain (BridgeRegistry token config: minAmount, maxAmount, bridgeFeeBps). 4. Monitor: log all TezosBridgeInitiated and confirmTransaction calls; alert on failures and duplicates. ## Checklist - [ ] TezosAdapter deployed and registered in ChainRegistry and BridgeRegistry. - [ ] Relay running with ORACLE_ROLE; key secured. - [ ] E2E passed on Ghostnet (or equivalent testnet). - [ ] Rate limits and caps configured; monitoring in place.