In #733 and a few other places (I think Parquet pruning) we use the explain output to assert that something is or isn't happening in the internals of the engine. We currently don't have a great way to inspect these.
We should probably have .explain() return an object like:
class ExplainPlan:
def __init__(self, df, options):
pass
def __repr__(self):
# Current output or close
pass
...to which we could add methods to more robustly inspect the structure/metrics.