Why the cheap layers come first
Cheap layers run on every request. An expensive layer that runs on every request costs the request twice over.
The stack has one exit
One exit means one place to log. Two exits means two places, and one of them will forget the case.