select_candidates

Documentation for eth_defi.erc_4626.deposit_probe.select_candidates function.

select_candidates(database, *, selection, min_tvl=None, denomination_token=None, protocol=None, vault_ids=None, chain_id=None, include_uncertified=False, max_per_protocol=None)

Select database candidates with deterministic order and fail-closed metadata.

min_tvl compares the scanner’s USD NAV values. A denomination token may optionally narrow that selection further.

Parameters
  • database (eth_defi.vault.vaultdb.VaultDatabase) – Local scanner metadata database.

  • selection (str) – One of min_tvl, protocol, all_protocols or vault_ids.

  • min_tvl (Optional[decimal.Decimal]) – Minimum USD NAV for min_tvl selection.

  • denomination_token (Optional[eth_typing.evm.HexAddress]) – Optional denomination-token filter for min_tvl selection.

  • protocol (Optional[str]) – Case-insensitive protocol name for protocol selection.

  • vault_ids (Optional[str]) – Comma-separated vault identifiers for explicit selection.

  • chain_id (Optional[int]) – Optional EVM chain filter applied to every selection mode.

  • include_uncertified (bool) – Include legacy database rows without scanner capability metadata. Their adapter capability is still recomputed and enforced on the Anvil fork.

  • max_per_protocol (Optional[int]) – Optional highest-N NAV limit applied independently in all_protocols mode.

Returns

Deterministically ordered, deposit-capable EVM candidates.

Raises

ValueError – If selection mode requirements are not met.

Return type

list[eth_defi.erc_4626.deposit_probe.VaultDepositProbeCandidate]