In the CacheableContentGeneratedEventListener it is checked if caching is enabled:
if (!$event->isCachingEnabled()) {
return;
}
However, when EXT:yoast_seo is installed, the content is not replaced, as that extension provides a listener which sets caching to disabled when a specific HTTP header is set:
https://github.com/Yoast/Yoast-SEO-for-TYPO3/blob/main/Classes/Frontend/AfterCacheableContentIsGeneratedListener.php#L16
It seems this kicks in when logged-in in backend. Therefore, an editor cannot see the changes, as also the middleware (for non-cached content) does not kick in.