fix(game8): drop the Battle Pass label Fandom does not print
Game8 heads Genshin's pass "Battle Pass - Moontrace"; Fandom lists "Moontrace" and files the category in a column. The label minted a second id for one event, so every battle pass since the Fandom source landed has been on the calendar twice, and a reader reported it. Both sources now mint the same id and merge fuses them by id. The two Game8 ids that moved, Frostfarer and Moontrace (the only ones git history shows ever shipped), go in RETIRED_IDS so readers' marks follow. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
7c8fa7febc
commit
59403ca2cc
8 files changed
+122
-28
No files matched your search
+4
-2
@@ -116,7 +116,9 @@ server-side (the server never had the data). If the scheme must change, ship a c
|
||||
migration that reads the old keys and remaps them, and keep that migration for at least a year.
|
||||
|
||||
**A parser fix can move IDs too, and gets the same treatment.** `src/client/state/retiredIds.ts`
|
||||
holds an explicit table of IDs the feed stopped publishing and what each became. On every load and
|
||||
holds an explicit table of IDs the feed stopped publishing and what each became — first used on
|
||||
2026-10-14, when Game8's Genshin parser stopped keeping `Battle Pass -` in front of a pass's name
|
||||
(the label had put every pass on the calendar twice beside Fandom's bare name). On every load and
|
||||
every import, `progress`, `daily` and `ignored` entries under a retired ID **move** to the new one:
|
||||
|
||||
- **A move inside the same storage key, not a copy, and not a deleted key.** The mark survives under
|
||||
@@ -127,7 +129,7 @@ every import, `progress`, `daily` and `ignored` entries under a retired ID **mov
|
||||
held, because both rows were the reader's own.
|
||||
- **An unreadable entry is left where it is.** These run in `useState` initialisers, where a throw is
|
||||
a blank screen.
|
||||
- **A table, never a pattern**, and each entry kept for at least a year.
|
||||
- **A table, never a pattern**, and kept until at least 2027-10-14.
|
||||
|
||||
The date suffix disambiguates reruns of the same event. Title is slugified from the *source's*
|
||||
title, so a wiki renaming an event creates a new ID — reconciliation detects this as a near-match
|
||||
|
||||
+1
-1
@@ -809,7 +809,7 @@ note is what stops the next person re-deriving the reason it does not.
|
||||
- **Title extraction:** Display text of the caption link beneath the banner image is taken. Link `title` (parent subpage) and `img alt` (uploaded image file name) are rejected to prevent corrupting event titles and IDs.
|
||||
- **Run-date suffixes:** Recurring event run dates (`2026-09-14`) in subpage names are stripped so dates aren't duplicated.
|
||||
- **Currency:** `latestBoundaryMs` is checked for day-precision boundaries so events aren't retired before all server regions roll.
|
||||
- **Priority & IDs:** Game8 is assigned `priority: 10` while Fandom is default/0. Two live events differ slightly in naming (`To Temper Thyself and Journey Far` vs `… Cycle 5`, and `Stygian Onslaught` vs `…: Battle of the Starburst`). Game8's higher priority breaks near-match ties in `merge.ts`, ensuring existing localStorage event IDs survive and reader completion marks remain intact. Fandom contributes 11 net-new events Game8 missed, 0 date conflicts occur, and overlapping events gain corroboration bonuses.
|
||||
- **Priority & IDs:** Game8 is assigned `priority: 10` while Fandom is default/0. Two live events differ slightly in naming (`To Temper Thyself and Journey Far` vs `… Cycle 5`, and `Stygian Onslaught` vs `…: Battle of the Starburst`). Game8's higher priority breaks near-match ties in `merge.ts`, ensuring existing localStorage event IDs survive and reader completion marks remain intact. Fandom contributes 10 net-new events Game8 missed, 0 date conflicts occur, and overlapping events gain corroboration bonuses. (Recorded as 11 until 2026-10-14: one was Game8's `Battle Pass - Frostfarer` beside Fandom's `Frostfarer`, the same event under two IDs. Game8's parser now drops that label; AGENTS.md § Fandom has the rest, including the anniversary selectors, still listed twice.)
|
||||
- **336-day event:** Genshin's anniversary 5-star selection runs 336 days (`2025-10-22` → `2026-09-23`), prompting the test duration ceiling to be raised from 180 to 365 days across the test suite and ingestion specs.
|
||||
|
||||
## 16. hololive Dreams — the wiki lapsed (2026-10-14); nothing else can be fetched
|
||||
|
||||
Reference in new issue
Block a user