Skip to content

v2.20.0

Latest

Choose a tag to compare

@lars0x lars0x released this 24 Jun 02:36
· 52 commits to main since this release

Features

  • Pendle PT accounting vertical — completes Principal-Token accounting on the
    2.19.0 PT/YT price foundation: PT Accountant gate (matrix + CLI + QA checklist),
    typed PendleAccountingEvent cells, open-PT mark-to-market via the gateway
    implied-price, realized-yield PnL on disposal, held-PT inventory in the
    dashboard, PT/YT price telemetry, and a pendle_basics demo.
  • CAIP-2 / CAIP-19 identity layer — additive interop for chain ids
    (eip155:42161) and asset ids, built on a new typed TokenRef;
    resolve("eip155:42161") ≡ resolve("arbitrum"). Native slip44 for ETH-chains,
    Solana, Polygon, Avalanche, BSC, Berachain.
  • Pre-submit feasibility preflight — connectors reject structurally-doomed
    intents (GMX exec-fee, Stargate native-fee, Euler LTV, Pendle expiry) before
    paying gas on a revert.
  • LP_CLOSE amount="all" chaining — size an LP close from the prior open's
    minted balance inside an IntentSequence.
  • Backtesting: address-keyed strategies in the PnL engine.

Changed

  • Bounded gateway price aggregation — new
    ALMANAK_GATEWAY_PRICE_AGGREGATOR_TIMEOUT_SECONDS (default 15s).

Fixes

  • Market data: LWAP across all V3 forks + Aerodrome Slipstream TWAP;
    tick-spacing-aware pool resolution + SushiSwap V3 reader; Binance symbol
    resolution; DEX-volume subgraph repairs.
  • Accounting: native-token balance in snapshots (gas drain), FIFO boot-seed
    of pre-existing inventory, Curve single-sided LP funded legs, gRPC
    total_value_usd from snapshot, pro-rated PT partial disposals.
  • Gateway: PT maturity from on-chain expiry; asyncpg statement cache disabled
    to stop a pgbouncer crash loop.
  • Execution/runner: enriched callback slots; held-PT/swap NAV race fixed;
    position_events.tx_hash points at the action.
  • Pendle: typed receipt/oracle errors; days_to_maturity decouple.