Skip to content

Validate and update links (STF-557)#265

Merged
horgh merged 2 commits into
mainfrom
greg/stf-557
Jun 5, 2026
Merged

Validate and update links (STF-557)#265
horgh merged 2 commits into
mainfrom
greg/stf-557

Conversation

@oschwald

@oschwald oschwald commented Jun 4, 2026

Copy link
Copy Markdown
Member

Adds a lychee link-checker configuration and a
Links GitHub Actions workflow, then fixes the stale and redirecting links it
surfaced. lychee is pinned via mise (mise.toml / mise.lock) so CI and local
runs 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 its
canonical 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 --item anchor 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

  • The minFraud API responses doc renders its schema anchors client-side, so
    lychee cannot verify the #schema--response--risk-score-reason--multiplier-reason
    fragment used in Reason.php even though the page and anchor exist. That
    responses-page fragment is excluded in lychee.toml as a false positive; the
    link itself is unchanged.
  • Historical CHANGELOG.md entries are intentionally left unchanged (and excluded
    from scanning).
  • Final lychee result: 32 OK, 0 errors, 4 excluded.

Part of STF-557.

🤖 Generated with Claude Code

@gemini-code-assist gemini-code-assist Bot 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.

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.

oschwald and others added 2 commits June 4, 2026 22:01
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 horgh merged commit 0a60b48 into main Jun 5, 2026
38 checks passed
@horgh horgh deleted the greg/stf-557 branch June 5, 2026 21:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants