Skip to content

ci: Drop --verbose from the external-link PR check - #19678

Merged
coolguyzone merged 1 commit into
masterfrom
coolguyzone/chore/quiet-lychee-pr-check
Sep 29, 2026
Merged

coolguyzone merged 1 commit into
masterfrom
coolguyzone/chore/quiet-lychee-pr-check

Conversation

@coolguyzone

Copy link
Copy Markdown
Contributor

DESCRIBE YOUR PR

The check-pr external-link check is currently unreadable. lychee.toml sets base_url = "https://docs.sentry.io" and then excludes that host (internal links are lint-404s' job) — and --verbose prints every excluded link. So the check becomes a wall of [EXCLUDED] lines with the real failures buried somewhere inside.

On #19639 that was 1,563 excluded lines around 12 actual errors.

This drops --verbose from the PR job only. The weekly full scan keeps it.

Measured on 60 files from that PR

with    --verbose:  404 lines of output
without --verbose:    9 lines

And the entire body of the quiet run is the thing you actually want:

Issues found in 1 input. Find details below.

[docs/concepts/data-management/event-grouping/stack-trace-rules.mdx]:
[404] https://github.com/getsentry/sentry/blob/.../mobile%402021-04-02.txt | Rejected status code: 404 Not Found

🔍 483 Total  ✅ 49 OK  🚫 1 Error  👻 394 Excluded  🔀 39 Redirects

Failures get more detail, not less

On a warm cache --verbose collapses errors to a bare | Error (cached). The default output gives the status and the reason:

--verbose :  [404] https://reactrouter.com/en/main/hooks/use-routes | Error (cached)
default   :  [404] https://reactrouter.com/en/main/hooks/use-routes | Rejected status code: 404 Not Found

What you lose, and why it doesn't matter here

Redirect details are verbose-only:

https://develop.sentry.dev/sdk/overview/ --[301]--> https://develop.sentry.dev/sdk/foundations/

That's genuinely useful — but not on this job. The PR run reads mostly from a shared cache, and cached entries don't re-report redirects, which is exactly why #19639's summary showed 🔀 Redirected | 0 even though the corpus has plenty. The weekly scheduled scan (args: --verbose .) populates that cache and is where redirect auditing belongs, so it keeps --verbose untouched.

The redirect count and lychee's own "re-run in verbose mode to see details" hint still appear on PRs, so nothing is silently dropped.

Verification

Tested locally with the pinned lychee 0.23.0 (the same version scripts/lint-external-links.mjs installs), against real files from #19639, with both a cold and a warm cache.

One thing I could not test locally: the job also sets jobSummary: true, and I can't exercise the action's summary generation outside CI. Non-verbose still prints per-file errors, so the summary should be unchanged — worth a glance on the first run of this PR to confirm.

IS YOUR CHANGE URGENT?

Help us prioritize incoming PRs by letting us know when the change needs to go live.
Select exactly one option. For deadlines, replace YYYY-MM-DD with the due date. You can update this information later by editing the PR description.

  • Urgent deadline (GA date, etc.): YYYY-MM-DD
  • Other deadline: YYYY-MM-DD
  • No deadline: Not urgent, can wait up to 1 week+

SLA

  • Teamwork makes the dream work, so please add a reviewer to your PRs.
  • Please give the docs team up to 1 week to review your PR unless you've supplied a deadline.

Thanks in advance for your help!

PRE-MERGE CHECKLIST

Make sure you've checked the following before merging your changes:

  • Checked Vercel preview for correctness, including links
  • PR was reviewed and approved by any necessary SMEs (subject matter experts)
  • PR was reviewed and approved by a member of the Sentry docs team

🤖 Generated with Claude Code

@vercel

vercel Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
develop-docs Ready Ready Preview Sep 29, 2026 6:41pm UTC
sentry-docs Ready Ready Preview Sep 29, 2026 6:41pm UTC

Request Review

`lychee.toml` sets `base_url = "https://docs.sentry.io"` and then excludes
that host, since internal links are lint-404s' job. With `--verbose`,
lychee prints every one of those excluded links, so the PR check becomes
a wall of `[EXCLUDED]` lines with the real failures buried inside. On
#19639 that was 1563 excluded lines around 12 errors.

Measured on 60 files from that PR:

  with    --verbose:  404 lines of output
  without --verbose:    9 lines, and the single real 404 is the only
                        thing in the body

Failures are also reported in more detail without it. On a warm cache
`--verbose` collapses them to `| Error (cached)`, while the default
output gives the status and reason:

  [404] https://github.com/... | Rejected status code: 404 Not Found

Redirect details are verbose-only, but they are not worth the noise here:
the PR job reads mostly from a shared cache and cached entries do not
re-report redirects, which is why #19639's summary showed 0 redirects
despite the corpus containing plenty. The weekly full scan keeps
--verbose and is where that auditing belongs.

The redirect count and the "re-run with -v" hint still appear on PRs, so
nothing is silently lost.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@coolguyzone
coolguyzone merged commit e0ddb46 into master Sep 29, 2026
21 checks passed
@coolguyzone
coolguyzone deleted the coolguyzone/chore/quiet-lychee-pr-check branch September 29, 2026 20:30

This branch was successfully deployed

2 active deployments
Preview – sentry-docs — 4f022705 Deployed Sep 29, 2026 by vercel[bot]
Preview – develop-docs — 4f022705 Deployed Sep 29, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Priority: Normal Docs review has no urgent deadline

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants