Skip to content

Split AREG into three tools, fix what the splits left stranded, and repair CI - #21

Merged
Jules-GP merged 19 commits into
mainfrom
feat/areg-ioscbct
Aug 19, 2026
Merged

Split AREG into three tools, fix what the splits left stranded, and repair CI#21
Jules-GP merged 19 commits into
mainfrom
feat/areg-ioscbct

Conversation

@Jules-GP

Copy link
Copy Markdown
Collaborator

What this does

Completes the AREG split (AREG_CBCT / AREG_IOS / AREG_IOSCBCT over a shared
common), and fixes what both this split and the earlier ALI one left behind.

The defects the splits left, and why nothing reported them

Splitting a tool leaves its old tests/test_run.py importing the pre-split
package. pytest reports that as one collection error, so the whole file stops
running: 84 tests for AREG, 16 for ALI. One error reads as one problem.

Behind it:

  • AREG_IOS asked the supervisor for ALI, renamed ALI_IOS by the split.
    The mucogingival mode could never have run. The server's startup check missed
    it because describe.py scanned sup.run("X") and not
    tools.require(sup, "X", ...) — the hole that function's own docstring warns
    against. Both are fixed, with tests.
  • ALI_CBCT's error message named cbct_regions, an argument the split had
    renamed to regions, so it told callers to fill a field the schema does not
    have.
  • AREG's error messages pointed at GET /tools/AREG/data, a 404 since the
    split.
  • ASO reached split_scan_extension through the CBCT pipeline rather than
    its own scans module.

CI

  • The matrix was built with find -mindepth 2 -maxdepth 2, which stopped
    matching when ALI and AREG became grouping folders. CI has been testing six
    tools and silently skipping the five the splits produced — which is where the
    stale tests were found, months later, by hand. It now walks depth 2 and 3 and
    keys on [tool.sadt], the same rule the registry and the deployment
    Dockerfile use. That also drops _template, which CI tested and no server
    serves.
  • actions/checkout and astral-sh/setup-uv moved to the lowest majors running
    on Node 24, clearing the deprecation warning.

Verification

Every suite, run in its own interpreter:

tool tests tool tests
AMASSS 51 ALI_CBCT 43
ASO 82 ALI_IOS 12
Crown_Seg 22 AREG_CBCT 25
Surg_Mov_Pred 24 AREG_IOS 53
Batch_Dental_Seg 24 AREG_IOSCBCT 1
scripts 64

All ten tools were also run end to end over HTTP against the deployment image,
through the Slicer client, on real data — including the three-level supervised
chain (AREG_IOSCBCT to ASO to ALI_CBCT).

AREG_IOSCBCT keeps only one test of its own; the rest of the merged suite
belonged to the other two. Its own argument rules deserve a suite and do not
have one yet.

Copilot AI lite review requested due to automatic review settings August 19, 2026 18:28

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@Jules-GP
Jules-GP merged commit 2a4219c into main Aug 19, 2026
14 checks passed
@Jules-GP
Jules-GP deleted the feat/areg-ioscbct branch August 19, 2026 20:28
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