Skip to content

Refactor: one Drive access type #82

Closed

Description

@Skeyelab

What to build

Decide whether to collapse DriveAccess (Destinations) and DestinationAccess (Recording) into one type.

Both carry (folder, release). App/RecordScreen.swift converts one to the other with a closure wrapper. Their release closures differ in isolation (@Sendable vs @MainActor), which is the real question: pick one that works for both the security-scoped Drive folder and the Recorder's use, then delete the wrapper.

Speculative, so settle the design first (which module owns the type, what isolation release has) before changing code.

Also look at Show.useDrive/joinDrive, which leave driveFolder as mutable state the Recorder also changes around. Note anything worth tightening.

Found in the architecture review after #13.

Acceptance criteria

  • A short decision comment on this issue (one type or two, and why) before any code
  • If merged: one access type, no conversion closure in the App, ./scripts/verify.sh passes

Blocked by

None.

Activity

  1. added
    hitlNeeds a human: hardware, a decision or a review
    on Oct 7, 2026
  2. Skeyelab commented on Oct 11, 2026

    @Skeyelab
    MemberAuthor

    Done in #312: Destinations.DriveAccess is now the one type for a Drive opened for a Take; Recording.DestinationAccess is gone.

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

    hitlNeeds a human: hardware, a decision or a review

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions