Denver District Attorney Mitch Morrissey should have prosecuted a sheriff’s deputy for attacking a shackled inmate in a courtroom, a judge ruled Friday evening.

Still, Denver District Court Chief Judge Michael Martinez stopped short of calling for a special prosecutor or ordering Morrissey’s office to press an assault charge against the deputy. Legally speaking, he ruled, it’s too late.

“To my mind and from the evidence before me, there’s no reasonable excuse for the District Attorney not to (have prosecuted for) third-degree assault. That should have been done, and it wasn’t done,” Martinez said.

“Obviously, I’m agitated by the failure of the District Attorney to bring that charge, but now the statute of limitations has run, and there’s nothing I can do about it.”

Three years ago Friday, Anthony Waller appeared before Judge Doris Burd about his arrest on suspicion of assaulting a woman in an East Colfax motel. Sheriff’s Deputy Brady Lovingier was guarding the courtroom at the time.

While Waller was politely asking the judge a question, Lovingier suddenly yanked him by his body shackles and slammed him against a glass wall. The attack was captured on a courtroom videotape.

Though the attack was ruled unprovoked by internal affairs investigators, Morrissey’s office chose not to prosecute Lovingier — the son of former sheriff’s department head Bill Lovingier.

Waller, in the meantime, has brought a federal civil rights case against Lovingier, the sheriff’s department and the city. His lawyer, Ken Padilla, used a rare tactic allowed under state law in which he petitioned Denver District Court to review Morrissey’s decision not to press charges against Lovingier.

“This is Mr. Waller’s last chance for justice,” Padilla said. “Deputy Lovingier, as a deputy sheriff, is not above the law. He is not privileged to use force just because he doesn’t like Mr. Waller.”

In response to Padilla’s recent petition, Martinez scrambled this week to schedule the review hearing for Friday — the third anniversary of the attack and the day the statute of limitations for a felony charge would have expired.

Judge Martinez – as well as the activists and community watchdogs who filled his courtroom — had expected Morrissey to appear in person to explain why he hadn’t pressed charges against Lovingier. A gauntlet of TV journalists waited outside the courtroom for Morrissey to show up.

But he didn’t. His office explained that, shortly before it learned Thursday that the emergency hearing would be held Friday, Morrissey had flown to Montana to attend a wedding.

“He didn’t know about it,” Chief Deputy District Attorney Doug Jackson told the judge.

In his boss’s absence, Jackson explained the decision not to prosecute Lovingier. For one thing, he said, Waller has a long criminal history and habit of trying to intimidate sheriff’s deputies – including, as Lovingier has told it, “growling” like a bear at deputies before being escorted that day into court.

Jackson said he believed Lovingier’s account that Waller had lost his balance while speaking with the judge and that Lovingier helped “ease Waller to the ground.” Hitting the courtroom wall, Jackson said, “was sort of a confluence of momentum that occurred.”

Jackson said he took the word of three other sheriff’s deputies who witnessed the incident and said Lovingier did nothing wrong.

When questioned by Judge Martinez about the extent of his investigation, Jackson acknowledged that he never questioned Waller or Judge Burd, who viewed Lovingier’s handling of the case as excessive.

Jackson said the forehead laceration Waller suffered in the attack didn’t qualify as a serious bodily injury – an essential factor for a felony assault charge. Had Waller been a woman, Jackson said, the injury might have been prosecution worthy.

Padilla, for his part, took umbrage with Jackson defending Lovingier and with the fact that Jackson only considered Lovingier’s and fellow deputies’ side of the story. Padilla argued that Jackson had a conflict of interest because he had prosecuted Waller in a rape case about 20 years earlier.

“The D.A. in this case wanted to just focus only on what Lovingier said and on the deputy sheriffs that have an interest in the outcome,” Padilla said.

Judge Martinez admonished Jackson for not doing a more thorough investigation. Still, based on the limited information Jackson took into consideration, Martinez ruled he couldn’t find legal fault for not pressing a felony assault charge.

Upon hearing that first half of the judge’s ruling, Waller — shackled and wearing an orange jail jumpsuit — stood up and, surrounded by sheriff’s deputies, left the courtroom.

Waller missed the second half of the ruling in which Martinez did fault Morrissey’s office for not pressing a third-degree assault charge against Lovingier. Although that ruling marked a victory for Waller in principle, it’s for naught because third-degree assault is a misdemeanor charge and the 18-month misdemeanor statute of limitations tolled in March 2014 – meaning Lovingier can no longer be charged.

Morrissey hasn’t prosecuted any law enforcement officers for on-duty excessive force incidents – including killing – in his 10 years in office. In recent months, community activists organized an unsuccessful effort to recall him and many looked to this hearing as a chance for him to finally be held accountable.

“Like the judge said, it’s a hollow victory,” said State Rep. Beth McCann, a former prosecutor who’s running to replace Morrissey.

Added Padilla: “Justice delayed is justice denied.”