FWIW, I think the draft guidance is fine, with the caveat that there is room for well-chosen exceptions.
Phil mentioned the main/compositor thread boundary, which has *always* done a certain amount of shared concurrent access to non-gc data.
Additionally, the blink main thread scheduler is entirely based on extensive use of atomics, for what I think are good reasons.
So again, the general guidance to favor message passing is sound, but there are existing exceptions, and there are legit reasons to do something different. Maybe the draft guidance should indicate that exceptions can be granted on a case-by-case basis, but must be carefully planned and reviewed.