In particular, I like the approach in this pull request: #2344. We just need to work on detailing and documenting those callbacks (see #2351). However, I was not present when you discussed this implementation, so I would love to hear your thoughts.