• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

supabase / cli / 28782049516
65%
develop: 65%

Build:
Build:
LAST BUILD BRANCH: gh-readonly-queue/develop/pr-5904-82dc21b8840ac5f825069e7f7625267e3d66d772
DEFAULT BRANCH: develop
Ran 06 Jul 2026 09:37AM UTC
Jobs 1
Files 229
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

06 Jul 2026 09:34AM UTC coverage: 65.166%. Remained the same
28782049516

push

github

web-flow
fix(cli): wire --experimental gate into 7 ungated native leaves (#5766)

## Current Behavior

Go gates `postgres-config {get,update,delete}`, `ssl-enforcement
{get,update}`, and `network-bans {get,remove}` behind the global
`--experimental` flag in the root `PersistentPreRunE`
(`apps/cli-go/cmd/root.go:56-93`). The TS port's
`legacyRequireExperimental` helper
(`shared/legacy-experimental-gate.ts`) was wired only into the storage
leaves, so these 7 commands ran unconditionally, without ever requiring
`--experimental`.

Fixes #CLI-1854

## Expected Behavior

All 7 leaves now fail with `must set the --experimental flag to run this
command` unless `--experimental` (or `SUPABASE_EXPERIMENTAL`) is set,
matching Go exactly.

Wiring this in required more than adding a `yield*` line:
`legacyManagementApiRuntimeLayer` (used by all 7 leaves) eagerly
resolves an access token as part of its own layer construction. Since
`Command.provide(layer)` builds that layer *before* the handler body's
first yield ever runs, leaving the gate check inside the handler while
the layer stayed on `Command.provide` would let a missing-token error
mask the missing-`--experimental` error — verified against the built
binary before the fix (`postgres-config get` with no credentials and no
`--experimental` showed `LegacyPlatformAuthRequiredError`, not the gate
error). Each leaf now moves `legacyManagementApiRuntimeLayer` to an
inline `Effect.provide` applied *after* the gate check, matching Go's
actual `PersistentPreRunE` order (experimental check, then the
`IsManagementAPI` login check — `root.go:91-109`). Re-verified against
the built binary post-fix for all 7 leaves.

Also corrects the `legacy-experimental-gate.ts` doc comment, which
previously had cobra's `PersistentPreRunE`/`ValidateFlagGroups` ordering
backwards, and now accurately notes that the 4 pre-existing storage
leaves still have the mutex-check-before-gate ordering bug (tracked
separately) rather than presenting their order... (continued)

11041 of 16943 relevant lines covered (65.17%)

10.47 hits per line

Coverage Regressions

Lines Coverage ∆ File
2
82.41
0.0% internal/storage/rm/rm.go
Jobs
ID Job ID Ran Files Coverage
1 28782049516.1 06 Jul 2026 09:37AM UTC 229
65.17
GitHub Action Run
Source Files on build 28782049516
  • Tree
  • List 229
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28782049516
  • 28cc8449 on github
  • Prev Build on gh-readonly-queue/develop/pr-5790-c8c7b1814a5a2d7235299aa622219c57e93a8cb5 (#28759831266)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc