I have the ecovacs deebot. Ideal for woodfloors, but it will also go up and do throw rugs. If you don't run it regularly (at least twice per week), it tends to get overwhelmed by the buildup of dustbunnies and dirt. I think that's typical of most of these devices.
Sort of a poor man's roomba, but often rated pretty close (mine is like 3 years old, so consider that). Does a decent enough job if you run it every other day - probably covers about 250 sqft, realistically, in an hour of operation. Probably would take 3 runs to hit all of a 500 sqft floor at least once.
The main problem with this, and even more expensive options (again, tech has probably gotten better the past few years), is they tend to get hung up on stuff. And I've never been brave enough to test it to run while I'm gone with the alarm set because they do bump into chairs with enough force to move them a tiny bit.
Everything I've read is the mopping options aren't that great. They either do a pretty mediocre job, or they'll potentially damage your wood floor.
So my advice is to get a recent top of the line sweeper. And then put in the time to fence off areas where it gets hung up. Mop your floors yourself a few times a year.
An overlooked issue is how often you have to put in maintenance on the brushes. If you have to spend 15 minutes every week cleaning the brushes to keep it working smoothly then how much time are you really saving?