So after getting bogged down in the weeds on what I was trying to do I’ve come back to this, and see that my issue was much more clearly articulated here: How to discover functions which apply to a given object?
In a nutshell it still sounds like an open problem, with some mitigation available in future: i.e. natural discoverability/interrogation via the IDE