Executive Summary
Most circuit breakers in decentralized trading are binary and symmetric — a single "halted" switch, or a flat fee bump applied uniformly to every order regardless of direction. Binary controls overreact, halting legitimate buyers along with panic sellers; flat, non-escalating fees underreact, staying too small to matter once a real cascade is underway.
ProofGuard's circuit-breaker module instead classifies a launch pool into one of four ordered stress levels — Normal, Elevated, Stabilization, Emergency — driven by rolling net-sell-pressure fractions and price-decline fractions measured across multiple time windows. Each level derives both a dynamic trading-fee rate from a level-specific range and a per-trade sell-size cap. Sell orders above that cap are rerouted off the automated-market-maker's pricing curve to a batch-auction or request-for-quote venue; buy orders and sells at or under the cap keep executing directly on-curve at every level.
Problem Statement
A single global trading halt treats every participant identically regardless of intent, which is both an overcorrection and a poor user experience for anyone trying to add exposure during a dip. A flat, non-graduated fee increase, meanwhile, either bites too early (discouraging normal activity under mild volatility) or too late (a fixed few-percent bump does little to deter a determined seller mid-cascade). Static per-block price-impact caps common in constant-product AMMs guard against one large trade but are blind to the same pressure accumulated across many smaller trades spread over hours.
Technical Architecture
Escalation Triggers
| Signal | Window | Trigger | Escalates To |
|---|---|---|---|
| Net sell pressure | 1 hour | > 2% of quote reserve | Elevated |
| Net sell pressure | 6 hours | > 5% of quote reserve | Stabilization |
| Net sell pressure | 24 hours | > 10% of quote reserve | Stabilization + hard circuit breaker |
| Price drop | 1 hour | > 10% | Elevated |
| Price drop | 24 hours | > 15% | Stabilization |
| Price drop | 24 hours | > 25% | Emergency |
| Price drop vs. reference | rolling | > 40% | Emergency + vault support auto-disabled |
Every threshold check runs independently against the same evaluation, and the pool's classification takes the most severe level indicated by any single triggered check — escalation within one evaluation pass is monotonically non-decreasing, so a milder signal cannot mask a more severe one.
Fee Tier and Sell-Size Cap
The classified stress level selects a fee rate from that level's configured range and a per-trade sell-size cap computed as a fraction of the pool's quote reserve. The sell-throttle pipeline reads this cap and the current stress mode when evaluating each sell request: a sell within the cap executes normally, while a sell above the cap is redirected to route through a batch-auction (TWAMM) or request-for-quote execution path instead of hitting the AMM curve directly. Buy orders are never subject to this cap.
Anchored Mode Transitions
Every stress-mode change is cryptographically anchored with the full signal snapshot — each windowed net-sell fraction and each price-drop fraction — recorded in the anchored payload, giving a complete, reproducible picture of exactly which signal drove each escalation or de-escalation.
Prior Art Differentiation
| Approach | Levels | Direction-Aware? | Multi-Window Signals? |
|---|---|---|---|
| Global trading halt | 1 (binary) | No | No |
| Flat fee bump | 1 | No | No |
| Static per-block price-impact cap | 1 | No | No (single trade only) |
| JIL ProofGuard | 4, graduated | Yes, sell-only reroute | Yes, multiple rolling windows |