This is actually a very good point, we have used code challenges, but not so much for code capability, but for thinking capability. What I mean is there is generally a network type question and maybe one on XOR or other non euclidean number space. I though have great reservations, yes it does filter some people who are obviously not logical thinkers, but I feel it also means deeper thinkers are hindered. It is something we have been debating, short quick answers can be good but a longer time to solve (unrealistic to ask candidates to waste too much time though) often shows a person who can think deeply and create better fundamental algorithms.
So long and short is that these challenges are under scrutiny, I am not sure I could pass this and I have been there a while and do a lot of design, which can take 3 weeks of nothing and 1 hour of inspiration later, something really worthwhile appears. Therefore I agree with your premise, but also see the other side of a basic filter as well. I hope we are smart enough to catch that, but the challenge itself may be filtering the deeper thinkers and that is a big concern.