docs: say that the board has two shapes now

F1 described "one lane per game" as a fact about the timeline, which is
now false half the time, and the prefs key space did not list the pref
that decides it. Both say why the merged board sorts with
endingSoonestFirst rather than a bare end date, since that is the part a
later change is most likely to "simplify".

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
Lucas Winther
2026-08-18 22:16:24 +02:00
co-authored by Claude Opus 5
parent 1c8b71e7bf
commit e587e7e106
4 changed files with 24 additions and 5 deletions
+5 -2
View File
@@ -218,12 +218,15 @@ Namespaced, versioned, and small. Nothing here ever goes to the server.
"gacha-tracker:v1:daily" // { [id]: { days: ["2026-08-15", ...], at } }
"gacha-tracker:v1:ignored" // { [eventId]: { at } } — "stop showing me this"
"gacha-tracker:v1:prefs" // { region, hiddenGames[], knownGames[]?, focusGame, sort, view,
// timelineDayWidth, detectDaily, showCompleted, showIgnored,
// regionConfirmed, onboarded }
// timelineDayWidth, timelineGroup, detectDaily, showCompleted,
// showIgnored, regionConfirmed, onboarded }
// timelineDayWidth is px per day on the board, stored as the
// measurement rather than a step number and read through
// snapDayWidth — so a value from an older ladder still opens
// on something renderable.
// timelineGroup is "game" (a lane each) or "ending" (every game
// in one deadline queue). Defaults to "game", so shipping it
// moved nobody's board; see PRD F1.
// knownGames is every lane the reader has been offered. Absent
// means unrecorded, not "offered nothing" — see PRD F8; a lane
// missing from it is new to them and arrives switched off.