Skip to content

Support multi-venv workflows by adding recursive ADR opt-out per dependency#916

Draft
arjunsuresh with Copilot wants to merge 5 commits into
devfrom
copilot/support-multiple-python-envs
Draft

Support multi-venv workflows by adding recursive ADR opt-out per dependency#916
arjunsuresh with Copilot wants to merge 5 commits into
devfrom
copilot/support-multiple-python-envs

Conversation

Copilot AI commented Apr 20, 2026

Copy link
Copy Markdown
Contributor

🧾 PR Checklist

  • Target branch is dev

📌 Note: PRs must be raised against dev. Do not commit directly to main.

📁 File Hygiene & Output Handling

  • No unintended files (e.g., logs, cache, temp files, pycache, output folders) are committed

📝 Comments & Communication

  • Proper inline comments are added to explain important or non-obvious changes
  • PR title and description clearly state what the PR does and why
  • Related issues (if any) are properly referenced (Fixes #, Related to #, etc.)

adr currently propagates Python dependency overrides through the full workflow tree, which makes mixed-environment flows (e.g., calibration in a different venv) brittle.
This change introduces a per-dependency escape hatch so selected deps can stay local even when parent adr overrides are present.

  • Core behavior change (automation/script/module.py)

    • Added recursive-update path that skips deps marked skip_add_deps_recursive: true.
    • Wired this into recursive override application points (adr / add_deps_recursive).
  • Applied to Python venv install path (script/install-python-venv/meta.yaml)

    • Marked the get,python,-virtual dependency as non-recursive-overrideable to prevent global Python ADR leakage into venv creation.
  • Docs + coverage

    • Documented skip_add_deps_recursive in script automation README dependency modifiers.
    • Extended test-mlc-script-features.yml with a focused workflow test that validates recursive ADR does not override deps opting out.
deps:
  - names: [python]
    tags: get,python,-virtual
    skip_add_deps_recursive: true

🛡️ Safety & Security

  • No secrets or credentials are committed
  • Paths, shell commands, and environment handling are safe and portable

Copilot AI changed the title [WIP] Add support for multiple Python virtual environments in MLC workflow Support multi-venv workflows by adding recursive ADR opt-out per dependency Apr 20, 2026
Copilot AI requested a review from arjunsuresh April 20, 2026 22:28
@github-actions

github-actions Bot commented Apr 20, 2026

Copy link
Copy Markdown
Contributor

MLCommons CLA bot All contributors have signed the MLCommons CLA ✍️ ✅

@arjunsuresh arjunsuresh changed the base branch from main to dev May 8, 2026 19:07
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.

Support multiple python virtual environment in a MLC workflow

2 participants