Just a quick idea: how about adapting the skyline procedures to
also put crude outlines of beams and slurs in the staff outline?
With a bit of luck, we could use that to scrap the
outside_slur_callback.
If we did a bezier -> bunch of straight lines conversion then we could certainly make skylines from the results. But in order to use the staff outlines to scrap outside_slur_callback, we would need to assume that all the outside-slur grobs belong outside the staff as well as outside the slur. This is certainly true for things like TextScript but is it true for all articulations?