Skip to content

CI: OS legs skip inert-only diffs, after a convention test for portable file names #73

Closed

Description

@CaffeinatedCoder

Decided in decision 113, part of #118. The probe lane is gone (decision 112). The OS legs split into a windows lane and a macos lane. A selected run never has macOS: only the release PR into main, main, the nightly and the release run it. Windows is skipped when every changed path is prose (docs/**, design/**, .github/ISSUE_TEMPLATE/** or a *.md outside src/), and for run-time packages other than the Analyzers and Generators. test/, spikes/ and the agent tools keep Windows but skip the pack. PortableFileNameTests (conventions, on Linux) reads git ls-files. It refuses Windows' reserved characters and device names, a segment ending in a dot or a space, two paths equal under case folding and NFC normalization (directories too), and a path over 160 characters.

Problem

A PR that changes only docs/, design/ or *.md still runs the Windows and macOS legs (8.9 and 8.0 min). The Linux test leg already runs every convention and docs test. In the last 50 merged PRs this affected 5 PRs (10%). Their runs took about 17 minutes, where about 6 would do.

A docs-only PR can still break the Windows leg, though: for example, a file name Windows cannot check out (a reserved character, a trailing dot, two names that differ only in case).

Change

Done when

The file-name test fails a seeded docs/a:b.md and a case collision, and a docs-only PR runs only Test (ubuntu-latest), Changes and the gate.

Activity

  1. added this to the 2.3.0 milestone on Oct 20, 2026
  2. added
    testsAdds or changes tests only (tests, probes, harnesses); no library code
    choreBuild, CI, tooling, packaging, refactoring with no behaviour change
    area/toolingThe repository's tools: prober, verdict, guard, docs-query, smoke test
    on Oct 20, 2026
  3. removed
    testsAdds or changes tests only (tests, probes, harnesses); no library code
    on Oct 20, 2026
  4. changed the title [-]CI: OS and probe legs skip inert-only diffs, after a convention test for portable file names[/-] [+]CI: OS legs skip inert-only diffs, after a convention test for portable file names[/+] on Oct 29, 2026
  5. CaffeinatedCoder commented on Oct 29, 2026

    @CaffeinatedCoder
    OwnerAuthor

    Done in #123, merged into release/2.3.0 as a92e5bc (decision 113). Closed by hand: Closes closes nothing on a merge into a release branch.

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/toolingThe repository's tools: prober, verdict, guard, docs-query, smoke testchoreBuild, CI, tooling, packaging, refactoring with no behaviour change

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions