ZP-1241 we introduced not entering heartbeat for empty sync requests anymore.
While this is correct, the spec states that with an empty sync request the server should "repeat the last executed sync parameters".
Apparently this is also expected for sync with heartbeat and no changes, because the next empty sync should then also perform a heartbeat which is now not being done anymore.
We need to detect this case and return an alternative common status code in this case.
Code SYNC_COMMONSTATUS_SYNCSTATEVERSIONINVALID (136) should do the trick.