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
{{ message }}
Repository navigation
ci(windows): intermittent fatal fault in internal/security/scanner TPA fetch tests (os.Getenv via testlog after subtest exit) #1794
The Build Binaries (windows-latest, windows, amd64) job on PR #1793 (docs-only, head 11b8595c2) crashed the internal/security/scanner test binary with a hard fault, not a test assertion:
A rerun of the same job on the same SHA passed, and the three PRs merged just before (#1717, #1745, #1746) passed the Windows job, so it is intermittent.
Why it matters
The fault is inside os.Getenv → internal/testlog.Getenv, called from config.go:3609 (an env read in the config accessors) during a parallel subtest of the TPA fetch tests. A fault at 0xffffffffffffffff in the testing log hook on Windows usually means the subtest kept running after its parent test returned (a goroutine or t.Parallel leak), so the test log was already torn down. If that is the cause it is a test-hygiene bug in tpa_sol_r2_test.go / tpa_fetch_test.go (fetch goroutines or timers outliving the test), not production code, but it will keep failing Windows builds at random.
Suggested check
Run go test -race -count=20 -run 'TestSolR2|TestDeltaFetch' ./internal/security/scanner/ on Windows and Linux and look for goroutines that outlive their test (goleak, or a t.Cleanup that waits for the refresh loop to stop).
fetchTestSettings and the refresh/fetch helpers should stop every goroutine and timer in t.Cleanup before the subtest returns.
Activity