Treat the quote as temporary. Separate permission from exchange. Use explicit failure states.
Treat the quote as temporary
The interface should explain when a quote was obtained and when it needs refreshing. Changes in route or received amount should be visible before signing.
Separate permission from exchange
A token allowance and a swap are different actions. Make approval scope understandable and provide a clear continuation after an allowance transaction completes.
Use explicit failure states
Expired quotes, insufficient balances, rejected signatures and failed execution need different recovery guidance. A generic error message hides the decision the user needs to make.



