mirror of
https://github.com/morluto/rea
synced 2026-10-27 22:45:19 -04:00
d0ff57a45c
Opening a target the current user cannot read returned `target_unavailable`, the same code as a missing target, although the reason named EACCES. Clients that branch on the error code could not choose read-access recovery, contrary to the boundary contract that separates host permission denial from unavailable targets. A BinaryTargetError whose cause is an OS EACCES or EPERM now records that system code and projects as `access_denied` with `system_code`, the filesystem-read boundary, and read-access remediation, while keeping its specific reason and path. This covers target files, app bundle paths and Info.plist reads, and selected plist reads, since every site passes the OS error as the cause. Fixes #1188 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>