feat(finder): ship native Send to Sorting Hat Quick Action#27
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #26
What changed
Product contract
Finder is intake-only. The extension copies regular files and never renames, moves, deletes, sorts, or uploads the originals. Sorting and review remain inside Sorting Hat.
The Action accepts up to 256 files, 256 MB per file, 1 GB per request, with a 25-second extension deadline. Partial failures name unfinished files while preserving already staged successes. Directory-only selections may be suppressed by Finder before invocation; Add Files remains the path for folders or larger files.
No Full Disk Access is requested. The extension is sandboxed, receives read-only user-selected access, and shares only the App Group queue with the main app. The configured Inbox bookmark remains private to the app.
Installed Finder verification
Verified against the signed app installed at /Applications/Sorting Hat.app:
A pre-existing downstream output filename from earlier verification caused one visible, recoverable filing-collision history entry; the Inbox queue still delivered both payloads exactly once, and both files were ultimately filed without loss.
File Provider/security-scoped loading is implemented through NSItemProvider and covered structurally, but no personal cloud fixture was uploaded for this manual pass.
Verification
1c55da2dd41e28569d693253a3bb54ff14dbf4e19683aa0f9f2d38b56f47bd56
SORTING_HAT_DERIVED_DATA=/private/tmp/SortingHatFinderFinalHEADDerived BUILD_CONFIGURATION=Debug ./script/build_and_run.sh verify
Review order
Deferred
Developer ID notarization/release execution remains tracked separately in #24. This PR is ready for review and should not be merged automatically.