Can I have multiple geometry shader invocations (in a single rendering command) write the exact same value to the same SSBO memory location without any synchronization. or will this result in Undefined Behavior? If not, will the result be well defined? (May I safely assume the result will be consistent among different platforms?)
The SSBO will then be read by a different shader in a subsequent rendering command, after the required buffer pipeline barrier.
The Vulkan memory model is quite clear:
Let X and Y be operations that access overlapping sets of memory locations M, where X != Y, and at least one of X and Y is a write, and X and Y are not mutually-ordered atomic operations. If there does not exist a location-ordered relation between X and Y for each location in M, then there is a data race.
Applications must ensure that no data races occur during the execution of their application.
Emphasis not added. When the standard says "Applications must do X" that means "if the application doesn't do X, then UB results".
Two non-atomic writes with no appropriate synchronization between them is a data race and therefore represents undefined behavior. This is without regard to the value of those writes. Note that X and Y are operations, so when it says, "where X != Y", it's not talking about the value of those operations. It's saying where they are different operations.