The buyback contract never bought anything back
execute() checked its USDC balance, transferred whatever token balance it already held to a dead address, and emitted BuybackExecuted with usdcSpent set to its entire USDC balance. No swap was ever performed. Every dashboard reading that event would have reported large, entirely fictional buyback volume, and because rescueToken explicitly refused to move USDC and no other exit existed, all fee revenue reaching the contract was permanently unrecoverable.
Rewritten to route through a swap adapter with a caller-supplied minimum output. Both legs are measured as balance deltas across the swap rather than read from the adapter return value, so a malicious router cannot over-report a burn. Tokens are burned via the token burn function, so totalSupply actually falls. A timelocked withdrawUsdc path guarantees fee revenue can never be stranded. Six regression tests, including one driven by a router that takes the USDC and delivers nothing.