A device lifecycle boundary exposes stale data when network and local state disagree. The affected area is keychain session.
Repair the keychain session data migration implementation so it selects safe work under row and risk capacity while explaining skipped candidates.
Evidence
- Affected surface: iOS / Swift / keychain session.
- Observed failure family: plan migration batches.
- Scope policy: contractVersion must equal 2.