update_strategy
Update direct lender strategy terms.
Required conditions
- The vault integration ACL must enable this integration before the instruction is accepted; that enablement is defined on the GLAM state account.
- If the signer is not the owner, the delegate ACL on the GLAM state must contain the exact protocol permission required by this instruction; registering a delegate alone is insufficient.
- Instruction-specific destination accounts must satisfy the external protocol's own account model; GLAM validates the accounts it needs for authorization and policy enforcement, then passes the remaining protocol accounts through CPI.
- Configuration changes must pass owner or authorized-manager checks and, when the state or mint timelock is active, must follow the propose/apply timing model instead of taking effect immediately.
- The instruction metadata names
UpdateStrategyas the delegate permission for this instruction. strategymust be tracked in the vault's registered-position registry.- any external yield-source configuration must be unset when
paramsis provided. principal_mintmust be present in the Loopscale deposit allowlist.- When provided, the
market_informationargument must be present in the Loopscale markets allowlist.
Accounts
Uses the standard Big Seven account pattern, plus the instruction-specific accounts below.
| Account | Role | Description |
|---|---|---|
| bs_auth | signer | Fixed program or sysvar account. |
| strategy | writable | External strategy account. |
| principal_mint | read-only | Token mint account. |
| strategy_ta | writable | External strategy account. |
| associated_token_program | read-only | Standard Solana program account. |
| token_program | read-only | Token program (SPL Token or Token-2022) used by the strategy's principal mint during update. |
| event_authority | read-only | Anchor event authority PDA used when the invoked program emits events. |
Arguments
| Argument | Type | Notes |
|---|---|---|
| collateral_terms | vec<MultiCollateralTermsUpdateParams> | apy: u64; indices: vec<CollateralTermsIndices> |
| params | option<UpdateStrategyParams> |
Policy & permissions
- Enable the Loopscale integration program on the vault integration ACL before Loopscale position actions.
- Delegate permission:
UpdateStrategy.
Cross-instruction constraints
- The Loopscale strategy must be tracked in the vault's registered positions when required by policy.