He's not running too lean, he's running too rich which means his car isn't getting enough air flow.
The P0172 is a classic code when it comes to a bad O2 sensor. Bank 1 is the sensor in the exhaust manifold. I just replaced the one in my wife's Grand AM and it's a totally new car now. Remember, that O2 sensor is the "nose" of your vehicle. I would start there.