The problem seems to be that the now removed contains check would select any
revision indicated by a non-string argument. This led to
returning a bunch of non-topic heads, though not as many as simply
I'm likely misunderstanding something, because there appears to be a similar
contains check for
branch() in core. But maybe that's just harder to see
the issue, because branch names doesn't disappear like topics.