Upstream fix repaired seven mojibake note filenames, which the catalog derives
its stems from. Four hack URLs change as a result:
/hack/a-il/ -> /hack/anil/
/hack/fused-adimensions/ -> /hack/fused-dimensions/
/hack/yu-gi-oh-pok-duel/ -> /hack/yu-gi-oh-pokeduel/
/hack/recharged-yellow-previously-known-as-pok-mon-yellow-cross/
-> ...-as-pokemon-yellow-cross/
The three apostrophe cases keep their existing URLs, because slugifyStem already
carries a replaceAll workaround for the mojibake apostrophe. That workaround and
its unit test are now redundant, since no stem contains the sequence any more,
but both are left in place as harmless defensive code.
Entry count unchanged at 411, so no fixture updates. Verified: npm run check
(0 errors, vitest 9/9), npm run build (486 pages, banners regenerated under the
new slugs), CI=1 npm run test:ui (8/8), deployed. Live 200 on all seven repaired
URLs plus core pages; the four retired slugs now 404 as intended.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>