I find phases very useful, when working with hgsubversion. Changesets marked 'public' were pulled from SVN, 'draft' changesets is what I'm working on, to be pushed shortly, and 'secret' changesets should absolutely not be pushed to the SVN server (yet).
However, hgsubversion currently disregards phases, and will push 'secret' changesets to the SVN server without even a warning. This is not expected, as - "All commands related to changeset exchange will ignore secret changesets, including: push, pull, incoming, outgoing." [http://mercurial.selenic.com/wiki/Phases#Core_Command]
It would be very useful if the overridden core commands (especially outgoing, push) respected phases like these commands normally do.
I'm using hgsubversion 77b22e5b4ea6 (tag 1.5).