In some particular scenarios, This can actually break the feature for new shops trying to make search results. For example, selling Stone. As it is new shops will never be visible. Seems the search is limited to 3 pages. There's a lot of old shops with 0 items remaining. Setting up a new shop would sort you last, beyond the limit of the 3 pages, so your new shop will never be visible. (Unless someone finds it in person, and shops at it) Either set the page limit, to where it doesn't showcase this problem. Or make a better effort to filter shops with 0 items remaining at the search level. This might be an opportunity to fix shops where the items are free. It currently seems to mess up in the search results. At the programing level, normally you'd have a boolean column. Where it's true if it has stock, false when empty. Then you'd sort by last recently used as 2nd priority, and 1st priority is the "has stock" boolean. You can even have it so that empty shops are not exactly hidden, just actually sorted after all the ones that do have stock.
Perhaps the solution would be to automatically hide shops from the listings after they've not been used for some ridiculous number of days? So if a shop hasn't been used in say, 6 months, it's automatically hidden from view unless the owner refreshes it someh0w?