Or perhaps if we just make the contract for using the annotations very clear in the documentation? So `get annotations` _is_ mutable, but if you do that then you're responsible for triggering the renderer to update?