Retired URLs That Are Handled Correctly
0 Intentional IssuesTwo URLs that a moved-or-deleted check has every opportunity to misread, and must not.
Expected result: moved_deleted_return NOT DETECTED
Only two states are findings for this code: a 404/410 that left no redirect behind, and a temporary redirect where a permanent one belongs. Neither URL below is either of those.
Note that a live scan proves nothing here — the crawler passes historicalUrls: [], so the check returns early for every site. scripts/verify-fixtures/verify-false-positives.mjs calls the detector directly with these two URLs, which is what actually exercises it.
- /fp-retired-guide301 → /fp-retired-guide-2026redirects[]
A permanent redirect is exactly what a moved page should leave behind. Declared in public/_redirects, so the crawler receives a real 301.
- /fp-legacy-still-live200other[], redirectType 'still-live'
The path and the copy both read as retired, but the page is served. Demanding a redirect from a live page is the regression the 'still-live' bucket was removed to fix.
- /fp-retired-guide-2026200n/a — the destination
The replacement page the permanent redirect points at. Linked here so the crawl reaches it directly, because a request that merely follows a redirect is recorded under the URL it started from.
The positive conditions stay where they are
/status-404, /status-410 and /status-302 are the states this code does report. Nothing on this page replaces them — see /head-tag-gaps for why they are currently unreachable, and /false-positive-fixtures for the rest of this batch.