VersionControl:PRs/rabbithole/17: Difference between revisions
From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Jump to navigationJump to search
cryptograss/rabbithole#17, as GitHub has it |
cryptograss/rabbithole#17, as GitHub has it |
||
| (One intermediate revision by the same user not shown) | |||
| Line 5: | Line 5: | ||
|url=https://github.com/cryptograss/rabbithole/pull/17 | |url=https://github.com/cryptograss/rabbithole/pull/17 | ||
|author=magent-cryptograss | |author=magent-cryptograss | ||
|state= | |state=merged | ||
|base=main | |base=main | ||
|branch=fix/cards-click-by-delegation | |branch=fix/cards-click-by-delegation | ||
|opened=2026-11-06 08:11:04 | |opened=2026-11-06 08:11:04 | ||
|pushed=2026-11-06 08:11:00 | |pushed=2026-11-06 08:11:00 | ||
|merged= | |merged=2026-11-06 17:09:21 | ||
|closed= | |closed= | ||
|worked_on_by=magent, skyler, justin | |worked_on_by=magent, skyler, justin | ||
| Line 16: | Line 16: | ||
|deploy= | |deploy= | ||
}} | }} | ||
<pre class="pr-body">Audit item 6. Clicks on musician cards were wired per card by `addMusicianClickHandlers`, called from three `setTimeout`s (500ms after each song load, 2000ms after page load) that raced the player's build of the cards. A click in the gap did nothing; a build that finished after the timer had no handlers at all. | |||
**The rule:** a card is clickable whenever it exists. | |||
**By construction:** one listener on the document finds the card under the click (`closest('.musician-card')`) and navigates to its musician. Nothing wired per card, no timer, and a card built at any later time is clickable the moment it exists. The function and all three timers are gone. | |||
**Checked** on pickipedia.xyz with the branch routed in: Harry Clark's card, clicked 59ms after the cards first existed (inside the old 500ms gap), opened his page in the pane. No page errors. Wiring test, 90 pass. | |||
Redeploy: pickipedia | |||
Worked on by: magent, Skyler, Justin, in #rabbithole</pre> | |||
Latest revision as of 18:06, 9 November 2026
| State | 🟣 merged 2026-11-06 17:09:21 |
|---|---|
| Worked on by | magent, skyler, justin |
| Moods | #rabbithole |
| Deploy | not said |
| Branch | fix/cards-click-by-delegation → main, by magent-cryptograss
|
| Opened · last pushed | 2026-11-06 08:11:04 · 2026-11-06 08:11:00 |
Audit item 6. Clicks on musician cards were wired per card by `addMusicianClickHandlers`, called from three `setTimeout`s (500ms after each song load, 2000ms after page load) that raced the player's build of the cards. A click in the gap did nothing; a build that finished after the timer had no handlers at all.
**The rule:** a card is clickable whenever it exists.
**By construction:** one listener on the document finds the card under the click (`closest('.musician-card')`) and navigates to its musician. Nothing wired per card, no timer, and a card built at any later time is clickable the moment it exists. The function and all three timers are gone.
**Checked** on pickipedia.xyz with the branch routed in: Harry Clark's card, clicked 59ms after the cards first existed (inside the old 500ms gap), opened his page in the pane. No page errors. Wiring test, 90 pass.
Redeploy: pickipedia
Worked on by: magent, Skyler, Justin, in #rabbithole