Skip to content

Validate and update links (STF-557)#716

Open
oschwald wants to merge 2 commits into
mainfrom
greg/stf-557
Open

Validate and update links (STF-557)#716
oschwald wants to merge 2 commits into
mainfrom
greg/stf-557

Conversation

@oschwald
Copy link
Copy Markdown
Member

@oschwald oschwald commented Jun 4, 2026

Validated every link in the repo with the lychee link checker, fixed stale/redirecting links, and added a lychee config plus a Links CI workflow so future link rot is caught automatically.

CI setup

  • lychee.toml with max_redirects = 0, fragment checking, MaxMind live/auth and XML-namespace excludes, and CHANGELOG.md / target / test fixtures excluded from scanning.
  • .github/workflows/links.yml runs on push, PR, weekly cron, and manual dispatch.
  • .lycheecache added to .gitignore.

Links updated (old -> new)

  • https://dev.maxmind.com/geoip?lang=en -> https://dev.maxmind.com/geoip/?lang=en (pom.xml)
  • https://www.maxmind.com/ -> https://www.maxmind.com/en/home (pom.xml)
  • https://dev.maxmind.com/geoip/docs/web-services -> .../web-services/ (CLAUDE.md)
  • https://dev.maxmind.com/geoip/docs/web-services?lang=en -> .../web-services/?lang=en (README.md, CityResponse.java, CountryResponse.java, InsightsResponse.java, WebServiceClient.java)
  • https://dev.maxmind.com/geoip/docs/databases?lang=en -> .../databases/?lang=en (README.md)
  • https://www.maxmind.com/en/correction -> https://www.maxmind.com/en/geoip-data-correction-request (README.md)
  • https://www.maxmind.com/en/support -> https://support.maxmind.com/knowledge-base (README.md)

Each replacement was resolved with curl and confirmed to be a clean 200 with no further redirect.

Historical CHANGELOG.md entries are intentionally left unchanged (and excluded from scanning).

lychee ends green: 🔍 44 Total ✅ 37 OK 🚫 0 Errors 👻 7 Excluded.

Part of STF-557.

🤖 Generated with Claude Code

Comment thread .github/workflows/links.yml Fixed
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

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 lychee.toml configuration file and updating .gitignore to ignore .lycheecache. It also updates various documentation, POM, and Javadoc URLs to their canonical forms (such as adding trailing slashes or updating redirected paths). The review feedback recommends removing the 500..=599 HTTP status code range from the Lychee configuration's accepted list to prevent masking server-side failures and broken links.

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.

Comment thread lychee.toml
# 429: Too Many Requests
# 500-599: Server errors (temporary issues shouldn't fail CI)
# 999: LinkedIn's custom status code
accept = ["100..=103", "200..=299", "403", "429", "500..=599", "999"]
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

Accepting HTTP status codes in the 500..=599 range (Server Errors) can mask actual broken links or server misconfigurations. While transient server errors can occasionally occur, permanently broken links returning 500 errors will be ignored, defeating the purpose of automated link checking. It is recommended to remove 500..=599 from the accept list so that server-side failures are surfaced.

Suggested change
accept = ["100..=103", "200..=299", "403", "429", "500..=599", "999"]
accept = ["100..=103", "200..=299", "403", "429", "999"]

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Keeping 500..=599 in accept, matching the dev-site and blog-site configs — transient upstream 5xx shouldn't fail link-checking CI.

— Claude (posted on Greg's behalf)

@oschwald oschwald force-pushed the greg/stf-557 branch 3 times, most recently from e716fa2 to 56884cb Compare June 4, 2026 20:36
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.

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
or redirected elsewhere:

- dev.maxmind.com/geoip doc URLs now use canonical trailing-slash form
- www.maxmind.com/ -> www.maxmind.com/en/home (pom.xml)
- www.maxmind.com/en/correction -> /en/geoip-data-correction-request
- www.maxmind.com/en/support -> support.maxmind.com/knowledge-base

Historical CHANGELOG.md entries are intentionally left unchanged.

Part of STF-557.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
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