Txtshell central · Phase A tracer DEV · THROWAWAY
Detecting device…
PRF—
Round trip—
Stable (Session B)—
Cross-device—
Which is this device?
Done on this device — take a screenshot of the top of this page.
Save your recovery phrase
Signing you in — enter your recovery phrase for this device
This device's passkey isn't set up for your vault yet. Enter the 12 words once; after that, this device unlocks with biometrics only.
Start a new vault?
Without the phrase, the notes in this account can't be unlocked by anyone, including us. Starting a new vault permanently deletes them. Your account and passkeys stay.
This device is set up
You won't need your recovery phrase here again — this device now unlocks with biometrics.
Devices Phase C
Phase B · Sync whole-blob LWW · conditional PUT
Your blocks on this device, pushed as one encrypted blob. Push sends If-Match: "g<generation>"; a stale push gets 412 and pulls first. Nothing here is readable by the server.
Local store: deviceCloud generation I last synced: 0⏸ pushes held (pull in flight / card pending)
Network log
Details / log
Manual gates — one sitting, in this order
- Mac Safari → Set up → email → code → Touch ID (register) → Touch ID (sign in) → round trip → Reload for Session B → Touch ID → expect STABLE ✓. Screenshot.
- iPhone Safari (same iCloud account) → Join → Face ID → expect Cross-device ✓ (it decrypts the Mac's blob). Screenshot.
- Mac Chrome → Join → Touch ID (pick the iCloud Keychain passkey) → expect Cross-device ✓. Screenshot.
- Windows 11 (25H2+, Chrome/Edge 147+), if available → Set up → same email → code → Windows Hello (register) → Windows Hello (sign in) → round trip → Reload for Session B → expect STABLE ✓. Screenshot. PRF ✗ here means the OS/browser has no PRF yet — that's the finding, not a bug.
Each device: ~5 minutes. The top of the page is the whole result.