Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,6 @@ jobs:
with:
# nice to check a few specific root-level markdown files (README.md etc) for valid links,
# but the main thing to check is the rendered website (in the `open-source` directory)
args: "--no-progress --verbose --github-token ${{ secrets.GITHUB_TOKEN }} -- README.md CONTRIBUTING.md open-source/"
args: "--accept 200,429 --no-progress --verbose --github-token ${{ secrets.GITHUB_TOKEN }} -- README.md CONTRIBUTING.md open-source/"
Copy link

Copilot AI Dec 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Accepting 429 (Too Many Requests) as a valid response defeats the purpose of link checking. A 429 status indicates rate limiting, not that the link is valid. This approach masks potential issues where links may actually be broken or the site may be down - you won't know because the check passes.

Consider these alternatives instead:

  1. Use the lychee retry functionality with appropriate delays (e.g., --max-retries 3 --retry-wait-time 30) to handle temporary rate limiting
  2. Add specific URLs that are known to rate limit to the .lycheeignore file if they are persistent false positives
  3. Use the --max-concurrency flag to reduce the number of concurrent requests and avoid triggering rate limits
  4. Implement conditional logic to only run link checking on main branch pushes (not PRs) to reduce frequency

These approaches address rate limiting without compromising the integrity of the link validation.

Copilot uses AI. Check for mistakes.
fail: true
jobSummary: true