feat(github): give readers two issue forms and link to them

Nothing a reader marks, types or ticks ever leaves their browser, so there is no
account and no server-side record to look anything up in after a report arrives.
Whatever the form captured is all there will ever be — which is the argument for
structured forms over a blank box, and for the bug form carrying the footer's
"event data last refreshed" line as a prefill. A stale calendar and a genuinely
wrong parse are indistinguishable from outside, eight sources cannot be fetched
from CI at all, and that line is the only thing that separates the two cases.

The feature form states the three constraints up front, because "sync across my
devices" and "have a model read the page" both have settled answers and a reader
deserves them before typing rather than after. It also points source requests at
the assessed-and-declined table: the loudest feedback on the first release was
that the game list is too short, so that is the request that arrives most, and a
wiki that forbids automated access or only archives finished events cannot be
used no matter how often it is asked for.

Blank issues stay enabled. A form that turns someone away loses the report, not
the noise.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
Lucas Winther
2026-08-17 23:19:47 +02:00
co-authored by Claude Opus 5
parent 32a0683824
commit 02dd7b3ed4
7 changed files with 441 additions and 2 deletions
+103
View File
@@ -0,0 +1,103 @@
name: Bug report
description: A wrong date, a missing event, a lost tick, or anything else the app got wrong.
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
Thanks for reporting this.
**If a date looks wrong, please open the event and check its source link first.**
This app does not compile schedules; it rearranges what a wiki published. If the wiki
page says the same thing, the fix belongs there — and it is still worth telling us,
because we may be able to use a better source for that game.
Nothing you have marked, typed or ticked leaves your browser, so there is no account
for us to look up. That means the details below are all we have to go on.
- type: dropdown
id: area
attributes:
label: What part of the app?
options:
- A wrong date or time
- An event is missing
- An event that should not be there
- Dailies, streaks or the checklist
- The list, calendar or sorting
- Events I entered myself
- Offline, installing, or updating
- Export or import
- Something else
validations:
required: true
- type: input
id: event
attributes:
label: Which game and event?
description: The game, and the event title exactly as the app shows it.
placeholder: "Genshin Impact — Mutual Aid in Bloom: Into the Frostlands"
validations:
required: false
- type: textarea
id: what
attributes:
label: What happened, and what did you expect?
description: |
For a date problem, the useful shape is: what this app shows, what the source page
shows, and which one you believe.
placeholder: |
The app says it ends 24 Aug, 09:00. The Game8 page says 31 Aug.
validations:
required: true
- type: input
id: refreshed
attributes:
label: "\"Event data last refreshed\" line"
description: |
Copy it from the bottom of the page. Several sources cannot be fetched automatically,
so a stale calendar is a normal state with its own explanation — this line tells the
two cases apart before anyone goes looking for a parser bug.
placeholder: Event data last refreshed 15 Aug 2026, 04:12 — 2 days ago.
validations:
required: false
- type: input
id: source
attributes:
label: Source page
description: The wiki page the event links to, if the problem involves its data.
placeholder: https://game8.co/games/Genshin-Impact/archives/...
validations:
required: false
- type: input
id: where
attributes:
label: Where are you running it, and in what browser?
placeholder: stereotypicalcat.github.io/gacha-event-tracker — Firefox 141 on Android
validations:
required: false
- type: textarea
id: extra
attributes:
label: Anything else
description: |
Screenshots help. If you attach an export file, remember it is a record of your own
progress — trim it to the event in question if you would rather not share the rest.
validations:
required: false
- type: checkboxes
id: checks
attributes:
label: Before you post
options:
- label: I checked the event's source page, or this is not about a date.
required: false
- label: I searched the open issues for the same problem.
required: false