Skip to content

feat(app): add custom protocol output directory#34

Merged
pasrom merged 1 commit intomainfrom
feat/custom-output-directory
Mar 17, 2026
Merged

feat(app): add custom protocol output directory#34
pasrom merged 1 commit intomainfrom
feat/custom-output-directory

Conversation

@pasrom
Copy link
Copy Markdown
Owner

@pasrom pasrom commented Mar 17, 2026

Summary

  • Add configurable output directory in Settings (defaults to ~/Downloads/MeetingTranscriber)
  • Organize output into protocols/ (.md, .txt) and recordings/ (.wav) subdirectories
  • Move audio files to output directory after processing
  • Fix App Store entitlements to apply without notarization

Structure

~/Downloads/MeetingTranscriber/
├── protocols/
│   ├── 20260317_2130_meeting.md
│   └── 20260317_2130_meeting.txt
└── recordings/
    ├── 20260317_2130_meeting_mix.wav
    ├── 20260317_2130_meeting_app.wav
    └── 20260317_2130_meeting_mic.wav

Test plan

  • Verify default output directory is ~/Downloads/MeetingTranscriber
  • Change output directory in Settings, verify files go to new location
  • Process audio file, verify .md/.txt in protocols/ and .wav in recordings/
  • Verify "Open Protocols Folder" opens the root output directory
  • App Store build: verify sandbox entitlements work with file picker

@github-actions github-actions bot added the enhancement New feature or request label Mar 17, 2026
What: Protocol files now default to ~/Downloads/MeetingTranscriber/ instead
of the sandboxed Application Support directory. Users can choose a custom
output folder via Settings → Protocol Generation → Output Folder.

Reasoning:
- Problem: In App Store sandbox, protocols land in ~/Library/Containers/...
  which is hard for users to find
- Decision: Default to ~/Downloads/ (via files.downloads.read-write entitlement)
  with optional folder picker (via files.user-selected.read-write entitlement)
- Security-scoped bookmarks persist the user's folder choice across launches
- startAccessingSecurityScopedResource() in save methods ensures sandbox access
@pasrom pasrom force-pushed the feat/custom-output-directory branch from e9c3fdd to a1e78a3 Compare March 17, 2026 20:47
@pasrom pasrom merged commit 7e0e27d into main Mar 17, 2026
7 checks passed
@pasrom pasrom deleted the feat/custom-output-directory branch March 17, 2026 20:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant