Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Admin UI for dealing with ballot email problems is very complicated. #3

Open
kfogel opened this issue Jul 29, 2013 · 0 comments
Open

Comments

@kfogel
Copy link
Collaborator

kfogel commented Jul 29, 2013

In a recent election, we had 267 voter email address that the system sent ballot emails to. Most of the ballot emails reached their destinations, but ten of them did not (I sent a personal email to every voter to check; that's how we found out).

Below is the description of what I did to handle those ten emails. While this solution was not hard for me, that's only because I was somewhat familiar with the internals already. I think for a regular Election Admin, this would have been too difficult. It would better to have an admin UI where one enters the email address of each problem voter (one at a time or better yet in bulk) and is given a guided workflow to solving this common problem.

Here's what one does right now to solve this:


To handle those ten voters, I logged in to the admin console:

https://votingbooth.ourdomain.org/admin

Then I navigated to the DB query page of the "init" application DB. (I choice the "db.voter" view, to get a useful sample query to guide me.) That all brought me here:

https://votingbooth.ourdomain.org/init/appadmin/select/db

I generated a query using the email addresses of all the voters who had reported a problem. The query looked like this (but with real addresses, of course, and without the line breaks etc):

(db.voter.email=="[email protected]")|
(db.voter.email=="[email protected]")|
(db.voter.email=="[email protected]")|
(db.voter.email=="[email protected]")|
(db.voter.email=="[email protected]")|
(db.voter.email=="[email protected]")|
(db.voter.email=="[email protected]")|
(db.voter.email=="[email protected]")|
(db.voter.email=="[email protected]")|
(db.voter.email=="[email protected]")

That gave me some results that looked correct, and contained the unique voter IDs. So I downloaded the CSV of the results, and (from my personal address) mailed each voter privately with an email like this:

Your ballot URL should be
https://votingbooth.ourdomain.org/init/default/vote/4/voter-E52BB90AF0CE88A92E3009AFB0719B81
Please try voting, and let me know if you have any problems!

(The above is not a real voter ID, of course -- it's just a fake example.)

By the way, I tested this first by retrieving my own voter ID using the same method, constructing the URL, and going there and voting. It seemed to work fine, and I checked that the in-progress results page updated accordingly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant