a mutable pointer (as an offset)
Such offset can be invalidated anytime, which requires validating the offset before and after reading the dynamic data. But also the object containing the mutable pointer can be invalidated anytime, so we end up with a *nested* seqlock? Could be simple or not, but cannot tell for sure until implemented.
or simply avoid using shared data for that altogether
I don't know, if that's a viable option then maybe you're right, on a plus side we wouldn't need to implement heap either. I was just trying to make sure the comment wasn't slipping through cracks.