For the time being, I'm going with Kyle's approach. It felt icky the whole time to even consult the status code in the model layer. When we consider revamping the way the request layer is structured, that will be the appropriate time to decide how the model and request layers should communicate effectively, including logging.