Her name has hovered for weeks on the periphery of labor leader John Dougherty and Philadelphia City Councilmember Bobby Henon’s federal bribery trial.

It’s appeared in dozens of emails, shown to jurors, directing Henon’s staff. And witnesses have put her at the forefront of many of the councilmember’s initiatives now under scrutiny in the case. Most centrally, she was the recipient of a set of new home windows — a gift from her boss that prosecutors say he obtained as a bribe.

But as Courtney Voss — Henon’s chief of staff for nearly a decade and the woman with whom he’s been romantically involved — took the witness stand Thursday to address jurors directly, she testified that prosecutors had pegged Henon all wrong.

“I know with every fiber of my being that he did not do anything wrong,” she said through sobs at one point under questioning by Assistant U.S. Attorney Richard Barrett. “And you’re trying to put him in jail for 20 years.”

» READ MORE: As it happened: Trial of John Dougherty and Bobby Henon continues with focus on councilmember's fund-raising

Voss’ testimony — which ended with her quick exit from the courtroom again on the verge of tears — capped off the fifth week of the closely watched political corruption trial and ended a day that also saw turns on the witness stand from several of Henon’s constituents, fellow labor leaders and a fund-raising consultant for his campaign.

The defense is quickly winding down its case, U.S. District Judge Jeffrey L. Schmehl announced as court recessed for the day, and closing arguments could begin as early as Monday.

And while neither man has opted to testify, Voss’ two-hour stint on the witness stand provided perhaps the next closest thing.

As Henon’s top aide, she has had a front-row seat to many of the Council actions jurors have spent weeks hearing about in court and has had more access to his thinking than any other witness jurors have heard from so far.

Henon, she maintained, was far from the Dougherty puppet that prosecutors have made him out to be, carrying out the labor leader’s will within government in exchange for a $70,000-a-year, do-nothing job.

Instead, she described him as a tireless public servant in perpetual motion, striving to improve the lives of both his constituents and the members of the union he worked for.

“He doesn’t really have a stop or start of the day,” she said. “It’s just something that’s constantly going.”

Voss’ testimony swung wildly between confidently defending her boss and moments of raw emotion that left her sobbing and near speechless. Henon sat at the defense table across the room, expressionless above his mask and taking notes.

She choked up as prosecutors grilled her on whether the lines between her and Henon’s personal and professional lives were always as clear as she had described.

“I always tried my absolute best,” she said, “to make decisions based on the councilman … the district and the city of Philadelphia.”

When asked directly by Henon’s attorney, Brian J. McMonagle, whether Henon had supported the city’s soda tax, taken on issues like tow truck regulation and the city’s 2015 franchise agreement with Comcast, or used his office to advance labor causes just because Dougherty said so, she replied with an emphatic no.

“Bobby isn’t just a supporter of labor,” she said. “He is labor.”

» READ MORE: Catch up on the John Dougherty and Bobby Henon trial

In most cases, Voss maintained that Henon was involved in those issues long before the wiretapped phone calls prosecutors played in court, featuring Dougherty telling him what to do.

The councilmember had begun to explore switching his stance on a city soda tax in early 2015, she said, weeks before a phone call in which Dougherty encouraged him to vote for the measure as an act of revenge on a rival union that opposed it.

Likewise, Voss told jurors, Henon’s staff had been working on the Comcast franchise agreement months before Dougherty got involved.

And it wasn’t a tow-truck driver’s trying to haul away Dougherty’s car in 2015 that pushed Henon to draft a resolution calling for Council hearings on abuses within the towing industry, Voss said. That came after Henon’s own car had been towed months before.

As for the $3,100 windows Henon helped her obtain for her Northeast Philadelphia home, Voss said she was horrified when she saw them mentioned in the councilmember’s indictment.

Prosecutors have alleged that Henon extorted them as a bribe from Joseph Ashdale, then head of the glaziers union and the Philadelphia Parking Authority. In exchange, they maintain, the councilmember helped to squash a proposed 2016 audit of the PPA.

While Henon and Ashdale discussed the two issues on several of the same phone calls, the defense has insisted the audit vote and the home repairs had nothing to do with each other.

For her own part, Voss testified that she’d bought the historic home on Pennypack Creek hoping she could restore it on her roughly $90,000-a-year salary. But it quickly turned into a money pit that needed tens of thousands of dollars in repairs that brought her to the brink of foreclosure.

“It was a disaster from the beginning, and I made an enormous number of really bad decisions trying to get the house built and make it habitable,” she said. “At some point, I asked Bobby to help me.”

She was the one, she said, who’d asked Henon to call Ashdale for help — “somebody I knew knew a lot about glass.”

» READ MORE: PPA board chair Joseph Ashdale bribed councilman to squash agency audit, feds say

Though Ashdale at first said Voss would only need to pay for the installation and not the windows themselves, she told jurors she eventually paid the whole bill after realizing it was at the heart of one of the bribery counts Henon is now facing.

The first sign of trouble with the feds came in 2016 as federal agents raided Henon’s City Hall and district offices, an experience Voss described Thursday as “traumatic.”

Other Henon staffers have testified that in the weeks that followed they felt uncomfortable with Voss and Henon’s questions about whether they’d spoken to the FBI and suggestions that their lawyers all coordinate in their contact with authorities.

Voss defended her actions, fighting through tears under cross-examination, saying she only wanted to help her staff feel confident amid the investigation and to restore a sense of normalcy.

“The process of going through a federal raid is designed to divide people and it’s terrifying,” she said. “There’s no doubt in my mind that other staff were struggling. I was struggling.”

She added: “I asked everyone to tell the truth.”

Keep up with every development in John Dougherty and Bobby Henon’s case with our day-by-day recaps, live coverage, and explainer on everything you need to know about the case.