Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

`/enroll`: a stale approval's completion clears a newer link's code

Offen Anfängerfreundlich
#912 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

@dormouse-bot arbeitet bereits daran.

Seit 24.10.2026.

  • #1374 von @dormouse-bot — offen

Bewertung

Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Anfängerfreundlichkeit
86/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
typescript
Bereich
frontend

Rechercherichtung

Beginne in hosted/src/App.tsx, indem du approve, clearEnrollment und den Hashchange-Handler takeLink liest, und reproduziere dann die im Issue beschriebene Genehmigungs- und zweiten-Link-Sequenz. Füge den im Issue erwähnten App-Test hinzu, führe die relevanten App-Tests aus und verifiziere, dass das Auflösen der Genehmigung A den Enrollment-Code B angezeigt lässt, während die Genehmigung von A gemeldet wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Code: approve and clearEnrollment in hosted/src/App.tsx; the hashchange handler takeLink in the same file.

Failure path: the user clicks Approve for code A, and approveEnrollment(A) is in flight. A second enrollment link opens in the same tab, and hashchange sets enrolling to code B. A's request resolves, and approve calls clearEnrollment(), which sets enrolling to null and replaces the URL. Code B is gone from memory and from the URL, and the notice reads "Approved A". The user has to open link B again. hosted.md -> "Burrow enrollment" says "A fragment change on /enroll takes the new code without reloading". Here a completion that is already in flight undoes that take.

Suggested fix: in approve, clear only if the enrollment still being shown is the one approved (if (enrollingRef.current?.code === code) clearEnrollment()). Otherwise leave B in place and show the A notice. Add an App test: start an approval, fire a hashchange to a new code, resolve the approval, then assert that the new code is still shown.

Found while trimming #904, which had parked this as a spec "Known gap".

🤖 Generated with Claude Code

Vorherrschende Sprache
TypeScript
Sterne
5
Forks
1
Ø Merge
10 Std. 50 Min.
Gemergte PRs (30 T.)
494

Entwicklungsumgebung

Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus diffplug/dormouse

Alle Issues in diffplug/dormouse

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.