The current plan is to not prototype this right away, and instead initially support collecting cycles with shared-to-unshared edges only when those edges are to unshared objects on the main thread. This subset of the full capability does not require any heroics in our GC because the main thread "owns" the shared heap and is already responsible for doing GC on it along with its own unshared heap.
As promised, here is a link to the design doc the V8 GC team wrote on how we would be able to support collecting cycles involving shared-to-unshared cycles: https://docs.google.com/document/d/1GoIWdfsKuKb0PS3gSF8b1U0RoHs5ALPzXAMx-QPHHNg/edit#heading=h.g227de93gbi
The current plan is to not prototype this right away, and instead initially support collecting cycles with shared-to-unshared edges only when those edges are to unshared objects on the main thread. This subset of the full capability does not require any heroics in our GC because the main thread "owns" the shared heap and is already responsible for doing GC on it along with its own unshared heap.