You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Three CI facts in this repository need attention, one with a date:
ubuntu-latest moves to Ubuntu 26 from 2026-10-19. Every job annotation carries the runner notice ("The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026", [Ubuntu] ubuntu-latest label will use Ubuntu 26.04 in November 2026 actions/runner-images#14748). 20 workflow files here use ubuntu-latest, and the reusable workflows other repositories call run on it too, so a tool or package that changes with the image breaks callers across the organization at once.
The Lychee cache is never saved.lychee.yml grants the job contents: read only, and "📥 Save cache" (actions/cache/save) ends with the warning "Cache save failed" on every run. Each run restores the last saved cache, finds it older than the configured one-day maximum ("Cache is too old ... Discarding and recreating"), and checks every link again.
The scheduled link check failed on 2026-10-01 (run 36933717011): one error, [403] https://opensource.org/licenses/ | Network error: Forbidden. The runs on 2026-09-29 and 2026-09-30 passed, so this looks like the site refusing the runner, not a broken link.
Proposed change
Before 2026-10-19: run the reusable workflows and this repository's own checks on ubuntu-26.04 (or the preview label the runner-images issue names), list what differs, and pin ubuntu-24.04 where a job cannot move yet.
Give the Lychee job the permission actions/cache/save needs, or drop the save step and the cache if it is not wanted.
Decide how the link check treats sites that refuse automated clients (an accept or exclude entry for opensource.org in .github/lychee.toml, or a retry).
Acceptance
A run of each reusable workflow on the Ubuntu 26 image passes, or the job is pinned with a reason.
A Lychee run saves its cache (no "Cache save failed"), or the cache steps are gone.
The next scheduled Lychee run passes, or its remaining errors are real broken links.
Context
Evidence read on 2026-10-02 from run 36933717011 (job annotations and failed-step log) and .github/workflows/lychee.yml on main. The cache warning was first seen on the PR #694 run (36290455364).
Problem
Three CI facts in this repository need attention, one with a date:
ubuntu-latestmoves to Ubuntu 26 from 2026-10-19. Every job annotation carries the runner notice ("The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026", [Ubuntu]ubuntu-latestlabel will use Ubuntu 26.04 in November 2026 actions/runner-images#14748). 20 workflow files here useubuntu-latest, and the reusable workflows other repositories call run on it too, so a tool or package that changes with the image breaks callers across the organization at once.lychee.ymlgrants the jobcontents: readonly, and "📥 Save cache" (actions/cache/save) ends with the warning "Cache save failed" on every run. Each run restores the last saved cache, finds it older than the configured one-day maximum ("Cache is too old ... Discarding and recreating"), and checks every link again.[403] https://opensource.org/licenses/ | Network error: Forbidden. The runs on 2026-09-29 and 2026-09-30 passed, so this looks like the site refusing the runner, not a broken link.Proposed change
ubuntu-26.04(or the preview label the runner-images issue names), list what differs, and pinubuntu-24.04where a job cannot move yet.actions/cache/saveneeds, or drop the save step and the cache if it is not wanted.acceptorexcludeentry foropensource.orgin.github/lychee.toml, or a retry).Acceptance
Context
Evidence read on 2026-10-02 from run 36933717011 (job annotations and failed-step log) and
.github/workflows/lychee.ymlonmain. The cache warning was first seen on the PR #694 run (36290455364).