Does Vulkan grant the correct rendering of the queues or is necesary to sync them?

My question is simple, and i think i know the answer, but for a moment lets figure this:

You have a program with multiple threads submitting commands to diferent queues. The queues run in parallel and perform many ZBuffered rendering operations, you know the rendering order is granted within a queue, but not between diferent queues, so my question is, does this affect the ZBuffer as well? if a queue writes to the ZBuffer may come another and overwrite it unaware of the previous queue? or despite the queue ordering, the ZBuffer is correctly processed independently?

I think the queues need to be synced, but i am not sure. thanks

Synchronization is needed for any operation where two queues are potentially simultaneously accessing the same resource. Depth buffers are in no way unique to this.