You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Finding (from #176 follow-up, verified by subagent review)
run-tests.php extracts each .phpt--FILE-- section to tests/<basename>.php and normally unlinks it — but only when the test passes. Any failed test (fatal error, output mismatch, crash) leaves the generated .php behind.
Evidence
run-tests.php:2618-2621 — @unlink($test_file) is inside the if ($passed) block only. Any failure skips it. (Not specific to fatal errors — any failed test leaves the file; that's stock php-src behavior for debugging.)
tests/*.php is not git-ignored (unlike tests/*.diff|.exp|.log|.out|.sh which are), so leftovers show up as untracked files in git status.
Observed on disk after suite runs: tests/test_query_fp64.{diff,exp,log,out,sh} artifacts from a failed expected-fail test (Aug 2026). The generated .php was manually removed.
Finding (from #176 follow-up, verified by subagent review)
run-tests.phpextracts each.phpt--FILE--section totests/<basename>.phpand normally unlinks it — but only when the test passes. Any failed test (fatal error, output mismatch, crash) leaves the generated.phpbehind.Evidence
run-tests.php:2618-2621—@unlink($test_file)is inside theif ($passed)block only. Any failure skips it. (Not specific to fatal errors — any failed test leaves the file; that's stock php-src behavior for debugging.)tests/*.phpis not git-ignored (unliketests/*.diff|.exp|.log|.out|.shwhich are), so leftovers show up as untracked files ingit status.tests/test_query_fp64.{diff,exp,log,out,sh}artifacts from a failed expected-fail test (Aug 2026). The generated.phpwas manually removed.tests/<name>.phpsharing basenames). This case (leftover on failure) is distinct.Suggested fix
test_dbs/-style: after any suite run, delete untrackedtests/*.phpnot ingit ls-filestests/*.phpnuance to tests: running run-tests.php deletes legacy tracked .php test files that share a basename with .phpt #187's proposed fix (e.g. only unlink files that are generated, check before unlink, and clean leftovers)Found during #176 implementation; verified by subagent review (CONFIRMED, not tracked).