Skip to content

Downgrade: Core extras, initdt parse fix, AMF Krylov ref (no floors) - #4012

Closed
ChrisRackauckas-Claude wants to merge 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:agent/downgrade-substantive-fixes
Closed

ChrisRackauckas-Claude wants to merge 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:agent/downgrade-substantive-fixes

Conversation

@ChrisRackauckas-Claude

@ChrisRackauckas-Claude ChrisRackauckas-Claude commented Jul 25, 2026 •

Copy link
Copy Markdown
Member

This PR should be ignored until reviewed by @ChrisRackauckas.

Summary

Substantive fixes for Downgrade CI without package version floor bumps.

Change Why
Core: SparseArrays in [extras] Test target was weakdep-only; Pkg.test aborts under Downgrade
ode_initdt_tests.jl: missing @testset end ParseError on InterfaceI after #4001/#4000
AMF tests: ROS34PW1a(linsolve=KrylovJL()) for dense operator-jac refs SciMLOperators WOperator convert MethodError on AddedOperator/tensor-product graphs (upstream SciMLOperators#411); adjoint FD tol 0.01→0.015

Sibling PR (floors only)

#4009 — Enzyme 0.13 → 0.13.180.

Independent of this PR; either order is fine.

1. OrdinaryDiffEqCore: add SparseArrays to [extras] (already weakdep +
   test target) so Pkg.test does not abort under Downgrade.

2. InterfaceI ode_initdt_tests: close the missing @testset end on the
   DAE reversed-tspan block (SciML#4001/SciML#4000 merge ParseError).

3. OrdinaryDiffEqAMF tests: use ROS34PW1a(linsolve=KrylovJL()) for dense
   reference solves with operator jac_prototype (SciMLOperators WOperator
   convert MethodError on AddedOperator/tensor-product graphs until
   SciMLOperators#411 / v1.24.5). Adjoint FD relerr tol 0.01 → 0.015.

No version floor changes in this commit.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
ChrisRackauckas-Claude pushed a commit to ChrisRackauckas-Claude/OrdinaryDiffEq.jl that referenced this pull request Jul 25, 2026
Conservative floor raise for OrdinaryDiffEqRosenbrock,
OrdinaryDiffEqRosenbrockTableaus, OrdinaryDiffEqBDF, and the AD /
Downstream test environments. At lower 0.13 floors, Downgrade
Sublibraries exposed AutoEnzyme order/step failures (SciML#3987).

Compat-only; no source or test changes. Substantive Downgrade fixes
are in SciML#4012.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
ChrisRackauckas added a commit that referenced this pull request Jul 25, 2026
Conservative floor raise for OrdinaryDiffEqRosenbrock,
OrdinaryDiffEqRosenbrockTableaus, OrdinaryDiffEqBDF, and the AD /
Downstream test environments. At lower 0.13 floors, Downgrade
Sublibraries exposed AutoEnzyme order/step failures (#3987).

Compat-only; no source or test changes. Substantive Downgrade fixes
are in #4012.

Co-authored-by: ChrisRackauckas-Claude <accounts@chrisrackauckas.com>
@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member Author

Split this into one PR per issue, since the three changes here fail independent CI jobs and are independently reviewable:

The third change here (AMF linsolve = KrylovJL() + the 0.01 → 0.015 adjoint tolerance) I did not carry over. Root cause is upstream and already has PRs: WOperator's constructor leaves _concrete_form typed as an AddedOperator when J is one, so convert(AbstractMatrix, W) cannot assign the materialized matrix back — SciML/SciMLOperators.jl#410 / #411. Minimal repro, no OrdinaryDiffEq involved:

using SciMLOperators, LinearAlgebra   # v1.24.4
J = MatrixOperator(rand(4,4)) + MatrixOperator(rand(4,4))
W = SciMLOperators.WOperator{true}(I, 1.0, J, rand(4))
convert(AbstractMatrix, W)
# MethodError: Cannot `convert` an object of type Matrix{Float64}
#              to an object of type SciMLOperators.AddedOperator{...}

Once that ships, AMF should need only a SciMLOperators floor bump rather than a test-side workaround — worth avoiding the tolerance loosening if possible.

Also found while going through master: .typos.toml declares hom twice (lines 72 and 149, from #4004 and #4000), which is a TOML duplicate-key error, so Spell Check with Typos has been aborting before checking anything. Fixed in #4016. And the QA lane's AutoDePSpecialize rendered-docs failure is #4015.

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