Skip to content

chore(bridge): hardening + mainnet enablement #360

Description

@sadiq1971

Goal

Production-harden multi-token bridging and wire mainnet configuration. Final phase of the multi-token bridging epic.

Work items

Hardening

  • Per-token limits enforcement (min/max transfer, rate limit) moved from global relayer.Config to TokenConfig
  • Stuck-transfer alerting keyed by mechanism + stage: an xreserve transfer parked in awaiting_attestation beyond SLO usually means a Circle outage, not our bug — alert copy should say so
  • Metrics: per-token + per-stage counters/durations in the driver loop
  • Driver-loop load: index on (status, next_step_at), cap batch size
  • Finality UX audit: dapp presents stage honestly (xreserve inbound ~15 min; outbound timing Circle-controlled) — do not imply tx-inclusion = settled (known MetaMask-semantics gap, see usdcx.md)

Mainnet enablement (external dependencies — start early)

  • Pin the Ethereum mainnet xReserve contract address (Circle docs / circlefin/evm-xreserve-contracts deploy artifacts; Sepolia is 0x008888878f94C0d87defdf0B07f46B93C1934442)
  • Pin Circle attestation API auth requirements + schema + fee schedule
  • DA Utilities onboarding for MainNet bridge ops (api.utilities.digitalasset.com); note devnet-documented Daml choice names (BridgeUserAgreement_Mint/_Burn) may drift
  • config.api-server.mainnet.yaml: add the missing external_tokens registry entry for USDCx (today mainnet has EVM metadata but no registry URL — factory resolution fails) + relayer mainnet token map
  • MainNet USDCx admin party: decentralized-usdc-interchain-rep::12208115f1e168dd7e792320be9c4ca720c751a02a3053c7606e1c1cd3dad9bf60ef

Depends on

  • All other issues in the epic

Metadata

Metadata

Assignees

No one assigned

    Labels

    CIP-0086: Phase 2Phase 2 multi-token generalizationDeliverable: D3D3: Middleware ServiceType: MaintenanceAdded to issues and PRs when a change is for repository maintenance , such as CI or linter changes.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions