feat(config): publish @supabase/config to npm (CLI-2169) - #6423
Merged
Coly010 merged 3 commits intoSep 1, 2026
Merged
Conversation
Flips packages/config to private: false so the release pipeline's publish half activates, and drops the README's not-yet-published caveat. On merge, this commit is the first releasable commit since the config-v0.0.0 baseline tag, so the Release Config workflow will plan 0.1.0 as the package's first real release, pending config-release environment approval.
Contributor
Supabase CLI previewnpx --yes https://pkg.pr.new/supabase/cli/supabase@9e0527a8a42bc494a0c4e4bcc2006b99de569a38Preview package for commit |
Contributor
There was a problem hiding this comment.
🤖 AI Review
No functional defect was identified in the two-line publication-enablement change. Of Claude's four documentation findings, two are confirmed, one depends on unverifiable external release setup, and one is refuted. Codex's independent review completed with no findings.
Findings
| Severity | Location | Category | Sources | Claim |
|---|---|---|---|---|
| 🟡 MINOR | packages/config/AGENTS.md:159 |
documentation |
claude | The one-time setup section may now be stale: it still describes the first publication as pending and directs operators to bootstrap it manually with an npm token. |
| ⚪ NIT | CLAUDE.md:36 |
documentation |
claude | The workspace-convention documentation omits packages/config from its list of published, non-private exceptions. |
| ⚪ NIT | .github/workflows/release-config.yml:104 |
documentation |
claude | Release workflow comments and private-blocked diagnostics still describe the CLI-2169 private-to-public flip as a future event after this PR performs that flip. |
Findings outside the diff
- 🟡 MINOR
packages/config/AGENTS.md:159— The one-time setup section may now be stale: it still describes the first publication as pending and directs operators to bootstrap it manually with an npm token. - ⚪ NIT
CLAUDE.md:36— The workspace-convention documentation omits packages/config from its list of published, non-private exceptions. - ⚪ NIT
.github/workflows/release-config.yml:104— Release workflow comments and private-blocked diagnostics still describe the CLI-2169 private-to-public flip as a future event after this PR performs that flip.
Refuted findings (kept for transparency, not posted as review comments)
packages/config/README.md:33(documentation): The sentence "Install it alongside the peers your runtime needs" leaves "it" without an antecedent.
Refuted: The heading, section context, and immediately preceding install command provide an unambiguous antecedent: @supabase/config. The following paragraph reinforces that interpretation by calling it "This package."
Stats
Claude findings: 4 · Codex findings: 0 · Confirmed: 2 · Refuted: 1 · Uncertain: 1
Models: claude-opus-5 + gpt-5.6-sol · Trigger: auto · Workflow run
This review runs once per PR. A maintainer can request another with a /ai-review comment.
…LI-2169) The go-live setup (environment reviewers, trusted publisher, baseline tag, config-v* tag ruleset) is complete, so AGENTS.md's one-time-setup section now records the standing invariants to verify/restore instead of pending steps, the workspace-conventions doc lists packages/config as a published exception, and the workflow comments and private-blocked diagnostics treat private: true as a regression guard rather than a future flip.
Contributor
Author
|
All three AI-review findings addressed in 46885d1 (all accepted; they were outside-diff doc staleness, so no threads to resolve):
|
…span (ci: fmt:check) An unescaped * inside a bold span is an emphasis delimiter to CommonMark, so oxfmt --check rejected the committed text.
jgoux
approved these changes
Sep 1, 2026
avallete
approved these changes
Sep 1, 2026
kanadgupta
approved these changes
Sep 1, 2026
github-merge-queue
Bot
removed this pull request from the merge queue due to failed status checks
Sep 1, 2026
github-merge-queue
Bot
removed this pull request from the merge queue due to failed status checks
Sep 1, 2026
pull Bot
pushed a commit
to chizee/cli
that referenced
this pull request
Sep 1, 2026
…hema (supabase#6425) ## What kind of change does this PR introduce? Bug fix (CI). ## What is the current behavior? The `Codegen` job in the `CI` workflow runs `go generate` against the live Management API spec (`api.supabase.green`) and fails the build if the checked-in `pkg/api` files drift from what it produces. Upstream started splitting every response component schema into a base and `_Output` variant (e.g. `JitListAccessResponse` -> `JitListAccessResponse_Output`), which broke three `apps/cli-go/api/overlay.yaml` selectors targeting the old schema name: ``` failed to apply Overlay "api/overlay.yaml" ... selector "$.components.schemas.JitListAccessResponse.properties.items.items.anyOf[0].properties.invite_id" did not match any targets ``` This has failed the `Codegen` check on every `develop` commit since supabase#6417 (merged 2026-09-01), blocking the merge queue for all PRs since the `merge_group` trigger has no path filter. ## What is the new behavior? - `overlay.yaml` selectors repointed at `JitListAccessResponse_Output` (schema shape is unchanged, only the name). - Regenerated `pkg/api/{types,client}.gen.go` against the current live spec, which also renames every other response schema type to its `*Output` counterpart. - Renamed all downstream Go references (`pkg/config`, `pkg/function`, `internal/utils`, `internal/telemetry`, `internal/functions/download`) to the new `*Output` type names so the module still builds. Verified: `go build ./...`, `go vet ./...`, `golangci-lint run`, and `go generate` (re-run to confirm idempotency) all pass in `apps/cli-go`. `go test ./...` in `apps/cli-go` is green aside from two pre-existing, environment-only failures (no local Docker daemon). `pkg/config`'s test suite has ~20 pre-existing failures that are identical on a clean `develop` checkout (confirmed via a baseline worktree) — unrelated to this change, and that submodule isn't part of the CI `Test` job's scope anyway. ## Related Issue(s) Unblocks the merge queue (e.g. supabase#6423).
Coly010
deleted the
columferry/cli-2169-publish-the-supabaseconfig-npm-package-from-cli-repo
branch
September 1, 2026 18:37
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What kind of change does this PR introduce?
Feature — flips
packages/configtoprivate: false, activating the publish half of the release pipeline that landed in #6381, and drops the README's "not yet published" caveat.What is the current behavior?
@supabase/configisprivate: true: every push touchingpackages/config/**rehearses the plan half of the Release Config workflow (version computation, build, pack, type-surface gate), butshould_releasestays false and nothing publishes. npm currently hosts only a0.0.0placeholder stub.What is the new behavior?
Merging this PR is the package's first real release. The squash commit (
feat(config)) is the first releasable commit since theconfig-v0.0.0baseline tag, so the Release Config workflow will:.d.ts, the type-surface gate renders the entire public surface as additions for the approver,config-releaseenvironment approval (required reviewers configured),config-v0.1.0, and create the GitHub release (never repo-"latest").Go-live preconditions, all in place: npm trusted publisher configured and bootstrap token revoked (verified with infra/security),
config-releaseenvironment armed with required reviewers,config-v0.0.0baseline tag pushed at ed81a1c and verified green (plan run reports "0 commits: no release" pre-merge).Part of CLI-2169.