Skip to content

Validate documentation links#312

Merged
alexander-yevsyukov merged 23 commits into
masterfrom
validate-doc-links
May 23, 2026
Merged

Validate documentation links#312
alexander-yevsyukov merged 23 commits into
masterfrom
validate-doc-links

Conversation

@alexander-yevsyukov
Copy link
Copy Markdown
Collaborator

This PR introduces check-links skill and GitHub workflow employing Lychee tool which we already use in spine.io repo for catching broken links.

Broken links were also fixed. The skill will be added to config after we try it locally to this repo.

Copilot AI review requested due to automatic review settings May 22, 2026 21:18
@alexander-yevsyukov alexander-yevsyukov marked this pull request as ready for review May 22, 2026 21:18
@alexander-yevsyukov alexander-yevsyukov self-assigned this May 22, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR adds automated documentation link validation for the Hugo site under docs/ using Lychee, both as a local .agents skill and as a GitHub Actions workflow, and fixes/updates a few documentation references (including previously broken links).

Changes:

  • Add Lychee configuration (lychee.toml) and a Check Links GitHub Actions workflow to build/serve the Hugo site and validate rendered HTML links.
  • Add a local .agents check-links skill and wire it into the .agents pre-pr checklist flow.
  • Fix/adjust docs references and bump documented/published versions.

Reviewed changes

Copilot reviewed 15 out of 16 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
version.gradle.kts Bumps validationVersion snapshot.
lychee.toml Adds repo-wide Lychee configuration and cache/accept rules.
docs/content/docs/validation/user/01-getting-started/adding-to-build.md Updates plugin version in docs.
docs/content/docs/validation/developer/validation-model.md Updates example to include checkFieldIsNotEmpty.
docs/content/docs/validation/developer/runtime-library.md Fixes/updates TemplateString proto reference link.
docs/content/docs/validation/developer/build-and-release.md Updates version snippet and published module list.
docs/content/docs/validation/developer/architecture.md Fixes/updates TemplateString proto reference link.
docs/content/docs/validation/developer/adding-a-built-in-option.md Updates example to include checkFieldIsNotEmpty.
.gitignore Ignores Lychee caches and skill-downloaded binaries.
.github/workflows/check-links.yml Adds CI job to build/serve docs and run Lychee link checks.
.agents/tasks/check-links.md Adds task/planning record for the new link-checking capability.
.agents/skills/pre-pr/SKILL.md Wires check-links into the pre-PR flow and adds sentinel caching rules.
.agents/skills/check-links/SKILL.md Adds the local check-links skill procedure and sentinel behavior.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread lychee.toml Outdated
Comment thread .agents/skills/pre-pr/SKILL.md Outdated
Comment thread .agents/skills/pre-pr/SKILL.md Outdated
Comment thread .github/workflows/check-links.yml
@alexander-yevsyukov alexander-yevsyukov marked this pull request as draft May 22, 2026 21:30
The previous comment said links inside code blocks "will be checked",
contradicting the `false` value. Corrected to reflect that verbatim
sections are excluded.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 23, 2026 15:50
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 15 out of 16 changed files in this pull request and generated 4 comments.

Comment thread .agents/skills/check-links/SKILL.md Outdated
Comment thread .agents/skills/check-links/SKILL.md
Comment thread .agents/skills/check-links/SKILL.md Outdated
Comment thread .agents/skills/pre-pr/SKILL.md Outdated
alexander-yevsyukov and others added 2 commits May 23, 2026 16:57
- Fix `pre-pr` SKILL.md: `site` is independent of `docs`, not a subset;
  some files under `docs/**` (e.g. lockfiles) are `site` but not `docs`.
  Also soften the claim that `check-links` runs in parallel with
  `review-docs`, since `review-docs` is not always dispatched.
- Add SHA256 integrity verification for the Lychee binary downloaded in
  `check-links.yml` to guard against supply-chain tampering.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- `check-links` SKILL.md: drop forward-reference to a promised
  "separate skill" for Javadoc/KDoc — state it is simply out of scope.
- `check-links` SKILL.md tooling table: fix `npm install` → `npm ci`
  to match the procedure and CI workflow.
- `check-links` SKILL.md scope check (step 1): also accept `lychee.toml`
  changes as in-scope, matching the "When to run" section.
- `pre-pr` SKILL.md: expand the **site** classifier to include
  `lychee.toml` so local pre-PR and CI trigger conditions stay in sync.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 15 out of 16 changed files in this pull request and generated 1 comment.

Comment thread .agents/skills/check-links/SKILL.md
Use whitespace-tolerant `grep -E '^\s+HUGO_VERSION:'` with the same
`sed` extraction as LYCHEE_VERSION_TAG, so re-indenting the workflow
file does not silently break the version comparison.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 15 out of 16 changed files in this pull request and generated 3 comments.

Comment thread .agents/skills/check-links/SKILL.md Outdated
Comment thread .agents/tasks/check-links.md Outdated
Comment thread .agents/tasks/check-links.md
alexander-yevsyukov and others added 2 commits May 23, 2026 17:13
- SKILL.md: replace hardcoded "Node 20+" with a pointer to the
  `node-version:` field in `check-links.yml`, so local and CI Node
  versions stay in sync without duplicating the pin.
- task check-links.md: remove stale `v0.15.1` pin from the Decisions
  section; reference `LYCHEE_VERSION_TAG` in the workflow instead.
- task check-links.md: fix plan step URL from `SpineEventEngine/base`
  to `SpineEventEngine/base-libraries` (corrected during execution).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 23, 2026 16:20
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 15 out of 16 changed files in this pull request and generated 5 comments.

Comment thread .agents/tasks/check-links.md
Comment thread .agents/tasks/check-links.md
Comment thread .agents/tasks/check-links.md Outdated
Comment thread .agents/tasks/check-links.md
Comment thread .agents/tasks/check-links.md
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 23, 2026 16:31
alexander-yevsyukov and others added 4 commits May 23, 2026 17:32
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Use action version in the plan document

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 15 out of 16 changed files in this pull request and generated 2 comments.

Comment thread .agents/skills/check-links/SKILL.md Outdated
Comment thread .agents/skills/check-links/SKILL.md Outdated
alexander-yevsyukov and others added 2 commits May 23, 2026 17:41
- Context: correct repo name `base` → `base-libraries` for TemplateString.
- Plan §1: update reference to `base-libraries` and `[template-string-proto]`.
- Plan §3: fix Lychee glob `docs/public/` → `docs/_preview/public/` and
  version tag `v0.15.1` → `lychee-v0.24.2`.
- Plan §4: same glob fix for the skill procedure description.
- Also stage .gitignore entry for .claude/settings.local.json.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace \s (not POSIX ERE) with [[:space:]] in both grep patterns that
extract HUGO_VERSION and LYCHEE_VERSION_TAG from the workflow file.
Also resolve a merge conflict in the task plan file.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 15 out of 16 changed files in this pull request and generated no new comments.

@alexander-yevsyukov alexander-yevsyukov merged commit dd65da5 into master May 23, 2026
10 checks passed
@alexander-yevsyukov alexander-yevsyukov deleted the validate-doc-links branch May 23, 2026 18:06
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.

3 participants