Catch where real recovery or meaningful translation is possible.
A catch block should do something valuable: recover, compensate, or translate the failure into clearer language for the next layer. Decorative catch blocks that only log and continue often make systems harder to trust.