Problem
Integrating applications cannot inspect when an update check was last attempted or succeeded, what version was received, or why the last check failed. Support teams therefore have little information for diagnosing update behavior.
Scope
- Expose a read-only diagnostics snapshot.
- Include last attempt, last success, last error category, current version, and last received store version.
- Keep state updates thread-safe and namespace-aware.
- Avoid storing response payloads or sensitive user data.
- Document persistence and reset behavior.
Dependencies
Acceptance criteria
Tests
- Cover initial, attempted, successful, failed, skipped, namespaced, and reset states.
Relevant files
Framework/Sources/SUK.swift
Framework/Sources/SUKUserDefaults.swift
Problem
Integrating applications cannot inspect when an update check was last attempted or succeeded, what version was received, or why the last check failed. Support teams therefore have little information for diagnosing update behavior.
Scope
Dependencies
Acceptance criteria
Tests
Relevant files
Framework/Sources/SUK.swiftFramework/Sources/SUKUserDefaults.swift