The Wire · Showcase
SUPABASE STUDIO FIXES 403 LOOPS, AUTH TOKEN EXPIRY NOW CONFIGURABLE
By RepoJournal · Filed · About Supabase
A critical UI bug that hammered the platform API into rate limiting has been squashed, while the auth team surfaces JWT expiration controls where developers can actually find them.
The integration overview page was trapped in an unbounded request loop for users with project-scoped roles, firing 403s repeatedly on every component remount until the API rate limited the session [2]. That's now fixed by passing `retryOnMount: false` to halt the retry cycle on terminal errors. Meanwhile, the auth layer is exposing access token expiry (`JWT_EXP`) directly under Auth > Sessions settings instead of buried in legacy JWT config [1], making token lifetime tuning accessible without digging through deprecated panels. Two OAuth signup flows also got patched: one now preserves `organization_slug` through the post-confirmation redirect so multi-org users don't land on an empty org picker [3], and another split the cron cleanup dialog state from the enable button to stop double-counting telemetry [4]. On the realtime desk, v2.121.0 shipped with observability improvements, including a new admin dashboard and muster scope status gauge [5], plus a fix ensuring fanout metrics collect on the sending node [6]. The migration layer also tightened UUID not-null constraints [7] and improved JWT error mapping [8].
One email a day. Unsubscribe in one click.
Keep up with Supabase in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Deploy the 403 loop fix before next maintenance window if you're on a recent build supabase/supabase [immediate]
- → Update realtime to v2.121.0 to unlock the admin dashboard and o11y improvements supabase/realtime [plan]
- → Test OAuth signup flows with multi-org accounts after the organization_slug fix deploys supabase/supabase [monitor]
References
- [1] feat(auth): expose access token expiry under auth settings (#48236) supabase/supabase
- [2] fix(studio): stop 403'd integration queries from looping on remount (#48350) supabase/supabase
- [3] fix(studio): keep organization_slug in oauth signup redirect (#48352) supabase/supabase
- [4] fix(studio): split cron_job_cleanup dialog-open from enable to stop double-counting (#48348) supabase/supabase
- [5] v2.121.0 ↗ supabase/realtime
- [6] fix: ensure fanout metric is collected on the sending node ↗ supabase/realtime
- [7] fix: migration realtime.uuid not null (#2047) supabase/realtime
- [8] fix: map jwt errors (#2048) supabase/realtime