The execution ID doubles as the lock token. Request B is rejected purely by checking whether resource X's owning execution is still alive.