feat: group movie recommendation engine ("Movie Checker") #17
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
When a group of friends wants to watch a movie together but can't decide, the app should suggest the most compatible movies for that specific group based on their viewing history and taste profiles.
Concept
Given N users, find movies that maximize group satisfaction — optimize for minimum unhappiness (nobody hates the pick) rather than maximum average rating.
Approach: Hybrid (local catalog + TMDb discovery)
1. Taste profile per user
Build a preference vector from each user's review history:
2. Group scoring
For a set of users, score candidate movies by:
3. Candidate sources (hybrid)
Tier 1 — Local catalog (fast, high confidence):
Tier 2 — TMDb discovery (broader, predicted ratings only):
Implementation considerations
GroupSession(temporary, contains user IDs + generated recommendations)RecommendationEnginewithrecommend_for_group(user_ids) -> Vec<Recommendation>tmdb-enrichmentadapter)POST /api/v1/recommendations/groupwith{ user_ids: [uuid] }Open questions