Summary
TestNew_variableNames uses the literal filename f and manually removes it in interpreter_test.go:285-294; its open(f, ...) cases appear at interpreter_test.go:361-371. The test can therefore affect the repository root and depend on its filesystem state.
Why it matters
Tests must be isolated from the checkout and safe for concurrent or interrupted execution.
Scope
Call t.Chdir(t.TempDir()) in TestNew_variableNames and remove the manual os.Remove("f") cleanup.
Acceptance criteria
Verification
Run go test . -run '^TestNew_variableNames$' and confirm the repository root contains no f after the test finishes.
Summary
TestNew_variableNamesuses the literal filenamefand manually removes it ininterpreter_test.go:285-294; itsopen(f, ...)cases appear atinterpreter_test.go:361-371. The test can therefore affect the repository root and depend on its filesystem state.Why it matters
Tests must be isolated from the checkout and safe for concurrent or interrupted execution.
Scope
Call
t.Chdir(t.TempDir())inTestNew_variableNamesand remove the manualos.Remove("f")cleanup.Acceptance criteria
TestNew_variableNamesruns with its working directory set to a test-local temporary directory.f.ffile.Verification
Run
go test . -run '^TestNew_variableNames$'and confirm the repository root contains nofafter the test finishes.