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:
1 parent
b6cc3b1f51
commit
63724eb783
3 files changed
+39
-3
No files matched your search
@@ -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.
|
||||
|
||||
@@ -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:
|
||||
|
||||
Reference in new issue
Block a user