The intention is very clear that "CatalogProductsModel" is used for the ajax filter for the category page, Manufacture page, and vendor page as the filter is the same for all these 3 pages.
But the problem is that suppose the store owner wants to add filter by rating at category but not at the Manufacturer page and vendor page.
It will be better to isolate this record into 3 records with the same parameters so that developer can change it according to the requirements.
I don't quite understand your suggestion. You write about what the store owner wants, and then what developer can. What exactly do you propose and for what?
I don't quite understand your suggestion. You write about what the store owner wants, and then what developer can. What exactly do you propose and for what?
Segregate a little more to have more control. Without any customization, it works perfectly. But when scenarios come to add more filtering like filter by rating/new products for manufacturer and vendor landing page but not for the category landing then it is better to segregate related models and even the server.
It is more suitable when the filter varies by manufacturer, vendor, and category landing page. By default there is no issue.