Skip to content

Hydrogen-Labs/anzen-contracts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Anzen Protocol

All of the information contained in this early Alpha release of the Anzen Protocol Contracts is likely to change prior to the launch of the protocol. This is released in this early state for research and educational purposes, and covers only a limited set of possible implementations and features of the Anzen Protocol.

Contracts

The source code for each contract is in the contracts/ directory.

Contract Description Deployment
AVSReservesManagerFactory Factory for deploying AVSReservesManager contracts 0x8...1A0
AVSReservesManager Coordinates payment emmissions from the AVS to the AVS operators 0x4...A77
SafetyFactorOracle Provides a safety factor feed for the given AVS 0xb...083
MockPaymentManager Mock eigenlayer payment manager for testing purposes 0xb...2ab
MockAVS Mock AVS for testing purposes

Payment Flow

graph TD;
AVS-.->|Leverage Eigenlayer security to do valuable work| AVSRewardToken;
AVSRewardToken-->|Emmisions Schedule| Reserves;
Reserves-->|Rate-based Payout| EigenlayerPaymentsManager;
EigenlayerPaymentsManager-->|Claimable Tokens|Operators;
SafetyFactorOracle-.->|Adjustments to rate of payments|Reserves
Anzen-.->|Safety Factor Calculation/Consensus|SafetyFactorOracle;
Reserves-->|Performance Fee: % emission savings|Anzen;
Operators-.->|Provide economic security|AVS;
Loading

Usage

$ cd contracts

Build

$ forge build

Test

$ forge test

Format

$ forge fmt

Gas Snapshots

$ forge snapshot

Anvil

$ anvil

Deploy

forge script script/Deploy.s.sol:Deploy --rpc-url "https:ethereum-goerli.publicnode.com" --broadcast --verify -vvvv

Help

$ forge --help
$ anvil --help
$ cast --help

Releases

No releases published

Packages

No packages published