Conversation
Extract TreeBuilder definitions from DI extensions into dedicated Configuration classes (PlatformConfiguration, SaasConfiguration, UiConfiguration) that implement PlatformConfigurationInterface. SchemaGenerator collects all tagged PlatformConfigurationInterface services and dynamically traverses their NodeInterface trees to produce a JSON Schema, so any future config additions are picked up automatically without touching the command or schema file. GenerateSchemaCommand now extends the platform Command base class and delegates schema building to SchemaGenerator. Also reverts PlanRepository::find() signature to remove Doctrine LockMode type hints added by Rector, pending downstream updates.
- Add SchemaGeneratorInterface so GenerateSchemaCommand can depend on an interface (SchemaGenerator is final readonly and cannot be mocked) - Fix ScalarNode/VariableNode match order in SchemaGenerator (ScalarNode extends VariableNode, must be checked first) - Add #[Override] to SchemaGenerator::generate() now that it implements the interface - Revert PlanRepository::find() to use proper LockMode type hints after Rector changes - Add comprehensive unit tests for PlatformConfiguration, SaasConfiguration, UiConfiguration, SchemaGenerator, and GenerateSchemaCommand - Update PHPStan baseline to cover unavoidable mixed-array-access errors in test files (Symfony Processor returns mixed)
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.
No description provided.