You're not coherent.
> in my mind shared memory means concurrent processes and memory have a common clock
You're aware that modern CPUs clock their cores independently? (E.g., AVX512 throttling.) Hence, no common clock.
> and are connected to the same power supply
That's irrelevant. Unused cores get powered down all the time. On x86, the OS can execute HLT instruction when there's nothing to do and the CPU gets woken up by an interrupt.
> This avoids confusion around how one handles some parts running while other parts are not.
What is a "part"? The system's scheduler can suspend a thread for an indefinite amount of time.
> memory safety can be assumed
What does that even mean?
> We can say that shared memory represents a known global state [...]
Except that it's false, every single point can be countered with a single modern multicore cpu.
On an abstract level, distributed computation is a computation where it's possible that a message does not reach its intended destination within a fixed time bound, for any reason.
If you can guarantee message deliver within an arbitrary, but fixed, time bound, you can simulate shared memory. Yes, performance will suck if the time bound is large, but you have an equivalent system. That's how HW works underneath anyway.
Tip: reading Lamport's papers is illuminating. You can also read about cache coherence protocols (e.g., MESI or MOESI) and you'll see that the illusion of shared memory is fundamentally implemented by message passing on HW level. The illusion is pretty much solid precisely because HW has time bounds on message delivery.