Your idea was so beautifully simple Mohammad, that I hate to see it made complicated just for an edge case!
My thought is this. You already make content tiddlers for editing, right? At the time that you make your first content tiddler, you also make a copy of the entire source tiddler, but with the section replaced by a token.
!! asdf
/%TOKEN202110021054%
Calling this the working source.
Each subsequent section that gets edited will use the working source, and replace it’s own token. The token of course is stored in your content tiddler.
When a section is saved, replace the token with the edited text in the working source.
When the last section being edited is saved, the working source replaces the original source.
The downside of this approach is that the final tiddler isn’t written until ALL edit sessions are complete. The upside is that you don’t have to recreate streams !
And, yes it really is an edge case. You would expect in real life every section will have unique content.