Failing to capture stuff is not being wrong, so for e.g. indicative conditionals not being material conditionals does not mean that classical logic is wrong, only that it doesn’t by itself handle the validity or otherwise of arguments involving indicative conditionals.
But the threat from truth-theoretic considerations, gaps and gluts, is different here.
Also the threat from the more general idea that there’s a relevant sense of logical consequence whereby explosion (ex falso quodiblet) isn’t valid.
In both cases things come to a head with: this argument is valid according to classical logic but really isn’t.
With the first threat, the problem is not in the notion of validity—that can stay. With the second, the frame of mind is that of wanting a conception of consequence/validity in which explosion simply lacks that status, isn’t sort of pseudo-valid, i.e. valid in a stronger pseudo-logic where we ignore some real possibilities.
With the first, you can say: explosion instances are often good arguments in some sense, even if not strictly valid. They’re truth-preserving w.r.t. all cases not involving dialetheia. Not, of course, good arguments in the sense that you’d ever follow them from premise to conclusion! But we can say yep, anything “follows from” a contradiction if we ignore models in which dialtheia occur. Provided you know you have no dialethia in the mix, you have your guarantee that you’re not gonna be led from truth to falsity.
On this first conception, i.e. the dialethic one, how does classical logic err? Where does it go wrong?
‘You say it is not possible for P&~P to be true while Q is false. But it is possible, because, when you interpret P, sometimes your classical model which corresponds to reality, while it rightly captures the fact that P is true (false), goes wrong in not also capturing the fact that P is false (true). Well, actually, in these cases, two of your classical models will correspond to reality.’ (One fix, make the valuation function a relation—on that implementation, we can say the classical model rightly maps P to T (F) but fails to also map it to F (T). Another, add a third truth value representing the dialethic status - but that’s a different mode of presentation and so you don’t get the perspicuous sense in which the classical model just leaves something out. — In the relation mode of presentation, you can take a classical model with one letter and get two full models - the one where you do nothing, and the one where you also map it to the other value. But with the three-value mode of presentation, while a classical model is straightforwardly still a special case of one of these full-story models, it is no longer the case that you can take a classical model of a situation and make it correct by only adding something (or doing nothing)-if you have a dialethia, you have to unmap it from T and instead map it to X. So that makes it look like the classical model has said something wrong — and of course we can look at a classical model what way, if we treat T as “true and true only” or regard the model as making an implicit claim to telling the whole story about which letters have which of the two properties truth and falsity. But here the principle of charity, and general good sense, should tell us to not regard that as part of classical logic itself. So let’s put that aside.
From this point of view, classical logic knows what validity is alright, and doesn’t get any individual thing wrong semantically, but the semantics is incomplete—the models lack information sometimes (and the way the notion of model is set up precludes putting it in). And this leads to cases where counterexamples fail to show up, because the classical models miss parts of the picture without which the picture doesn’t show a counterexample.