Can removed .do lead to permanent errors of its non existence?
Yes, because dependency on it was recorded previously. Is it safe to
assume that .do-less target now is an ordinary source-file? I have no
confidence in such behaviour. So it is user's decision how to deal with
it, probably it was just his inaccuracy mistake. If you really want to
get rid of that dependency knowledge for foo/bar target, then remove
foo/.redo/bar.dep.