docs: record why hololive Dreams stopped refreshing, and what lapsed means
SOURCES.md § 16 holds the diagnosis (run 317's rejected zeros, the page unchanged in shape with nothing current since 19 Sep) and the replacements assessed and declined: NamuWiki behind a Cloudflare challenge, an official site with no event posts, no Game8 page. AGENTS.md says when a person may set `lapsed` and what it does not excuse. TODO ticks the item and notes the cosmetic "last confirmed never" seen in the CI state. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
ae701de74e
commit
0701e5e16e
@@ -416,6 +416,24 @@ section, `README.md` § Status, `docs/SOURCES.md` § Method and `docs/FEEDBACK.m
|
||||
A single manual `--only` dispatch is enough to answer it for one source; note that `--dry-run`
|
||||
cannot, because it makes no requests at all by design.
|
||||
|
||||
**A source that has lapsed is recorded, not repaired.** A wiki can keep answering `200` with an
|
||||
intact page whose editors simply stopped, and then every cycle parses to zero and is rejected. That is
|
||||
correct, because a zero is never published, but after three cycles it fails the workflow over
|
||||
something no code here can fix. When a person has looked, found the page unchanged in shape and
|
||||
merely stale, and found no fetchable replacement, they set `lapsed: { recorded, reason }` on the
|
||||
registry entry. Refresh then reports that source's empty answers as a warning instead of `broken`.
|
||||
Three limits keep this honest:
|
||||
|
||||
- It excuses only a source that answers `200`. A lapsed source that starts answering `403` or `5xx`
|
||||
is broken like any other.
|
||||
- It changes nothing a reader sees. The held snapshot keeps ageing, and the staleness footer goes
|
||||
on saying so.
|
||||
- It asks to be removed. The first cycle that lists events again warns that `lapsed` should come out
|
||||
of the entry.
|
||||
|
||||
Never set it from code or on a guess. hololive Dreams carries it since 2026-10-14
|
||||
(docs/SOURCES.md § 16).
|
||||
|
||||
A source whose ToS forbids automated access does not get an adapter. Flag it and ask.
|
||||
|
||||
**Sources assessed and declined** (2026-08-17, extended 2026-08-19), so these are not
|
||||
@@ -845,6 +863,11 @@ is the quality of what is there, and three things are worth knowing:
|
||||
robots.txt disallows. The parser refuses a href with a query and falls back to the events page;
|
||||
when the articles exist, they get linked with no change.
|
||||
|
||||
**The wiki lapsed after 19 Sep 2026** and the source carries `lapsed` (§ Scraping conduct;
|
||||
docs/SOURCES.md § 16). The page still parses: an empty `Current Events` here means the editors
|
||||
stopped, not that the parser broke. `fixtures/holodori/holodoriwiki-events-2026-10-14.html` pins
|
||||
that.
|
||||
|
||||
Two rows on the page are not events and are meant to be missing. `Beginner Mission` runs
|
||||
`Game Launch` → `Unknown`: no start means no event ID, and a permanent tutorial chore is not what a
|
||||
calendar of deadlines is for. An `Unknown` **end** is kept, though — that is `endsAt: null`, and
|
||||
|
||||
@@ -137,7 +137,7 @@ date makes you miss content. Given the choice, this ships nothing rather than a
|
||||
| Goddess of Victory: Nikke | Fandom |
|
||||
| Infinity Nikki | Fandom |
|
||||
| Girls' Frontline 2 | IOP Wiki |
|
||||
| hololive Dreams | holodori.wiki |
|
||||
| hololive Dreams | holodori.wiki (lapsed since 19 Sep 2026; see docs/SOURCES.md § 16) |
|
||||
| Stella Sora | stellasora.miraheze.org |
|
||||
| Honkai Impact 3rd | arustats.com |
|
||||
|
||||
|
||||
@@ -21,7 +21,14 @@
|
||||
built-ins should keep answering the same setting.
|
||||
- Code: `src/client/components/Controls.tsx` (*What you see*), `src/client/state/usePrefs.ts`,
|
||||
`src/shared/routines.ts` (`activeRoutines`, `routineToAsk`), `src/client/components/Dailies.tsx`.
|
||||
- [ ] hololive Dreams has not refreshed in three weeks — find out why, or find it a new source.
|
||||
- [x] hololive Dreams has not refreshed in three weeks — find out why, or find it a new source.
|
||||
Resolved 2026-10-14: the wiki lapsed after 19 Sep (still answering, still parsing, nothing
|
||||
current), and no replacement can be fetched. The source is recorded as `lapsed` — see
|
||||
`docs/SOURCES.md` § 16.
|
||||
- Still open: run 317 reported `last confirmed never` for it, while the committed meta says
|
||||
2026-09-22. The CI state in the Actions cache appears to have lost that date, perhaps by
|
||||
restoring from a chain that never held it. It is cosmetic (the message only), but worth a
|
||||
look if another source shows it.
|
||||
The footer says (2026-10-13): *"Of the games you have switched on, this one has not refreshed in
|
||||
over two days, so some end dates may have moved: hololive Dreams (21d 7h ago)."*
|
||||
- What the repo shows: `snapshots/holodori-holodoriwiki-events.meta.json` was last confirmed
|
||||
|
||||
@@ -71,6 +71,7 @@ Two things this method cannot tell you, and both matter:
|
||||
| Silver Palace | Unreleased |
|
||||
| Honkai Impact 3rd | **Built** (2026-08-27) on `arustats.com`, and the only lane here whose dates are **estimates** — see § 14 |
|
||||
| Genshin Impact (Fandom) | **Built** (2026-09-12) on `genshin-impact.fandom.com`, second source for a blind lane — see § 15 |
|
||||
| hololive Dreams | Built (2026-08-18) on `holodori.wiki`, which **lapsed** after 19 Sep 2026; no fetchable replacement exists — see § 16 |
|
||||
|
||||
## Summary of findings
|
||||
|
||||
@@ -87,6 +88,7 @@ Two things this method cannot tell you, and both matter:
|
||||
| Aether Gazer | — | — | — | **Do not build. The game is shutting down.** |
|
||||
| Silver Palace | — | — | — | Unreleased; beta only |
|
||||
| Genshin Impact (Fandom) | `genshin-impact.fandom.com/api.php?…page=Event` | `fandom`, fifth template | yes (via `api.php`) | **BUILT** 2026-09-12 — adds 11 events Game8 missed; Game8 priority preserves localStorage IDs |
|
||||
| hololive Dreams | `holodori.wiki/wiki/Events` (still) | `holodoriwiki` | yes, but nothing new to fetch | **LAPSED** 2026-10-14 — NamuWiki is behind a Cloudflare challenge, the official site posts no events, Game8 has no page |
|
||||
|
||||
---
|
||||
|
||||
@@ -810,6 +812,48 @@ note is what stops the next person re-deriving the reason it does not.
|
||||
- **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.
|
||||
- **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
|
||||
|
||||
> **Outcome: kept, and recorded as lapsed.** `holodori.wiki` answers every cycle and the parser
|
||||
> still reads it, but its editors stopped adding events after 19 Sep 2026. No replacement passes
|
||||
> § Method. The source stays registered with `lapsed` set (`src/ingest/adapters/index.ts`), so the
|
||||
> refresh reports it as a warning rather than failing every run, and it recovers by itself if the
|
||||
> editors return. Readers still see the lane's age in the staleness footer, which is the honest
|
||||
> signal here.
|
||||
|
||||
**How it showed up.** The footer said *"hololive Dreams (21d 7h ago)"*, and refresh run 317
|
||||
(2026-10-13) logged `rejected — kept previous snapshot; new body yielded 0 events (had 1)` then
|
||||
`broken` after 21 failing cycles with `last status 200`. So the source was answering, not blocked.
|
||||
|
||||
**What the page shows.** One request on 2026-10-14 (our User-Agent, about 7h after the last CI
|
||||
fetch; kept as `fixtures/holodori/holodoriwiki-events-2026-10-14.html`):
|
||||
|
||||
- **Same template.** `canParse` passes and the two-heading layout is unchanged. The parser is
|
||||
reading the page correctly.
|
||||
- **Nothing current.** `Current Events` holds only `Beginner Mission`, which has no start date and
|
||||
is skipped by design (AGENTS.md § hololive Dreams). The newest row anywhere is
|
||||
`A Dreamy Summer Escape`, 09/19–09/25 JST, under `Past Events`.
|
||||
- **The game did not pause; the page did.** Rows had been added every week or two from 7 Aug to
|
||||
19 Sep. The game's X account then ran a score challenge from 7 to 13 Oct and announced a
|
||||
"Neon Sunshine Festival". Neither is on the page.
|
||||
|
||||
**Candidates assessed:**
|
||||
|
||||
| Candidate | Finding | Verdict |
|
||||
|---|---|---|
|
||||
| NamuWiki `hololive Dreams/이벤트` | Lists the 7–13 Oct event with times. `robots.txt` allows `/w/` for `*`, but the page answers our client `403` with `cf-mitigated: challenge` (Cloudflare's JavaScript check) | **Decline.** That is an access control; § Method and AGENTS.md § Scraping conduct rule out working around it |
|
||||
| `www.hololive-dreams.com/news` (official) | No `robots.txt` (404), so nothing is disallowed. But the news list has four posts in all: launch, system requirements, and two on 29 Sep (Ver.1.2.0, the Soda Pop Lagoon area). The site posts no events | **Decline** — no event data |
|
||||
| Game8 | No hololive Dreams events page found, only a launch news article | **Decline** — nothing to read |
|
||||
| X (`@holo_dreams_en`), press releases | X has no fetchable surface for us. Press releases (CyberAgent, syndicated) are prose about single events, not a schedule | **Decline** |
|
||||
|
||||
**Worth doing instead.** `holodori.wiki` is a CC BY-SA wiki, so adding the missing events there
|
||||
fixes it for every reader of that wiki, and refresh picks them up with no code change. When the
|
||||
page lists events again, the refresh warns that the source is listing events again and that
|
||||
`lapsed` should come out of its registry entry. Do that, and update this section.
|
||||
|
||||
**Re-check:** `bun run refresh --only holodori-holodoriwiki-events` once the six-hour floor has
|
||||
passed. A `fetched` with more than zero events means the wiki is back.
|
||||
|
||||
## What every one of these costs, beyond the source
|
||||
|
||||
Adding a game is never only a `SOURCES` entry:
|
||||
|
||||
Reference in New Issue
Block a user