Repository navigation
fix(money-account-mfa-whitelist): allow a Redeemer caveat on single-use deposit delegations - #11310
Open
tylerc-consensys wants to merge 2 commits into
Open
tylerc-consensys wants to merge 2 commits into
tylerc-consensys wants to merge 2 commits into
Conversation
…se deposit delegations Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
tylerc-consensys
temporarily deployed
to
default-branch
November 5, 2026 02:38 — with
GitHub Actions
Inactive
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
5 of 10 tasks
This branch was previously deployed
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.
Explanation
Mobile's gasless 7702 publish hook limits single-use delegations to the Sentinel relay signers with a
Redeemercaveat (metamask-mobile#37041), next toLimitedCalls(1), theTimestampdeadline and the exact-execution caveat.getMfaRequirementrejected the extra caveat, so Money deposits from an MPC Money account still asked for 2FA ("Single-use delegation caveats are not whitelisted").Single-use delegations may now include one
Redeemercaveat. A redeemer allowlist only narrows who can redeem the delegation, so the executions are still checked as before.RedeemerEnforceris already part ofDelegationFrameworkContracts, so configs don't change.References
Checklist
Note
Medium Risk
Changes MFA bypass rules for Money Account delegations; scope is narrow (optional redeemer on deposit-shaped single-use delegations) but affects signing security policy.
Overview
Fixes false MFA prompts when Mobile signs vault deposits with a gasless-relay
Redeemercaveat (alongsideLimitedCalls(1), optionalTimestamp, and exact deposit executions).getSingleUseDelegationRequirementnow treats at most oneRedeemerEnforcercaveat as allowed noise—it only restricts who can redeem, so pinned deposit executions are still validated. Duplicate redeemer caveats or non-deposit delegations with redeemers still require MFA. Docs, changelog, test fixtures, and coverage for extension vs Mobile caveat ordering are updated accordingly.Reviewed by Cursor Bugbot for commit f2b3435. Bugbot is set up for automated code reviews on this repo. Configure here.