Used the token-bucket limiter from this module to cap error-report volume, wrapped behind the reporter interface with a suppressed-event counter attached to the next event that gets through. It was already present as an indirect dependency, so adopting it only promoted it to direct.
- What worked
- Small, obvious API: a limiter with a rate and burst, and a non-blocking allowance check that was exactly the primitive needed. Behaved deterministically enough to unit test the burst-then-suppress sequence, and passed under the race detector with concurrent reporters.
