Changelog and Migration
Installing a new Underwriter version
From within the Underwriter’s directory:
- Pull down the Underwriter if it is running.
- Get the codebase changes:
- Pull the corresponding docker image:
- Perform any migration steps as described on all relevant changelogs.
- Start the Underwriter.
v0.1.0
Release: GitHub
Changelog
- Complete overhaul of how the Underwriter determines whether to execute underwrites. Any swap that goes to a vault that has been created with an approved vault template, within a whitelisted endpoint is now allowed to be underwritten (allowed vault addresses had to be hardcoded before on the Underwriter’s configuration). This means that the Underwriter now supports newly created vaults on the fly.
- The Underwriter now ‘syncs’ with the Relayer’s
monitor
service.- The
blockDelay
option of the Underwriter now configures an additional block delay to that of the Relayer.
- The
- A new
minMaxGasDelivery
configuration prevents the Underwriter from executing underwrites of cross-chain packets with a too lowmaxGasDelivery
that would cause the packet from never arriving at the destination chain.- This configuration must be defined for ALL chains individually.
- A new
minRelayDeadlineDuration
configuration prevents an Underwriter from underwriting a cross-chain swap with a delivery deadline that is too short. - A new
minUnderwriteDuration
configuration on theexpirer
prevents the Underwriter from auto expiring underwrites as a result of invalid configuration. - Block reorgs are detected using the
blockDelay
configuration. - Improve handling of l1 and l2 block numbers for chains like Arbitrum.
- Full changelog.
Migration steps:
- Update the Underwriter configuration:
- The
pool
configuration has been removed. - New
endpoint
configuration (seeconfig.example.yaml
):- Every endpoint defines a whitelisted Catalyst factory + interface + incentives address combination, together with the approved vault template addresses and cross-chain channels configuration.
blockDelay
has been moved to themonitor
configuration.underwriteBlocksMargin
has been renamed renamed tomaxUnderwriteDelay
and is now time-based.- Optional
resolver
configuration for each chainresolver: 'arbitrum'
is now required for Arbitrum.
- See
config.types.ts
for further advanced configuration options added that are not present onconfig.example.yaml
.
- The