Repository navigation
feat(config): add db.migrations.checks severities and exclusions (CLI-2782, CLI-2783) - #7312
Merged
mdonnalley merged 4 commits intoOct 27, 2026
Conversation
Contributor
There was a problem hiding this comment.
🤖 AI Review
Verified all four findings from both completed reviews. Confirmed the Go configuration compatibility regression, silent acceptance of non-table exclusions, and a documentation nit. Whitespace acceptance is verified, but whether it violates the intended naming contract remains uncertain. No findings overlap.
Findings
| Severity | Location | Category | Sources | Claim |
|---|---|---|---|---|
| 🔴 CRITICAL | packages/config/src/db.ts:154 |
compatibility |
claude | Using the newly advertised db.migrations.checks section breaks Go-delegated commands that load project configuration, including db diff --use-pg-schema. |
| 🟡 MINOR | packages/config/src/db-migration-checks.ts:125 |
config-validation |
codex | Non-table objects such as Date instances can be silently accepted as an empty exclusion table. |
| ⚪ NIT | packages/config/src/db-migration-checks.ts:50 |
validation |
claude | The object-name pattern permits whitespace immediately before the separator, potentially allowing typoed exclusions such as public .countries. |
| ⚪ NIT | packages/config/src/db-migration-checks.ts:81 |
docs |
claude | The published description's wording, "Runs against --db-url read this section from config.toml only," is awkward and could be clearer. |
Stats
Claude findings: 3 · Codex findings: 1 · Confirmed: 3 · Refuted: 0 · Uncertain: 1
Models: claude-opus-5-5 + gpt-6.1-sol · Trigger: auto · Workflow run
This review runs once per PR. A maintainer can request another with a /ai-review comment.
avallete
approved these changes
Oct 26, 2026
…-2782, CLI-2783) Adds the [db.migrations.checks] table with per-rule severities and per-rule exclusion lists. Rule names, severities and exclusion entries are validated with path-scoped messages, and the section is published in the CLI config JSON Schema. A CLI policy resolver defaults unset rules to warn.
Exclusion entries reject whitespace next to the schema separator, and the --db-url note in the section description is reworded.
mdonnalley
force-pushed
the
mikedonnalley/cli-2782-1-dbmigrationschecks-config-schema-absent-warn
branch
from
October 26, 2026 17:51
ef79030 to
46072c9
Compare
mdonnalley
enabled auto-merge
October 26, 2026 18:45
mdonnalley
deleted the
mikedonnalley/cli-2782-1-dbmigrationschecks-config-schema-absent-warn
branch
October 27, 2026 07:58
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.
Summary
Adds a
[db.migrations.checks]section toconfig.toml. Each of the nine migration securityrules gets a severity (
error,warnoroff), and[db.migrations.checks.exclude]lists"schema.name"objects to skip per rule. Nothing reads the policy yet; the migration applypath consumes it in a follow-up.
with path-scoped messages, including a "did you mean" suggestion for misspelled rules. This
section is stricter than the rest of the config so an older CLI never ignores a rule a
teammate set.
warn.CliConfiggainsdb.migrations.checks; the new constants are exported from@supabase/config/internalonly.Linked issue
Closes CLI-2782
Closes CLI-2783
Part of CLI-2786
Part of CLI-2787