PHOENIX -- Jeff Karstens had nothing left to prove. His season, even with that dip in August, had well exceeded expectations. Labels had already been shed.
And yet the right-hander still found a chip to lay on his shoulder as he took the mound on Monday.
Disappointed that this would be his final start of the year -- and that he'd be limited in pitch count -- Karstens pitched as deep as the Pirates would allow in an outing that was reminiscent of all those dominant performances Karstens strung together through the season's first four months.
It was the stabilizing effort the Pirates needed after a disastrous weekend in Los Angeles, though not enough to stall the D-backs from creeping closer to the National League West title. Rather, Arizona starter Ian Kennedy stole the spotlight as he led Arizona to a 1-0 win in front of 24,458 at Chase Field.
"I'm proud of Jeff," said manager Clint Hurdle, who just hours earlier had announced that Karstens would not make another start. "It's been a big step forward year for him. He's knocked down some barriers, and it just goes to show you that he took a stand. He wanted to pitch more."
Karstens lasted six innings on Monday, not because of any ineffectiveness, but because of concern over workload. He needed only 85 pitches to get that deep and limited Arizona to five hits. The last of those five left the lingering sting.
All-Star outfielder Justin Upton took Karstens deep with a broken bat homer to lead off the sixth. Upton had gotten ahead in the count, 3-0, leaving him poised to jump on a fastball.
"If I get that ball a little more in or just walk him, who knows what happens," Karstens said. "All you can do is really tip your cap there. The bat snapped in half and the ball still went out."
The home run, which was Upton's 31st, was briefly in jeopardy as the umpires conferred about whether a fan interfered with Alex Presley's attempt to make a jumping catch. After using instant replay, the call was confirmed.
"I kind of thought it was going to hang up," Presley said, "and I was going to catch it like normal."
Presley was asked if he thought there was interference.
"I honestly have no idea," he said. "I was watching the ball the whole way. I thought I was going to get a glove on it. When I didn't, I didn't know why."
None of the replay angles showed definitive reason to overturn the call.
With no run support to back up a terrific effort, Karstens finishes the year 9-9 and winless in his final five starts. Seemingly more frustrating to Karstens than the way he lost, though, was the fact that he was not allowed to pitch deeper. It was all a part of the Pirates' cautious approach not to increase his innings count too high.
"I felt like I still had good stuff," said Karstens, who finishes with 162 1/3 innings. "Just for competitive reasons, I wanted to come back out."
Not to be lost, though, is the big picture.
The job that Karstens did to stabilize a rotation was remarkable, especially because the plans were to use him mostly in a long-relief/spot-starter role. Stepping in for Ross Ohlendorf in April, Karstens thrived as regular member of the rotation. He had a 2.49 ERA at the end of July and enjoyed a stretch of 17 straight starts in which he allowed three or fewer earned runs.
For a pitcher once labeled as lacking durability, Karstens emerged as one of the season's brightest stories. It has also likely changed his long-term future with this organization.
"I know on a maturity level, I feel a lot more confident no matter who I'm facing," Karstens said. "I feel like every time I go out I'm going to give my team a chance to win. That was something in the past that I was sometimes doubtful about. I think I've definitely grown as a pitcher."
Karstens' chance at earning his 10th win was stalled by opposing starter and personal friend, Ian Kennedy, who joined the Tigers' Justin Verlander as the Majors' second 20-game winner. After scoring two runs in two games this weekend, the Pirates had only one hit against Kennedy in eight innings.
The club has been shut out 14 times this season, the second-highest total in the NL.
"He was very, very sharp," Hurdle said. "The fastball had good finish. He was using it to both sides of the plate, spun the ball when he wanted to. That was an excellently pitched ballgame."
Kennedy matched his career high with 12 strikeouts and fanned the final six batters he faced. The only hit off Kennedy came off Karstens' bat. He delivered a two-out single in the third.
"Fastball right down the middle," Kennedy said. "I'm going to send him a text message later on. First, he throws a sinker down and in and hurts my ankle [on a foul ball]. Then he gets a base hit the next half inning. That's not very nice."
Kennedy could complain about little else. The Pirates' only other baserunner against him came when Andrew McCutchen drew a fourth-inning walk. McCutchen swiped second but got no further.
"I wish it wasn't against us that he got his 20th win, but he's had a great season," Karstens said. "He's done what he did tonight all year. What can you do but tip your cap?"
Pittsburgh threatened in the ninth against Arizona closer J.J. Putz. Presley tripled with one out, but he had to freeze at third on a weak groundout by Neil Walker. McCutchen then struck out to end the game.
The Pirates have struck out at least 10 times in 51 games. With 13 on Monday, the club has amassed 1,243 strikeouts on the season. That is a franchise record.
Jenifer Langosch is a reporter for MLB.com. Read her blog, By Gosh, It's Langosch, and follow her on Twitter @LangoschMLB. This story was not subject to the approval of Major League Baseball or its clubs.