Fix plot idxs dimension check to use transform output arity - #660
Merged
ChrisRackauckas merged 3 commits intoSep 26, 2026
Merged
Conversation
Mirror the SciMLBase fix: assert plot-series consistency on each transform's output length, not idxs input arity, and throw ArgumentError when series genuinely mix 2-D and 3-D outputs. Co-Authored-By: Chris Rackauckas <[email protected]> Co-Authored-By: Cursor Agent <[email protected]> Agent-Harness: Cursor Agent CLI 2026.09.18-9a7762b Agent-Model: auto Agent-Session: local session, transcript at /home/crackauc/sandbox/goals/issue-backlog/jobs/fix-SciMLBase-DE360/log.txt on amdci2.julia.csail.mit.edu
Mirror SciMLBase: require DEFAULT_PLOT_FUNC for short labels, and take series dims from evaluated map(f, ...) output instead of probing with integer 1s that break typed/domain-restricted transforms. Co-Authored-By: Chris Rackauckas <[email protected]> Co-Authored-By: Cursor Agent <[email protected]> Agent-Harness: Cursor Agent CLI 2026.09.18-9a7762b Agent-Model: auto Agent-Session: local session, transcript at /home/crackauc/sandbox/goals/issue-backlog/jobs/fix-SciMLBase-DE360/log.txt on amdci2.julia.csail.mit.edu
The exported helper previously took (dims, vars, plott, A). Keep accepting dims for compatibility and ignore it; plotted dims come from evaluated series output. Add a regression call of the 4-argument form. Co-Authored-By: Chris Rackauckas <[email protected]> Co-Authored-By: Cursor Agent <[email protected]> Agent-Harness: Cursor Agent CLI 2026.09.18-9a7762b Agent-Model: auto Agent-Session: local session, transcript at /home/crackauc/sandbox/goals/issue-backlog/jobs/fix-SciMLBase-DE360/log.txt on amdci2.julia.csail.mit.edu
ChrisRackauckas
marked this pull request as ready for review
September 26, 2026 13:01
Merged
ChrisRackauckas
referenced
this pull request
Sep 26, 2026
Agent-Harness: Claude Code Agent-Model: claude-opus-5-5[1m] Agent-Session: local Claude Code session 3cd6500a-1f81-46b5-ac0b-c466e15b6a53 on Chris's Mac (session ID, no URL) Co-authored-by: Claude Opus 5.5 (1M context) <[email protected]>
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.
Summary
Same fix as SciMLBase#1609 for the copy of the plot helpers that SciMLBase PR #1305 intends to delegate to: stop asserting
length(var) - 1 == dimson idxs input arity; check each transform's output coordinate count and throwArgumentErrorwhen series genuinely disagree (2-D vs 3-D).Follow-up (independent review #1): (1) short-label branch now also requires
x[1] === DEFAULT_PLOT_FUNCso(adder,0,3,4)stays"f(t,u[3],u[4])". (2) deleted probe helpers; dims come from evaluatedmap(f, ...)output (avoids MethodError/DomainError on transforms that used to plot).Follow-up (independent review #2): restored the exported
solplot_vecs_and_labels(dims, vars, plott, A)4-arg signature (dimsaccepted and ignored; computed output dims count); deleted the orphan history comment; added a test calling the 4-arg form.Part of SciML/DifferentialEquations.jl#360 — primary user-facing fix is SciML/SciMLBase.jl#1609.
Review follow-up: before (new tests on prior PR code)
Review follow-up: after
Test group tail (
GROUP=CoreviaPkg.test)Not verified
What to push back on
(f,0,i)are now labelledf(t,u[i])instead ofu[i]; this is more accurate (e.g.(sq,0,3)plots u3²), but it is a visible label change.Please ignore this draft until reviewed by @ChrisRackauckas.
Risk assessment
src/vector_of_array.jl(DiffEqArray/VectorOfArray recipes). The exportedsolplot_vecs_and_labels(dims, vars, plott, A)keeps its 4-argument signature and ignoresdims. The logic is identical to the merged Fix plot idxs dimension check to use transform output arity SciMLBase.jl#1609. Visible change: custom transforms(f,0,i)are labelledf(t,u[i])instead ofu[i].rat | 49 49). Plotted data for existing forms is unchanged. The two red CI jobs (SciMLSensitivity Downstream Core1 and Core6) fail the same way on master: https://github.com/SciML/RecursiveArrayTools.jl/actions/runs/36085624927.Risk assessment and review coordination by 🤖 Claude Code (model: claude-opus-5-5[1m]), https://claude.ai/code/session_01NdFVhANTF4nepTbqYxjfRP