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>
Summaries render as plain text in a single <p> (ContentSection.astro,
HackCard.astro), so markdown emphasis, [label](url) links, [[wikilinks]],
callouts, headings and bare URLs all showed literally on the site. All 87
affected summaries rewritten as clean prose upstream in the vault.
Counts unchanged at 411, so no fixture updates. Verified: npm run check
(0 errors, vitest 9/9), npm run build (486 pages), CI=1 npm run test:ui (8/8),
plus a scan of all 411 built pages' rendered Summary paragraphs showing zero
markdown residue.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Six versions recovered from evidence (Rutile Ruby 2.2, Clover 1.3.3, Legends -
Kingdom Hearts 3.5, Space World Crystal 4.2, TCG Neo 1.33, Techno Emerald
2.0.6); five set to unknown where no version was ever stated. Rutile Ruby's
download links relabelled to the official build names.
Counts unchanged at 411, so no fixture updates. Verified: npm run check
(0 errors, vitest 9/9), npm run build (486 pages), CI=1 npm run test:ui (8/8),
deployed via scripts/deploy-site.ps1.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Version-only refresh of two existing entries; catalog count stays at 411 and no
Playwright fixture counts changed.
Verified: npm run check (0 errors, vitest 9/9), npm run build (486 pages),
CI=1 npm run test:ui (8/8), deployed via scripts/deploy-site.ps1. Live 200 for
/hack/soulgold/ (1.0.4.2) and /hack/z/ (v2.13 (EN)).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Adds Soulgold, Unchosen, Soulstones, and Soulstones 2: Time Wardens, plus the
new `RPG Maker MV` base route.
Playwright fixtures were two entries stale from the Timeless Diamond /
Spaceless Pearl sync, so they are reset to measured counts rather than deltas:
411 total, GBA 205, PC 86, NDS 52, Expansion 169, New Experience 179, QoL 97,
Complete 348, and the toHaveCount assertions (411 / GBA 205).
Verified: npm run check (0 errors, vitest 9/9), npm run build (486 pages,
banners 411/411), CI=1 npm run test:ui (8/8).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
FE8 crossover hack (self-hosted in-game banner). Catalog 404 -> 405;
Playwright fixtures updated (405, GBA 204, New Experience 174, Complete 342).
Built and deployed to romhacks.ginnoir.com.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Adds Hidden Place, Crippling Medical Debt Edition (with self-hosted
boxart banner), and Grimm/Conviction/Miragea's Traveler; restores
Crystal Inheritance to Complete. Playwright fixtures updated (404, PC 83,
New Experience 173, Difficulty 127, QoL 94, Complete 341, GBA 203, Beta 32).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Nova (PhionGames RPG Maker XP / Essentials PC fangame) synced from the
vault export. Catalog 398->399, PC 78->79; banner manifest + Playwright
count fixtures updated. Built and deployed to romhacks.ginnoir.com.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Updates 396-hack catalog data, banner manifest, and Playwright fixtures for full banner coverage, zero gap counts, and Fakemon roster tags in the Generation sidebar.