We in VisualEditor want to:
- start from the DOM, A of a current revision, W;
- make some changes against it in DOM format, 'A;
- get the wikitext of the document given those changes, 'W;
- rather than save it, make some changes to the wikitext ''W;
- get the DOM of those changes, ''A; and
- then make some further changes DOM, saving as B (as Y in wikitext)
… without introducing lots of wikitext normalisations.
Steps 1-3 are current functionality; however, AIUI steps 4 & 5 would be slow (as it would involve round-tripping the entire document through the Parsoid pipeline) and normalise the wikitext as selser wouldn't have ''A as a reference version of the wikitext available to Parsoid).
Help?