Problem
"Require changelog or skip label" (changelog-unified.yml) fails at random by timing out. Its timeout-minutes: 5 (added in #3477) is shorter than its fetch-depth: 0 checkout of the full repository history.
Evidence, 2026-09-23:
That history is used only for git diff --name-only base head. The two validation scripts use only Node built-ins, so npm ci is not needed either.
labeling-unified.yml's PR labeler job has the same pattern (5-minute timeout, fetch-depth: 0), although actions/labeler reads changed files from the API and only needs its config file.
Change
- Changelog gate: list changed files with the PR files API (
pulls.listFiles), not git diff. Check out only the four files the job reads (sparse, depth 1), and drop npm ci.
- Labeler: sparse, depth-1 checkout of the labeler config only.
Problem
"Require changelog or skip label" (
changelog-unified.yml) fails at random by timing out. Itstimeout-minutes: 5(added in #3477) is shorter than itsfetch-depth: 0checkout of the full repository history.Evidence, 2026-09-23:
That history is used only for
git diff --name-only base head. The two validation scripts use only Node built-ins, sonpm ciis not needed either.labeling-unified.yml's PR labeler job has the same pattern (5-minute timeout,fetch-depth: 0), althoughactions/labelerreads changed files from the API and only needs its config file.Change
pulls.listFiles), notgit diff. Check out only the four files the job reads (sparse, depth 1), and dropnpm ci.