Add transaction pay quote usability fallback#8581
Open
pedronfigueiredo wants to merge 1 commit intomainfrom
Open
Add transaction pay quote usability fallback#8581pedronfigueiredo wants to merge 1 commit intomainfrom
pedronfigueiredo wants to merge 1 commit intomainfrom
Conversation
9992242 to
971e575
Compare
971e575 to
8265af9
Compare
8265af9 to
b16c7fc
Compare
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.
Description
This follow-up keeps the Transaction Pay fallback principle intact after provider quotes are constructed. A strategy can now return technically supported quotes but still be skipped if those quotes are unusable for the current account context, such as when they require origin native gas that the account cannot pay.
The quote loop now checks strategy support, fetches quotes, checks provider quote support, then runs a normalized quote usability check before selecting the strategy. If the first strategy is unusable, the controller logs the reason and continues to the next configured strategy. This lets Across remain first when the account can complete the route, while allowing Relay to win when it can provide a gasless path for the same situation.
Changes
checkQuoteUsabilityto evaluate quote requirements against native source-chain balance.quote-usabilitycoverage for authorization-list, native-source, non-object original quote, invalid amount, and missing amount branches.Note
Medium Risk
Changes strategy selection logic in the quoting loop, which can alter which provider is chosen for a transaction and may impact payment routing in edge cases around native gas requirements.
Overview
Adds
checkQuoteUsabilityto validate returned quotes against account constraints (authorization-list requirements and whether sufficient native source-chain balance exists to cover required origin gas and/or native source token amounts).Updates the quote-strategy loop in
quotes.tsto run this usability check after provider quote support checks; if unusable it logs the reason and continues to the next configured strategy (e.g., allowing Across→Relay fallback when the account can’t pay origin gas). Tests are expanded with new unit coverage for the usability rules and for the new fallback behavior, and the changelog documents the fix.Reviewed by Cursor Bugbot for commit b16c7fc. Bugbot is set up for automated code reviews on this repo. Configure here.