Skip to content

ci: introduce L-tier scope vocabulary via parser#4616

Closed
balasaajay wants to merge 1 commit into
NVIDIA:mainfrom
balasaajay:abalasa.main-update-tests
Closed

ci: introduce L-tier scope vocabulary via parser#4616
balasaajay wants to merge 1 commit into
NVIDIA:mainfrom
balasaajay:abalasa.main-update-tests

Conversation

@balasaajay
Copy link
Copy Markdown
Contributor

What does this PR do ?

Add LEGACY_SCOPE_ALIASES in recipe_parser.py that maps legacy scope values (mr, mr-slim, mr-github, mr-github-slim, nightly, weekly) to the new L-tier vocabulary (L0/L1/L2/L3). The alias rewrites scope per workload row in flatten_products and injects a default cadence only when the legacy name implied a trigger (nightly -> [nightly], weekly -> [weekly]) and the recipe has no explicit cadence set. Add weekly to ALLOWED_CADENCE_VALUES.

⚠️ For major changes (either in lines of code or in its impact), please make sure to first share a design doc with the team. If you're unsure what's the best way to do so, contact the @mcore-oncall.

Issue tracking

For PRs from open-source community contributors:

  • New features: a linked issue is required. Please open a feature request and reference it here before submitting the PR.
  • Small updates (bug fixes, minor improvements): a linked issue is recommended and will accelerate the PR review process.

Linked issue:

Contribution process

Pre-checks

  • I have added relevant unit tests
  • I have added relevant functional tests
  • I have added proper typing to my code Typing guidelines
  • I have added relevant documentation
  • I have run the autoformatter.sh on my PR

Code review

Feel free to message or comment the @mcore-oncall to help accelerate your merge into main. The less complex your PR is, the faster it will be approved and merged!

All PRs start as draft. If you open a non-draft PR, it will be automatically converted to draft.

Step 1: Mark PR as "Ready for Review"

  1. When your PR is ready, click Ready for Review.
  2. An oncall reviewer is auto-assigned and expert reviewers are notified based on your changes.
    • Some PRs may jump straight to step 2. This is determined by .github/CODEOWNERS.

⚠️ Only mark as ready once merge-conflicts are resolved and the CI is passing.
Final Review might get declined if these requirements are not fulfilled.

Step 2: Final Review

For PRs that change megatron/core, once all expert reviewers have approved, the Final Review label is applied automatically and final reviewers are assigned.

For PRs outside megatron/core, this step is skipped.

Step 3: Approved

Once all required reviewers have approved, the Approved label is applied automatically.

Merge

Any member of mcore-engineers will be able to merge your PR.

For MRs into `dev` branch The proposed review process for `dev` branch is under active discussion.

MRs are mergable after one approval by either eharper@nvidia.com or zijiey@nvidia.com.

Add LEGACY_SCOPE_ALIASES in recipe_parser.py that maps legacy scope values
(mr, mr-slim, mr-github, mr-github-slim, nightly, weekly) to the new L-tier
vocabulary (L0/L1/L2/L3). The alias rewrites `scope` per workload row in
flatten_products and injects a default cadence only when the legacy name
implied a trigger (nightly -> [nightly], weekly -> [weekly]) and the
recipe has no explicit cadence set. Add `weekly` to ALLOWED_CADENCE_VALUES.

Flip in-repo CI call sites to the new tier names so new contributors only
see L0/L1: cicd-main.yml configure step picks L0/L1 instead of
mr-github-slim/mr-github; dev defaults in launch_jet_workload.py and
generate_local_jobs.py default to L1; tools/bisect.{sh,md} reference L1.

unit-tests is intentionally not aliased - .gitlab/stages/02.test.yml
still passes that exact string and the recipes still declare it. The
GitLab FUNCTIONAL_TEST_SCOPE variable is set externally and continues
to send legacy values; the alias resolves them transparently. A comment
in 04.functional-tests.yml documents this.

Recipe YAMLs are not edited; they continue to work via the alias.

Co-authored-by: Cursor <cursoragent@cursor.com>
@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot Bot commented May 4, 2026

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@balasaajay balasaajay changed the title ci: introduce L-tier scope vocabulary via parser alias ci: introduce L-tier scope vocabulary via parser May 4, 2026
@balasaajay balasaajay closed this May 5, 2026
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