AgentManager

Overview

The AgentManager is deployed on all chains and is used to keep track of the status of all Off Chain Agents and resolve disputes. This contract is also used by the Origin, Destination, and the Summit to determine whether or not an off-chain actor has permissions to perform different actions on the contracts.

The agent manager also has a mechanism for permissionlessly updating its own record of the agents involved in the system using snapshots.

Responsibilities

  • Keeping track of all the bonded agents and their statuses.

  • Keeping track of all the disputes between agents.

  • Notifying relevant contracts about changes to the agent set.

Propagating Agent Updates

Agent updates are propagated via the agent root which represents the current off-chain agents that have posted a bond on Synapse Chain at any given time.

This root is contained in the Attestations posted by Notaries to summit so the agent set can be updated on every chain as soon as a message is sent on any chain.

Much like messages passed by developers building on top of the protocol. the agent root itself has an optimistic period before it can be considered valid, and as such, represents a critical part of the protocol security.

The propagation of this root at SynChain is necessary since only SynChain knows the state of the agent set at any given time.

Last updated