Robust Data Fetching

Simulate flaky networks: timeout via AbortController, retry with exponential backoff, and the stale-response race in search-as-you-type.

1 — Fetch with timeout & retry

Mock request only — no real network. Adjust latency, failure rate, and timeout, then watch each attempt and backoff delay.

800 ms
40%
1200 ms
Statusidle
Attempts0
Total backoff0 ms
Result
AbortController
Last error
Retryable?

Each attempt gets its own AbortSignal from AbortSignal.timeout(ms). Backoff: base × 2^attempt + jitter.

2 — Stale response race

Type quickly or burst-fire searches. Slow responses can arrive after fast ones and overwrite the UI — unless you abort or ignore by request id.

Displayed result
No query yet

3 — Live log