151 wires and counting

$ follow Supabase

Keep up with Supabase in about 3 minutes: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.

Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.

$ status

wire 2026-09-22
stories 120

© 2026 RepoJournal Home Showcase How it works Privacy

$ the-wire · showcase

Supabase ships recovery-code MFA sign-in, new stack init flag

By RepoJournal · Filed · About Supabase · Composed from the cited sources · methodology

Account recovery gets a real fallback for locked-out MFA users, the CLI pushes its experimental stack behind a flag, and the docs evals flag three guides where agents can reach for the wrong auth path.

Recovery codes: allow users to use recovery codes to access their account (#50569) supabase/supabase

by Gildas Garcia

Users redirected to the MFA verification page can now complete sign-in with a recovery code instead of being stuck without their second factor. It closes the last dead end in the account-recovery flow, so a lost authenticator no longer means a lost account.

feat(cli): opt supabase init into the experimental stack via env supabase/cli

by avallete

`SUPABASE_EXPERIMENTAL_STACK=1 supabase init` now writes `[experimental] stack = true` and drops the Docker-era default ports so the new stack is not pinned to legacy local listeners. Unset or `0` keeps the existing Go-parity template, invalid values fail closed, and blank `supabase bootstrap` uses the same scaffold, so only projects that opt in see the change.

fix(cli): fail `storage rm` without confirmation (CLI-2464) supabase/cli

by 7ttp

In `json` and `stream-json` output, which a detected coding agent gets by default, the confirmation helper could not prompt and defaulted to no, so `storage rm` deleted nothing, printed an empty `deleted` list, and still exited 0. It now fails with `StorageRmConfirmationRequired` instead of reporting a successful deletion of zero buckets.

fix(stack): log target failures and handle disconnections quietly (#6691) supabase/cli

by Andrew Valleteau

A failed lazy wake used to surface only as a `502` or a dead socket, with the cause discarded and `error=undefined` in `stack status`. The proxy now logs the route and cause and reports the failure to service observation, while ordinary client disconnects are typed as their own error rather than proxy failures.

feat(evals): eval the Storage access control guide in supabase.com/docs (#292) supabase/evals

by Miranda Limonczenko

The Storage Access Control page teaches policies on `storage.objects` but never says a public bucket serves every object it holds regardless of those policies, and one support case was a broad read policy on a public bucket that exposed every stored file. The eval pins the correct answer in place for agents asked to store user photos.

feat(evals): eval the Securing Edge Functions guide in supabase.com/docs (#296) supabase/evals

by Miranda Limonczenko

The Securing Edge Functions guide presents four auth modes and puts two clients on the same context object, one of which bypasses row level security, with the mode that skips every credential check sitting three sections down under a harmless-sounding heading. The eval encodes which mode an agent should reach for.

Fix tooltip a11y comment (#50640) supabase/supabase

by Gildas Garcia

A comment explaining why `aria-describedby` is stripped from tooltips so screen readers do not read the same text twice was wrong. The replacement explains the actual reason, mostly a note for whoever edits the component next.

Quick answers

What shipped in Supabase on September 22, 2026?
Account recovery gets a real fallback for locked-out MFA users, the CLI pushes its experimental stack behind a flag, and the docs evals flag three guides where agents can reach for the wrong auth path. In total, 52 commits, 53 pull requests, and 15 releases landed.
Who contributed to Supabase on September 22, 2026?
8 developers shipped this update, including Gildas Garcia, Joshen Lim, Andrew Valleteau, claude[bot], Miranda Limonczenko, supabase-evals-releaser, 7ttp, and github-actions[bot].
What were the notable Supabase updates?
Recovery codes: allow users to use recovery codes to access their account (#50569), feat(cli): opt supabase init into the experimental stack via env, and fix(cli): fail `storage rm` without confirmation (CLI-2464).