if SRC_URI files only exist locally, then they are corrupted by ebuild foo.ebuild digest. It appears that regardless of whether or not the files exist in /usr/portage/distfiles, digest tries to download them from their URI. In the case of files that are only hosted on ibiblio (such as our patches), if the file doesn't exist, html is appended to the tarball that already exists in /usr/portage/distfiles. This isn't fatal, since the tarball still works; tar just spits out a "garbage at the end of the tarball"-type message.
Appears to work circa Portage 2.0.34; closing bug.