This might be for another issue, but looking at the go-raft implementation (which might or might not be correct), we potentially should be checking if the node that is requesting the vote has a stale log and replying accordingly, see https://github.com/goraft/raft/blob/master/server.go#L946-L976. I checked, and it looks like we do it in the follower.