The fix of issue #116 left us with a new issue. I see negative 'left' values in the overview. This suggests that something is not correctly updated and we still just blindly download pieces we already know we have. This new issue is about fixing that bug.
Go through the pieceset()-oriented code with a comb and find all the bugs pertaining to this problem in it.
etorrent_torrent_sup has an interesting todo in the progess_spec/2 function which states we don't yet know anything about valid pieces. The guy who has responsibility on piece validity currently is the process etorrent_torrent_ctl, so we should probably get the information from that process.
A fix is cooking. This will probably clean up the issue.