erc_4626.vault_protocol.accountable.settlement

Documentation for eth_defi.erc_4626.vault_protocol.accountable.settlement Python module.

Historical Accountable redemption-settlement event reader.

Only RedeemClaimable marks Accountable settlement. A subsequent ERC-4626 Withdraw merely transfers already-claimable assets, so it must not be treated as a new vault settlement. Generic settlement rows are transaction markers and intentionally do not retain individual request quantities.

Functions

build_accountable_settlement_rows_from_logs(...)

Build and de-duplicate Accountable settlement transaction markers.

fetch_accountable_settlements(vault, ...[, ...])

Fetch Accountable claimability settlement transaction markers.

get_accountable_settlement_events_by_topic(vault)

Return Accountable settlement events indexed by topic zero.

fetch_accountable_settlements(vault, start_block, end_block, use_hypersync=None, chunk_size=50000)

Fetch Accountable claimability settlement transaction markers.

Parameters
Returns

One marker per transaction containing claimability events.

Return type

list[eth_defi.vault.settlement_data.VaultSettlement]

get_accountable_settlement_events_by_topic(vault)

Return Accountable settlement events indexed by topic zero.

Parameters

vault (eth_defi.erc_4626.vault_protocol.accountable.vault.AccountableVault) – Accountable vault adapter.

Returns

Mapping containing only RedeemClaimable.

Return type

dict[str, web3.contract.contract.ContractEvent]

build_accountable_settlement_rows_from_logs(vault, logs, event_by_topic=None)

Build and de-duplicate Accountable settlement transaction markers.

A strategy fulfilment can emit several RedeemClaimable logs in one transaction. The generic settlement table has no amount columns, so this collapses such logs to one marker while preserving distinct transactions in the same block.

Parameters
Returns

Unique rows sorted by block and transaction hash.

Raises

ValueError – If a candidate log cannot be decoded by the ABI.

Return type

list[eth_defi.vault.settlement_data.VaultSettlement]