Skip to content

fix: implement real stale-binary detection in launch.bat (#17)#22

Merged
tcconnally merged 1 commit into
mainfrom
fix/launch-stale-detection
Jul 2, 2026
Merged

fix: implement real stale-binary detection in launch.bat (#17)#22
tcconnally merged 1 commit into
mainfrom
fix/launch-stale-detection

Conversation

@tcconnally

Copy link
Copy Markdown
Owner

launch.bat claimed 'stale-binary detection' but computed timestamps and never compared them — a stale exe launched silently.

  • scripts/check_stale.ps1 — compares LastWriteTimeUtc of hyperwall.py vs hyperwall.exe; exit 2 = stale, exit 0 = current/missing.
  • launch.bat — actually calls it now, warns + gives a 3s abort window when stale (non-blocking).
  • tests/test_check_stale.ps1 — fixture test of all four exit paths (fresh / stale / missing-exe / missing-src), wired into the windows-build CI job so it's verified on a real Windows runner, not by inspection.

Closes #17.

launch.bat advertised "stale-binary detection" but computed EXE_TS/SRC_TS/NOW
and never compared them — a no-op, so a stale exe launched silently.

- scripts/check_stale.ps1: compares LastWriteTimeUtc of hyperwall.py vs
  hyperwall.exe; exit 2 = stale (source newer), exit 0 = current/missing.
- launch.bat: calls it and prints a warning + 3s abort window when stale,
  replacing the dead timestamp vars. Non-blocking (warns, still launches).
- tests/test_check_stale.ps1: fixture-based test of all four exit paths
  (fresh, stale, missing-exe, missing-src), wired into the windows-build CI
  job so the logic is actually verified on a real Windows runner.

Closes #17.
@tcconnally tcconnally added this to the v10 milestone Jul 2, 2026
@tcconnally tcconnally merged commit 0b2be10 into main Jul 2, 2026
2 checks passed
@tcconnally tcconnally deleted the fix/launch-stale-detection branch July 2, 2026 14:39
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.

launch.bat stale-binary detection is a no-op (computes timestamps, never compares)

2 participants