Dispatch every recorded unhandled rejection. Called at the tail of
job_queue::run_jobs (all drains funnel there). Snapshot-and-drain: a
handler that rejects further promises records new entries which flush on
the next round — no unbounded recursion. Entries cancelled by a late
.catch (tracker Handled) lose their GcStore root before the flush and
are skipped via the None lookup.