Skip to content

test: add repo-wide option-default migration control plane - #3

Draft
suhaslord wants to merge 8 commits into
mainfrom
refactor/option-dependency-inventory
Draft

test: add repo-wide option-default migration control plane#3
suhaslord wants to merge 8 commits into
mainfrom
refactor/option-dependency-inventory

Conversation

@suhaslord

Copy link
Copy Markdown
Owner

Builds the long-horizon migration framework for OpenMDAO#1251 rather than converting another isolated test file.

What this adds

  • AST inventory of every get_option_defaults() call site
  • per-call scope, receiver, explicit set_val keys, and dynamic-set metadata
  • subsystem/domain counts to split the migration into reviewable workstreams
  • machine-readable baseline under aviary/variable_info/migrations
  • permanent CI ratchet: a file cannot gain calls and the repository total cannot increase
  • migration guidance for lowering the baseline subsystem-by-subsystem until the utility can be deleted

Initial dependency map

  • 86 calls across 25 Python files
  • 230 explicit option overrides already visible around those calls
  • GASP geometry: 41 calls
  • aerodynamics: 17
  • two-DOF mission: 13
  • propulsion: 8
  • solved two-DOF: 3
  • energy-state mission: 2
  • mass: 1
  • utils: 1

This does not claim to remove all 86 uses in one review. It creates the measurable control plane that makes a multi-PR migration safe: every future slice can only drive the baseline downward.

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