diff options
| author | blasty <blasty@local> | 2026-07-24 14:45:28 +0200 |
|---|---|---|
| committer | blasty <blasty@local> | 2026-07-24 14:45:28 +0200 |
| commit | 720f9e8283257e21ed183d8dff84c7ab6777314d (patch) | |
| tree | b2ccbd341949ae9265934274a2d969a7c93e60ea /server | |
| parent | refactor: extract shared error hierarchy + Session into idatui/errors.py (diff) | |
| download | ida-tui-720f9e8283257e21ed183d8dff84c7ab6777314d.tar.gz ida-tui-720f9e8283257e21ed183d8dff84c7ab6777314d.tar.xz ida-tui-720f9e8283257e21ed183d8dff84c7ab6777314d.zip | |
mcp: collapse app + launcher to worker-only
The idalib worker is now the sole backend for opening a binary, so remove the
ida-pro-mcp code paths from the hot path:
* app.py: IdaTui.__init__ drops url/db/ensure_server/backend (now just
open_path/keepalive/rpc_path/ttl); _connect calls _open_worker_client directly;
_open_mcp_client deleted; _reconnect respawns the worker only; self.client and
_after_reconnect typed WorkerClient. No more IDAClient import.
* launch.py: rewritten worker-only -- validate the binary, sweep stale locks,
spawn the TUI (which starts the private worker behind its overlay). The whole
supervisor dance (_ensure_server/_start_supervisor/_open_binary/
_existing_session) is gone; `ida-tui foo.elf` is the one usage.
* tests/test_scenarios.py: pilot is worker-only (run(binary); binary via
positional/--worker/--binary, defaults to targets/echo).
Verified: app + launch + pilot import and construct; pilot lists 31 scenarios.
The mcp modules (client.py/pane.py/tui.py/spawn.sh) still exist as dead code and
are deleted in the next commit. Worker pilot (134/2-known-flakes) still the gate.
Diffstat (limited to 'server')
0 files changed, 0 insertions, 0 deletions
