Fixes
- #12 Mount silent fail -
FileTransferManager.mountnow probes AFC root before declaring success and surfaces the actual reason (locked / untrusted / missing pmd3) instead of returning to an empty browser. - #9 Notes
SQLite prepare failed-NotesExtractornow distinguishes missing file / encrypted blob / unsupported schema and throws localized errors. - #8 Messages: filtered chats with 0 messages (
HAVING msg_count > 0); joinedmessage_attachment_joinso attachments surface; HTML export stages attachments next to the .html and embeds image bubbles like PhoneView. - #13 New MBOX export (RFC 4155) for Mail.app / Thunderbird import. Attachments are base64 MIME parts when resolvable.
- #11
sudo: pymobiledevice3: command not found-PyMobileDevice.tunneldCommand()returns an absolute-path sudo command so thesecure_pathPATH strip no longer breaks it. Used by Onboarding, Screen, Diagnostics, and Location views.
CI
- Release job now refuses to run without signing secrets, and the in-tree Homebrew cask bump requires
spctl --assess+stapler validateto pass before writing the new sha.
Verification
spctl -a -vv -t install Phosphor.dmg
Phosphor.dmg: accepted
source=Notarized Developer ID
origin=Developer ID Application: Moamen Basel (H3WXHVTP97)
xcrun stapler validate Phosphor.dmg
The validate action worked!