Price integrity is critical for Full Sail, since inaccurate or manipulated data can undermine emissions and rewards. To address this, the protocol integrates an **Oracle Compromise Protection System. **Before any update is finalized, the system performs a series of checks to validate accuracy and consistency. If irregularities are detected, protective measures are triggered automatically.
The first layer of defence compares price data from an external oracle (Switchboard) against the on-chain pool price. This ensures that external feeds are consistent with observed market conditions in Full Sail. This check protects against oracle compromise scenarios where external data could be spoofed or manipulated.
The second layer of defence analyzes the protocol’s own price history. Each new price is measured against the last 50–70 updates, with deviation quantified through a Z-score.This method captures anomalies that may not result from malicious activity but from technical failures, network glitches, or rare market dislocations. By relying on historical context, the protocol avoids accepting extreme outliers as valid prices.
The final layer is the circuit breaker system, which aggregates the results of both checks and determines the protocol’s response. It provides three escalating protection levels:
Warning: Log and notify without halting updates.
Critical: Block the price update and prevent compromised data from entering the system.
Emergency: Pause all emissions until the issue is resolved.
This ensures the protocol can react in seconds, protecting user funds and emissions distribution without requiring immediate human intervention.
Suppose an attacker compromises the external oracle and submits a manipulated ETH price of $5000 while the pool price remains $2800.When the protection system performs its checks:
Multi-Oracle Validation detects a large discrepancy between the oracle feed and the pool price.
Statistical Analysis compares the new price against recent history and identifies it as an extreme anomaly.
Circuit Breaker aggregates these results, classifies the event as critical, and immediately pauses emissions.
The entire process takes seconds. Users are shielded from harm, emissions are halted before any misallocation can occur, and the emergency council is notified for follow-up.