Skip to content

ci: the windows 64 Debug nightly cell is gone - #4507

Merged
borisbat merged 1 commit into
masterfrom
bbatkin/ci-no-win64-debug
Nov 9, 2026
Merged

borisbat merged 1 commit into
masterfrom
bbatkin/ci-no-win64-debug

Conversation

@borisbat

@borisbat borisbat commented Nov 9, 2026

Copy link
Copy Markdown
Collaborator

Behavior change: the nightly matrix no longer runs a windows 64 Debug cell. The per-PR matrix is unchanged; the four other Debug cells keep covering the Debug-only interpreter paths.

Why. An MSVC Debug sweep of tests/ takes most of an hour on the hosted runner, and the lane's run_build || run_build_isolated retry turns one missed watchdog into a four-hour job. On #4495 the merged lint project suite ran 1775 s as one ctest there, past dastest's 1200 s default, and the cell then sat in its isolated retry for the rest of the night; master's own nightly the same day took 37 min, so the cell flips on any slow suite.

What changes.

  • ci/ci_matrix.py drops the cell; the raised sweep watchdogs (SLOW_SWEEP_BUDGETS) now name the sanitizer cells alone.
  • ci/test_ci_matrix.py: the nightly-only cell list loses that one name and the half-speed assertion keys on sanitizers only. No assertion is dropped or loosened beyond the removed cell.
  • utils/CMakeLists.txt: the lint_project_* ctest's Windows Debug exemption from utils, dastest/tests: suites merge by topic; lint exe; shape gate per root #4495 goes with the cell.
  • tests/CMakeLists.txt and skills/internal/preflight.md stop naming the cell.

Where to look. ci/ci_matrix.py build_cells, ci/test_ci_matrix.py NIGHTLY_ONLY_BUILD.

Validation and notes

Validation

  • python3 ci/test_ci_matrix.py: 27 tests pass; ci_matrix.py build_nightly lists 16 cells, windows 32 and 64 Release only.
  • No workflow names the cell: build_matrix.yml and nightly.yml take the matrix from the script.

Not done

  • The windows cells still have no Debug build at all; a Debug-only MSVC regression surfaces on a developer box, as it did before the nightly cell existed.

An MSVC Debug interpreter sweep of tests/ takes most of an hour on the
hosted runner, and the lane's `run_build || run_build_isolated` retry
turns one missed watchdog into a four-hour job: #4495's merged lint
project suite ran 1775 s as one ctest there, past dastest's 1200 s
default, and the cell then spent the rest of the night in its isolated
retry. The four other Debug cells (linux, linux_arm, darwin15, darwin26)
cover the Debug-only interpreter paths per PR, as the win32 Debug cell's
removal already relied on.

With the cell gone, the raised sweep watchdogs belong to the sanitizer
cells alone, and the `lint_project_*` ctest no longer needs its Windows
Debug exemption. ci/test_ci_matrix.py's nightly-only list drops the one
name; every other assertion stands.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings November 9, 2026 06:45
@borisbat
borisbat merged commit 8a6e174 into master Nov 9, 2026
38 checks passed
@borisbat
borisbat deleted the bbatkin/ci-no-win64-debug branch November 9, 2026 06:47

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note

Copilot was unable to complete this review at the selected tier due to model policy or plan restrictions.

🟢 Approval recommended

The change is a straightforward CI-matrix maintenance update (removing a nightly-only Windows Debug lane) with corresponding test expectation and documentation adjustments, and the provided context indicates no active issues blocking approval.

No open issues 🎉

What changed in this PR

This pull request removes the Windows x64 Debug job from the nightly CI build matrix (leaving the per-PR matrix unchanged) and updates tests, CMake notes, and internal documentation to match the new nightly configuration.

Changes:

  • Drop the nightly-only windows-64-Debug-none cell from ci/ci_matrix.py.
  • Update ci/test_ci_matrix.py pinned expectations and “slow/raised watchdog budget” assertions to align with the reduced nightly matrix.
  • Remove remaining references/exemptions for the deleted lane in CMake and internal docs.
File Summary
utils/​CMakeLists.txt Removes the Windows Debug-specific exclusion for lint_project_* ctests now that the nightly lane is removed.
tests/​CMakeLists.txt Updates comments/documentation around sweep/watchdog budgets to no longer reference the removed Windows Debug nightly lane.
skills/​internal/​preflight.md Updates internal CI/preflight documentation to stop naming the deleted nightly cell.
ci/​test_ci_matrix.py Updates matrix tests to remove the nightly Windows x64 Debug cell and adjust related assertions accordingly.
ci/​ci_matrix.py Removes the Windows x64 Debug nightly build cell and updates associated rationale/comments.

Review effort: Balanced

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.

2 participants