Only backjump if the current broken state is an incompatible dependency #155
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 appears to fix backjumping, in all cases, while keeping the performance benefits.
I do not have an intuitive explanation, but I created a series of tests and printed out debugging information and looked at when the current backjumping made the wrong choice, and it was always when the current broken state's name was not in the incompatible dependencies.
I have added two tests that currently fail that I constructed from my understanding of when the problem occurs.
I have created another test, not in this PR, based on
kedro[test]==0.18.13
, however the JSON is massive (450k lines), and it would require a betterget_preference
to complete in a reasonable number of rounds. Let me know if you want me to try and get that test working for this or another PR.