It seems to me that if you have most of the blocks for a file, but not all, and you also have the file itsself (eg, you gave up and got it off another network), you should be able to generate some or all of the missing blocks and so make them available again (Blocks are paired, after all - if you have one block in a pair and the file, you can generate the other). That could be a useful feature to support, as it would mean if a file was lost someone would still be able to repair it for everyone else by replacing the missing blocks. The hashes could, of course, verify the blocks match.
I ask this because while I was playing with OFF System I inserted a small file, and then lost most of my blockcache in a configuration mistake - only to find that I can only seem to retrieve 60 or the 63 blocks I inserted.