a5f94e93ad
The ACP prompt path called set_session_vars(session_key=session_id, ...) without passing session_id, so the HERMES_SESSION_ID ContextVar was bound to its explicit "" default. Once the session-context machinery is engaged, _inject_session_context_env treats an explicitly-bound "" as authoritative and writes it to the child env — so subprocesses spawned during an ACP turn got an empty HERMES_SESSION_ID instead of the session's own id. Pass session_id through so child subprocesses carry the correct id. Salvage of the ACP half of #53454 by @necoweb3 (the V4A-path half is salvaged separately in the file-tools PR). Co-authored-by: necoweb3 <sswdarius@gmail.com>