[PM-40519] feat: Add SDK-backed passkey foundation services to TestHarness - #2945
[PM-40519] feat: Add SDK-backed passkey foundation services to TestHarness#2945morganzellers-bw wants to merge 1 commit into
Conversation
🤖 Bitwarden Claude Code ReviewOverall Assessment: APPROVE Re-reviewed the full Code Review DetailsNo findings at or above the reporting threshold. |
3b9bd33 to
35f3fab
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2945 +/- ##
===========================================
+ Coverage 39.58% 79.46% +39.87%
===========================================
Files 363 1172 +809
Lines 17106 75144 +58038
===========================================
+ Hits 6772 59710 +52938
- Misses 10334 15434 +5100 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
7997cbe to
18947e9
Compare
fa0cea4 to
725a98c
Compare
725a98c to
93583b7
Compare
Adds the Core/Autofill/Passkey layer that drives BitwardenSdk's Fido2 client directly (makeCredential/getAssertion) the same way the main app and AutoFill extension do: PasskeyService orchestrates a lazily-bootstrapped BitwardenSdk.Client backed by a synthetic identity persisted in the Keychain, DefaultFido2CredentialStore/DefaultFido2UserInterface satisfy the SDK's Fido2CredentialStore/Fido2UserInterface protocols, and CipherStorageService persists registered credentials across app launches. No UI wiring yet — this lands the service layer standalone, fully covered by its own test suite.
93583b7 to
8ed6220
Compare
🎟️ Tracking
PM-40519
📔 Objective
Adds SDK-backed passkey test scenarios to TestHarness.
Core/Autofill/SDK+layer, which drivesBitwardenSdk's Fido2 client directly (makeCredential/getAssertion) the same way the main app and AutoFill extension do, instead of delegating to the OS passkey UI.SDKPasskeyServicelazily bootstraps aBitwardenSdk.Clientbacked by a synthetic identity persisted in the Keychain, so registered credentials survive relaunches.SDKFido2CredentialStore/SDKFido2UserInterfacesatisfy the SDK'sFido2CredentialStore/Fido2UserInterfaceprotocols;SDKCipherStorageServicepersists registered credentials across app launches.Stack: #2945 → #2946 → #2947 → #2948