- Add detectDeviceName() JS helper to all 6 registration pages (parses
UA → "Chrome on Windows", "Safari on iPhone", etc.)
- Accept deviceName in /api/register/complete, /api/account/device/complete,
and /api/device-link/:token/complete; store as credential label at creation
- Add optional label param to storeCredential() in db.ts
- Replace separate "Your Passkeys" section with unified device list in
"Linked Devices" showing name, status, created/last-used dates, and
inline rename (PATCH) and delete (DELETE) actions
- Make checklist "Second device" confirmation-aware: only marks done when
a second device has actually been used to sign in (has lastUsed set)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>