GLAMIDL Reference

price_neutral_bundle_depositors

Prices Neutral bundle depositor positions held by the vault and records their value for vault AUM.

Applies toVaultTokenized VaultSingle-Asset Vault

Required conditions

  • Mint actions must satisfy the linked GLAM state, Token-2022 mint configuration, mint policy, and any request queue or escrow state involved in the flow.
  • All pricing instructions for the same pricing operation must be in one Solana transaction; splitting them across multiple transactions is unsupported and can produce stale, inconsistent, or rejected NAV calculations.
  • Oracle, token-account, position, and pricing-record accounts must all refer to the same vault state and base asset so the AUM calculation is internally consistent.

Accounts

AccountRoleDescription
glam_statewritableState account owned by the GLAM Protocol program; it records vault configuration, policies, and pricing records.
glam_vaultread-onlyVault account controlled by the GLAM Protocol program; conceptually derived from the state account and used as the vault authority.
signersigner, writableCalling authority. It must be the owner or a delegate with the explicit permission.
sol_usd_oracleread-onlyPricing or oracle account used to calculate value for the instruction.
base_asset_oracleread-onlyPricing or oracle account used to calculate value for the instruction.
integration_authorityread-onlyProgram-derived authority used by an integration during CPI into an external protocol.
glam_configread-onlyGlobal GLAM configuration account for fee and asset/oracle metadata.
glam_protocolread-onlyGLAM Protocol program account used for authorization or CPI.
event_authorityoptionalProgram-derived account.
event_programoptionalFixed program or sysvar account.

No arguments

Policy & permissions

  • Caller: any signer; no pricing-caller ACL is checked.
  • Supplied account, oracle, and protocol data are validated before the priced protocol record is written.

TypeScript SDK usage

const pricingIxs = await glamClient.price.priceVaultIxs();
const validateIx = await glamClient.price.validateAumIx();
// Submit all pricing instructions and validation together.

Cross-instruction constraints

  • All pricing instructions for this pricing operation must be included in the same Solana transaction. Splitting them across multiple transactions is not supported and will produce incorrect or rejected NAV calculations.