testosaurusdocs
Browse docs
On this page

Offline queue

Testo tangled in wires

Testers work in elevators, on trains, and behind corporate proxies. When a report can't be delivered, it queues locally and waits. The tester never sees an error for a network problem they can't fix.

How it works

  • Storage: pending payloads live in localStorage['testosaurus:pending'], captured together with the context at tap time.
  • Capacity: the queue holds at most 5 items; the oldest is dropped when a 6th arrives. Bugs from this morning outrank a screenshot from last week.
  • Flush: the queue flushes automatically on the next init call, so a tester who comes back the next day delivers everything on page load.
  • Retry-worthy failures enqueue: a 5xx, a timeout, or no connection means "try again later".
  • Rejections don't: a 4xx means the server explicitly refused the payload (bad key, disallowed origin). Retrying would never succeed, so the report fails cleanly.
Disallowed origins are the most common 4xx. Register every origin a widget lives on in your project settings.
Something unclear?Let us know