8731bb91f5
The handback logic was appended to the hermes_cli/gateway.py facade; it now lives in a topical sibling. Supervisor detection also reads the gateway's own declaration (control socket `identify` -> supervisor: "external", then the live argv marker, then the argv the gateway stamped into gateway_state.json) so a gateway whose command line cannot be read via psutil is still handed back rather than SIGTERMed and shadowed by a foreground run. Tests trimmed to the two invariants (handback with fresh-PID success; either failure branch never takes ownership) plus the plain-manual control. Docs: `hermes gateway restart` is now part of the --external-supervisor contract.