tests: napraw flaky asercję pokrycia w heartbeacie #26
Reference in New Issue
Block a user
Delete Branch "fix-heartbeat-progress-flake"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Objaw
test_search_fills_progress_with_live_positions_and_total(z #21, już w main) padał losowo — mniej więcej co drugi pełny przebieg integracji. W izolacji zawsze zielony, stąd łatwo przeoczyć.Przyczyna (realna, nie "flaky bo wątki")
Test asertował 100% pokrycia po wyszukaniu DOI, które istnieje. A gdy wszystkie szukane DOI zostaną znalezione, konsument wysyła TERM i producenci zatrzymują się w połowie pliku — więc zapisane offsety sięgają dowolnego miejsca. Asercja ścigała się ze skanem.
Poprawka
Rozdzielone na dwie rzeczy, z których każda jest deterministyczna:
0 <= done <= total), trafienie zaraportowane.Weryfikacja
5 przebiegów samego pliku + 3 pełne przebiegi integracji — wszystkie zielone (71 passed).
Niezależne od #25 (Ollama).
🤖 Generated with Claude Code