TINYDOC-3514 - Add scheduled link checking to CI - #4276
Draft
kemister85 wants to merge 2 commits into
Draft
Conversation
Add a weekly scheduled workflow that builds the full published site (all versions) and runs lychee to detect dead external links, opening a link-rot issue when any are found. - .github/workflows/link-check.yml: weekly cron + manual dispatch - .lychee.toml: checker config (resolves root-relative links via base_url, excludes the tiny.cloud family and localhost, accepts redirects and 429) - .lycheeignore: curated hosts that block automated checkers but resolve in a browser - package.json: check-links script for local use - .gitignore: ignore the local lychee cache and report output
kemister85
force-pushed
the
TINYDOC-3514-link-checking
branch
from
August 20, 2026 02:18
5858085 to
eee30cf
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ticket: TINYDOC-3514
What this does
Adds a weekly scheduled link check (Mondays 06:00 UTC, plus manual dispatch). Builds the full production site — all four published versions — and runs lychee over the built HTML.
Findings go to a single rolling
link-rotissue: the body is refreshed each run, and the issue closes automatically once a run comes back clean.Layer 1 of 2 — the PR-time check is #4277.
Validation
.lycheeignoretook it from 446 errors to 9 (7 distinct), all genuine rot —archive.tinymce.com(×2),gsuite.google.com,dropbox.com/guide/business,ietf.org/rfc/bcp/bcp47.txt,addons.mozilla.org, andmysite.com/tinymce.html(a placeholder rendered as a live link, so it needs a content fix rather than an ignore entry). Content follow-up, not blockers here.stackoverflow.com(403),graylog.org(403),tinymcedocs.mcp.kapa.ai(405 — an MCP endpoint, not a page).exit_codeconfirmed as a declared output oflychee-action@v2, so the reporting conditions fire.link-rotlabel created.Not yet verified: the rolling-issue logic cannot run until this is on
main, becauseworkflow_dispatchonly fires from the default branch. Dispatch it manually straight after merge to confirm the first real run.