From 6eb2e2afd7ce2e7b16bb1c768e9eb3e9cf134f4c Mon Sep 17 00:00:00 2001 From: Arthur van de Vondervoort Date: Sat, 5 Sep 2026 17:23:19 +0200 Subject: [PATCH] ci(link-check): use lychee --base-url and authenticate github.com lychee deprecated --base in favor of --base-url; the old flag will be removed. Pass a GITHUB_TOKEN to the lychee step so github.com links are checked authenticated (5000 req/hr instead of 60), removing the repeated "unexpectedly big rate limit backoff ... Capping to 1m" warnings. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/link-check.yaml | 4 +++- .lycheeignore | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/link-check.yaml b/.github/workflows/link-check.yaml index 22f0a69..645004e 100644 --- a/.github/workflows/link-check.yaml +++ b/.github/workflows/link-check.yaml @@ -2,6 +2,7 @@ # rate-limited third-party sites never block a merge. Internal links and images # are validated on every PR by htmltest (see .htmltest.yml); this job checks # only external URLs — .lycheeignore skips our own domain. +# (lychee resolves relative links against --base-url https://alcops.dev.) name: External link check on: @@ -41,8 +42,9 @@ jobs: with: args: >- --no-progress - --base https://alcops.dev + --base-url https://alcops.dev "public/**/*.html" + token: ${{ secrets.GITHUB_TOKEN }} fail: false - name: Open issue on broken links if: steps.lychee.outputs.exit_code != 0 diff --git a/.lycheeignore b/.lycheeignore index 0470fae..e834165 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -3,7 +3,7 @@ # Internal links and images are validated by htmltest on every PR # (see .htmltest.yml), so lychee only checks third-party external links — # skip our own domain here (link-check.yaml resolves internal links to it -# via --base https://alcops.dev). +# via --base-url https://alcops.dev). ^https://alcops\.dev # Add known-flaky or bot-blocking external hosts below as they surface.