Skip to content

Add opt-in Windows compatibility mode for SWE-bench harness#4

Merged
couragec merged 1 commit into
CommonstackAI:mainfrom
hemingwaygotsby-star:fix/windows-compat-harness
Jul 10, 2026
Merged

Add opt-in Windows compatibility mode for SWE-bench harness#4
couragec merged 1 commit into
CommonstackAI:mainfrom
hemingwaygotsby-star:fix/windows-compat-harness

Conversation

@hemingwaygotsby-star

Copy link
Copy Markdown

Summary

Adds an explicitly opt-in Windows-local compatibility mode for the SWE-bench harness paths.

  • Adds --windows-compat to both dynamic and SWE CLIs.
  • Threads windows_compat=False through the harness request/API surface by default.
  • When enabled, handles SWE-bench make_test_spec import/signature differences and temporarily patches the upstream container copier to use POSIX container paths.
  • Restores the upstream copier immediately after the eval call.

Scope

Default Linux behavior is unchanged when --windows-compat is not set. The compatibility shim only activates when the flag/config is enabled.

This PR intentionally does not include router policy changes, benchmark numbers, fallback patch-capture changes, scorer changes, pricing/model-pool changes, leaderboard/data changes, or static eval scripts.

Tests

  • python -m py_compile swerouter/harness/container_runner.py swerouter/harness/run_instance.py swerouter/harness/run_eval.py swerouter/cli.py miniswerouter/harness/run_instance.py miniswerouter/harness/run_eval.py miniswerouter/cli.py tests/test_windows_compat_harness.py
  • python -m pytest -q tests/test_windows_compat_harness.py
  • python -m pytest -q
  • python -m miniswerouter.cli run --help
  • python -m swerouter.cli run --help

Dynamic Docker smoke was not run locally for this PR; this change is covered with lightweight unit tests that avoid Docker and real SWE-bench dependencies.

@couragec couragec marked this pull request as ready for review July 10, 2026 12:10
@couragec couragec merged commit 430acec into CommonstackAI:main Jul 10, 2026
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.

3 participants