It's Apple's screwup, not AT&T's. It's Apple's website, Apple's system, Apple's responsibility.
I mean, sure AT&T's servers are involved - but since they are apparently necessary for *every iPhone upgrade*, it's Apple's responsibility to *test* the system to see whether it works.
If Apple's servers crashed, you'd probably be saying that it isn't Apple's fault either, but Intel's, or Cisco's, or Linux's.
And of course, my attempts to preorder failed at Apple's website before the AT&T section, during the AT&T section, and after the AT&T section, when I tried to put the phone in my cart.
Luckily, I was able to reserve a phone at my local Apple Store.
But the responsibility for the whole screw-up rests primarily on Apple's head, not on AT&T's.