The bug only showed up on a loaded CI runner. Locally it was a heisenbug. rr record --chaos hit it in ~40 recordings.
Reverse-continue to the write, then watch the inode cache. The lost wakeup was in our own debounce, not the kernel. Happy to share the harness (MIT).
rr record --chaos ./watcher_test
rr replay -g watcher_testRefs: rr
Lab / educational. Public binaries and patched classes only. Isolated VM.