ci: install jax on the recovery job so the gradient-path fits run - #519
Merged
Conversation
The recovery tier includes gradient-path parameter-recovery fits whose log-scaled parameters route the gradient into sampling space through jax (test_gradient_*, and the Rijal-2025 real-world cases in test_real_world_examples.py). Those tests RAISE PybnfError rather than skip when jax is absent, so the recovery job -- added in #518 with setup-pybnf's default jax: 'false' -- failed deterministically on its first dispatch: 2 hard failures (lacud5_ode, five_dl1_ode), 125 passed, in ~11.7 min. Not a stochastic tolerance flake; a missing optional dependency. A complete recovery environment provisions jax, so install it here via the composite action's jax input -- exactly as tests.yml's pytest-jax job already does for the same gradient path. The two failing cases pass locally in ~15s with jax present. Follow-up to #518 / #517.
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.
Follow-up to #518 / #517.
The recovery job added in #518 was dispatched for the first time to size it (the point of shipping it dispatch-only). It came back
failureat ~11.7 min: 125 passed, 2 failed — and the two failures were a config gap in the job, not a stochastic tolerance flake:Those two real-world cases fit log-scaled parameters through jax-backed gradient assembly, and they raise rather than skip when jax is absent. The recovery job was built with
setup-pybnf's defaultjax: 'false', so it failed deterministically — it will fail identically every run until jax is installed.Fix
Add
jax: 'true'to the recovery job — exactly astests.yml'spytest-jaxjob already does for the same gradient path. A complete recovery environment provisions jax.Verification
workflow_dispatchon the branch ref to confirm the whole recovery tier goes green under jax before merge. (Result linked in comments.)Sizing takeaways from the first dispatch (context for #517)
slowjob ran 32 min, vs the ~8 min its comment claims. Not touched here; flagged for a possible follow-up.