TokenBridge Contracts 4.0.3 Release


This version of TokenBridge supports operations in four modes:

  • native coin to an bridgeable ERC20 token;
  • an ERC20 token to a bridgeable ERC20 token;
  • an ERC20 token to a native coin;
  • relaying arbitrary messages (Arbitrary Message Bridging, AMB).

The intent of this release is to be used on the xDai bridge to allow earn interest with the Chai token (

Increase of the major version caused by the changes made under #357 – the new functionality is not backward compatible with the previous one. The new version of oracle not less than 2.0.0-rc0 must be used toghether with this release of contracts.

Together with the pre-releases 4.0.0-rc0, 4.0.0-rc1 and the releases 4.0.0, 4.0.1 and 4.0.2, the following changes were introduced:


  • Simplified some conditions in require() clauses 353
  • Updated minimum gas usage estimation #355
  • Single execute signatures #357
  • Earning interest with Chai for erc-to-native mode #356


  • Fixes in AMB deployment related documentation and script #358
  • Add restriction on claiming Chai token #368
  • Added Bridge Validators deterministic mock for e2e tests #366
  • Rename reward functions #370
  • Chai integration internal audit fixes #372
  • Paying interest in chai to avoid the oracle misbehavior #380


  • Add upgrade scripts for chai support on xdai bridge contracts #379
  • Add home implementation upgrade script #386
  • сall prepareToPOSDAO as part of upgrade home bridge implementation #392