Skip to content

Add Strategy

In King's Vault V2, a strategy must first be registered with the vault through the Controller before capital is allocated to it. This is the model used by the Lending, GHO Saving, and HLP products; it is not the separate per-user V3 GHO Staking model.

  1. The Developer calls Controller.strategyAdd(vault, strategy).
  2. The Controller checks that the vault is registered.
  3. The Controller checks that the strategy is not already registered for the vault.
  4. The Controller verifies that IStrategy(strategy).asset() == IERC4626(vault).asset().
  5. The Controller verifies that IStrategy(strategy).receiver() == vault.
  6. The strategy is appended to the vault's registered strategy list.

Asset and receiver compatibility checks do not establish that the strategy is safe or that it supports synchronous withdrawals. Its valuation, liquidity, exit behavior, and external dependencies require review before allocation. In particular, HyperStrategy cannot supply liquidity through the synchronous replenish() path; see the cross-chain flow.