Windows validation and migration
Build, test, and runtime gates now accept argument arrays that execute directly on Windows and POSIX. This addresses #11 without requiring /bin/sh for native Windows validation.
Upgrade with:
python -m pip install --upgrade "auto-re-agent>=0.4.0"On native Windows, convert string commands to arrays. For example, from a Visual Studio Developer Command Prompt with cl available:
validation:
build_commands:
- [cl, /nologo, /c, "{candidate_file}", "/Fo{overlay_root}/candidate.obj"]
require_build: true
trust_configured_commands: truePlaceholders are expanded directly into arguments, preserving paths with spaces. Do not add shell quotes inside array values. Legacy string commands still use POSIX /bin/sh; arrays do not expand $VAR, %VAR%, pipes, or other shell syntax. re-agent doctor now reports a missing shell when string commands are configured. Only enable command trust for meaningful project-owned validation gates.
Function manifests and evidence
plancollects seed functions and direct callees within explicit depth and function limits, without model calls.reverse --manifestuses dependency ordering, bounded retries, cross-class resume, and cumulative validation in a disposable project copy.evidence --manifestexports stored evidence into linked JSON packets and searchable TSV files.status --manifestreports inventory coverage, stale results, and separate build/test/runtime/differential outcomes.- Structured evidence gaps and full context bundles are preserved. Empty or whitespace-only backend errors no longer produce unreadable manifests.
Other fixes
- Correct Clang source offsets for CRLF files.
- Avoid estimating machine basic-block counts from C++ keywords in CFG verification while retaining checks for wholesale removal of branching.
- Send large Codex CLI prompts through UTF-8 stdin and preserve conversation history after failed requests.
Validation
- 199 local tests passed, including nine regression cases for manifest error handling; Ruff and strict mypy passed.
- Windows Python 3.12: 193 tests passed, six skipped. Linux Python 3.10–3.13, macOS Python 3.13, lint, and package CI also passed.
- Source distribution and wheel built, checked, and smoke-tested in a separate installation.
The tests use deterministic model providers. No live Ghidra or live model reconstruction was repeated for this release. Manifest coverage describes the selected inventory and configured acceptance policy, not whole-program completeness or semantic equivalence.
Thanks to @SamG-Coder for #12 and @Gotens for the Windows validation report.