🟦Symbiosis Relayers Network: Emergencies

Symbiosis Relayers Network: Detection and resolution of operational failures.

MPC Group Inefficiency

QA

What does it look like?

The relayers network stops to proceed oracle requests for all blockchains.

How do we notice it?

Alerts

What may be a cause?

  • There are not enough relayers to compose TSS signatures.

  • The leader of the MPC group is offline.

How do we solve this?

  1. Ban offline relayers in the Staking contract,

  2. Initiate epoch change.

Epoch Change Failure

Once epoch change is triggered, the following stages should be completed:

  1. Epoch change preparation. This stage includes:

    1. Formation of a new MPC group,

    2. Generation of a new MPC key,

    3. Approval of the epoch change by holders of 2/3 of the total stake.

  2. Epoch change in the Staking contract.

  3. Epoch change in BridgeV2 contracts.

On each stage an emergency can happen.

New MPC group formation failure

QA

What does it look like?

Relayers cannot generate a new MPC key.

What may be a cause?

  • Many relayers are offline, and the rest are not enough to form a new MPC group.

  • The leader of the MPC group is offline.

How do we solve this?

  1. Ban offline relayers in the Staking contract,

  2. Set the MPC group size to a smaller value,

  3. Initiate epoch change one more time.

Epoch change failure in the Staking contract

QA

What does it look like?

Relayers cannot save a new MPC address in the Staking contract.

What may be a cause?

Many relayers are offline, and the rest cannot provide enough signatures for epoch change.

How do we solve this?

Save the new MPC address manually.

MPC address change failure in the BridgeV2 contract(s)

QA

What does it look like?

The relayers network does not proceed oracle requests for a particular blockchain.

How do we notice it?

Alerts

What may be a cause?

There are not enough relayers to compose a proper TSS signature to change the MPC address.

How do we solve this?

Replace the MPC address with a new one manually.

Last updated