Skip to content

Port MTK test constructions from deprecated ODESystem to System - #572

Merged
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:test/mtk-system
Oct 8, 2026
Merged

ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:test/mtk-system

Conversation

@ChrisRackauckas-Claude

@ChrisRackauckas-Claude ChrisRackauckas-Claude commented Oct 7, 2026 •

Copy link
Copy Markdown
Member

Summary

ModelingToolkit deprecates ODESystem(args...; kwargs...) in favor of System(...), so GROUP=CPU tests abort under --depwarn=error on the two remaining ODESystem calls in test/gpu_kernel_de/stiff_ode/gpu_ode_modelingtoolkit_dae.jl (the "Host symbolic setter" and "MTK Pendulum DAE" testsets). This PR swaps both to System with identical equations, parameters, and defaults — the rest of the file already uses System.

Verification

Machine has no NVIDIA GPU; verified on the CPU backend only.

Red before (on master, 4f726d5+b6ae953):

GROUP=CPU julia --depwarn=error --project=test -e 'include("test/gpu_kernel_de/stiff_ode/gpu_ode_modelingtoolkit_dae.jl")'
...
Host symbolic setter with trivial initialization: Error During Test
  `ODESystem(args...; kwargs...)` is deprecated. Use `System(args...; kwargs...) instead`.
ERROR: LoadError: Some tests did not pass: 0 passed, 0 failed, 1 errored, 0 broken.

Green after (this branch, same command):

Test Summary:                                    | Pass  Total   Time
Host symbolic setter with trivial initialization |    5      5  26.8s
Test Summary:                        | Pass  Total   Time
MTK Pendulum DAE with initialization |   21     21  26.9s
...
Test Summary:                              | Pass  Total  Time
make_static_storage is the conversion hook |    7      7  0.2s

Every testset in the file (84 tests total; CUDA CI on this PR reports the same 84) passes; exit code 0. runic --inplace made no further changes and typos is clean on the file.

Not verified

  • CUDA/AMDGPU/JLArrays/OpenCL runs of this file (no GPU on this machine); the change is inside @testset bodies that run identically on every backend, and the file already uses System in four other testsets.
  • docs/src/tutorials/modelingtoolkit.md still spells the same deprecated ODESystem in an @example (only exercised by the docs build on a GPU runner) — left alone to keep this PR test-only.
  • ext/CUDAExt.jl still calls deprecated CUDA.CUBLAS.getrf_strided_batched! (warning seen during QA precompile; CUDA-only path, not hit on CPU). Reported, deliberately not changed here.

Please ignore this draft until reviewed by @ChrisRackauckas.

Risk assessment

  • Risk: Low — two-token rename inside test-only code; System is a strict rename of ODESystem in current ModelingToolkit and is already used elsewhere in the same file.
  • Blast radius: One test file; no src/ext changes.
  • Evidence: --depwarn=error failure reproduced on master and shown passing on this branch (CPU backend).
  • Independent review: Claude Code (claude-opus-5-5) rated it low risk, high confidence, verdict MERGE. It reran the file (84/84) and checked the CUDA CI on this PR. Note: master CI runs with --depwarn=yes, so the failure fixed here only shows under --depwarn=error.
  • Merge: needs review

🤖 Generated with Devin CLI 3000.11.3 (model: swe-2-high). Local session, transcript at /home/crackauc/sandbox/goals/qa-hygiene/jobs/gpu-fixes/log.txt on amdci2.

ModelingToolkit deprecates ODESystem(...) in favor of System(...), so
the two remaining ODESystem calls in the kernel-DE DAE testset abort
the CPU group when run under --depwarn=error. The rest of the file
already uses System; this brings the two stragglers in line with the
same equations, parameters, and defaults.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Devin <noreply@cognition.ai>
Agent-Harness: Devin CLI 3000.11.3
Agent-Model: swe-2-high
Agent-Session: local session, transcript at /home/crackauc/sandbox/goals/qa-hygiene/jobs/gpu-fixes/log.txt on amdci2
@ChrisRackauckas
ChrisRackauckas marked this pull request as ready for review October 8, 2026 01:14
@ChrisRackauckas
ChrisRackauckas merged commit 0c7826f into SciML:master Oct 8, 2026
27 of 31 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