Skip to content

CI: check out RobustToolbox so nightly walkthroughs pass (weighted_corrcoef dep)#85

Merged
torwager merged 1 commit into
masterfrom
fix/walkthrough-robusttoolbox-dep
Jul 4, 2026
Merged

CI: check out RobustToolbox so nightly walkthroughs pass (weighted_corrcoef dep)#85
torwager merged 1 commit into
masterfrom
fix/walkthrough-robusttoolbox-dep

Conversation

@torwager

@torwager torwager commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Fixes the nightly tests-walkthroughs job, which has failed every night since the walkthrough suite landed.

Root cause (not headless): canlab_test_walkthrough_5_regression errors at section 16 with

MATLAB:UndefinedFunction — Undefined function 'weighted_corrcoef'
  at plot_correlation_samefig (line 118)   % robust-correlation branch

weighted_corrcoef ships in canlab/RobustToolbox (Robust_stats_functions/) — a dependency of plot_correlation_samefig's robust branch, which the regression walkthrough exercises (plot_correlation_samefig(..., 1)). A normal canlab_toolbox_setup install puts RobustToolbox on the path; the CI runner didn't check it out.

The fault-tolerant harness is working correctly — the display-only sections in walkthroughs 4b/7 skip gracefully. This was purely a missing path dependency; the only genuine (non-environment) error was the missing function. The failure gate is if any([results.Failed]), so the unrelated "1 incomplete" (walkthrough 1 assumption-skip) is harmless.

Fix: check out canlab/RobustToolbox and addpath(genpath('RobustToolbox')), mirroring the other sibling-repo checkouts.

Verified locally: removing RobustToolbox from the path reproduces the exact error; restoring it runs plot_correlation_samefig's robust path cleanly. A workflow_dispatch run on this branch is in progress to confirm the full headless nightly goes green.

🤖 Generated with Claude Code

The nightly walkthrough job has failed every night since the suite landed:
canlab_test_walkthrough_5_regression errors at section 16 with
"Undefined function 'weighted_corrcoef'". That function ships in the
canlab/RobustToolbox sibling repo (Robust_stats_functions/), a dependency
of plot_correlation_samefig's robust branch, which the regression
walkthrough exercises. A normal canlab_toolbox_setup install has
RobustToolbox on the path; the CI runner did not.

Add a RobustToolbox checkout + addpath(genpath(...)). Not a headless
issue -- the fault-tolerant harness already skips display-only sections
correctly; this was a missing path dependency. Verified locally: removing
RobustToolbox from the path reproduces the exact error; restoring it runs
plot_correlation_samefig's robust path cleanly.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@torwager torwager merged commit 0e6c3cd into master Jul 4, 2026
2 of 3 checks passed
@torwager torwager deleted the fix/walkthrough-robusttoolbox-dep branch July 4, 2026 17:42
torwager added a commit that referenced this pull request Jul 4, 2026
… deps

Reflects the dependency surfaced by the nightly walkthrough fix (#85): the
walkthrough tier needs RobustToolbox on the path (weighted_corrcoef) in
addition to the unit-tier prerequisites, and the nightly CI checks out
CANlab_help_examples and RobustToolbox.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
torwager added a commit that referenced this pull request Jul 4, 2026
* CLAUDE.md: document the matlab.unittest harness and CI

The Tests section still claimed "there is no test harness." Master now has
canlab_run_all_tests (matlab.unittest), a canlab_test_*.m naming/discovery
convention, a fault-tolerant walkthrough integration tier, and GitHub Actions
CI (test.yml, tests-walkthroughs.yml, codespell.yml). Document the runner
options, layout, Passed/Failed/Incomplete semantics, and prerequisites
(CanlabCore + Neuroimaging_Pattern_Masks + SPM on path).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

* CLAUDE.md: note walkthrough tier's RobustToolbox/CANlab_help_examples deps

Reflects the dependency surfaced by the nightly walkthrough fix (#85): the
walkthrough tier needs RobustToolbox on the path (weighted_corrcoef) in
addition to the unit-tier prerequisites, and the nightly CI checks out
CANlab_help_examples and RobustToolbox.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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.

1 participant