Skip to content

attribute wallet spending limit errors#448

Open
brendanjryan wants to merge 3 commits intomainfrom
codex/wallet-spending-limit-error
Open

attribute wallet spending limit errors#448
brendanjryan wants to merge 3 commits intomainfrom
codex/wallet-spending-limit-error

Conversation

@brendanjryan
Copy link
Copy Markdown
Collaborator

@brendanjryan brendanjryan commented Apr 25, 2026

Summary

  • classify access-key spending limit reverts from raw Tempo RPC errors
  • map selector 0x8a9e71ea / SpendingLimitExceeded into a payment error with a wallet-specific hint
  • use the classifier during gas estimation and transaction broadcast before falling back to generic RPC/signing errors

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 25, 2026

✅ Changelog found on PR.

Edit changelog

@brendanjryan brendanjryan changed the title [codex] fix wallet spending limit errors attribute wallet spending limit errors Apr 25, 2026
@brendanjryan brendanjryan marked this pull request as ready for review April 25, 2026 15:22
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7f261f1a42

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +141 to +143
if let Some(err) = classify_tx_error(&original) {
return Err(err);
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Do not skip key-authorization retry on classified errors

This early return bypasses the with_key_authorization() retry path whenever the first optimistic RPC error is recognized (e.g., spending-limit selector or revoked). That retry is the mechanism that atomically applies stored key authorization, so wallets with stale on-chain key state (for example right after tempo wallet refresh) can now fail permanently in a case that was previously recoverable by retrying with attached authorization. The same pattern appears again in submit_tempo_tx, so both estimation and broadcast paths lose the auto-provisioning behavior.

Useful? React with 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant