Throw error if recipe definition is missing any valid combinations #72801
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
None
Purpose of change
Resolves the second part of #65679
Describe the solution
Add a check at the end of checking for deduplicated recipes (when the total number of valid combinations are counted).
If there's no valid combinations at this point, there never will be and something has gone wrong. Loudly warn at the recipe definition instead of just failing silently.
Describe alternatives you've considered
Testing
Re-introduced the JSON error solved by #65761
Was successfully caught during loading, throwing the follow debugmsgs:
Additional context
This does not actually resolve the issue of trying to load components as tools, nor does it warn for that specific occurrence, but it's a general catch-all for a situation that should never be possible. A generic canary is better than no canary.