When content that a Flow post references (e.g. a link or template) changes, the Flow post needs to re-render its HTML.
For example, when a template is created, the prior red link needs to re-render.
We somewhat work around this for standard red links, since they're "fixed" (re-rendered) at view time. However, if T39902: RFC: Implement rendering of redlinks in Parsoid HTML as post-processor were implemented, we could remove this "fix", and use standard re-rendering for this too.
There are various approaches to this:
- Switch to RESTBase and handle event propagation similar to them: T94574: Switch Flow from ExternalStore to RESTBase
- Use EventBus somehow.
- Have other code call into Flow giving us affected pages (Topic:123 uses Template:Cn, Template:cn changed) (Flow does update the standard link tables as well, so this shouldn't require that much effort), then we figure out from our internal link tables what to do (that topic's summary transcludes Templates:Cn, re-render topic), probably combined with 1 or 2.