docs: pass windows shipped for Star Rail, ZZZ and Nikki; Endfield waits

Records why Miliastra was reverted and why Endfield's Protocol Pass has
no source yet, updates AGENTS.md's parser list and marks sub-project 3
in TODO with the follow-ups.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Lucas WintherandClaude Opus 5.5 committed 2026-10-16 06:29:31 +02:00
1 parent b6cc3b1f51
commit 63724eb783
3 files changed
+39 -3

No files matched your search

+4 -2
View File
@@ -43,7 +43,7 @@ A web app that aggregates live and upcoming events across popular gacha games, p
calendar, sorts them by end date or by what the reader is partway through, tracks day-by-day
progress on events that repeat daily, and lets a user mark events completed.
**Status: working app, refreshing itself on a schedule.** Schema, ten parsers, twenty-two sources across
**Status: working app, refreshing itself on a schedule.** Schema, twelve parsers, twenty-six sources across
twenty games, the full interface, offline support, a static server, a Docker image and CI all exist and
are tested. The refresh runner (`bun run refresh`) fetches, caches raw snapshots and rebuilds the
feed; `.gitea/workflows/refresh.yml` runs it twice a day and commits only when a page actually
@@ -241,7 +241,9 @@ These come from how gacha games actually schedule things, and they cause most bu
`wikigg`, `akwiki`, `bawiki`, `holodoriwiki`, `iopwiki`, `stellasorawiki` and `arustats` serve one
each — `wikigg` and `akwiki` share a host family and have entirely different templates, and
`bawiki`, `holodoriwiki` and `stellasorawiki` are all Miraheze wikis whose page templates have
nothing in common. `arustats` is the odd one out and the only parser here that does not read
nothing in common. Two Fandom templates that are not event pages have parsers of their own:
`fandomtable` reads a pass's dated history table (two sources) and `fandomversion` a version
table that stands in for a pass where the link is stated (one). `arustats` is the odd one out and the only parser here that does not read
markup at all: that site server-renders its schedule into a Next.js `__NEXT_DATA__` blob, so the
parser reads JSON and the rendered grid is ignored. Adding a source for a known site is one
`SOURCES` entry; a new site is a parser module.
+14 -1
View File
@@ -71,7 +71,7 @@
Asia's clock for every reader (`clock: "asia"`, sub-project 2). A timer read from the America
server (and one from Asia, to be sure) settles it; if America rolls on its own reset, the
clock is per server and the entry needs changing.
- [ ] **Sub-project 3: dated battle pass and shop windows as feed events.** Source and parser work
- [x] **Sub-project 3: dated battle pass and shop windows as feed events.** Source and parser work
(AGENTS.md § the ingest pipeline; the `adapter-author` agent and `add-game-source` skill), not
built-ins. **Check the feed first**: Genshin's battle pass is already a feed event (`Battle Pass
- Moontrace`, de-duplicated against Fandom's `Moontrace` on 2026-10-14), so a new source must not
@@ -84,6 +84,19 @@
Oscillated Coral shop (resets each version, 11 Nov ~10–11 UTC), ZZZ City Fund season (19 Oct
03:00 UTC), Infinity Nikki Mira Journey (29 Oct ~20:00 UTC). Never invent a date: an event is
built only from a source that states it; these readings are for checking a parser.
Shipped 2026-10-16 — see the [pass windows spec](docs/superpowers/specs/2026-10-16-pass-windows-design.md):
Star Rail's Nameless Honor and ZZZ's New Eridu City Fund from their Fandom history tables, and
Infinity Nikki's Mira Journey from its version, on the owner's in-game confirmation. Genshin's
Battle Pass and Miliastra Pass were already in the feed.
- [ ] Endfield's *Protocol Pass* window. The wiki says the pass runs "until the end of this version",
but on 2026-10-16 no stable page dated the current version: `/wiki/Version` stopped at
Dreamscape (ended 2026-10-14), the main page gave only Asia's start, and the per-version page
(`Sanctuary_of_Ink`) changes URL every patch. endfield.wiki.gg's robots disallow `/api.php` for
`*`, so only `/wiki/` pages are open. Re-check `/wiki/Version`; once it dates the current version,
build `endfield-wikigg-protocol-pass` as the spec describes.
- [ ] Wuthering Waves' Pioneer Podcast and Oscillated Coral, and NTE's Circle Bounty, as pass/shop
windows: no page dated them on 2026-10-16 (the [pass windows spec](docs/superpowers/specs/2026-10-16-pass-windows-design.md)
§ Not shipped has what was found).
- [ ] Give Genshin's *To Temper Thyself and Journey Far* a check-in goal by default, so a reader
need not set it by hand. The owner asked on 2026-10-16 to "mark it as a 4/5 wk event"; earlier
the same day they described it as five days out of seven, and the [check-in goals spec](docs/superpowers/specs/2026-10-03-check-in-goals-design.md)
@@ -75,6 +75,27 @@ nothing invented ("Protocol Pass", "Mira Journey"). Event IDs are game + title +
period is its own event and no existing ID moves. None of these titles occurs in the live feed
today, so `mergeEvents` has nothing to pair them with.
## Outcome (2026-10-16)
Three of the five shipped: `hsr-fandom-nameless-honor` and `zzz-fandom-city-fund` (parser
`fandomtable`) and `nikki-fandom-mira-journey` (parser `fandomversion`). Two did not:
- **Genshin's Miliastra Pass was already in the feed.** Fandom's Event page, an existing source,
lists "Silvery Moonlight Chronicle" with the same window, and `mergeEvents` folded the new copy
into it. The feed was unchanged, so the source was reverted rather than kept as a second copy —
the same reason Genshin's Battle Pass got no new source. This section's claim that no title
occurred in the live feed was wrong for this one.
- **Endfield's Protocol Pass has no stable dated page.** endfield.wiki.gg's robots disallow
`/api.php` for `*` (a second `User-agent: *` group), so only `/wiki/` pages are open. On
2026-10-16 `/wiki/Version` stopped at Dreamscape (ended 2026-10-14), the main page gave only
Asia's start for Sanctuary of Ink, and the per-version page changes URL every patch. A start-only
event cannot say when the pass ends, which is this feature's whole point, so it waits (TODO.md).
The Protocol Pass page's own words are "Protocol Pass: Ink Scroll is now available until the end
of this version" (its changelog), not the wording quoted above.
The ZZZ wiki's `robots.txt` answers our client with Fandom's challenge; the owner read it in a
browser on 2026-10-16 (standard Fandom file), recorded in the source's comment.
## Shape in code
Parsers are keyed by site template (AGENTS.md § Working on parsers). Two new templates: