Yes, you should feel guilty. Hot market like Minneapolis, with a full service, should have asked more for it....
Now the politics stuff, hopefully, that will not become the main topic of the day.
All kidding aside, I often find bikes with a mix of parts, some great parts, some average, some below average. I will usually sort them out, sticking with one model part, that makes sense for that level bike, and resell it. So the 1989 Trek 2000 I picked up, that was a mix of Campy NR, Superbe Pro, Shimano 600, tri-bars, etc., got rebuilt with all Shimano 105 and drop bars. I do this with most frankenbikes. I also will rebuild donor bikes, OK, often with lower end stuff, and price them appropriately. Just rebuilt a 1995 Fuji, that originally came with all 105 (8 speed STI), reborn with 7 speed DT RSX (also 1995 vintage). Downgrade for sure, but I will price it right, and the parts went onto a Cannondale, that get a better response here (than a 1995 Fuji). Or at least I think so. Cannondale sold in one day...
A quick look at the Minneapolis C/L, I see a high ten steel MB, stem shifters, etc., asking price of $225; a steel rim Pug needing work for $175; a generic Asian entry level bike with cottered crank for $190; a dirty Nishiki Sport for $160; a 1980s Tempo for $495!!!!; a Huffy Free Spirit for $145; etc.
Against those choices, your buyer did quite well! While many of us that look every day, would expect more for our money, the average buyer does not want to put the time and effort into it, so finding a good reliable bike, recently serviced, for less than the service work alone would go for at a nearby bike shop? Deal.