The gripes are these: * We parse the same incoming query multiple times in various places. * Sometimes we walk the tree and change behaviour based on what nodes we see, other times we query the tree sitter.