erc_4626.vault_protocol.ember.settlement

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

Historical Ember operator-settlement event reader.

Only successful Ember RequestProcessed events are represented in the generic settlement database. A skipped or cancelled queue request returns shares rather than paying denomination assets, so it must not annotate a vault price row as a successful settlement.

Functions

build_ember_settlement_rows_from_logs(vault, ...)

Convert successful Ember processing logs to transaction settlement rows.

fetch_ember_settlements(vault, start_block, ...)

Fetch successful Ember operator processing transactions.

get_ember_settlement_events_by_topic(vault)

Return Ember's successful-settlement candidate event topic mapping.

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

Fetch successful Ember operator processing transactions.

Parameters
Returns

One generic settlement marker per successful operator transaction.

Return type

list[eth_defi.vault.settlement_data.VaultSettlement]

get_ember_settlement_events_by_topic(vault)

Return Ember’s successful-settlement candidate event topic mapping.

This pure ABI helper intentionally includes only RequestProcessed; whether an individual log represents an asset payout is determined after decoding its skipped and cancelled flags.

Parameters

vault (eth_defi.erc_4626.vault_protocol.ember.vault.EmberVault) – Ember vault adapter exposing the packaged Ember ABI.

Returns

Full topic0 to Web3 event class mapping.

Return type

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

build_ember_settlement_rows_from_logs(vault, logs, event_by_topic=None)

Convert successful Ember processing logs to transaction settlement rows.

A single operator transaction can process several requests. The generic database models transaction timestamps, so duplicate successful logs are collapsed using (vault address, transaction hash) while distinct same block transactions remain independent rows.

Parameters
Returns

Successful settlement rows sorted by block and transaction hash.

Raises

ValueError – If a supposedly Ember processing log cannot be decoded by its ABI.

Return type

list[eth_defi.vault.settlement_data.VaultSettlement]