Catalog cleanup pass across gb/gbc/gba/nds/3ds:
- Standardize nonstandard hack filenames to `Pokemon - <Name> [Hack].<ext>`;
remove verified byte-identical duplicates (conform-rom-names.sh).
- Resolve 9 version-conflicts via side-by-side emulator comparison
(resolve-version-conflicts.sh): promote newer builds, keep genuine
distinct hacks, fix a mislabeled Dark Rising slot (was the Digimon
crossover "Worlds Collide"), and rebuild Mega Power 5.77 + HeartGold
Generations v2.0 fresh from their patches.
- Resync 286 vault notes' `library_path` to the real on-disk [Hack] files
and fix 15 stale platform fields (resync-vault-library-paths.py).
- Regenerate MOC tables + wiki/catalog.json (396 notes).
Also includes pending Playnite PC-hack setup/repair scripts.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Enrich the Obsidian ROM-hack vault from the valhalla Discord scrape
(/storage1/labdata/romhacks/metadata) plus web research, growing the catalog
from 285 to 368 notes and preparing a data export for a wiki site.
Tooling (all dry-run by default, --apply to write; .scrape/ is gitignored):
- scrape_match.py reconcile scrape entries vs notes (43 overlap / 211 match / 83 new)
- enrich_vault.py backfill frontmatter, merge scrape into curated notes,
create 83 new notes, rebuild import bodies to one layout
- enrich_web.py apply hand/web-verified facts from .scrape/web_facts*.json
- build-wiki-data.py export wiki/catalog.json (the site data source)
Results: 368 notes, 327 with served banner art, 332 rich summaries, 200 with
feature lists; new frontmatter developer/release_date/banner/homepage/scrape_dir;
12 flagship hacks web-verified. wiki/SPEC.md describes the site build.
build-vault-mocs.py Index callout updated for the new counts.
Per the standing rule that Obsidian notes belong in the self-hosted vault, not
in project folders:
- rm pokemon-romhack-vault/ (redundant generated snapshot; the canonical,
richer catalog lives in the vault under Pokémon ROM Hacks/)
- pokemon-romhacks-wanted.md -> moved into the vault as Pokémon ROM Hacks/Wanted.md
- .gitignore: ignore pokemon-romhack-vault/ (build script output) so a poorer
regenerated copy can never be committed back
- build-romhack-vault.py: marked ARCHIVED; vault is now hand-maintained via MCP
- README: rewritten to point at the vault for the catalog
Curated knowledge base + pipeline for the valhalla Pokémon ROM-hack
collection, moved out of the homelabstack infra repo on 2026-06-06 so that
repo stays focused on the homelab.
- pokemon-romhack-vault/ Obsidian vault: 75 hack notes + Index/Types/Platform MOCs (generated by build-romhack-vault.py)
- scripts/ build-romhack-vault, romhack-import/fetch/apply
- pokemon-romhacks-wanted.md manual-acquisition list (gated hacks)
- drop/ gitignored ~1.3GB binary staging area
The ROMs live on valhalla (/storage1/Emulation) served by the RomM stack,
which stays in homelabstack (stacks/roms).