The /transform endpoint exposed by core must accept ETags that originate from the /page and /revision endpoints in If-Match headers. This is somewhat tricky, since transformations wouldn't necessary emit ETags, and it's unclear which transformation would emit an ETag that matches the one returned by the /page endpoint.
We may have to change the implementations of http conditionals to make this work properly, so the validation of an If-Match header doesn't try to predict the ETag that would be emitted by the successful operation - it needs to check aginst the etag of a pre-existing (stashed) entity. That's not quite the same thing.
See also T310464: Make use of stashed data-parsoid mapping for html-to-wikitext transformation