Skip to content

ci: migrate macOS validation to macos-15 runner - #578

Merged
codeforester merged 2 commits into
mainfrom
ci/577-20261017-migrate-validation-matrix-off-retired-macos-14-runner
Oct 17, 2026
Merged

codeforester merged 2 commits into
mainfrom
ci/577-20261017-migrate-validation-matrix-off-retired-macos-14-runner

Conversation

@codeforester

Copy link
Copy Markdown
Collaborator

Closes #577.

Part of the coordinated train anchored by basefoundry/base#2604.

Changes:

  • Moves the active macOS validation matrix to pinned macos-15.
  • Keeps the logical macOS 14 compatibility/release-platform identity.
  • Clarifies the runner/support distinction in current documentation.

Local validation:

  • git diff --check passed.
  • Full tests/validate.sh was exercised; two existing validate-driver shim tests fail locally before the migration-specific checks, so hosted validation is required for final acceptance.

@codeforester
codeforester force-pushed the ci/577-20261017-migrate-validation-matrix-off-retired-macos-14-runner branch from de3025f to 5f5a7c4 Compare October 16, 2026 18:53

@codeforester codeforester left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

Review: LGTM, no blocking issues. Reviewed all 5 files at 5f5a7c4.

  • The runner is selected in one place (the tests.yml matrix, consumed via runs-on: ${{ matrix.os }}); no other workflow or script names macos-14. The two remaining mentions (docs/release-process.md --platform macos-14 and tests/release-bom-row.bats) are the logical release-platform id, which the issue says to keep.
  • The job name changes from Validate (macos-14) to Validate (macos-15), but the ruleset's required checks (base/issue-branch-policy, Product validation, Quality contract) do not name the matrix leg, so no required check is stranded.
  • Hosted Validate (macos-15), Validate (ubuntu-24.04), the Bash 4.2.53 / 4.4.23 / 5.0.18 / 5.2.37 compatibility jobs, the release gates and the Beacon downstream smoke are all green, so the Bash 4.2 assertions are intact.
  • Historical record handling is right: the v2.2.0 run note says explicitly that it used the macOS 14 image.

Non-blocking

  1. The PR body says two existing validate-driver shim tests fail locally before the migration-specific checks. Hosted validation is green, so this looks environmental, but please say whether they fail the same way on main (or file an issue) so the local failure is not left ambiguous in the record.
  2. One wording point, inline on support-matrix.md.

Comment thread docs/support-matrix.md Outdated
| --- | --- | --- |
| Bash | 4.2.53 minimum; representative 4.4.23 and 5.0.18/5.2.37; current 5.x | Pinned networkless Bash containers, current runner validation, `tests/compatibility-matrix.sh`, deterministic property, artifact, and concurrency contracts |
| macOS | Pinned GitHub-hosted macOS 14 with Homebrew Bash; system Bash 3.2 is rejected with remediation | macOS validation and unsupported-system-Bash smoke |
| macOS | macOS 14 compatibility exercised on the pinned GitHub-hosted macOS 15 runner with Homebrew Bash; system Bash 3.2 is rejected with remediation | macOS validation and unsupported-system-Bash smoke |

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

A macOS 15 run does not exercise macOS 14-specific behaviour, so "macOS 14 compatibility exercised on the pinned … macOS 15 runner" slightly over-claims in an Evidence table. The issue asks for this phrasing, so it is fine to keep, but something like "macOS 14 is the supported floor; hosted validation runs on the pinned macOS 15 runner (no macOS 14 runner available)" is more precise. Same point as basefoundry/base#2605 (README L591-592), so worth settling once across the train.

@codeforester
codeforester merged commit e9e5cb1 into main Oct 17, 2026
13 checks passed
@codeforester
codeforester deleted the ci/577-20261017-migrate-validation-matrix-off-retired-macos-14-runner branch October 17, 2026 14:34
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.

ci: migrate validation matrix off retired macos-14 runner

1 participant