mirror of
https://gitcode.com/JianFeeeee/HomeAgent.git
synced 2026-11-01 06:47:29 +00:00
## CI 实证(run #86 / #87,Race detector 连续两次红) 失败信息自相矛盾: --- FAIL: TestE2E_ResponseSecretNeverReachesContext (0.00s) persist_leak_test.go:94: ✅ 回复侧明文未进 context;变量库 1 条 testing.go:1369: TempDir RemoveAll cleanup: unlinkat /tmp/TestE2E_.../001: directory not empty 断言全过、变量库也拦住了,唯一失败点是 `t.TempDir()` 的严格清理:RemoveAll 要 rmdir 那一刻,变量库还有一次落盘(saveLocked 的 tmp→rename)在途/刚落完, 于是判 "directory not empty"。本地不复现是因为机器快、时序不同;CI 在 -race 下慢一拍就撞上。 ## 修法 `newScrubStore` 改为自建 MkdirTemp + 重试清理(50×20ms),最后尽力删除且 **不让清理失败污染判据**。安全判据本身没有放宽——只修测试基础设施。 ## 验证 本地 `go test -race ./internal/agent/core/ ./cmd/waiter/ -count=1`: 两个包全绿(16.2s / 1.0s)。