OAuth
Locked keep-warm refresh sweep across all Codex OAuth pool slots
Enumerates codex_oauth_* slots and refreshes any older than ~7 days through the same locked getValidCodexOAuth path used at task time. Skips slots already benched by codex-auth-expiry-watch.
post/api/oauth/keep-warm/codex
Response
Per-slot keep-warm outcomes