Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

Factory contracts in Euler V2

Factory contracts make Euler V2 components repeatable to deploy and easier to inspect. Developers, curators, and auditors can check whether a deployed contract came from a recognized implementation and factory.

Factory origin helps with review, upgrades, and governance. Each deployment still has its own parameters, roles, and connected dependencies.

Main factory contracts

EVault factory (generic factory)

The EVault GenericFactory deploys EVK vaults. It enables permissionless creation of upgradeable or immutable vaults using a standardized proxy pattern. Vault creators specify parameters such as the underlying asset, oracle, and unit of account. Factory origin helps integrators verify the deployment source, while the live vault configuration remains separate.

EulerEarn factory

The EulerEarn Factory allows anyone to deploy new Earn vaults. Each Earn vault is an ERC-4626 vault where users deposit one asset into one vault-share position, while configurable roles manage allocation across the vault's selected strategies. Factory origin confirms the deployment source; users and integrators should still evaluate the vault's allocator, roles, strategies, caps, liquidity, and disclosures.

IRM factory (kink and adaptive curve)

The IRM (Interest Rate Model) factory is responsible for deploying interest rate models used by vaults. Two main types are supported:

  • Kink IRM Factory: Deploys linear kink interest rate models, which use a piecewise-linear curve with a "kink" point to set rates based on utilization.
  • Adaptive Curve IRM Factory: Deploys adaptive curve models, which dynamically adjust rates based on market conditions and utilization.

These factories let vaults use recognized IRM implementations and support parameter changes through the relevant governance process. Curators should still evaluate whether a selected IRM and its parameters fit the market.

Euler router factory

The Euler Router Factory deploys price oracle routers. Routers select configured price routes; the router's live routes and governor remain separate trust boundaries.

Governor access control emergency factory

The GovernorAccessControlEmergencyFactory deploys a governance suite for EVK vaults, including a GovernorAccessControlEmergency contract and two timelock controllers (admin and wildcard). It standardizes the setup of time-delayed and emergency-enabled governance, but operators remain responsible for assigning roles, configuring delays, monitoring changes, and communicating risks. For more, see the Governor Access Control Emergency documentation.

Cap risk steward factory

The CapRiskStewardFactory deploys CapRiskSteward contracts. A steward permits authorized, bounded cap adjustments subject to configured adjustment factors and a recharge interval. The role and the resulting cap change do not expire merely because the recharge interval passes. It may also set an IRM only when that IRM is a deployment recognized by the configured IRM factory. A steward is typically used alongside a selector-based governor; its delegated path can bypass an upstream timelock for exactly the selectors and targets granted to it.

Verify a deployment

Use Contract addresses to locate listed factory deployments, then verify the chain ID, bytecode, factory validity check, implementation, and live role/configuration state. A table entry or factory origin is not an endorsement of contracts deployed from it.