Conversation
a17410d to
45dbccc
Compare
45dbccc to
75ed574
Compare
|
This PR found a bug: While Apple Numbers only shows non-empty rows, the underlying XLSX XML data can store empty rows. That led to some CVRs having hidden empty rows which we erroneously marked as undervotes. We now correctly detect these rows as rows to be completely ignored and thrown out. |
|
TODO: Audit log should say "read X ballots, of which Y were ignored" or similar, rather than X=only non-empty ballots |
Rather than modifying that row, I opted to add a warning so (A) it's more visible, and (B) we don't need to propagate what is likely source-specific values up from the ES&S reader through the generic reader and into the tabulator session. It says "Ignored %d rows with no votes for any candidates" |
|
Testing I found that setting However, the Maybe we need to set the |
|
It seems that If we want to keep this approach, I suggest changing the |
I think you are right that it needs to be mutually exclusive. For our options
We can work on this vocab... |
|
Makes sense. Suggested vocab:
With 3, the CSV field listing the number of voters who didn't vote at all (Undervotes-No Ranking) would always be zero, and that's invalid. Does it make sense to write "unknown" instead of zero for that field? |
|
This change is getting larger than it seemed as first, so we'll definitely need to add tests to handle each of these options. The code isn't ready yet, but the functionality is more or less there if you want to give it an initial test @yezr to verify this is the right direction. |
|
As we got into this ticket, we started to see clearly that getting some of our assumptions confirmed about the structure of the ES&S CVR export format would help. I was able to speak to ES&S reps about the CVR export and confirmed some assumptions.
That should at least remove the need to handle blanks as skipped ranks. |
Closes #981