VaultDepositManagerCapability
Documentation for eth_defi.vault.deposit_redeem.VaultDepositManagerCapability Python class.
- class VaultDepositManagerCapability
Bases:
objectStatic public integration capability of a vault deposit manager.
This describes support implemented by
eth_defi, rather than the vault’s live cap, pause, allow-list, token balance, or liquidity state. A historical probe cannot establish future acceptance: consumers must make the request against current chain state and handle a current-state revert.- Parameters
can_deposit – Whether a complete public deposit lifecycle is implemented.
can_redeem – Whether a complete public redemption lifecycle is implemented.
deposit_flow – Request lifecycle for deposits when supported.
redemption_flow – Request lifecycle for redemptions when supported.
deposit_unsupported_reason – Stable adapter reason when deposits are deliberately unsupported.
redemption_unsupported_reason – Stable adapter reason when redemptions are deliberately unsupported.
supports_anvil_settlement – Whether the advertised asynchronous lifecycle can be advanced with its protocol-specific ticket on an Anvil fork.
Nonemeans no settlement assertion is needed for the selected synchronous direction.Falsepublishes an advertised asynchronous lifecycle which cannot be safely advanced on Anvil.anvil_settlement_unsupported_reason – Stable concrete reason why an advertised asynchronous lifecycle cannot be advanced on Anvil. Required when
supports_anvil_settlement=Falseand forbidden otherwise.
Attributes summary
can_depositcan_redeemdeposit_flowredemption_flowdeposit_unsupported_reasonredemption_unsupported_reasonsupports_anvil_settlementanvil_settlement_unsupported_reasonAccepted token addresses for an explicit multi-asset deposit flow.
Allow the initial public schema to expose only one flow direction.
Methods summary
__init__(can_deposit, can_redeem[, ...])as_dict()Convert the capability to JSON-compatible primitives.
Return the initial public capability schema.
- deposit_assets: tuple[eth_typing.evm.HexAddress, ...]
Accepted token addresses for an explicit multi-asset deposit flow.
- publish_partial: bool
Allow the initial public schema to expose only one flow direction.
- as_dict()
Convert the capability to JSON-compatible primitives.
- as_initial_public_schema()
Return the initial public capability schema.
Existing partial adapters remain fail-closed unless they explicitly opt in after their supported direction has been fork-proven.
- __init__(can_deposit, can_redeem, deposit_flow=None, redemption_flow=None, deposit_unsupported_reason=None, redemption_unsupported_reason=None, supports_anvil_settlement=None, anvil_settlement_unsupported_reason=None, deposit_assets=(), publish_partial=False)