I just tried Mercurial on VMS for the first time in a long time and found myself unable to commit anything. Everything was fine past the point of saving the temp file from the editor, but then the commit aborted like so:

abort: edit failed: @MERCURIAL_ROOT:[VMS]HGEDITOR killed by signal 1

this with:

$ hg --version
Mercurial Distributed SCM (version 2.8.1)

which is running from the following LD images:

JFPLIB0006I.DSK;1
JFPPY0510I.DSK;1

on OpenVMS I64 v8.3-1H1.

I fixed it by changing the last line of MERCURIAL_ROOT:[vms]hgeditor.com from

$ exit 0

to

$ exit %X10000000 ! zero with message suppressed

I haven't looked at the details but it seems the exec() or whatever is spawning this command procedure is regarding a non-zero exit status (such as SS$_NORMAL) as an error worthy of aborting the commit.

Giving it the zero it expects but setting the inhibit message bit so we don't see the ugly "%NONAME-W-NOMSG, Message number 00000000" seemed the best path forward.