Skip to content

Fix dependency owner references in InterfaceI tests - #4987

Merged
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:agent/fix-downgrade-interface-master
Aug 17, 2026
Merged

Fix dependency owner references in InterfaceI tests#4987
ChrisRackauckas merged 1 commit into
SciML:masterfrom
ChrisRackauckas-Claude:agent/fix-downgrade-interface-master

Conversation

@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member

Ignore this PR until it has been reviewed by @ChrisRackauckas.

What changed

InterfaceI tests now access jacobian_sparsity, BipartiteEdge, distribute_shift, and simplify_shifts through the dependency modules that own them. The unused SystemStructure import from ModelingToolkit.StructuralTransformations is removed.

This is test-only: it does not restore stale compatibility bindings or change package behavior/API.

Root cause

The import cleanup in commit 03c130782349ca8ed91e4f9a92da08d590c53ffe removed internal dependency aliases from ModelingToolkit and ModelingToolkit.StructuralTransformations, but these three test files still reached five names through those modules. The source boundary is adjacent and independently reproducible: parent 64ced006057dfef83d26f8941767c2a74653e1e6 was green, while the cleanup commit and every current master/PR Julia leg below report the same nine errors.

Restoring the aliases is not a valid fix: I ran GROUP=QA with that version and ExplicitImports rejected all five as stale explicit imports. Qualifying the existing tests through ModelingToolkitBase and BipartiteGraphs preserves the import-cleanup invariant.

The exact downgraded graph used locally included ModelingToolkitBase 1.66.0, ModelingToolkitTearing 1.19.2, BipartiteGraphs 0.1.4, StateSelection 1.11.0, Symbolics 7.32.1, SymbolicUtils 4.37.0, SymbolicIndexingInterface 0.3.46, SciMLBase 3.48.0, and OrdinaryDiffEqCore 4.12.0.

Verification

Failure before

At clean master SHA 3fe375e19031102e95c7775c4d8a6aac9895767b, the exact local Julia 1.10.12 downgrade run reproduced all nine existing UndefVarErrors for the five names. Four temporary diagnostic binding assertions made the aggregate:

InterfaceI | 1330 pass | 4 fail | 9 error | 3 broken | 1346 total | 31m18.4s

Those diagnostic assertions are not in this diff. The clean-master CI job without them reports 1330 pass / 9 error / 3 broken.

Passing after

JULIA_DEPOT_PATH=/home/crackauc/sandbox/tmp_20260811_090509_69787/.mtk-downgrade-interface-depot \
  GROUP=InterfaceI timeout 7200 julia +1.10.12 --startup-file=no --color=no \
  --project=. -e 'using Pkg; Pkg.test()'
InterfaceI | 1486 pass | 3 broken | 1489 total | 31m26.4s
Testing ModelingToolkit tests passed
JULIA_DEPOT_PATH=/home/crackauc/sandbox/tmp_20260811_090509_69787/.mtk-downgrade-interface-depot \
  GROUP=QA timeout 7200 julia +1.12 --startup-file=no --color=no \
  --project=. -e 'using Pkg; Pkg.test()'
QA | 52 pass | 52 total | 4m36.8s
Testing ModelingToolkit tests passed

Also passed:

julia +1.12 --startup-file=no -m Runic --check \
  test/reduction.jl test/structural_transformation/utils.jl \
  test/structural_transformation/tearing.jl
git diff --no-ext-diff --unified=0 | typos -
git diff --check

Docs were not run because the patch changes only tests and does not touch documentation, docstrings, or public API. GROUP=Everything, sublibrary groups, GPU paths, and allowed-to-fail Julia-pre/downstream paths were not run locally.

The separate sublibrary downgrade failure is nine OrdinaryDiffEqCore.DEOptions constructor errors, not this missing-name cluster. The downgraded BoundaryValueDiffEqMIRK CartesianIndex + Int precompile workload and Moshi method-overwrite precompile errors also reproduced locally; Pkg.test() continued past them. None is changed here.

Links

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
@ChrisRackauckas-Claude

ChrisRackauckas-Claude commented Aug 17, 2026

Copy link
Copy Markdown
Member Author

CI infrastructure note: the initial target downgrade job failed before checkout or Julia because GitHub codeload returned HTTP 503 and then 429 while downloading julia-actions/julia-downgrade-compat@v2. Multiple unrelated matrix jobs failed at the same time while downloading other action archives. The target job needs a maintainer rerun; this account receives HTTP 403 on the rerun endpoint.

The exact downgraded InterfaceI group passed locally: 1486 pass / 3 broken.

@ChrisRackauckas
ChrisRackauckas marked this pull request as ready for review August 17, 2026 17:31
@ChrisRackauckas
ChrisRackauckas merged commit 29f589e into SciML:master Aug 17, 2026
29 of 68 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