Skip to content

[CI] Add explicit Buildkite step keys to 7 keyless test-area steps - #53085

Draft
khluu wants to merge 1 commit into
mainfrom
ci/add-explicit-step-keys-7
Draft

[CI] Add explicit Buildkite step keys to 7 keyless test-area steps#53085
khluu wants to merge 1 commit into
mainfrom
ci/add-explicit-step-keys-7

Conversation

@khluu

@khluu khluu commented Aug 20, 2026

Copy link
Copy Markdown
Member

Why

Steps without an explicit key: only get one derived from their label during group conversion in the ci-infra pipeline generator — which runs after test-area candidacy is computed for nightly trace enrollment (read_steps_from_job_dir collects step.key while keyless steps still have key=None). These 7 plain-pytest steps are therefore silently invisible to key-based CI automation, including the nightly trace-instrumentation enrollment.

What

Adds explicit key: to the 7 affected steps — no label, command, dependency, timeout, or device changes:

  • .buildkite/test_areas/rust_frontend.yaml (5): rust-frontend-openai-coverage, rust-frontend-serve-admin-coverage, rust-frontend-core-correctness, rust-frontend-tool-use, rust-frontend-distributed — following the rust-frontend-* convention from rust_frontend_cargo.yaml
  • .buildkite/test_areas/lm_eval.yaml (1): lm-eval-mrcr-small-models — following the lm-eval-* convention
  • .buildkite/test_areas/docker.yaml (1): docker-build-metadata

Notes

  • Adding key: changes the Buildkite step identity for these 7 steps (previously auto-derived from labels, e.g. -nvidia--h200-mrcr-eval-small-models). Label-keyed dashboards/automation are unaffected.
  • Nightly behavior change: on the first real main nightly after this merges, these 7 keys become newly trace-enrolled (5 kernel-set on H200/L4, 2 python-only). Instrumentation is fail-closed — any collector failure marks the job unhealthy and keeps it in the always-run set — but reviewers should know this changes nightly behavior, not just step identity.

Validation

Generator probe against this tree (ci-infra configure_test_tracing on .buildkite/test_areas): all 7 keys are visible at candidacy time and enroll as traced jobs under the nightly path — docker-build-metadata and rust-frontend-distributed as python-only, the other five as kernel-set; none fall to always-run.

Steps without an explicit 'key:' get one derived from the label only
during group conversion in the ci-infra pipeline generator, which runs
after test-area candidacy for nightly trace enrollment is computed.
These 7 plain-pytest steps (5 Rust Frontend E2E, MRCR Eval Small
Models, Docker Build Metadata) are therefore silently invisible to any
automation that matches steps by key at generation time.

Keys follow the existing per-file conventions (rust-frontend-* as in
rust_frontend_cargo.yaml, lm-eval-* as in lm_eval.yaml). No label,
command, dependency, or device changes; note that adding key: changes
the Buildkite step identity for these steps (label-keyed dashboards
and automation are unaffected).

Signed-off-by: Kevin Luu <51931015+khluu@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant