By default, the HTTP response code for "file not found" has always been 404. I never really thought about it until recently someone was saying that if the missing file is part of an application then the response should be 500 (internal server error) because it's not a client error (4xx error class). The example for that situation was when the deployment for media files failed.
So, in that situation, should the status be 404 or 500? If it's 404, what is the reason for that situation?