Add an admin screen for identity check limits - #1951
Open
efstajas wants to merge 3 commits into
Open
Conversation
Users who can't complete the identity check are told to contact support. This adds the screen support uses to act on that: look a user up by GitHub username, review what the API reports about their checks, and reset the limit with a required reason. The API owns all of the rules and the numbers — this screen renders what it returns and doesn't reimplement any of it. The client parses only the fields the screen actually displays. Gated on the manageLivenessCheckpoints permission, like the other admin tools.
A pass is bound to the device that earned it, so "Currently passed: Yes" was misleading in exactly the case the screen exists for: a user who passed on a phone they no longer have is still blocked, and support would read that row as proof they aren't. Renames the field to match the API (`hasApprovalOnSomeDevice`), labels it "Passed on a device", and shows the device the pass is bound to next to it. Recent attempts now carry their device too, so a support agent can see at a glance that the recent failures came from a different device than the pass.
The badge was derived from the failed-attempt allowance alone, so a user who had hit the separate ceiling on how many checks can be started in a short window read as "Not locked" — on the one screen whose job is to say why they are stuck. The API had been reporting it as `starts.exhausted` all along and nothing rendered it. It gets its own badge rather than folding into "Locked out" because it lifts by itself in hours, and a note says so, so support can tell the user to wait instead of spending a reset. A reset does clear it too, for when they can't.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Users who can't complete the identity check are told to contact support. This adds the screen support uses to act on that.
Look a user up by GitHub username, review what the API reports about their checks, and reset the limit with a required reason. The confirmation step spells out that the reset is recorded against the admin's account.
The API owns all of the rules and the numbers — this screen renders what it returns and doesn't reimplement or hardcode any of it. The client parses only the fields the screen actually displays.
Requires drips-network/wave#762. Until that ships and the permission is granted, the screen is not reachable.