In reply to Bastian.

Yes, HTML markup is the first citizen for Gutenberg and not the raw model it is based upon. I proposed a different compatible approach to update markup in this comment:

https://github.com/WordPress/gutenberg/issues/4849#issuecomment-719651681

I am running an agency and we have WordPress installations with up to several hundred thousand posts. Therefore it is crucial for us to be able to upgrade all content at once. For instance we are using Bootstrap and it's common that HTML markup changes between major revisions and sometimes even minor ones if new features are introduced. On top of that HTML specs are regularly extended and markup has to change to follow latest standards and SEO recommendations. A simple and robust upgrade path is therefore a must have feature.

Server-side rendering is unfortunately not a solution because of its limitations.

ACF's approach looks promising but so far only supports one InnerBlocks per component. They already announced to be working on a solution for this issue. I am looking forward to this update. This finally would separate the model (JSON in the_content) from the view (server-side rendered HTML).