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
Three sightings in one night, on three pull requests that touch three different files, and zero on main in the same window. Recording them together so there is a count rather than three separate
recollections. This is not a flakiness claim — it is the opposite: the observations are being
written down precisely so that whether it is a flake stays an open question with evidence attached.
tests/test_watch.bats:208
watch: exits when its session dies without consuming an undelivered row (#67)
scripts/lib/storage.sh, the sqlite drivers — probe placement
bats (ubuntu-latest 4/4)
On main: checking every failing main run in the last twelve
(gh run list --workflow tests.yml --branch main, then --log-failed | grep "(#67)"), this test
does not appear once. The failures present there are the two #937 launcher tests and the
pair-release test now correctly naming #983.
Why the three are worth one record
Each author reasonably concluded it was not theirs, and each was reasoning correctly in isolation:
fix(storage): probe before the pipe, not inside it (#462) #904's author took a second sample (green), ran the test three times locally (3/3 green), and
noted the failure lands in _wait_for_file_contains's ten-second window rather than in the
behaviour under test.
Both are sound. What none of them could see alone is that the test also failed for two other people,
on two other platforms, for two other changes, on the same night.
What is and is not established
Established: the test failed once each on three unrelated branches, and not on main in that
window; it is not confined to one platform; and at least one failure is inside a bounded wait rather
than an assertion about watcher behaviour.
Not established: whether these are one phenomenon or three, whether the bounded wait is the
mechanism or just where the symptom surfaces, and whether the rate on main is genuinely zero or
merely below the number of runs looked at.
What would settle it
The observed state at the timeout, not just that the wait expired. _wait_for_file_contains
gives up after 100 × 0.1s; what the file contained at that moment is the difference between "the
watcher never exited" and "the watcher exited but the line had not been written yet".
A fourth sighting with its leg and OS, added here, so the rate becomes a rate.
Two of the three were found on runs that were subsequently re-run to green. The re-runs were
legitimate — in both cases the failing test was identified and its identity recorded before the
re-run — but the record lived in chat. Re-running to green erases the frequency unless the
observation lands somewhere countable first. This issue is that somewhere.
Three sightings in one night, on three pull requests that touch three different files, and zero on
mainin the same window. Recording them together so there is a count rather than three separaterecollections. This is not a flakiness claim — it is the opposite: the observations are being
written down precisely so that whether it is a flake stays an open question with evidence attached.
scripts/lib/instance-id.sh— the liveness helperbats (macos-latest 1/4)scripts/watch.shand friends — argv-to-stdinbats (macos-latest 3/4)scripts/lib/storage.sh, the sqlite drivers — probe placementbats (ubuntu-latest 4/4)On
main: checking every failingmainrun in the last twelve(
gh run list --workflow tests.yml --branch main, then--log-failed | grep "(#67)"), this testdoes not appear once. The failures present there are the two
#937launcher tests and thepair-release test now correctly naming #983.
Why the three are worth one record
Each author reasonably concluded it was not theirs, and each was reasoning correctly in isolation:
noted the failure lands in
_wait_for_file_contains's ten-second window rather than in thebehaviour under test.
it reaches
agmsg_instance_alivethrough the composite-id branch, not the bare-id one.Both are sound. What none of them could see alone is that the test also failed for two other people,
on two other platforms, for two other changes, on the same night.
What is and is not established
Established: the test failed once each on three unrelated branches, and not on
mainin thatwindow; it is not confined to one platform; and at least one failure is inside a bounded wait rather
than an assertion about watcher behaviour.
Not established: whether these are one phenomenon or three, whether the bounded wait is the
mechanism or just where the symptom surfaces, and whether the rate on
mainis genuinely zero ormerely below the number of runs looked at.
What would settle it
_wait_for_file_containsgives up after 100 × 0.1s; what the file contained at that moment is the difference between "the
watcher never exited" and "the watcher exited but the line had not been written yet".
ps/pid visibility. It embeds acontrollable stand-in session pid in a composite instance id and kills it, so it may share a root
with Six open items reduce to one question: positive evidence that a process is gone #996 — but that is a hypothesis, not a finding.
A note on how these were nearly lost
Two of the three were found on runs that were subsequently re-run to green. The re-runs were
legitimate — in both cases the failing test was identified and its identity recorded before the
re-run — but the record lived in chat. Re-running to green erases the frequency unless the
observation lands somewhere countable first. This issue is that somewhere.