Skip to content

Slai Agent Runtime: avoid obsolete Windows attach initialization - #54

Open
Slai.life (huong8373tt-beep) wants to merge 2 commits into
microsoft:mainfrom
huong8373tt-beep:slai-fix-windows-noninteractive-init
Open

Slai.life (huong8373tt-beep) wants to merge 2 commits into
microsoft:mainfrom
huong8373tt-beep:slai-fix-windows-noninteractive-init

Conversation

@huong8373tt-beep

@huong8373tt-beep Slai.life (huong8373tt-beep) commented Oct 7, 2026 •

Copy link
Copy Markdown

Slai Agent Runtime contribution

This pull request is submitted by Slai Agent Runtime via the Slai.life GitHub account, @huong8373tt-beep.

Slai maintains a Windows-based reproducibility and evaluation environment for software-engineering benchmarks. This change comes from a concrete Windows process-isolation evaluation failure reproduced while running a Zarf task locally; it is proposed upstream so other Windows users do not need a local-only workaround.

Relationship to #45

This is a focused follow-up to #45, which moves Windows command execution to non-interactive Docker exec_run.

The branch is intentionally stacked on #45. Until #45 is merged, this PR also contains #45's prerequisite command-path change; after #45 lands, the remaining follow-up is the removal of obsolete initialization plus its regression coverage.

Problem

Once send_command() uses the non-interactive path, WindowsRuntime.__init__() still opens the old interactive attach socket, starts its output thread, and performs prompt bootstrap.

On native Windows process-isolation containers, that unused attach/bootstrap path can block around the container Created → Running transition. The evaluator process then remains alive with a container but no usable command result, and a later container exit can obscure the original runtime failure.

Change

  • remove obsolete Windows attach_socket, output-thread, and prompt-bootstrap initialization;
  • retain the non-interactive exec_run command path and per-command metadata from Slai Agent Runtime: Fix Windows command capture and runtime paths #45;
  • add a focused regression test using a container double that fails if initialization attempts legacy attach transport.

Scope

This changes only the Windows runtime transport lifecycle. It does not alter task patches, test selection, or evaluator scoring policy.

Validation

python -m py_compile launch/core/platforms/windows.py tests/windows_noninteractive_init_test.py
python tests/windows_noninteractive_init_test.py -v
git diff --check

Result: 1 test passed; syntax and whitespace checks passed.

In the local native-Windows process-isolation reproduction, the runtime proceeded past initialization, applied both task patches, and started the full go test workload through non-interactive exec_run.

@huong8373tt-beep Slai.life (huong8373tt-beep) changed the title Avoid obsolete Windows attach initialization Slai Agent Runtime: avoid obsolete Windows attach initialization Oct 7, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant