it turns out, that the code in WalSndWriteData is setting the timestamp of the replication message just *after* it has been sent out to the client, thus the sendtime field always reads as zero.
Attached is a trivial patch to fix this. The physical replication path already does the correct thing apparently.