Repository navigation
Conversation
No behavior change. The transaction build, the saved-action read, and the fee total move out of makeSwapPluginQuote so another quote path can share them.
When a request sets allowInsufficientFunds and the order fails only on funds, the shared quote helper now returns a quote carrying the shortfall. It tries a build without balance checks for a real fee, then falls back to the fee on the error. The quote's approve always throws, so nothing unpaid reaches the network. Plugins that check the balance themselves or need an approval transaction first keep throwing and drop out of the results.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
2 of 6 tasks
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.
CHANGELOG
Does this branch warrant an entry to the CHANGELOG?
Dependencies
none (the new fields are declared locally until EdgeApp/edge-core-js#750 publishes)
Description
Asana task
Quotes a swap the wallet cannot pay for when the request opts in with
allowInsufficientFunds. Users can then compare rates before moving funds into Edge.The first commit splits
makeSwapPluginQuoteinto helpers with no behavior change. The second adds the behavior:InsufficientFundsErrorfrom the wallet still rejects the quote as it does on master.skipChecksto price the network fee. If the engine still refuses, it reads the fee from the error, and falls back to zero when neither source has one.insufficientFundsand itsapprovealways throws the shortfall. It can never broadcast.Plugins with their own balance gates or a transaction sent before the swap (lifi, xrpDex, token approvals on uni-v2 forks and Rango) are unchanged. They still throw when short and drop out of the results, because letting them through could produce an unflagged quote that broadcasts a transaction doomed to fail.
The new fields are declared locally in
src/swap/types.ts, which keeps this PR passing CI against the published core.