From e11b1308be5fab3a44f6d9d653588e7e3dc4acf1 Mon Sep 17 00:00:00 2001 From: "melodic-standards-sync[bot]" <300666570+melodic-standards-sync[bot]@users.noreply.github.com> Date: Wed, 21 Oct 2026 19:58:27 +0000 Subject: [PATCH] chore: sync standards components (320cf830266d1bcc153d02be24da58f5cc9ce2ac) --- lychee.toml | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/lychee.toml b/lychee.toml index 17434b9..60e8247 100644 --- a/lychee.toml +++ b/lychee.toml @@ -15,12 +15,18 @@ include_fragments = "full" # whole trees of markdown, are excluded by path below. hidden = true -# No `accept` key: lychee's default status set applies, so a 429 fails the link. -# Accepting 429 would count a throttled response as OK on the first reply, which -# skips lychee's retry with per-host backoff (`max_retries`, default 3) and -# never checks the page's fragment. lychee's rate-limit docs name accepting 429 -# a last resort. A host that still throttles after the retries is a per-host -# pacing problem, not a reason to stop checking every link on every host. +# Transient failures do not fail an online run: a throttled (429) or erroring +# (5xx) host, or a timeout, says nothing about whether the link is dead. A dead +# link (404, 410 and every other 4xx) still fails. Setting `accept` replaces +# lychee's default set, so the default 100..=103 and 200..=299 are restated. +# Cost: an accepted 429 or 5xx counts as OK on the first reply, so it is not +# retried and its #fragment is not checked. The online run's job summary lists +# accepted 429 and 5xx links and timeouts so a host that stays down is noticed. +# lychee 0.24.2 never retries a rejected 5xx; revisit accepting 5xx when +# https://github.com/lycheeverse/lychee/pull/2324 ships in a release. +# The offline lane makes no HTTP requests, so neither key changes it. +accept = ["100..=103", "200..=299", "429", "500..=599"] +accept_timeouts = true # Rewrite JavaScript-rendered fragments to the same URL without the fragment. # These anchors exist only after the page's scripts run, so lychee, which reads