diff --git a/evidence/red-team/2026-03-22-floor-ratchet-oscillation.json b/evidence/red-team/2026-03-22-floor-ratchet-oscillation.json index 17e1919..e4f3b2b 100644 --- a/evidence/red-team/2026-03-22-floor-ratchet-oscillation.json +++ b/evidence/red-team/2026-03-22-floor-ratchet-oscillation.json @@ -11,14 +11,14 @@ "strategies_tested": 1, "strategies_total": 1, "agent_runs": 0, - "methodology": "Dedicated floor ratchet oscillation test (#1067). Exercises the multi-trade buy → stake → recenter oscillation pattern that was flagged as a live vulnerability (9/34 profitable at 2000 trades, r=+0.890 with floor ratchet ticks). The attack file floor-ratchet-oscillation.jsonl replays through AttackRunner.s.sol with snapshot isolation. This covers the attack surface that the initial-phase-only test in 2026-03-20.json explicitly noted as untested.", + "methodology": "Placeholder evidence for floor ratchet oscillation attack (#1067). The attack file floor-ratchet-oscillation.jsonl is registered in the structured suite and will be replayed through AttackRunner.s.sol on the next run-red-team execution. This file records the attack registration; delta_bps and lm_eth_after will be populated by the actual run. Covers the attack surface that the initial-phase-only test in 2026-03-20.json explicitly noted as untested (the full 2000-trade oscillation variant from #630).", "attacks": [ { "strategy": "Floor Ratchet Oscillation — full buy → stake → recenter loop with TWAP drift", "pattern": "buy → stake → recenter_multi → sell", - "result": "INCREASED", + "result": "PENDING", "delta_bps": 0, - "insight": "Full oscillation variant of the floor ratchet vector (#630). Alternates buy → stake → recenter cycles with periodic unstake → sell phases across multiple rounds, including buy_recenter_loop batches (20 cycles each) to drift TWAP. The 1% pool fee, TWAP oracle protections, and concentrated liquidity slippage collectively prevent extraction. Each sell leg returns less WETH than the buy leg consumed in fees + slippage. Floor position absorbs sell pressure without net ETH loss." + "insight": "Awaiting execution. Full oscillation variant of the floor ratchet vector (#630). Alternates buy → stake → recenter cycles with periodic unstake → sell phases across multiple rounds, including buy_recenter_loop batches (20 cycles each) to drift TWAP. Expected: 1% pool fee + TWAP oracle protections + concentrated liquidity slippage prevent extraction." } ] } diff --git a/onchain/script/backtesting/attacks/floor-ratchet-oscillation.jsonl b/onchain/script/backtesting/attacks/floor-ratchet-oscillation.jsonl index aa5f00e..c3a116d 100644 --- a/onchain/script/backtesting/attacks/floor-ratchet-oscillation.jsonl +++ b/onchain/script/backtesting/attacks/floor-ratchet-oscillation.jsonl @@ -50,4 +50,5 @@ {"op":"mine","blocks":50} {"op":"buy_recenter_loop","count":20,"amount":"100000000000000000000"} {"op":"unstake","positionId":5} +{"op":"unstake","positionId":6} {"op":"sell","amount":"all","token":"KRK"}