Rate-limit / soft block demo

Click “Fetch data” repeatedly. After 5 requests / 20s you get a fake 429 panel with Retry-After.

HardJavaScript

Challenge

Detect rate-limit state via #rate-panel[data-limited="true"] and read data-retry-after.

No requests yet.