Skip to content

[PM-27135] feat: Add Use Passkey screen - #2947

Open
morganzellers-bw wants to merge 5 commits into
pm-27134-testharness-register-passkeys-uifrom
pm-27135-testharness-use-passkeys-ui
Open

[PM-27135] feat: Add Use Passkey screen#2947
morganzellers-bw wants to merge 5 commits into
pm-27134-testharness-register-passkeys-uifrom
pm-27135-testharness-use-passkeys-ui

Conversation

@morganzellers-bw

@morganzellers-bw morganzellers-bw commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

🎟️ Tracking

PM-27135

📔 Objective

Third PR in a 4-PR stack adding SDK-backed passkey test scenarios to TestHarness. Stacked on #2946.

  • Adds the "Use Passkey (SDK)" scenario: lists credentials registered via SDKPasskeyService.registeredCredentials, and asserts against the tapped credential's specific credential ID and relying party ID via SDKPasskeyService.assertPasskey, showing the resulting relying party ID and username.
  • Wires the new screen into the scenario picker and root navigation.

📸 Screenshots


Stack: #2945#2946#2947#2948

@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

🤖 Bitwarden Claude Code Review

Overall Assessment: APPROVE

This PR adds the "Use Passkey" TestHarness scenario: it lists SDK-registered credentials via PasskeyService.registeredCredentials() and asserts against the tapped credential's specific credential ID and relying party ID via PasskeyService.assertPasskey(credentialId:rpId:). Reviewed the new UsePasskey processor/state/view/action/effect files and their tests, the GetAssertionResult fixture, the RootCoordinator/RootRoute/ScenarioPickerState wiring, and the added localization strings. The implementation mirrors the existing RegisterPasskey sibling pattern (unidirectional flow, StateProcessor, AutoMockable-backed tests), every new localization key is referenced by code, the fixture matches the SDK initializer and stays confined to the Fixtures/ path excluded from the app target, and the loading-state, duplicate showScenarioPicker(), and unused PasskeyAutofill key findings from earlier in this PR's history are resolved in the current diff.

Code Review Details

No new findings met the confidence threshold for reporting.

PR Metadata Assessment

  • QUESTION: The Screenshots section is still a placeholder comment; please attach captures of the new screen's loading, empty, success, and failure states before merge.

Comment thread TestHarnessShared/UI/Autofill/Passkey/UsePasskeyView.swift Outdated
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 544b847 to 5065ad1 Compare August 7, 2026 21:56
@codecov

codecov Bot commented Aug 7, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 79.49%. Comparing base (c27001f) to head (0064e31).

Additional details and impacted files
@@                              Coverage Diff                              @@
##           pm-27134-testharness-register-passkeys-ui    #2947      +/-   ##
=============================================================================
- Coverage                                      79.50%   79.49%   -0.02%     
=============================================================================
  Files                                           1169     1169              
  Lines                                          75028    75028              
=============================================================================
- Hits                                           59652    59644       -8     
- Misses                                         15376    15384       +8     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 5065ad1 to ad91844 Compare August 7, 2026 22:32
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from ad91844 to 2daf425 Compare August 7, 2026 22:38
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 2daf425 to 5669016 Compare August 10, 2026 14:14
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 5669016 to c2a8b7a Compare August 10, 2026 14:26
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from c2a8b7a to 9d219bb Compare August 10, 2026 14:55
@morganzellers-bw morganzellers-bw changed the title [PM-27135] feat: Add SDK-backed Use Passkey (SDK) screen [PM-27135] feat: Add Use Passkey screen Aug 10, 2026
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 9d219bb to eedacf1 Compare August 10, 2026 17:00
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch 2 times, most recently from 9f46c09 to eedacf1 Compare August 12, 2026 17:29
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from eedacf1 to 8f59089 Compare August 12, 2026 17:47
@morganzellers-bw morganzellers-bw added ai-review Request a Claude code review and removed ai-review Request a Claude code review labels Aug 13, 2026
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 410dc7e to 47367b2 Compare August 13, 2026 21:47
@morganzellers-bw
morganzellers-bw marked this pull request as ready for review August 14, 2026 14:17
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 47367b2 to 2003012 Compare August 17, 2026 19:46
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 2003012 to 3200446 Compare August 17, 2026 20:16
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 3200446 to 7881478 Compare August 18, 2026 16:26
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 7881478 to e14fe11 Compare August 18, 2026 16:43
@github-actions

Copy link
Copy Markdown
Contributor

Warning

@morganzellers-bw Uploading code coverage report failed. Please check the "Upload to codecov.io" step of Process Test Reports job for more details.

Adds the "Use Passkey" scenario: lists credentials registered via
PasskeyService.registeredCredentials, and asserts against the
tapped credential's specific credential ID and relying party ID via
PasskeyService.assertPasskey, showing the resulting relying party
ID and username. Wires it into the scenario picker and root
navigation.
@morganzellers-bw
morganzellers-bw force-pushed the pm-27135-testharness-use-passkeys-ui branch from 7cf5387 to 0064e31 Compare August 20, 2026 16:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ai-review Request a Claude code review app:password-manager Bitwarden Password Manager app context t:feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant