Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
- ADD_CHAIN138_TO_LEDGER_LIVE: Ledger form done; public code review repo bis-innovations/LedgerLive; init/push commands - CONTRACT_DEPLOYMENT_RUNBOOK: Chain 138 gas price 1 gwei, 36-addr check, TransactionMirror workaround - CONTRACT_*: AddressMapper, MirrorManager deployed 2026-02-12; 36-address on-chain check - NEXT_STEPS_FOR_YOU: Ledger done; steps completable now (no LAN); run-completable-tasks-from-anywhere - MASTER_INDEX, OPERATOR_OPTIONAL, SMART_CONTRACTS_INVENTORY_SIMPLE: updates - LEDGER_BLOCKCHAIN_INTEGRATION_COMPLETE: bis-innovations/LedgerLive reference Co-authored-by: Cursor <cursoragent@cursor.com>
3.9 KiB
3.9 KiB
Tezos and Etherlink Production Configuration
Purpose: Feature flags, rate limits, and caps for enabling Tezos and Etherlink in production routing. Use this as the template for go-live.
Related: TEZOS_NETWORK_CONFIG_ENV_MATRIX.md, TEZOS_ETHERLINK_DON_CONFIG.md
1. Feature flags and routing enablement
1.1 Chain enablement
| Chain / destination | Config key / env | Default (pre go-live) | Production |
|---|---|---|---|
| Tezos L1 (chainId 1) | TEZOS_BRIDGE_ENABLED |
false |
true after ops sign-off |
| Etherlink (42793) | ETHERLINK_BRIDGE_ENABLED |
false |
true after ops sign-off |
- Settlement / routing layer: Before returning routes that use Tezos or Etherlink, check the corresponding flag. If disabled, exclude those destinations from route options.
- BridgeRegistry / integrations: Destinations 1 and 42793 are already registered; feature flags control whether the app exposes them to users.
1.2 Routing provider priority
- Jumper: Enable only when
JUMPER_API_KEYis set and TEZOS_JUMPER_SUPPORT_MATRIX confirms support for the chain pair. Until then, Jumper is off for Tezos/Etherlink. - LiFi: Use for EVM to EVM (e.g. 138 to 42793) when LiFi supports the pair; Tezos L1 is non-EVM, use TezosAdapter only.
- Direct: Tezos L1 uses TezosAdapter; Etherlink uses EVMAdapter(42793) or CCIP (if Etherlink is on CCIP).
1.3 Example config (application / env)
# Feature flags – set to true only after Phase 6 approval
TEZOS_BRIDGE_ENABLED=false
ETHERLINK_BRIDGE_ENABLED=false
# Optional: Jumper (set when supported and desired)
JUMPER_API_KEY=
2. Rate limits and caps
2.1 Per-destination limits (recommended)
| Destination | Rate limit (per hour) | Per-tx cap (USD equiv) | Daily cap (USD equiv) |
|---|---|---|---|
| Tezos L1 (1) | 50 requests | 10,000 | 100,000 |
| Etherlink (42793) | 100 requests | 10,000 | 200,000 |
- Rate limit: Max number of bridge initiations (e.g. TezosAdapter.bridge or bridge to 42793) per hour per source chain. Enforce in app or relay to avoid overload and abuse.
- Per-tx cap: Reject or flag transfers above this amount; can be enforced in UI and/or relay (with RMN for CCIP).
- Daily cap: Optional circuit breaker per destination; alert when approached.
2.2 Tezos relay
- confirmTransaction: Relay should process events in order; limit concurrent Tezos submissions (e.g. max 5 in flight) to avoid nonce/load issues.
- Retries: Max 3 retries per requestId with backoff; then dead-letter and alert.
2.3 Etherlink (custom relay)
- Same pattern as 138 to Mainnet: queue depth limit (e.g. 100), max concurrent submissions (e.g. 5), retry with idempotency (messageId).
2.4 CCIP (when Etherlink is on CCIP)
- Fee budget and RMN policy per TEZOS_ETHERLINK_RMN_POLICY. High-value executions may require RMN blessing.
3. Production checklist before enabling
- Tezos L1 relay running and monitored; oracle key secure (see TEZOS_L1_RELAY_RUNBOOK in smom-dbis-138/docs/bridge).
- Etherlink path live: either CCIP configured and funded, or custom relay running (see ETHERLINK_RELAY_RUNBOOK in smom-dbis-138/docs/bridge).
- Rate limits and caps configured in app and/or relay.
- Monitoring and alerts in place (see TEZOS_ETHERLINK_BRIDGE_MONITORING in docs/08-monitoring).
- Runbooks indexed and known to ops: TEZOS_CCIP_RUNBOOKS_INDEX.
- Security sign-off (Phase 5) and ops/product approval for go-live.
4. Approval
Phase 6 go-live: Ops and Product sign-off required before setting TEZOS_BRIDGE_ENABLED=true and ETHERLINK_BRIDGE_ENABLED=true.