There are two primary end users of the Enzyme Protocol: fund owners and investors.
The Enzyme Protocol is designed to have protections in place for both of these parties without being overly restrictive and rigid.
Each fund has an owner, stored on the
VaultProxy, and thus persisting between migrations to new releases.
A fund owner configures the rules of their fund: fees and policies, the denomination asset by which share price and performance are measured, the time-lock between shares actions (buying or redeeming shares) for a given user, etc.
The fund owner exchanges assets in their fund for other assets via integration "adapters", e.g.,
CompoundAdapter . This is the primary way in which a fund owner can accrue value for their fund.
A fund owner can also assign a couple other roles to help manage their fund:
migrator who can migrate the fund to the current release
accounts that are allowed to make asset exchanges via the
IntegrationManager on behalf of the fund (e.g., a DAO fund owner can approve accounts to make exchanges on behalf of its funds)
A fund can theoretically have unlimited investors, who get exposure to a fund's performance by buying and redeeming fund shares.
Shares are currently non-transferrable between investors (though they can be transferred within the protocol to pay fees).
Fund owners can opt in to use one or more policies and other configurable measures to protect their investors where necessary. It is assumed that investors will pay special attention to review the protective policies & protections in a particular fund before investing. See "Known risks & mitigations" section.