Skip to content

Restore the scalar DAE Jacobian test helper - #4309

Merged
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:fix/bdf-scalar-jacobian
Aug 21, 2026
Merged

Restore the scalar DAE Jacobian test helper#4309
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:fix/bdf-scalar-jacobian

Conversation

@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member

Please ignore this PR until reviewed by @ChrisRackauckas.

What changed and why

Return the scalar Jacobian value from the out-of-place DAE convergence-test helper. A Runic cleanup converted its previous value-returning assignment into a bare return, so downgrade CI passed nothing to lu before reaching the convergence assertion.

An exact-action reproduction and source-history check identified 09173df as the introducing commit.

Failing before / passing after

The existing downgrade test discriminates without adding or weakening an assertion. On unfixed master:

DAE Convergence Tests | Pass 45 Error 1 Total 46
MethodError: no method matching lu(::Nothing; check::Bool)

With the one-line return restored, the identical command passes the full BDF Core group:

DAE Convergence Tests | 50/50
DAE AD Tests | 40/40
DAE Event Tests | 4/4
DAE derivative_discontinuity! Tests | 11/11
DAE Initialization Tests | 38 passed, 2 existing broken
DAE Nonlinear Solve Path Tests | 16/16
BDF Inference Tests | 1/1
BDF Convergence Tests | 84/84
BDF Regression Tests | 33/33
Nordsieck BDF Tests | 101/101
Testing OrdinaryDiffEqBDF tests passed

Local verification

  • Exact downgrade action on Julia 1.11: TMPDIR="$PWD/.ci-tmp" JULIA_DEPOT_PATH="$PWD/.ci-depot" JULIA_NUM_PRECOMPILE_TASKS=2 GROUP=Core julia +1.11 --startup-file=no --color=no --project=lib/OrdinaryDiffEqBDF -e 'using Pkg; Pkg.test(; allow_reresolve = false)': full group passed after the 45-pass/1-error failure above.
  • GROUP=QA julia +1.12 --startup-file=no --project=lib/OrdinaryDiffEqBDF -e 'using Pkg; Pkg.test()': Allocation 2 pass/18 pre-existing broken, JET 18 pass/23 pre-existing broken, Aqua 21/21; package tests passed.
  • Runic, typos, and git diff --check: passed.

Docs, GPU, downstream, and prerelease-Julia groups were not run because this only repairs a test helper used by the BDF Core/downgrade group.

@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member Author

CI triage: all completed failures are the two independently reproduced master Downstream issues. ProbNumDiffEq’s Julia 1.10 resolver failure is addressed by #4320. PositiveIntegrators’ LinearSolve 5 compatibility failure is addressed upstream by NumericalMathematics/PositiveIntegrators.jl#216. No completed red check currently points to this PR’s changed behavior.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
@ChrisRackauckas
ChrisRackauckas marked this pull request as ready for review August 21, 2026 19:20
@ChrisRackauckas
ChrisRackauckas merged commit 45181ca into SciML:master Aug 21, 2026
111 of 131 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants