Skip to content

[iCloud] Availability & permission checks #8

@zinkxx

Description

@zinkxx

Goal

Ensure DevNotes behaves safely and predictably when iCloud
is unavailable, disabled, or permissions are missing.

Context

Users may not be signed into iCloud, may have iCloud Drive disabled,
or may revoke permissions at any time.
The app must never crash or enter an inconsistent sync state.

Scope

  • Detect iCloud account availability
  • Check iCloud Drive status
  • Validate app-level iCloud permissions
  • Disable sync safely when requirements are not met

Technical Notes

  • Use CKContainer.accountStatus for availability checks
  • Observe ubiquityIdentityToken changes
  • Handle transitions dynamically (no restart required)

Acceptance Criteria

  • App does not crash when iCloud is disabled
  • Sync is safely disabled when requirements are unmet
  • User receives a clear, actionable warning
  • App continues working in local-only mode

Milestone

v1.1 – iCloud Sync

Metadata

Metadata

Assignees

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions