Skip to content

Add lychee local link checker - #4

Merged
josecelano merged 5 commits into
torrust:mainfrom
josecelano:feat/add-lychee-local-markdown-link-checker
Sep 8, 2026
Merged

Add lychee local link checker#4
josecelano merged 5 commits into
torrust:mainfrom
josecelano:feat/add-lychee-local-markdown-link-checker

Conversation

@josecelano

Copy link
Copy Markdown
Member

Summary

Add deterministic local Markdown link and fragment validation to the shared linter CLI.

  • Adds linter lychee and includes it in linter all.
  • Runs Lychee with --offline, discovers lychee.toml, and checks **/*.md plus .github/**/*.md while excluding generated target/ content.
  • Installs missing Lychee through cargo install lychee.
  • Documents the linter and captures local-link failure verification evidence.
  • Repairs stale local links in existing feature documentation in a separate commit.

Validation

  • cargo run

Closes #3

Copilot AI lite review requested due to automatic review settings September 8, 2026 11:28
@josecelano josecelano self-assigned this Sep 8, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 Changes recommended

The new lychee runner and verification docs have a couple of reproducible, user-visible rough edges (noisy .github glob warnings and a non-reproducible verification invocation) that should be addressed before approval.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Adds a new lychee subcommand to the torrust-linting CLI to perform deterministic, offline validation of local Markdown links/fragments, and wires it into the standard linter all workflow while updating docs to reflect the new capability.

Changes:

  • Introduces a new Lychee linter runner (run_lychee_linter) with auto-install via Cargo and offline execution over Markdown files.
  • Adds linter lychee subcommand and includes it in run_all_linters().
  • Updates README and internal issue/feature documentation (including link repairs and verification notes).
File summaries
File Description
src/linters/mod.rs Registers and re-exports the new lychee linter module.
src/linters/lychee.rs Implements Lychee install + offline link/fragment checking runner.
src/cli.rs Adds Lychee subcommand and runs it as part of all.
README.md Documents the new linter, command usage, tool install, and lychee.toml discovery.
project-words.txt Adds mktemp to spell-check allowlist for new docs content.
docs/issues/3-add-lychee-local-markdown-link-checker/verification.md Adds manual verification evidence for offline failure behavior.
docs/issues/3-add-lychee-local-markdown-link-checker/questions.md Records design decisions for the Lychee linter integration.
docs/issues/3-add-lychee-local-markdown-link-checker/ISSUE.md Adds the issue spec/plan/acceptance criteria for the Lychee feature.
docs/features/linter-parallel-execution/specification.md Updates related-doc links and reorganizes resource references.
docs/features/linter-parallel-execution/questions.md Updates related-doc links and reorganizes resource references.
docs/features/linter-auto-fix/specification.md Updates related-doc links and reorganizes resource references.
docs/features/linter-auto-fix/README.md Cleans up headings and updates related-doc/resource links.
Review details
  • Files reviewed: 12/12 changed files
  • Comments generated: 2
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/linters/lychee.rs Outdated
Comment thread docs/issues/3-add-lychee-local-markdown-link-checker/verification.md Outdated
@josecelano

Copy link
Copy Markdown
Member Author

ACK 5da34af

@josecelano
josecelano merged commit 69d3ed7 into torrust:main Sep 8, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add lychee local Markdown link checker

2 participants