erc_4626.vault_protocol.lagoon.settlement
Documentation for eth_defi.erc_4626.vault_protocol.lagoon.settlement Python module.
Lagoon settlement event reader.
This module scans Lagoon vault settlement events and stores them in the generic vault settlement DuckDB database. It records when settlement logs happened; queue sizes and per-user accounting stay out of this storage layer.
Functions
|
Build generic settlement rows from Lagoon settlement logs. |
|
Fetch Lagoon settlement transactions for a vault. |
Return Lagoon settlement event classes keyed by topic0. |
|
|
Fetch and store Lagoon settlements for one vault. |
- fetch_lagoon_settlements(vault, start_block, end_block, use_hypersync=None, chunk_size=50000)
Fetch Lagoon settlement transactions for a vault.
A settlement is any log that emits
SettleDepositorSettleRedeem. If a transaction emits both events, both logs are stored.TotalAssetsUpdatedalone is deliberately ignored because Lagoon can emit valuation-only updates.- Parameters
vault (eth_defi.erc_4626.vault_protocol.lagoon.vault.LagoonVault) – Lagoon vault adapter.
start_block (int) – Inclusive start block.
end_block (int) – Inclusive end block.
use_hypersync (Optional[bool]) – Whether to use Hypersync.
Noneauto-detects based onHYPERSYNC_API_KEY.chunk_size (int) – JSON-RPC
eth_getLogschunk size used by the fallback reader.
- Returns
Generic settlement rows sorted by block and transaction hash.
- Return type
- update_lagoon_settlement_database(database, vault, start_block, end_block, use_hypersync=None, chunk_size=50000)
Fetch and store Lagoon settlements for one vault.
- Parameters
database (eth_defi.vault.settlement_data.VaultSettlementDatabase) – Generic settlement database.
vault (eth_defi.erc_4626.vault_protocol.lagoon.vault.LagoonVault) – Lagoon vault adapter.
start_block (int) – Inclusive start block.
end_block (int) – Inclusive end block.
use_hypersync (Optional[bool]) – Whether to use Hypersync.
Noneauto-detects.chunk_size (int) – JSON-RPC fallback chunk size.
- Returns
Number of settlement rows written.
- Return type
- get_settlement_events_by_topic(vault)
Return Lagoon settlement event classes keyed by topic0.
- Parameters
vault (eth_defi.erc_4626.vault_protocol.lagoon.vault.LagoonVault) – Lagoon vault adapter.
- Returns
Mapping from topic0 to event class.
- Return type
- build_settlement_rows_from_logs(vault, logs, event_by_topic=None)
Build generic settlement rows from Lagoon settlement logs.
- Parameters
vault (eth_defi.erc_4626.vault_protocol.lagoon.vault.LagoonVault) – Lagoon vault adapter.
logs (list[web3.datastructures.AttributeDict]) – Web3-compatible logs containing
SettleDepositand/orSettleRedeemevents.event_by_topic (Optional[dict[str, web3.contract.contract.ContractEvent | str]]) – Optional event topic0 to event class/name mapping used to populate
event_name.
- Returns
Settlement rows sorted by block and transaction hash.
- Return type