mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-10-25 23:32:22 +01:00
fix(cookbook): record real Windows pid for local serve so Stop kills the model (#5912)
* fix(cookbook): record real Windows pid for local serve so Stop kills the model The Windows-local serve runner recorded Git Bash's `$$`, which is the MSYS/Cygwin pid, not the Windows pid. Win32 tooling (taskkill, Get-CimInstance ParentProcessId, Stop-Process) can't match an MSYS pid, so the frontend Stop-Tree walk found nothing and the llama-server child survived after Stop, leaving the model loaded and the GPU pinned. Record the serving shell's true Win32 pid via `/proc/$$/winpid`, falling back to the outer proc.pid already written from Python when the map is unavailable. The existing pid-tracking test asserted the buggy `$$` literal at the source level, so it passed while the feature was broken; update it to the winpid behavior and add a focused regression test. * fix(cookbook): make Windows serve pid handoff deterministic --------- Co-authored-by: Alexandre Teixeira <111787685+alteixeira20@users.noreply.github.com> Co-authored-by: Alexandre Teixeira <alexandremagteixeira@gmail.com>
This commit is contained in:
co-authored by
Alexandre Teixeira
Alexandre Teixeira
parent
17ee856d1c
commit
53869d194d
@@ -723,7 +723,12 @@ def test_local_windows_download_pid_tracks_inner_bash_and_stop_kills_tree():
|
||||
routes_src = (Path(__file__).resolve().parents[1] / "routes" / "cookbook_routes.py").read_text(encoding="utf-8")
|
||||
running_src = (Path(__file__).resolve().parents[1] / "static" / "js" / "cookbookRunning.js").read_text(encoding="utf-8")
|
||||
|
||||
assert 'printf \'%s\\\\n\' \\"$$\\" > {pp}' in routes_src
|
||||
# The Windows-local runner publishes Python's valid Win32 fallback before
|
||||
# allowing Git Bash to replace it with /proc/$$/winpid.
|
||||
assert "_windows_local_pid_record_line(pid_path, pid_ready_path)" in routes_src
|
||||
assert "/proc/$$/winpid" in routes_src
|
||||
assert "pid_ready_path.touch()" in routes_src
|
||||
assert '\\"$$\\" > {pp}' not in routes_src
|
||||
assert "function Stop-Tree([int]$Id)" in running_src
|
||||
assert "('ParentProcessId = ' + $Id)" in running_src
|
||||
assert "Stop-Tree ([int]$p)" in running_src
|
||||
|
||||
Reference in New Issue
Block a user