Now that `err` could also be something that bubbles up directly from the S3 client library, ideally we would detect that and return a 500 error instead (and a more generic error message than whatever comes from Amazon--the user doesn't really need to see that and we'll eventually be getting our own notification of the underlying error via email). I'm not totally sure how to detect it at this level though (other than checking to see whether the error string is one of the codes we generate, and assume that if it's not, it must be some other internal error).

That said, probably not worth stressing over since presumably it won't happen often :)