They all lacked error checking and `wait_event` was completely broken: it was reading from non-blocking pipe and treating EAGAIN as successfully waited-for event.
shim_internal.h
tid
shim_tcb