Trivial to identify, if you know what you’re looking for. I didn’t, and apparently my local mechanic doesn’t either.
Track bar was the culprit. Fortunately I had replaced it 4 years ago with an aftermarket adjustable track bar that uses tie rod ends, so they just replaced the bad end vs the entire track bar.
Unfortunately it turns out that Hertz doesn’t care that I returned my rental after 1 day instead of 1 week, so I paid $200 to rent a Corolla for a day. Nice car, but a little steep.