AgentManagerEvents

Git Source

Events

DisputeOpened

Emitted whenever a Dispute is opened between two agents. This happens when a Guard submits their report for the Notary-signed statement to StatementInbox.

event DisputeOpened(uint256 disputeIndex, uint32 guardIndex, uint32 notaryIndex);

DisputeResolved

Emitted whenever a Dispute is resolved. This happens when an Agent who was in Dispute is slashed. Note: this won't be emitted, if an Agent was slashed without being in Dispute.

event DisputeResolved(uint256 disputeIndex, uint32 slashedIndex, uint32 rivalIndex, address fraudProver);

RootUpdated

Emitted whenever the root of the Agent Merkle Tree is updated.

event RootUpdated(bytes32 newRoot);

AgentRootProposed

Emitted after the contract owner proposes a new agent root to resolve the stuck chain.

event AgentRootProposed(bytes32 newRoot);

ProposedAgentRootCancelled

Emitted after the contract owner cancels the previously proposed agent root.

event ProposedAgentRootCancelled(bytes32 proposedRoot);

ProposedAgentRootResolved

Emitted after the contract owner resolves the previously proposed agent root.

event ProposedAgentRootResolved(bytes32 proposedRoot);

StatusUpdated

Emitted whenever a status of the agent is updated.

Only Active/Unstaking/Resting/Slashed flags could be stored in the Agent Merkle Tree. Unknown flag is the default (zero) value and is used to represent agents that never interacted with the BondingManager contract. Fraudulent flag is the value for the agent who has been proven to commit fraud, but their status hasn't been updated to Slashed in the Agent Merkle Tree. This is due to the fact that the update of the status requires a merkle proof of the old status, and happens in a separate transaction because of that.

event StatusUpdated(AgentFlag flag, uint32 indexed domain, address indexed agent);