In seven years on Portland City Council—but maybe especially recently—Commissioner Amanda Fritz has made a habit of loosing blistering condemnations when it's clear a majority of her colleagues disagree on an issue she cares about.

Fans of the Fritz catalogue will remember such hits as March 5 of this year, when Fritz, unable to convince council to pare down height limits for buildings near the river, said she was "absolutely disgusted with this entire hearing." Or the time a month earlier when she excoriated her colleagues for the decision to re-partner with the federal Joint Terrorism Task Force.

Now we've got a new joint!

With the writing on the wall that city council would pass new regulations on companies like Uber and Lyft today—and therefore make the controversial services' entry into Portland official—Fritz went off with a lengthy prepared speech. (See below: It starts at 36:36.)

She compared City Council to a "Republican-dominated Congress in Washington, DC," saying it was allowing industry have outsize influence rather than acting in the public good. She said public safety would suffer as "transportation network companies" (TNCs) like Uber and Lyft ran rampant, insinuated the city's carbon-curbing goals could be hampered and transit use hurt, and accused colleagues—commissioners Steve Novick and Dan Saltzman teamed up with Mayor Charlie Hales to pass the rules—of taking meetings with Uber lobbyists while taxi interests were left out in the cold. (Expect critics to point out that Hales, Saltzman, and Novick have all been aided in political campaigns by consultant Mark Wiener—who's lobbied for Uber)

"This is one of the saddest votes I have cast in almost seven years in office," Fritz said toward the end of her 13-minute, five-page remarks [pdf]. "In casting my vote I would like to add an emphatic swear word." She didn't.

None of this is much of a surprise, of course. Since Uber barged into town without permission around this time last year, a robust and acidic debate has sprung up. Fritz and Commissioner Nick Fish have raised questions about TNCs throughout that process, and were already bested in a vote when council made a decision to let the companies operate under provisional rules in April.

Proponents have argued TNCs are convenient—offering quicker service in a city where cabs used to be hard to come by (they were heavily regulated until earlier this year)—and a useful source of supplemental income in a city struggling with rent increases and displacement. The public seems to agree: In the months since Uber and Lyft have begun operating legally in Portland, they've snatched up most of the market share.

Opponents say TNCs are inherently unsafe. They make compelling arguments about unfair insurance coverage the companies are required to carry—it's separated into three "periods" with $50,000-per-person coverage when drivers are waiting to accept a fare, and more robust coverage when they're on their way to a pick-up, or driving someone around. (Cabs carry $1 million in coverage at all times.) And they say Uber and Lyft have inadequate and self-serving background check procedures that can allow dangerous people into the system.

Fritz agrees with all of these criticisms, ("Commissioner Novick pledged to me that the system would be as safe for an aging woman like me as the existing taxi system. That is not the outcome."), but saved her weightiest comments for the insurance question, which she said was the "most egregious" part of the new rules.

It's probably not a coincidence Fritz was wearing a zebra-print sweater vest today (more tasteful than it sounds). Her husband, Dr. Steven Fritz, was a big fan of the pattern. He died in a tragic car wreck on Interstate 5 last year.

"As you are all aware, my husband was killed in a traffic crash last year," Fritz said. "Through this excruciating life event, I learned a lot about insurance requirements in this state. This ordinance sets the value on a person's life.. at $50,000 max."

She was referencing the "phase one" coverage limit, for when a driver is waiting to accept a fare request. Concerns over insurance have been raised repeatedly by cabbies this year, and give even supporters of the new regulations pause.

Commissioner Steve Novick, responsible for shepherding the rules through to council, announced this morning that he doesn't think the phase one coverage the city's mandating is adequate. Then he said there's not much we can do about it right now, since it's become something of a national standard.

"Uber and Lyft have made it clear that if any jurisdiction tried to depart from this agreement, they intend to declare war," Novick said. "If you're going to pick a fight with a $50 billion company, you’re probably smart to look around for some allies. So I’m going to do that."

Novick says he'll be happy to testify before the legislature to get the state to enact tougher requirements. And he asked Uber foes to keep a weather eye out for big cities (300,000 residents or more) around the country that favor enacting tougher insurance rules, invoking "strength in numbers."

Until that happens, Novick said he'll turn his attentions back to the other great and thorny issue that's plagued him during his time in office: finding more money for city roads. He's expected to introduce a new 10-cent gas tax proposal in coming months.

"This is a no-win issue," Novick said. "I'd be very happy if I never heard the words Uber and Lyft."

The rest of the votes went down as expected. Fish voiced his long-held concerns about Uber as a trustworthy partner, voting no (his remarks [pdf]). Saltzman said services like Uber and Lyft represent a "generational shift"—Saltzman only uses cabs, he says, but his 20-year-old daughter swears by Uber. And Hales repeated a statement he's made often: That Portland has tougher regulations than the vast majority of cities where TNCs have cropped up.

Now, it seems, they're here to stay.