Skip to content

Enforce wall-clock budgets per test layer #12877

Closed

Description

@cv

Part of #12876.

Problem

Nothing limits how long tests run. The lifecycle step grew to 684 s on linux_arm64 and 747 s on linux_amd64, and its slowest test, deployment::web_search_cli_export_reapply_and_destroy, takes 241 s. A slower test passes CI as long as it passes.

Scope

  • Record each layer's budget and per-test limit in one checked-in file.
  • cargo ci reads the nextest JUnit report of each profile, compares wall time with the layer budget and each test with its limit, and fails naming every offender with its time and limit.
  • Nextest profiles stop a test at its limit with slow-timeout and terminate-after.
  • Budgets apply on the Linux runners; macOS and Windows report their times without failing.
  • Start with budgets that pass today, then lower them as Test in three layers with wall-clock budgets #12876's other sub-issues land.

Done when

A test that exceeds its limit, or a layer that exceeds its budget, fails CI with its time and budget, and the testing guide names the budgets.

Activity

  1. added
    area: ciCI workflows, checks, release automation, or GitHub Actions
    v1NemoClaw v1 branch
    on Oct 9, 2026
  2. cv commented on Oct 10, 2026

    @cv
    CollaboratorAuthor

    Status on v1:

    Still open: #12969 lowers the lifecycle budget to 300 s per partition and 90 s per test. It closes this issue.

  3. added a commit that references this issue on Oct 10, 2026
    11bba1d
  4. cv commented on Oct 11, 2026

    @cv
    CollaboratorAuthor

    Done on v1:

    Stopping a test at its limit inside nextest moves to #12979.

    v1 is not the default branch, so the closing keywords did not apply.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: ciCI workflows, checks, release automation, or GitHub Actionsv1NemoClaw v1 branch

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions