Fixed
- Album sync failed with
BadRequestException: missing required field 'recordType'— folder containers were treated as albums and queried with a null record type; folders are now skipped (their sub-albums sync as before). (#63) - Constant re-authentication after login — session restore gave up when the short-lived auth cookies expired; it now re-authenticates using the stored session token (valid ~60 days). (#62)
- China iCloud login failed with "Apple did not return account info" — tokens are realm-specific; the app now performs a full SRP login against
idmsa.apple.com.cnafter Apple redirects to the China domain, with correct Origin/Referer headers. (#59) - False "Volume /volume1 does not exist" error — volume validation no longer relies on
ismount()alone (now also accepts symlinked/migrated volumes on a separate device) and only runs when the target folder actually changes, so other settings can always be saved. (#67) - Clearer error for passkey/security-key accounts — Apple offers no code-based sign-in for accounts secured exclusively with FIDO2 keys/passkeys; the app now explains this instead of "No trusted phone numbers found". (#58)