build_crypto_vault_metadata

Documentation for eth_defi.vault.crypto_vaults.build_crypto_vault_metadata function.

build_crypto_vault_metadata(*, vault_db_path, cleaned_price_path, metadata_path, sticky_state_path, exchange_rate_parquet_path=None, threshold_usd=None)

Calculate and atomically persist private crypto-vault metadata.

The function follows the existing top-vaults commit order: metadata JSON is written first and sticky state immediately afterwards. A later R2 failure leaves the local state advanced, ready for the next successful publication.

Parameters
  • vault_db_path (pathlib.Path) – Common vault metadata pickle.

  • cleaned_price_path (pathlib.Path) – Crypto daily cleaned Parquet path.

  • metadata_path (pathlib.Path) – Crypto metadata JSON destination.

  • sticky_state_path (pathlib.Path) – Crypto sticky-state JSON destination.

  • exchange_rate_parquet_path (Optional[pathlib.Path]) – Optional verified snapshot used to add USD period metrics to ETH/BTC vaults. Stablecoin records deliberately do not get a duplicate USD metric view.

  • threshold_usd (Optional[decimal.Decimal]) – Optional fixed USD guideline for stablecoin sticky admission; defaults to environment/config value. ETH/BTC admission is native-unit based.

Returns

JSON-serialisable metadata document.

Return type

dict[str, Any]