* feat(billing): unify upgrade routing with reason context + storage/tables limit emails
* fix(billing): re-arm limit-notification dedup on usage drops (prior-usage + decrement)
* fix(billing): isolate per-admin email failures in org limit notifications
* fix(billing): re-arm limit dedup at zero usage and zero prior usage (full clear / wipe-rebuild)
* fix(billing): make storage-decrement notification re-arm only (never send on a shrink)
* fix(billing): resolve recipients before claiming so opt-outs don't burn the dedup threshold
* fix(billing): fire table limit emails on upsert inserts via shared notifyTableRowUsage
* chore(billing): only log a limit email as sent when a recipient actually received it
* chore(billing): match to_jsonb int cast between claim and re-arm for consistency
* fix(billing): notify table limits post-commit so a rolled-back insert never emails or burns the claim
* feat(pi): swap Pi Coding Agent icon to the pi glyph and use a black bgColor
* fix(billing): drop priorUsage re-arm to make dedup a single atomic claim (no duplicate-email race)
* docs(billing): move limit-notification rationale to TSDoc, correct tables warn-once behavior
* docs(db): note limit_notifications dedup is per-account, not per-table
* perf(billing): cut redundant subscription fetches and edge-gate notify to slash DB load
* docs(billing): drop self-explanatory inline comments from the notification path