BrightSpots / rcv

Ranked Choice Voting Universal Tabulator
Mozilla Public License 2.0
71 stars 19 forks source link

Think about how to estimate tasks that run after round by round tabulation and include them in progress bar #836

Open yezr opened 3 months ago

yezr commented 3 months ago

check out these three tickets for context https://github.com/BrightSpots/rcv/issues/679 https://github.com/BrightSpots/rcv/issues/133 and especially https://github.com/BrightSpots/rcv/issues/825 which needs to be implemented first.

Once #825 is complete we need to review how to include the two optional post-tabulation tasks that can take time: tabulate by precinct and tabulate by batch. How can we estimate the time they will take and include it in our granular progress bar?

Just thinking out loud with my current understanding of the code: I think that they will probably be very very quick, quicker than a single round of tabulation. The per-round tallies are computed and saved in memory during each round of tabulation. The actual writing to disk just does some small translation from the in-memory representation into a file.

yezr commented 2 months ago

check armin's comments here this takes so little time that it's basically inconsequential to the progress bar

artoonie commented 2 months ago

Additionally: tabulate-by-X occurs during tabulation, and is therefore already included in the progress bar.

The only piece that's not is writing out the results files.