From 2abd019cfe019309d537239a15654933c579ca8e Mon Sep 17 00:00:00 2001 From: 0xbigz <83473873+0xbigz@users.noreply.github.com> Date: Wed, 18 Jun 2025 15:54:46 -0400 Subject: [PATCH] program: improve-amm-spread-validates --- programs/drift/src/validation/perp_market.rs | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/programs/drift/src/validation/perp_market.rs b/programs/drift/src/validation/perp_market.rs index 27ab686323..f562dd3f5f 100644 --- a/programs/drift/src/validation/perp_market.rs +++ b/programs/drift/src/validation/perp_market.rs @@ -149,15 +149,17 @@ pub fn validate_perp_market(market: &PerpMarket) -> DriftResult { } } - validate!( - market.amm.long_spread + market.amm.short_spread >= market.amm.base_spread, - ErrorCode::InvalidAmmDetected, - "market {} amm long_spread + short_spread < base_spread: {} + {} < {}", - market.market_index, - market.amm.long_spread, - market.amm.short_spread, - market.amm.base_spread - )?; + if market.amm.amm_spread_adjustment >= 0 { + validate!( + market.amm.long_spread + market.amm.short_spread >= market.amm.base_spread, + ErrorCode::InvalidAmmDetected, + "market {} amm long_spread + short_spread < base_spread: {} + {} < {}", + market.market_index, + market.amm.long_spread, + market.amm.short_spread, + market.amm.base_spread + )?; + } validate!( market