clearmatics/zeth

Notify MPC contributors at each significant steps of the MPC

AntoineRondelet opened this issue · 0 comments

For now, the coordinator of the MPC can be configured to send emails to contributors when their turn comes. Additionally, the contribution python commands (phase1_contribute and phase2_contribute) take a flag --wait-interval that allows to "ping" the coordinator every X secs to see if the contributor's turn has come and start contributing automatically if the time has come.

All of this is enough for the MPC code to be fully functional. However, it would be better, from a UX perspective to keep contributors in touch more regularly through the MPC process. As the number of contributors can be significant, people are likely to wait for days/weeks before their turn comes. As such, it would be nice to send an email to each contributor, when:

  1. The MPC is about to start (all contributors are registered) to give them their position in the pool, as well as approximate contribution time (see: #266 (comment) for eg)
  2. Keep them informed as the MPC progress. In fact, as the MPC goes on, people may timeout (e.g. not show up on time - i.e. if the contributor hasn't fetched its challenge say: 1h before the end of his window and the contribution requires approx 2h of computation on state of the art machines it is reasonable to skip the participant because he showed up too late, or just drop for too long). Other people with excellent bandwidth and CPUs (better than the ones used to carry out the first estimate) may, however, contribute faster than expected etc etc.

All of this "real time data" can be used to refine the starting time of each contributor's window will. As such, keeping contributors aware of the state of the MPC and their incoming contribution time would be a great improvement on UX. We don't want people to run phaseX-contribute --wait-interval 120 ... for weeks in the background. Likewise, we don't want them to miss their contribution window because they received the email saying "it is your time to contribute" randomly in the middle one night.