Skip to content

Conversation

@pileks
Copy link
Contributor

@pileks pileks commented Dec 17, 2025

Adds an admin-gated instruction to collect LP fees from Meteora DAMM V2 positions held by DAO treasuries.

Motivation

DAOs launched through our launchpad hold liquidity positions in Meteora DAMM V2 pools. The trading fees that accrue to these positions need to be periodically claimed. This instruction provides a mechanism for the MetaDAO admin to trigger fee collection without requiring a full governance proposal for this routine operation.

Mechanics

The collect_meteora_damm_fees instruction:

  1. Access control: Restricted to a MetaDAO-appointed signer in production builds via #[cfg(feature = "production")]

  2. Builds a Squads vault transaction containing a claim_position_fee CPI call to Meteora DAMM V2

  3. Creates and auto-approves a proposal using the DAO PDA as the Squads config authority, making the transaction immediately executable

  4. Hardcoded pool authority: The Meteora pool authority is constrained to HLnp...TLcC to prevent arbitrary pool interactions

Remaining work:

  • Determine and set non-Squads signer for fee collection invocation
@pileks pileks self-assigned this Dec 17, 2025
@pileks pileks marked this pull request as draft December 17, 2025 16:26
@pileks pileks marked this pull request as ready for review December 17, 2025 22:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants