Skip to content

Conversation

@dan437
Copy link
Collaborator

@dan437 dan437 commented Nov 4, 2025

Description

The TransactionController.confirmExternalTransaction call is no longer needed, since all transactions from the extension and mobile are submitted via the TransactionController and not directly via the SmartTransactionsController.submitSignedTransactions function.

Fixes MetaMask/metamask-extension#37419


Note

SmartTransactionsController now self-confirms STX via receipt check, removing TransactionController.confirmExternalTransaction and related history utilities; tests and coverage config updated accordingly.

  • SmartTransactionsController:
    • Remove calls to TransactionController:confirmExternalTransaction and #doesTransactionNeedConfirmation.
    • Simplify #confirmSmartTransaction to check eth_getTransactionReceipt and mark confirmed: true, then publish smartTransactionConfirmationDone.
    • Emit smartTransaction earlier to surface txHash and keep regular-tx failure handling intact.
  • Utils:
    • Delete history helpers (generateHistoryEntry, replayHistory, snapshotFromTxMeta) and drop fast-json-patch usage.
  • Tests:
    • Remove wiring/mocks for confirmExternalTransaction; update EthQuery mock to handle empty txHash.
    • Add/adjust tests to assert confirmation on SUCCESS/REVERTED and no confirmation without minedHash.
    • Minor polling test tweaks and lint suppressions for floating promises.
  • Config:
    • Exclude ./src/index.ts from coverage in jest.config.js.

Written by Cursor Bugbot for commit 2232933. This will update automatically on new commits. Configure here.

@dan437 dan437 requested a review from a team as a code owner November 4, 2025 13:38
@dan437 dan437 merged commit bfe8e9c into main Nov 4, 2025
18 checks passed
@dan437 dan437 deleted the remove-external-transaction-confirmation branch November 4, 2025 14:25
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.

[Sentry] Error: External transaction nonce should not be in confirmed txs

3 participants