Heidi Howard is incredible and her work on distributed consensus is illuminating. I think she has actually successfully cracked the cookie of "making consensus easy". https://www.youtube.com/watch?v=KTHOwgpMIiU
[1] https://drops.dagstuhl.de/opus/volltexte/2017/7094/pdf/LIPIc...
To snapshot, I either need to find an epoch such that no older epoch could ever have relevant information for the current node, or I need the nodes to agree on a snapshot. Both seem complicated.