Интерактор это класс куда ты кидаешь объекты и описываешь логику между ними, по сути все то же самое что и в сервисах, только с большим упором именно на какие либо операции между объектами
Квери это классы которые описывают общение с базой данных, типа там нужно тебе в модели комментариев пагинация фильтрация и тд, пишешь квери класс конкретно для этих операций с удобным интерфейсом, по необходимости используешь нужные другие квери обджекты и мержишь запросы между собой с помощью ActiveRelation#merge и в итоге в общем должно быть так, чтоб у тебя на любые запросы в базу данных должны быть соответствующие квери объекты каждый в своем "домене" с удобным интерфейсом и работающие в один запрос
Виджет это по сути тот же сервис объект но возвращать он всегда должен число, т.е. это конкретные классы для подсчитывания каких либо числовых значений, и с фронта для них одна точка входа куда фронт кидает названия нужных виджетов и параметры для них, а ты вызываешь их считаешь что нужно и отдаешь на фронт одним ответом все