Subj : src/ssh/TODO.md src/ssh/test/test_selftest.c To : Git commit to main/sbbs/master From : Deuc¨ Date : Mon Mar 30 2026 14:17:14 https://gitlab.synchro.net/main/sbbs/-/commit/5633d44598b307e390232a37 Modified Files: src/ssh/TODO.md src/ssh/test/test_selftest.c Log Message: Fix 12 more selftest write-before-window races (closes item 106) Same root cause as item 104: client-side dssh_chan_write called before the server's WINDOW_ADJUST was processed, so remote_window was still 0 and the non-blocking write returned 0. Under -j16 contention this manifested as ASSERT failures in 3 variants (dssh_self, dssh_self_rsa, dssh_self_mlkem) and a secondary Bus error from use-after-free when the server echo thread's stack overwrote the test's popped stack frame. Added dssh_chan_poll(DSSH_POLL_WRITE) before the first client-side write in 12 test functions. 50 consecutive clean runs under -j16 after fix. Co-Authored-By: Claude Opus 4.6 (1M context) --- þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net .