You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* chore: move task to active
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: address deferred security findings from codex refresh proxy
- Add per-workspace rate limiting to /api/auth/codex-refresh endpoint
(default: 30/hour, configurable via RATE_LIMIT_CODEX_REFRESH)
- Add scope validation on upstream token responses with warning log
(configurable via CODEX_EXPECTED_SCOPES, non-blocking)
- Document token-in-URL accepted risk in secrets-taxonomy.md with
mitigations (short-lived JWT, scope enforcement, rate limiting)
- Document JWT token lifetimes and callback token design rationale
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: use structured logger for scope validation warnings
Replace console.warn with log.warn from lib/logger to comply with
no-console lint rule for API code.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore: update task checklist with completed items
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: address validator findings — doc sync and edge case test
- Add RATE_LIMIT_CODEX_REFRESH and CODEX_EXPECTED_SCOPES to .env.example
- Add test for non-string scope edge case in upstream response
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore: archive completed task
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix: add env var override for codex refresh rate limit window
RATE_LIMIT_CODEX_REFRESH_WINDOW_SECONDS allows configuring the rate
limit window per constitution Principle XI (no hardcoded values).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* docs: address review findings — self-hosting vars, KV race note
- Add RATE_LIMIT_CODEX_REFRESH, RATE_LIMIT_CODEX_REFRESH_WINDOW_SECONDS,
and CODEX_EXPECTED_SCOPES to self-hosting.md configurable variables table
- Document KV rate limiter's non-atomic read-modify-write as a known
limitation (pre-existing pattern across all rate-limited endpoints)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
---------
Co-authored-by: Raphaël Titsworth-Morin <raphael@raphaeltm.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
0 commit comments