Subtle, but catastrophic bug when JS fails to load for any reason.

Skip to first unread message

Ee Durbin

Jun 22, 2023, 8:39:53 AM6/22/23
to OpaVote Support Forum
The Python Software Foundation is using OpaVote for the first time this year to run our annual Board election.

We have encountered two instances of people reporting accidentally submitting empty ballots due to this reproducible bug:

1) Block opavote.min.js from loading
2) Load a voting booth (we are using Approval, I have not tested other methods)
3) See that the options are not loaded, just a "✔️Vote!" button


It seems our users were confused thinking this button takes them to the actual next step, but they actually cast an empty ballot.

I noticed that disabling JS outright does block the page from rendering completely, but this case is not guarded. (Perhaps the Vote! button should be aware of if JS has loaded or not?)

-Ee Durbin
Director of Infrastructure
Python Software Foundation

Jeff O'Neill

Jun 22, 2023, 8:43:18 AM6/22/23
to Ee Durbin, OpaVote Support Forum
Hi Ee,

Thank you for pointing this out and the work to verify exactly what is going on.

This is subtle indeed

I suspect we will disable the Vote button by default and enable it with JavaScript.


You received this message because you are subscribed to the Google Groups "OpaVote Support Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to
To view this discussion on the web visit
Reply all
Reply to author
0 new messages