Rate-limit token bucket: shared self-throttle. Returns allowed + remaining. Send { bucket, token, capacity, refillPerSec, cost? }.