hg push dies badly when cwd disappears under it during operation.
The attached shell script creates an SVN repository and shows the problem. The hg push command dies with this error:
searching for changes [r2] bkuhn: Updates to first test file pulled 1 revisions abort: No such file or directory
This is because the cwd is a directory in the Mercurial checkout that disappears temporarily based on operations occurring.
I didn't test to see if any directory disappearing (such one outside of the Mercurial repository) causes this, or if it is only when you have a working directory that will disappear due to the push operation.