When the client requests a html-to-wikitext transformation but does not provie a render key, we should use the latest known rendering of the page (or specified revision) as the context for selser. The latest known rendering should be obtained from ParsoidOutputAccess (or later, ParserOutputAccess), so we make use of ParserCache.
NOTE: Parsoid currently performs re-parsing of the base wikitext, see ContentModelHandler::setupSelser(). However, this bypasses caching. It is preferrable to do this in a higher layer such as HtmlInputTransformHelper, so we can make use of ParsoidOutputAccess.
NOTE: This should work regardless of whether the input is HTML or a PageBundle (fix T146187)
WARNING: @Arlolra said on Slack that if the client does send a render key (etag), but we don't have that exact rendering cached/stashed, we MUST NOT fall back to re-parsing, but MUST return status 412 right away. The client can then retry saving the content without providing the etag, if desired.