-
Notifications
You must be signed in to change notification settings - Fork 28
Add link checker GitHub workflow #310
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
9ce1b3f to
c27d563
Compare
a072b68 to
1347f17
Compare
1347f17 to
023e2eb
Compare
47839c9 to
6b2f16a
Compare
dc62747 to
e269970
Compare
| env: | ||
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # used for GitHub API calls (e.g. rate limits, private links) | ||
| with: | ||
| fail: false # FIXME: Once the config, links, and fixes have stabilized, we should enable for hard block. For now this is just informative |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note: this workflow is currently running in “soft” mode. It reports broken links but never fails the build. That gives us time to watch how noisy/flake-y it is before turning it into a blocking check.
eaa6598 to
73e61ff
Compare
Add lychee-based link checking workflow with comprehensive configuration: - GitHub Actions workflow for automated link validation - Custom lychee.toml configuration with exclusions and retry logic - Documentation updates and minor fixes
73e61ff to
8510fbd
Compare
| # Known broken or legacy URLs (exact-match) | ||
| # | ||
|
|
||
| '^http://cm\.help\.alterian\.com/CM404/Default\.htm#Customer_Analytics/Import_Export/Data_Import\.htm$', |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These specifically need addressing in another round
📝 Before you begin
By opening this PR, you agree to the terms of the Auth0 Code of Conduct. For guidance on creating a high-quality PR, see the Contributing Guidelines.
✏️ Changes
This PR wires up automated external-link checking for both the
mainandauth4genaiMintlify docs using Lychee. It adds a GitHub Actions workflow, centralizes link-check configuration inlychee.toml, and updates the READMEs so people know how to run the checks locally.main/andauth4genai/documentation sites📁 Documentation scope
Docs site(s) affected
main/auth4genai/Other areas
ui/).github/workflows/)tools/)Type of change
.github/workflows/)tools/)Paths:
.github/workflows/link-check.ymllychee.tomlauth4genai/README.mdmain/README.md🔗 References
🎯 Testing
Local validation
mint devin affected foldersmint broken-links(when applicable)mint a11y(when applicable)npm run buildinui/(for UI changes)Style and structure
Repo checks
Notes: Workflow exercised via manual dispatch and PRs. Currently configured as warning-only (
continue-on-error: true,fail: false) while excludes settle.🔄 Redirects
Not applicable – no URL changes.
🌍 Internationalization (main docs only)
main/🧩 Impact and dependencies
User-facing impact
Link Checker (auth0)Link Checker (auth0-genai)Dependencies
None.
🚀 Deployment
📝 Follow-up
Next steps:
excludepatterns inlychee.tomlas more noisy URLs show upinclude_fragments = true) once the baseline is stable💬 Additional context
What’s included
GitHub Actions workflow
A new workflow at
.github/workflows/link-check.ymlthat:main/orauth4genai/auth0→main/auth0-genai→auth4genai/yumemi-inc/changed-filesto detect changed.md,.mdx,.jsxfiles per site**/*.md,**/*.mdx,**/*.jsxfor each sitelycheeverse/lychee-actionwith--root-dirset to the site root, so root-relative paths resolve correctly against the filesystemEach site shows up as its own check in the PR UI:
Link Checker (auth0)Link Checker (auth0-genai)Lychee configuration
lychee.tomlnow holds all shared config:cache = true) and disables progress output for CIacceptcodes for common “not really broken” responses (302, 307, 403, 429)md,mdx)include_fragments = false)excludelist that filters out:file://URLs that cannot be resolved reliably in this repoThis replaces ad hoc ignores and keeps CI + local runs using the same rules.
Documentation updates
main/README.mdandauth4genai/README.mdnow include:--base-urlwhen you care about how links behave onauth0.com/auth0.com/ai/docs--root-dirwhen you want to validate links against the local repo layoutUsage
Automated
Lychee runs automatically:
main/**/*.md[x|jsx]orauth4genai/**/*.md[x|jsx]auth0/auth0-genaimatrixEach run respects
lychee.toml.Manual
From the Actions tab:
Link Checker (auth0)Link Checker (auth0-genai)Both sites are scanned in full.
Local examples
Against live
auth0.comdocs (external behavior):Against the local
main/tree (filesystem behavior):Swap
mainforauth4genaiandhttps://auth0.com/ai/docsif you want to target the AI docs.Lychee will pick up
lychee.tomlautomatically in all these cases.