One of the largest drawbacks to them, at least all the current ones, is that they're basically stateless. They don't remember what the last operation was, or self-learn from queries. Each one is taken in isolation other than commands that change persistent values. So they can't extrapolate past the data they were initially given. Neither can they error-check their database and prune out contradictions.
Honestly, some of the Shards are more like this than I realized, the more I think about it
QA is one of the few exceptions, I think.
Which is useful here