Cumplir el modelo de seguridad moderno de macOS. - [ ] No reescribir el `~/.wgetrc` global: generar config propia y pasarla con `--config=<ruta>`. - [ ] Decidir sobre App Sandbox (Mac App Store obligatorio / Developer ID opcional pero con Hardened Runtime). - [ ] Entitlements: `com.apple.security.network.client`, acceso a carpeta de descargas, Apple Events si se mantiene el control de Safari/Finder. - [ ] Info.plist: `NSAppleEventsUsageDescription`; manejar consentimiento TCC con degradación elegante. - [ ] Usar security-scoped bookmarks para recordar la carpeta de descargas. **Criterio de salida:** la app no toca archivos globales, pide permisos correctamente y funciona con Hardened Runtime. Ref: ROADMAP.md → Fase 4.
Cumplir el modelo de seguridad moderno de macOS.
~/.wgetrcglobal: generar config propia y pasarla con--config=<ruta>.com.apple.security.network.client, acceso a carpeta de descargas, Apple Events si se mantiene el control de Safari/Finder.NSAppleEventsUsageDescription; manejar consentimiento TCC con degradación elegante.Criterio de salida: la app no toca archivos globales, pide permisos correctamente y funciona con Hardened Runtime.
Ref: ROADMAP.md → Fase 4.