Skip to content

Collaborations: rework mobile feature on the unified Collaborator model (collaborations flag) #116

Description

@teetangh

Context

The web schema merged WebinarCollaborator/ClassCollaborator into a single Collaborator model (collaboratorType WEBINAR|CLASS, webinarPlanId/classPlanId XOR, typed permission booleans replacing the permissions JSON, revenueShareBps replacing revenueSharePercentage). backend/lib/database/repositories/collaborator_repository.dart was minimally rewritten to compile against the new model (read + respond only), and the feature is gated behind FeatureFlags.collaborations (false) with 403 middleware on collaborations/.

Scope

  1. Full repository rework: expose typed permissions (canApprovePayment, canViewAnalytics, canEditEvent, canSeeAttendees) and bps-based revenue share end to end
  2. Frontend entities/screens (lib/features/collaborations/, lib/domain/entities/collaborator/) currently expect revenueSharePercentage — the repo converts bps→percentage at the boundary as a stopgap; decide the long-term contract
  3. Host-side management (invite, role change, removal) — see ChatGPT 5.4: Collaborator lifecycle review: invitee-only mobile contract, missing host management, and no post-accept provisioning #58 for the lifecycle gaps
  4. Flip FeatureFlags.collaborations

Related: #58

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions