feat(resolver): implement system catalog smart defaulting#103
Merged
fernando-villalba merged 1 commit intomainfrom Jan 3, 2026
Merged
feat(resolver): implement system catalog smart defaulting#103fernando-villalba merged 1 commit intomainfrom
fernando-villalba merged 1 commit intomainfrom
Conversation
This commit implements the "Smart Defaulting" logic for the System Catalog as defined in Design 8 (API) and Design 4 (Admission Control). Previously, the resolver only applied static defaults (images, template refs), leaving the `spec.databases` list empty if not provided by the user. This prevented the "Ultra-Minimalist" configuration (defining only Cells) from functioning, as no database would be reconciled. Changes: - Update `PopulateClusterDefaults` to automatically inject the mandatory `postgres` database (marked default) if the database list is empty. - Automatically inject the mandatory `default` TableGroup if a database's tablegroup list is empty. - Add system constants for default database and tablegroup names. - Update unit tests to verify that minimalist configs now resolve to a fully valid System Catalog topology. This prepares the shared resolver logic for the upcoming Mutating Webhook implementation and immediately fixes the fallback path for the Controller.
🔬 Go Test Coverage ReportSummary
Status✅ PASS DetailShow New Coverage |
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.
This commit implements the "Smart Defaulting" logic for the System Catalog as defined in Design 8 (API) and Design 4 (Admission Control).
Previously, the resolver only applied static defaults (images, template refs), leaving the
spec.databaseslist empty if not provided by the user. This prevented the "Ultra-Minimalist" configuration (defining only Cells) from functioning, as no database would be reconciled.Changes:
PopulateClusterDefaultsto automatically inject the mandatorypostgresdatabase (marked default) if the database list is empty.defaultTableGroup if a database's tablegroup list is empty.This prepares the shared resolver logic for the upcoming Mutating Webhook implementation and immediately fixes the fallback path for the Controller.