Wherein your squadmates prove the training ceiling is very, very low.
Since I've been (mostly) on the subject of A.I. that makes you want to commit general atrocities against man, let's talk about more annoying 'friends': the teammates in games that are as dumb as a sack of hammers.
I realize that it's a fine line to tread. After all you can't have teammates who are so hyper competent that you don't need to do anything; that just eliminates the point of even having a game at all - you might as well just be watching a fancy sort of interactive movie if you can just sit back and let your support handle absolutely everything.
At the same time though there's no reason to go in the complete opposite direction and make your teammates more of a burden than anything else. I've seen all the dirty tricks: from them being made of tissue paper and wishes, to them not being able to kill certain enemies -- or in some cases literally any enemies at all -- ever, or of course the cases where they are pre-scripted to go to a certain location and do a certain thing ... and nothing else. At that point of course it's the opposite of the beginning problem, in that why bother including teammates if all they are is set pieces that can't help you at all?
It gets especially frustrating when your teammate(s) are required in order to progress in some circumstances. I'm not talking about the dreaded 'if one of your dudes dies it's game over' scenario which is dirty enough with escorts but to be inflicted upon you when you have to take care of a gaggle of miserable idiots is just plain cruel and unusual. No, I'm talking about stuff where you need a partner to get over certain obstacles or take on certain enemies: like Army of Two for example.
In that video it's fairly obvious that even though Yahtzee thinks that the partner A.I. is alright and has the boon that you can actually give it orders, there's certain problems like wonky glitches that result in your little buddy spazzing out in kind of inexplicable ways that pretty much mean that you aren't going to progress. The section where he plays with a friend seems frustrating as well, since the friend died while passing one of those teamwork obstacles thus leaving Yahtzee stranded, which actually brings me to the main point here: A.I. versus real human companions.
In cases where there is the option to use either, it's never in doubt that the more superior choice is generally going to be a human controlled partner. Certainly there can be idiots that are made of flesh and blood just as easily as there can be idiots made of bad code, but there is a crucial difference: at least you can tell another player what they've done wrong in hopes that they will improve (even if they don't). If Dave or Bob makes a bad mistake and costs you both the level or some progress or whatever you can tell him in game over voice chat or messaging, or if it's one of those rare cases where he's actually in the same room you can (hopefully in a non-violent way in most circumstances) correct him and do better the next time.
With A.I. teammates there have certainly been advancements, but in the end they are still defined by a set number of parameters. You can only expect so much of them, and in the case of giving more control over them you run into a different problem. You can give broad, sweeping commands with little issue in most cases, but it leaves you wanting more nuanced control at some crucial moments. The more options for control you're given though, the easier it is for something to go horribly wrong or for you to be bogged down in the decision making process.
To give you an example "go to point a" is a relatively simple and commonplace command to issue to computer controlled teammates. They will go to that point and defend themselves if they are attacked. But what if there are circumstances where you'd want them to retreat? Then it becomes "go to point a, if parameter x happens retreat". There's another layer of complexity there, but hardly the last one: there can be a myriad of circumstances which you believe will call for different responses, but can you fathom the amount of layering that would be needed? You'd end up with something like "go to point a, if parameter x happens do y, if situation t arises then counter with u unless attribute q is also present in which case ...". You see where I'm going here: it's impossible (at least at the moment) for the computer to react with the same amount of flexibility that even the worse human player is capable of to any given situation.
Perhaps one day there will be an A.I. that is capable of learning and even complementing the way you play games, becoming teammates that will be almost indiscernible from real humans. Until then though, we'll just have to put up with what we've got.