Commit c24efba1df

c24efba1df05f6682bc84f1b7d35bdd6ddc5609c

parent: ebc0d5917b

Unsigned

cmc <hello@cleberg.net> · 2026-08-22 03:58 UTC

Drop --exclude-mail, and assert the external check ran

mailto is excluded by default in lychee 0.24.2; the flag does not exist, so the
step died on an invalid argument. Because fail: false also swallows a crash, it
reported success while checking nothing — the guard makes that impossible.

Layout: unified · split

.github/workflows/link-check.yml +11 −1
@@ -60,7 +60,6 @@ jobs:
6060 uses: lycheeverse/lychee-action@v2.9.0
6161 with:
6262 args: >-
63 --exclude-mail
6463 --root-dir ${{ github.workspace }}/.build-dev
6564 --exclude '\.onion'
6665 --max-concurrency 8
@@ -72,6 +71,17 @@ jobs:
7271 fail: false
7372 output: external.md
7473
74 # `fail: false` stops a dead third-party link failing the job — but it also
75 # swallows lychee refusing to start at all, which reports success while
76 # checking nothing. Assert the report has a summary table in it.
77 - name: External step actually ran
78 run: |
79 if ! grep -q "Total" external.md; then
80 echo "::error::lychee produced no summary — it did not run"
81 cat external.md
82 exit 1
83 fi
84
7585 - name: Summary
7686 if: always()
7787 run: |