Validate and update links (STF-557)#265
Merged
Merged
Conversation
There was a problem hiding this comment.
Code Review
This pull request configures the Lychee link checker by adding a configuration file, updating the mise toolset, and adding a link-checking task. It also updates several outdated or redirected documentation URLs across markdown files and PHP source code comments to ensure correct linking. No review comments were provided, so there is no additional feedback to address.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Adds a lychee configuration and a Links GitHub Actions workflow so that stale or redirecting links are caught automatically going forward. The checker runs on push, pull request, and weekly to catch external link rot. max_redirects is 0 so links that have moved are surfaced and can be updated to their canonical destination. lychee is installed via mise (pinned in mise.toml / mise.lock) so CI and local runs use the same version. Part of STF-557. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Validated all links with lychee and updated those that were out of date, redirected, or pointed at a moved anchor: - dev.maxmind.com/minfraud/api-documentation, .../requests, and track-devices now use the canonical trailing-slash form before the query string - dev.maxmind.com/minfraud/report-transaction/ (404) -> /minfraud/report-a-transaction/ - requests anchor #schema--request--shopping-cart--item -> #schema--request--shopping-cart (the --item anchor no longer exists) - php.net/manual/... -> www.php.net/manual/... (canonical host) - www.maxmind.com/en/support -> support.maxmind.com/knowledge-base - support.maxmind.com/hc/en-us/articles/5452293435675-... -> support.maxmind.com/knowledge-base/articles/order-and-shopping-cart-inputs-minfraud The minFraud API responses doc renders its schema anchors client-side, so lychee cannot verify the #fragment for the multiplier-reason link in Reason.php even though the page and anchor exist; that responses-page fragment is excluded in lychee.toml as a false positive. Historical CHANGELOG.md entries are intentionally left unchanged. Part of STF-557. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
horgh
approved these changes
Jun 5, 2026
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.
Adds a lychee link-checker configuration and a
LinksGitHub Actions workflow, then fixes the stale and redirecting links itsurfaced. lychee is pinned via mise (
mise.toml/mise.lock) so CI and localruns use the same version, and the workflow installs only lychee (not the full
toolchain). It runs on push, pull request, and weekly to catch external link rot.
max_redirects = 0, so any link that has moved is reported and updated to itscanonical destination.
Link changes (old -> new)
dev.maxmind.com/minfraud/api-documentation?lang=en->.../api-documentation/?lang=en(src/MinFraud.php)dev.maxmind.com/minfraud/api-documentation/requests?lang=en#...->.../requests/?lang=en#...(src/MinFraud.php, 9 anchors)#schema--request--shopping-cart--item->#schema--request--shopping-cart(src/MinFraud.php — the--itemanchor no longer exists)dev.maxmind.com/minfraud/track-devices?lang=en->.../track-devices/?lang=en(src/MinFraud/Model/Device.php)dev.maxmind.com/minfraud/report-transaction/(404) ->.../report-a-transaction/(README.md, CLAUDE.md)php.net/manual/en/book.phar.php->www.php.net/manual/en/book.phar.php(README.md)php.net/manual/en/book.curl.php->www.php.net/manual/en/book.curl.php(README.md)www.maxmind.com/en/support->support.maxmind.com/knowledge-base(README.md)support.maxmind.com/hc/en-us/articles/5452293435675-Order-and-Shopping-Cart-Inputs#...->support.maxmind.com/knowledge-base/articles/order-and-shopping-cart-inputs-minfraud(src/MinFraud.php)Notes
lychee cannot verify the
#schema--response--risk-score-reason--multiplier-reasonfragment used in
Reason.phpeven though the page and anchor exist. Thatresponses-page fragment is excluded in
lychee.tomlas a false positive; thelink itself is unchanged.
CHANGELOG.mdentries are intentionally left unchanged (and excludedfrom scanning).
Part of STF-557.
🤖 Generated with Claude Code