Skip to content

Migrate netdes harness invocations to generic_cylinders.py#661

Open
DLWoodruff wants to merge 1 commit intoPyomo:mainfrom
DLWoodruff:netdes_update
Open

Migrate netdes harness invocations to generic_cylinders.py#661
DLWoodruff wants to merge 1 commit intoPyomo:mainfrom
DLWoodruff:netdes_update

Conversation

@DLWoodruff
Copy link
Copy Markdown
Collaborator

Summary

  • Archive examples/netdes/netdes_ef.py (no callers), netdes_ph.py (no callers), drivertest.py (developer scratch), and netdes_extension.py (only referenced from a commented-out line in netdes_ph.py) under examples/netdes/archive/.
  • examples/run_all.py: add a parallel generic_cylinders.py --module-name netdes entry next to the retained netdes_cylinders.py one. --slammax, --cross-scenario-cuts, and the --obbt presolve flags are not wired through generic_cylinders.py, so the new entry uses --subgradient-hub + --xhatshuffle + --presolve instead; the options unique to the custom driver are still covered by the netdes_cylinders.py entry above.
  • doc/src/examples.rst: reword the netdes section to say runs go through the generic driver by default and that netdes_cylinders.py is retained as the cross-scen-cuts/slammax worked example.

Retained in place: netdes.py (model module), netdes_cylinders.py (rst-referenced), netdes_with_class.py (rst-referenced + used by generic_tester.py), parse.py (imported by both netdes.py and netdes_with_class.py).

Test plan

  • mpiexec -np 2 python -m mpi4py ../../mpisppy/generic_cylinders.py --module-name netdes --max-iterations=3 --instance-name=network-10-20-L-01 --netdes-data-path ./data --rel-gap=0.0 --default-rho=10000 --presolve --subgradient-hub --xhatshuffle --max-solver-threads=2 --solver-name=gurobi_persistent — runs, subgradient hub + xhat spoke terminate cleanly
  • ruff check examples/run_all.py
  • CI run_all job on this PR

🤖 Generated with Claude Code

netdes.py exposes scenario_creator, scenario_names_creator,
kw_creator, inparser_adder, scenario_denouement, and
sample_tree_scen_creator, so the generic driver can run it.

- Archive examples/netdes/netdes_ef.py (no callers), netdes_ph.py (no
  callers), drivertest.py (developer scratch), and netdes_extension.py
  (referenced only from a commented-out line in netdes_ph.py) under
  examples/netdes/archive/.
- run_all.py: add a generic_cylinders invocation paralleling the
  retained netdes_cylinders.py entry. --slammax, --cross-scenario-cuts,
  and --obbt are not wired through generic_cylinders, so the new entry
  uses --subgradient-hub + --xhatshuffle + --presolve instead; the
  options unique to the custom driver are still covered by the
  netdes_cylinders.py entry above.
- doc/src/examples.rst: reword the netdes section to say runs go
  through the generic driver by default and that netdes_cylinders.py
  is retained as the cross-scen-cuts/slammax worked example.

Retained: netdes.py (model), netdes_cylinders.py (rst), parse.py
(imported by netdes.py and netdes_with_class.py), and
netdes_with_class.py (rst + used by generic_tester.py).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@codecov
Copy link
Copy Markdown

codecov bot commented Apr 19, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 70.70%. Comparing base (b726347) to head (f41dbe0).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #661      +/-   ##
==========================================
- Coverage   70.71%   70.70%   -0.02%     
==========================================
  Files         153      153              
  Lines       19005    19005              
==========================================
- Hits        13439    13437       -2     
- Misses       5566     5568       +2     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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