Skip to content

Feat/permissions phase5 - #84

Open
rage2000 wants to merge 2 commits into
feat/permissions-phase4from
feat/permissions-phase5
Open

rage2000 wants to merge 2 commits into
feat/permissions-phase4from
feat/permissions-phase5

Conversation

@rage2000

@rage2000 rage2000 commented Jun 22, 2026 •

Copy link
Copy Markdown
Collaborator

Implements DestinationPermissionWriter for La Suite Drive.

  • Maps CanonicalRole to Drive roles: READ -> reader, WRITE -> editor, MANAGE -> owner
  • PRIVATE and ALL_MEMBERS return success immediately. No per-file action needed
  • MANAGERS_CONTRIBUTORS and RESTRICTED_GROUPS follow PermissionMappingPolicy.on_no_equivalent_target
  • SPECIFIC_USERS resolves each user via find_user_by_email, then calls share_with_user or invite_by_email with the mapped role
  • Unresolved users are recorded in skipped_users or fail hard depending on on_unresolved_user policy

Also adds a role parameter to DriveBackend.share_with_user() and invite_by_email() (default "owner", backward-compatible)

@rage2000
rage2000 force-pushed the feat/permissions-phase4 branch from 7d06fda to d0477f9 Compare July 29, 2026 08:07
@rage2000
rage2000 force-pushed the feat/permissions-phase5 branch from a4b9333 to 9569e3e Compare July 29, 2026 08:12
@rage2000
rage2000 force-pushed the feat/permissions-phase4 branch from d0477f9 to 8672a7b Compare July 29, 2026 08:39
rage2000 added 2 commits July 29, 2026 10:41
Default remains "owner" for backward compatibility. Enables callers to
specify granular Drive roles (reader/editor/owner) per permission level.
Implements DestinationPermissionWriter for La Suite Drive. Maps
CanonicalRole to Drive roles (reader/editor/owner), handles targets
without a Drive equivalent (MANAGERS_CONTRIBUTORS, RESTRICTED_GROUPS)
via PermissionMappingPolicy, and resolves users via find_user_by_email
before calling share_with_user or invite_by_email.
@rage2000
rage2000 force-pushed the feat/permissions-phase5 branch from 9569e3e to 26bb108 Compare July 29, 2026 08:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant