Why ordinary event transport sounds wrong
A dit, dah and every space between them has a deliberate duration. Network packets do not arrive at equally spaced intervals. If the transmitter follows those arrival times directly, the rhythm changes and the other station hears uneven CW.
OpenShack transports the intended key-down and key-up durations. The Box at the Host waits for the adaptive jitter buffer and then recreates that timing locally at the radio.
What the jitter buffer changes
Variation that fits inside the buffer changes the total delay, not the relative timing of the CW elements. Dits remain dits, dahs remain dahs and the spaces keep their intended lengths. The buffer can use Normal, Robust or Optimistic behaviour to suit the connection.
What happens during a large delay spike
An occasional late element can still be accepted up to a total playout delay of about two seconds. The available extra headroom is approximately 2000 ms minus the active jitter buffer. With a 500 ms buffer, that leaves roughly 1.5 seconds.
The result is a short pause before transmission continues. The delayed element itself remains complete, so the station at the other end hears a pause rather than a damaged dit or dah.
Paddle and logger use the same principle
With a Client Box, the paddle has immediate local sidetone while OpenShack sends the intended timing to the Host. A WinKey-compatible logger uses the supported logger path. Both methods recreate the CW at the station instead of keying the transmitter from packet arrival times.
A buffer cannot hide an outage
Repeated stalls or a complete connection loss still need a better network path or a larger buffer. The goal is not to claim that every broken Internet connection is usable. The goal is to keep normal jitter—and even an occasional substantial spike—from turning good sending into bad CW.