feat: let the reader switch off daily detection
Guessing from a source's wording is right most of the time, and someone who finds it wrong often enough should be able to stop it rather than dismiss the same false positive every patch. Off, only events the reader marked themselves get a checklist. It silences the guess rather than deleting anything: overrides, ticks and streaks all survive, so switching it back on restores exactly what was there. With it off, marking an event stores an explicit yes, since there is no longer a detection for an override to agree with. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
co-authored by
Claude Opus 5
parent
7f384eb9db
commit
41f0330e02
+8
-1
@@ -84,12 +84,19 @@ export function dailiesId(game: GameId): string {
|
||||
* "daily" still wants a checklist, and a banner whose blurb mentions "daily
|
||||
* login rewards" does not. The reader's own answer is the better evidence, so
|
||||
* it wins outright — `undefined` means they have not said, so detection stands.
|
||||
*
|
||||
* `detect` is the reader's standing preference for guessing at all. Switching
|
||||
* it off leaves only the events they marked themselves; it never touches a
|
||||
* mark or a logged day, so switching it back on restores exactly what was
|
||||
* there.
|
||||
*/
|
||||
export function resolveDaily(
|
||||
event: DailyCandidate,
|
||||
override: boolean | undefined,
|
||||
detect = true,
|
||||
): boolean {
|
||||
return override ?? isDaily(event);
|
||||
if (override !== undefined) return override;
|
||||
return detect && isDaily(event);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user