Skip to content

[PM-27137] feat: Add credential deletion and debug info to Use Passkey screen - #2948

Draft
morganzellers-bw wants to merge 1 commit into
pm-27135-testharness-use-passkeys-uifrom
pm-27137-testharness-manage-debug-passkeys
Draft

[PM-27137] feat: Add credential deletion and debug info to Use Passkey screen#2948
morganzellers-bw wants to merge 1 commit into
pm-27135-testharness-use-passkeys-uifrom
pm-27137-testharness-manage-debug-passkeys

Conversation

@morganzellers-bw

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

Copy link
Copy Markdown
Contributor

🎟️ Tracking

PM-27137

📔 Objective

Fourth and final PR in a 4-PR stack adding SDK-backed passkey test scenarios to TestHarness. Stacked on #2947.

  • Adds swipe-to-delete for registered credentials on the "Use Passkey (SDK)" screen, threaded through SDKFido2CredentialStore/SDKPasskeyService/SDKUsePasskeyProcessor.
  • Surfaces cipher ID, user handle, and signature-counter usage on each credential row for easier debugging.

📸 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

Reviewed the final PR in the SDK-passkey TestHarness stack, which adds swipe-to-delete for registered credentials and surfaces cipher ID, user handle, and signature-counter usage on each credential row. The delete path traces cleanly from UsePasskeyViewUsePasskeyEffectUsePasskeyProcessorPasskeyServiceDefaultFido2CredentialStore, where the actor removes the matching cipher from its in-memory list and persists the full updated list through the injected CipherStorageService; because DefaultPasskeyService caches a single sessionTask, all callers share one store instance, so the in-memory list and the UserDefaults-backed persistence stay in sync. New unit tests cover the success, no-match, and failure paths at the store, service, and processor layers, and the mock member names (deleteCredentialReceivedCipherId, deleteCredentialThrowableError, saveReceivedCiphers) match what AutoMockable.stencil generates for single-parameter methods. All new localization keys are unique in the single en.lproj catalog, and every change is confined to the TestHarness target and its synthetic identity, so no production code path or real vault data is affected.

Code Review Details

No blocking or noteworthy code findings.

PR Metadata Assessment

  • QUESTION: The credential row layout and swipe-to-delete are user-visible changes, but the Screenshots section is still an empty placeholder — please attach screenshots (or a clip of the swipe) before merge, as the description itself notes.

@morganzellers-bw
morganzellers-bw force-pushed the pm-27137-testharness-manage-debug-passkeys branch from 06b4697 to df122c1 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.45%. Comparing base (9f46c09) to head (dfce034).

Additional details and impacted files
@@                           Coverage Diff                            @@
##           pm-27135-testharness-use-passkeys-ui    #2948      +/-   ##
========================================================================
- Coverage                                 79.47%   79.45%   -0.02%     
========================================================================
  Files                                      1172     1172              
  Lines                                     75144    75144              
========================================================================
- Hits                                      59724    59709      -15     
- Misses                                    15420    15435      +15     

☔ 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-27137-testharness-manage-debug-passkeys branch from df122c1 to ef4d0a2 Compare August 7, 2026 22:32
@morganzellers-bw
morganzellers-bw force-pushed the pm-27137-testharness-manage-debug-passkeys branch from ef4d0a2 to aea0e5e Compare August 7, 2026 22:38
@morganzellers-bw
morganzellers-bw force-pushed the pm-27137-testharness-manage-debug-passkeys branch from aea0e5e to dc0db85 Compare August 10, 2026 14:14
@morganzellers-bw
morganzellers-bw force-pushed the pm-27137-testharness-manage-debug-passkeys branch from dc0db85 to 2ea47d2 Compare August 10, 2026 14:26
@morganzellers-bw
morganzellers-bw force-pushed the pm-27137-testharness-manage-debug-passkeys branch from 2ea47d2 to 33180e4 Compare August 10, 2026 14:55
@morganzellers-bw morganzellers-bw changed the title [PM-27137] feat: Add credential deletion and debug info to Use Passkey (SDK) screen [PM-27137] feat: Add credential deletion and debug info to Use Passkey screen Aug 10, 2026
@morganzellers-bw
morganzellers-bw force-pushed the pm-27137-testharness-manage-debug-passkeys branch from 33180e4 to f0b628f Compare August 10, 2026 17:01
…y screen

Adds swipe-to-delete for registered credentials, threaded through
DefaultFido2CredentialStore/PasskeyService/UsePasskeyProcessor, and
surfaces cipher ID, user handle, and signature-counter usage on each
credential row for easier debugging.
@morganzellers-bw
morganzellers-bw force-pushed the pm-27137-testharness-manage-debug-passkeys branch from f0b628f to dfce034 Compare August 10, 2026 18:46
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