The `arc amend` workflow relies on getting the current revision reference using `ArcanistRepositoryAPI::getCurrentWorkingCopyStateRef()` which internally will end up calling `newCurrentCommitSymbol()`, which is not implemented for Mercurial APIs. There isn't an appropriate symbol for Mercurial's current working directory parent commit -- `.` can be used but this does not appear to work properly (indeed any value does not seem to work).
This updates `ArcanistMercurialAPI` to override `newCurrentCommitRef()` to avoid needing a current commit symbol and returns a reference by using a manual lookup of the `.` reference.
Additionally removed an erroneous early return in `ArcanistAmendWorkflow` which prevents a check against uncommitted changes.