Membership Repository
Component Detail
Data Layer
high complexity
backend
0
Dependencies
0
Dependents
7
Entities
0
Integrations
Description
Data access layer for all membership-related persistence operations. Wraps Supabase queries against the user_organization_memberships table with RLS policy compliance, ensuring cross-membership reads are permitted only for deduplication purposes and not for general data access.
membership-repository
Responsibilities
- CRUD operations on user_organization_memberships records
- Query all memberships for a given user with organization metadata
- Update primary and active context flags
- Support cross-membership activity queries scoped to deduplication
- Enforce Supabase RLS compliance for all cross-org queries
Interfaces
findMembershipsByUserId(userId)
findMembershipByUserAndOrg(userId, orgId)
createMembership(membershipData)
updateMembership(membershipId, updates)
deleteMembership(membershipId)
setActiveContext(userId, orgId)
getPrimaryMembership(userId)
getActivitiesAcrossOrgs(userId, filters)
countMembershipsByUser(userId)
Related Data Entities (7)
Data entities managed by this component