В SQL я бы сделал sum by distinct user_id, т.к. мне в целом неважны связи
я не знаю как эта магия должна работать, но я бы попробовал поставить контрайнт через модель юзера и поигрался бы с Expression.resolve_expression
Не факт что получилось бы, но было бы интересно)