From 2e55e307950753149307a905ba3bc26824f879e8 Mon Sep 17 00:00:00 2001 From: Ollie Agent Date: Sun, 19 Jul 2026 11:34:05 +0200 Subject: [PATCH] elevate: move adapter auto-start from sandboxed client to Go server Remove _start_adapter() from x/elevate (ran inside sandbox, could not function). The Go executeElevated() now calls ensureElevateAdapter() which runs outside the sandbox and can properly start the adapter. core: update submodule. --- core | 2 +- scripts/x/elevate | 32 +++----------------------------- 2 files changed, 4 insertions(+), 30 deletions(-) diff --git a/core b/core index 6f35059..519869a 160000 --- a/core +++ b/core @@ -1 +1 @@ -Subproject commit 6f35059d83653328a0cead1df414f2f1192faa45 +Subproject commit 519869a00360ffb8b6ff5e2e21902d84d937e271 diff --git a/scripts/x/elevate b/scripts/x/elevate index 745cb84..3741243 100755 --- a/scripts/x/elevate +++ b/scripts/x/elevate @@ -37,23 +37,6 @@ def recv_exact(sock, n): return buf -def _start_adapter(): - """Try to start the elevate adapter in the background.""" - import subprocess - import time - cfg = os.environ.get("OLLIE_CFG_PATH") or os.path.expanduser("~/.config/ollie") - start_script = os.path.join(cfg, "scripts", "x", "elevate-adapter-start") - if not os.path.exists(start_script): - return False - try: - subprocess.run([start_script], timeout=5, capture_output=True) - except (subprocess.TimeoutExpired, OSError): - return False - # Wait briefly for socket to appear - time.sleep(0.3) - return True - - def main(): sock_path = os.environ.get("OLLIE_ELEVATE_SOCKET") or default_socket_path() @@ -66,18 +49,9 @@ def main(): sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) try: sock.connect(sock_path) - except OSError: - # Adapter not running — try to start it and retry - if _start_adapter(): - sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) - try: - sock.connect(sock_path) - except OSError as e: - print(f"elevate: connect {sock_path}: {e} (after adapter start)", file=sys.stderr) - sys.exit(1) - else: - print(f"elevate: connect {sock_path}: adapter not running and failed to start", file=sys.stderr) - sys.exit(1) + except OSError as e: + print(f"elevate: connect {sock_path}: [Errno {e.errno}] {e.strerror}", file=sys.stderr) + sys.exit(1) with sock: sock.sendall(req)