obs/hotspots: name the SOTA fix for small-object churn
The Rate class (a small object allocated too often, low promotion) is where
avoidable amplification hides -- a value boxed or tupled in a hot loop that did
no lasting work. The fix text just said 'cut the number of allocating calls',
which reads the same for an inherent per-row cost as for a boxed int64 that
should never have allocated.
When the object is tiny (<= 24 bytes, ~one to three words) refine the FIX: name
the usual culprit -- a boxed int64/float, a tuple, or an option/ref -- and the
SOTA move (hoist it out of the loop, or use an unboxed/native path). This is the
signature behind this session's biggest wins (the cat_cursor 12-byte value
round-trip, varint/solo5 int64 boxes), so obs now flags them as avoidable rather
than as the cost of the work. The base guidance is preserved, so the hotspots
suite and cram are unchanged.