Enhance field-level diagnostics and documentation#264
Merged
Splatcrafter merged 12 commits intodevelopfrom Apr 11, 2026
Merged
Conversation
Enable field-aware metadata aggregation and diagnostics for rewrite rules, enhancing visibility of affected fields in composed and standalone operations. Refactor combinators and wrappers to support this functionality. Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
Document field-level diagnostics for rewrite rules, provide usage examples, and update API references across related pages. Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
…ns and improved method details Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
- Split `Schema100` and `Schema110` logic for improved modularity. - Introduce dedicated methods for type templates. - Update migration logic for player data, including field renaming and new structure setup. Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
Add support for detailed field-level diagnostics during migrations. Extend CLI command options, enhance diagnostic report generation (text/JSON formats), and integrate diagnostics into the actuator endpoint. Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
… into feature/field-aware-diagnostics
Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
- Add `MigrationAnalyzer#analyzeFieldOperations` to introspect field-level operations without executing fixes. - Extend testkit with assertions for field-aware rewrite rules. - Add unit tests for `FieldAwareRule` and enhanced diagnostics. - Update schema tools test coverage for field-level analysis. Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
…across modules - Annotate `equals`, `toString`, and other critical methods with nullability annotations for improved clarity and static analysis. - Adjust constructors and method signatures to explicitly define nullable parameters. - Update imports where necessary to support new annotations. Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
- Introduced `DiagnosticsTestSupport` providing utilities for passthrough type codecs used in diagnostic tests. - Added E2E tests for the field-aware diagnostics pipeline in `FieldAwareDiagnosticsE2E`. - Included static analysis tests in `FieldOperationAnalysisE2E` for migration fixes using `MigrationAnalyzer`. - Verified handling of multi-step migrations, operation filtering, and opaque fix detection across schemas. Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
- Updated `DataFixerEndpointTest` to use a real `FixExecution` record instead of a mock, as records are final and cannot be mocked. - Populated the `FixExecution` with realistic field operations to improve test accuracy and coverage. Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
- Added detailed descriptions for combinators, traversal methods, field operations, and diagnostic integration. - Included examples and usage scenarios for migration rules and field-level metadata handling. - Enhanced guidance on diagnostics, batch operations, and path-based transformations. Signed-off-by: Erik Pförtner <splatcrafter@splatgames.de>
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Snapshot WarningsEnsure that dependencies are being submitted on PR branches and consider enabling retry-on-snapshot-warnings. See the documentation for more information and troubleshooting advice. Scanned FilesNone |
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
This PR introduces and integrates field-level diagnostics for rewrite rules, improves documentation, and enhances test coverage. The changes refactor diagnostics handling, enable static field-level analysis, and provide detailed documentation for field-aware APIs and tools.
Type of Change
Related Issues
None.
Changes
MigrationAnalyzer#analyzeFieldOperations.RulesAPIs and specific methods likesetAtPathRecursive.@NotNull,@Nullable) for critical methods across modules.Verification
Breaking Changes
No directly breaking changes, but consumers of the API should expect enhanced field-level metadata and diagnostics. Update dependencies and recompute types where necessary.
Checklist