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:
60 uses: lycheeverse/lychee-action@v2.9.0 60 uses: lycheeverse/lychee-action@v2.9.0
61 with: 61 with:
62 args: >- 62 args: >-
63 --exclude-mail
64 --root-dir ${{ github.workspace }}/.build-dev 63 --root-dir ${{ github.workspace }}/.build-dev
65 --exclude '\.onion' 64 --exclude '\.onion'
66 --max-concurrency 8 65 --max-concurrency 8
@@ -72,6 +71,17 @@ jobs:
72 fail: false 71 fail: false
73 output: external.md 72 output: external.md
74 73
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
75 - name: Summary 85 - name: Summary
76 if: always() 86 if: always()
77 run: | 87 run: |