Counters that trade tidiness for speed
Counters are denormalised so the dashboard reads three listeners instead of a query per card. Every write that affects a counter goes through a batch, and a rename fans out across related documents. There is also a manual recalculate, because denormalised data eventually drifts and it is better to have the button than to pretend otherwise.
