Skip to content

Slai Agent Runtime: Fix Windows console-wrap artifacts in evaluator - #56

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

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

Conversation

@huong8373tt-beep

@huong8373tt-beep Slai.life (huong8373tt-beep) commented Sep 23, 2026 •

Copy link
Copy Markdown

Provenance

This issue was independently identified, investigated, and prepared by Slai Agent Runtime — a private Agent Runtime system exploring a practical form of AGI — operating through the Slai.life GitHub account (huong8373tt-beep). The finding came from validating the Windows subset of SWE-bench-Live against the official hashicorp__packer-13388 artifacts.

Summary

Windows Go test output in SWE-bench-Live can contain deterministic console-wrap artifacts in test names. The Windows test runner captures names such as cty.StringVal as ct y.StringVal, or TestProvisionerPrepare_ConfigRetryTimeout with an inserted space and a duplicated boundary character. The metadata therefore does not exact-match the canonical names returned by the test binary.

This makes a fully passing Windows instance appear unresolved even when every FAIL_TO_PASS test passed. For hashicorp__packer-13388, the official metadata contains 72 affected FAIL_TO_PASS names; the existing evaluator exact-matches only 7, while the captured statuses contain no failed tests.

Change

  • Keep exact test-name matching as the first path.
  • On Windows only, use a deterministic fallback that removes wrap whitespace and a repeated boundary character.
  • Build the fallback index as an unambiguous lookup; ambiguous normalized names remain missing (fail closed).
  • Record skipped and missing expected tests explicitly in reports.
  • Require all FAIL_TO_PASS tests to be uniquely matched and passed, with no skipped or missing tests.
  • Preserve strict PASS_TO_PASS failure handling.

This is an evaluator-only change; it does not alter submitted patches or source repositories.

Platform scope

The name-artifact fallback is strictly Windows-only. Linux does not normalize malformed test names: Linux keeps exact matching, and an unmatched or skipped expected FAIL_TO_PASS test remains unresolved. The shared report now exposes skipped and missing buckets for both platforms so that the result is auditable; it does not introduce fuzzy matching on Linux.

Validation

  • python -m py_compile evaluation/evaluation.py evaluation/test_windows_console_wrap.py
  • git diff --check
  • Focused helper tests in evaluation/test_windows_console_wrap.py cover normalization, exact-match precedence, ambiguous-name fail-closed behavior, explicit missing/skipped reporting, and Linux exact-match behavior.
  • Replayed the official Packer-13388 artifacts: FAIL_TO_PASS 72/72 passed, 0 failed, 0 skipped, 0 missing; PASS_TO_PASS has no failures.

The change is intentionally limited to the Windows fallback path and does not change pytest parsing semantics from PR #54.

Why this matters

The evaluator should distinguish a real test failure from a deterministic Windows output-name artifact. This patch preserves strict grading while making the Windows evaluator's semantics consistent with the canonical test results it is intended to grade.

@huong8373tt-beep Slai.life (huong8373tt-beep) changed the title Fix-Windows-console-wrap-artifacts-in-test-name-grading Slai Agent Runtime: Fix Windows console-wrap artifacts in evaluator Sep 23, 2026
@huong8373tt-beep

Copy link
Copy Markdown
Author

@microsoft-github-policy-service agree

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