core icon indicating copy to clipboard operation
core copied to clipboard

fix: Add simulation retrigger

Open OGPoyraz opened this issue 1 year ago • 3 comments

Explanation

This PR adds a mechanism to re-trigger of simulations if the security provider mark transaction as malicious and the previous simulation native balance change is different then the previous simulation.

References

Fixes: https://github.com/MetaMask/MetaMask-planning/issues/3380

Changelog

@metamask/transaction-controller

  • ADDED: Add mechanism to re-trigger of simulations if the security provider mark transaction as malicious and the previous simulation native balance change is different then the previous simulation.
  • ADDED: Add changeInSimulationData property to simulationData in order to detect change of simulation data.

Checklist

  • [X] I've updated the test suite for new or updated code as appropriate
  • [X] I've updated documentation (JSDoc, Markdown, etc.) for new or updated code as appropriate
  • [X] I've highlighted breaking changes using the "BREAKING" category above as appropriate
  • [X] I've prepared draft pull requests for clients and consumer packages to resolve any breaking changes

OGPoyraz avatar Oct 14 '24 12:10 OGPoyraz

@metamaskbot publish-preview

OGPoyraz avatar Oct 14 '24 13:10 OGPoyraz

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/accounts-controller": "18.2.2-preview-3fec6ed",
  "@metamask-previews/address-book-controller": "6.0.1-preview-3fec6ed",
  "@metamask-previews/announcement-controller": "7.0.1-preview-3fec6ed",
  "@metamask-previews/approval-controller": "7.1.0-preview-3fec6ed",
  "@metamask-previews/assets-controllers": "38.3.0-preview-3fec6ed",
  "@metamask-previews/base-controller": "7.0.1-preview-3fec6ed",
  "@metamask-previews/build-utils": "3.0.1-preview-3fec6ed",
  "@metamask-previews/chain-controller": "0.1.3-preview-3fec6ed",
  "@metamask-previews/composable-controller": "9.0.1-preview-3fec6ed",
  "@metamask-previews/controller-utils": "11.3.0-preview-3fec6ed",
  "@metamask-previews/ens-controller": "14.0.1-preview-3fec6ed",
  "@metamask-previews/eth-json-rpc-provider": "4.1.4-preview-3fec6ed",
  "@metamask-previews/gas-fee-controller": "20.0.1-preview-3fec6ed",
  "@metamask-previews/json-rpc-engine": "9.0.3-preview-3fec6ed",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.3-preview-3fec6ed",
  "@metamask-previews/keyring-controller": "17.2.2-preview-3fec6ed",
  "@metamask-previews/logging-controller": "6.0.1-preview-3fec6ed",
  "@metamask-previews/message-manager": "10.1.1-preview-3fec6ed",
  "@metamask-previews/name-controller": "8.0.1-preview-3fec6ed",
  "@metamask-previews/network-controller": "21.0.1-preview-3fec6ed",
  "@metamask-previews/notification-controller": "7.0.0-preview-3fec6ed",
  "@metamask-previews/notification-services-controller": "0.9.0-preview-3fec6ed",
  "@metamask-previews/permission-controller": "11.0.2-preview-3fec6ed",
  "@metamask-previews/permission-log-controller": "3.0.1-preview-3fec6ed",
  "@metamask-previews/phishing-controller": "12.0.3-preview-3fec6ed",
  "@metamask-previews/polling-controller": "10.0.1-preview-3fec6ed",
  "@metamask-previews/preferences-controller": "13.0.3-preview-3fec6ed",
  "@metamask-previews/profile-sync-controller": "0.9.7-preview-3fec6ed",
  "@metamask-previews/queued-request-controller": "5.1.0-preview-3fec6ed",
  "@metamask-previews/rate-limit-controller": "6.0.1-preview-3fec6ed",
  "@metamask-previews/selected-network-controller": "18.0.1-preview-3fec6ed",
  "@metamask-previews/signature-controller": "19.1.0-preview-3fec6ed",
  "@metamask-previews/transaction-controller": "37.2.0-preview-3fec6ed",
  "@metamask-previews/user-operation-controller": "15.0.1-preview-3fec6ed"
}

github-actions[bot] avatar Oct 14 '24 13:10 github-actions[bot]

@metamaskbot publish-preview

OGPoyraz avatar Oct 24 '24 10:10 OGPoyraz

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/accounts-controller": "18.2.2-preview-3c1aabe6",
  "@metamask-previews/address-book-controller": "6.0.1-preview-3c1aabe6",
  "@metamask-previews/announcement-controller": "7.0.1-preview-3c1aabe6",
  "@metamask-previews/approval-controller": "7.1.0-preview-3c1aabe6",
  "@metamask-previews/assets-controllers": "38.3.0-preview-3c1aabe6",
  "@metamask-previews/base-controller": "7.0.1-preview-3c1aabe6",
  "@metamask-previews/build-utils": "3.0.1-preview-3c1aabe6",
  "@metamask-previews/chain-controller": "0.1.3-preview-3c1aabe6",
  "@metamask-previews/composable-controller": "9.0.1-preview-3c1aabe6",
  "@metamask-previews/controller-utils": "11.3.0-preview-3c1aabe6",
  "@metamask-previews/ens-controller": "14.0.1-preview-3c1aabe6",
  "@metamask-previews/eth-json-rpc-provider": "4.1.5-preview-3c1aabe6",
  "@metamask-previews/gas-fee-controller": "20.0.1-preview-3c1aabe6",
  "@metamask-previews/json-rpc-engine": "10.0.0-preview-3c1aabe6",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.4-preview-3c1aabe6",
  "@metamask-previews/keyring-controller": "17.2.2-preview-3c1aabe6",
  "@metamask-previews/logging-controller": "6.0.1-preview-3c1aabe6",
  "@metamask-previews/message-manager": "11.0.0-preview-3c1aabe6",
  "@metamask-previews/name-controller": "8.0.1-preview-3c1aabe6",
  "@metamask-previews/network-controller": "21.0.1-preview-3c1aabe6",
  "@metamask-previews/notification-controller": "7.0.0-preview-3c1aabe6",
  "@metamask-previews/notification-services-controller": "0.10.0-preview-3c1aabe6",
  "@metamask-previews/permission-controller": "11.0.2-preview-3c1aabe6",
  "@metamask-previews/permission-log-controller": "3.0.1-preview-3c1aabe6",
  "@metamask-previews/phishing-controller": "12.0.3-preview-3c1aabe6",
  "@metamask-previews/polling-controller": "10.0.1-preview-3c1aabe6",
  "@metamask-previews/preferences-controller": "13.0.3-preview-3c1aabe6",
  "@metamask-previews/profile-sync-controller": "0.9.7-preview-3c1aabe6",
  "@metamask-previews/queued-request-controller": "5.1.0-preview-3c1aabe6",
  "@metamask-previews/rate-limit-controller": "6.0.1-preview-3c1aabe6",
  "@metamask-previews/selected-network-controller": "18.0.2-preview-3c1aabe6",
  "@metamask-previews/signature-controller": "20.0.0-preview-3c1aabe6",
  "@metamask-previews/transaction-controller": "37.3.0-preview-3c1aabe6",
  "@metamask-previews/user-operation-controller": "15.0.1-preview-3c1aabe6"
}

github-actions[bot] avatar Oct 24 '24 10:10 github-actions[bot]

@metamaskbot publish-preview

OGPoyraz avatar Oct 24 '24 10:10 OGPoyraz

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/accounts-controller": "18.2.2-preview-8518e617",
  "@metamask-previews/address-book-controller": "6.0.1-preview-8518e617",
  "@metamask-previews/announcement-controller": "7.0.1-preview-8518e617",
  "@metamask-previews/approval-controller": "7.1.0-preview-8518e617",
  "@metamask-previews/assets-controllers": "39.0.0-preview-8518e617",
  "@metamask-previews/base-controller": "7.0.1-preview-8518e617",
  "@metamask-previews/build-utils": "3.0.1-preview-8518e617",
  "@metamask-previews/chain-controller": "0.1.3-preview-8518e617",
  "@metamask-previews/composable-controller": "9.0.1-preview-8518e617",
  "@metamask-previews/controller-utils": "11.4.0-preview-8518e617",
  "@metamask-previews/ens-controller": "14.0.1-preview-8518e617",
  "@metamask-previews/eth-json-rpc-provider": "4.1.5-preview-8518e617",
  "@metamask-previews/gas-fee-controller": "21.0.0-preview-8518e617",
  "@metamask-previews/json-rpc-engine": "10.0.0-preview-8518e617",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.4-preview-8518e617",
  "@metamask-previews/keyring-controller": "17.3.0-preview-8518e617",
  "@metamask-previews/logging-controller": "6.0.1-preview-8518e617",
  "@metamask-previews/message-manager": "11.0.0-preview-8518e617",
  "@metamask-previews/multichain": "0.0.0-preview-8518e617",
  "@metamask-previews/name-controller": "8.0.1-preview-8518e617",
  "@metamask-previews/network-controller": "22.0.0-preview-8518e617",
  "@metamask-previews/notification-controller": "7.0.0-preview-8518e617",
  "@metamask-previews/notification-services-controller": "0.12.0-preview-8518e617",
  "@metamask-previews/permission-controller": "11.0.2-preview-8518e617",
  "@metamask-previews/permission-log-controller": "3.0.1-preview-8518e617",
  "@metamask-previews/phishing-controller": "12.0.3-preview-8518e617",
  "@metamask-previews/polling-controller": "11.0.0-preview-8518e617",
  "@metamask-previews/preferences-controller": "13.1.0-preview-8518e617",
  "@metamask-previews/profile-sync-controller": "0.9.7-preview-8518e617",
  "@metamask-previews/queued-request-controller": "5.1.0-preview-8518e617",
  "@metamask-previews/rate-limit-controller": "6.0.1-preview-8518e617",
  "@metamask-previews/selected-network-controller": "18.0.2-preview-8518e617",
  "@metamask-previews/signature-controller": "20.1.0-preview-8518e617",
  "@metamask-previews/transaction-controller": "37.3.0-preview-8518e617",
  "@metamask-previews/user-operation-controller": "16.0.0-preview-8518e617"
}

github-actions[bot] avatar Oct 24 '24 10:10 github-actions[bot]

@metamaskbot publish-preview

OGPoyraz avatar Oct 25 '24 15:10 OGPoyraz

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/accounts-controller": "18.2.2-preview-d823fc29",
  "@metamask-previews/address-book-controller": "6.0.1-preview-d823fc29",
  "@metamask-previews/announcement-controller": "7.0.1-preview-d823fc29",
  "@metamask-previews/approval-controller": "7.1.0-preview-d823fc29",
  "@metamask-previews/assets-controllers": "39.0.0-preview-d823fc29",
  "@metamask-previews/base-controller": "7.0.1-preview-d823fc29",
  "@metamask-previews/build-utils": "3.0.1-preview-d823fc29",
  "@metamask-previews/chain-controller": "0.1.3-preview-d823fc29",
  "@metamask-previews/composable-controller": "9.0.1-preview-d823fc29",
  "@metamask-previews/controller-utils": "11.4.0-preview-d823fc29",
  "@metamask-previews/ens-controller": "14.0.1-preview-d823fc29",
  "@metamask-previews/eth-json-rpc-provider": "4.1.5-preview-d823fc29",
  "@metamask-previews/gas-fee-controller": "21.0.0-preview-d823fc29",
  "@metamask-previews/json-rpc-engine": "10.0.0-preview-d823fc29",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.4-preview-d823fc29",
  "@metamask-previews/keyring-controller": "17.3.0-preview-d823fc29",
  "@metamask-previews/logging-controller": "6.0.1-preview-d823fc29",
  "@metamask-previews/message-manager": "11.0.0-preview-d823fc29",
  "@metamask-previews/multichain": "0.0.0-preview-d823fc29",
  "@metamask-previews/name-controller": "8.0.1-preview-d823fc29",
  "@metamask-previews/network-controller": "22.0.0-preview-d823fc29",
  "@metamask-previews/notification-controller": "7.0.0-preview-d823fc29",
  "@metamask-previews/notification-services-controller": "0.12.0-preview-d823fc29",
  "@metamask-previews/permission-controller": "11.0.2-preview-d823fc29",
  "@metamask-previews/permission-log-controller": "3.0.1-preview-d823fc29",
  "@metamask-previews/phishing-controller": "12.0.3-preview-d823fc29",
  "@metamask-previews/polling-controller": "11.0.0-preview-d823fc29",
  "@metamask-previews/preferences-controller": "13.1.0-preview-d823fc29",
  "@metamask-previews/profile-sync-controller": "0.9.7-preview-d823fc29",
  "@metamask-previews/queued-request-controller": "5.1.0-preview-d823fc29",
  "@metamask-previews/rate-limit-controller": "6.0.1-preview-d823fc29",
  "@metamask-previews/selected-network-controller": "18.0.2-preview-d823fc29",
  "@metamask-previews/signature-controller": "20.1.0-preview-d823fc29",
  "@metamask-previews/transaction-controller": "37.3.0-preview-d823fc29",
  "@metamask-previews/user-operation-controller": "16.0.0-preview-d823fc29"
}

github-actions[bot] avatar Oct 25 '24 15:10 github-actions[bot]

@metamaskbot publish-preview

matthewwalsh0 avatar Oct 25 '24 19:10 matthewwalsh0

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/accounts-controller": "18.2.2-preview-c3543e68",
  "@metamask-previews/address-book-controller": "6.0.1-preview-c3543e68",
  "@metamask-previews/announcement-controller": "7.0.1-preview-c3543e68",
  "@metamask-previews/approval-controller": "7.1.0-preview-c3543e68",
  "@metamask-previews/assets-controllers": "39.0.0-preview-c3543e68",
  "@metamask-previews/base-controller": "7.0.1-preview-c3543e68",
  "@metamask-previews/build-utils": "3.0.1-preview-c3543e68",
  "@metamask-previews/chain-controller": "0.1.3-preview-c3543e68",
  "@metamask-previews/composable-controller": "9.0.1-preview-c3543e68",
  "@metamask-previews/controller-utils": "11.4.0-preview-c3543e68",
  "@metamask-previews/ens-controller": "14.0.1-preview-c3543e68",
  "@metamask-previews/eth-json-rpc-provider": "4.1.5-preview-c3543e68",
  "@metamask-previews/gas-fee-controller": "21.0.0-preview-c3543e68",
  "@metamask-previews/json-rpc-engine": "10.0.0-preview-c3543e68",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.4-preview-c3543e68",
  "@metamask-previews/keyring-controller": "17.3.0-preview-c3543e68",
  "@metamask-previews/logging-controller": "6.0.1-preview-c3543e68",
  "@metamask-previews/message-manager": "11.0.0-preview-c3543e68",
  "@metamask-previews/multichain": "0.0.0-preview-c3543e68",
  "@metamask-previews/name-controller": "8.0.1-preview-c3543e68",
  "@metamask-previews/network-controller": "22.0.0-preview-c3543e68",
  "@metamask-previews/notification-controller": "7.0.0-preview-c3543e68",
  "@metamask-previews/notification-services-controller": "0.12.0-preview-c3543e68",
  "@metamask-previews/permission-controller": "11.0.2-preview-c3543e68",
  "@metamask-previews/permission-log-controller": "3.0.1-preview-c3543e68",
  "@metamask-previews/phishing-controller": "12.0.3-preview-c3543e68",
  "@metamask-previews/polling-controller": "11.0.0-preview-c3543e68",
  "@metamask-previews/preferences-controller": "13.1.0-preview-c3543e68",
  "@metamask-previews/profile-sync-controller": "0.9.7-preview-c3543e68",
  "@metamask-previews/queued-request-controller": "5.1.0-preview-c3543e68",
  "@metamask-previews/rate-limit-controller": "6.0.1-preview-c3543e68",
  "@metamask-previews/selected-network-controller": "18.0.2-preview-c3543e68",
  "@metamask-previews/signature-controller": "20.1.0-preview-c3543e68",
  "@metamask-previews/transaction-controller": "37.3.0-preview-c3543e68",
  "@metamask-previews/user-operation-controller": "16.0.0-preview-c3543e68"
}

github-actions[bot] avatar Oct 25 '24 19:10 github-actions[bot]

@metamaskbot publish-preview

matthewwalsh0 avatar Oct 25 '24 20:10 matthewwalsh0

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/accounts-controller": "18.2.2-preview-f6c3e03d",
  "@metamask-previews/address-book-controller": "6.0.1-preview-f6c3e03d",
  "@metamask-previews/announcement-controller": "7.0.1-preview-f6c3e03d",
  "@metamask-previews/approval-controller": "7.1.0-preview-f6c3e03d",
  "@metamask-previews/assets-controllers": "39.0.0-preview-f6c3e03d",
  "@metamask-previews/base-controller": "7.0.1-preview-f6c3e03d",
  "@metamask-previews/build-utils": "3.0.1-preview-f6c3e03d",
  "@metamask-previews/chain-controller": "0.1.3-preview-f6c3e03d",
  "@metamask-previews/composable-controller": "9.0.1-preview-f6c3e03d",
  "@metamask-previews/controller-utils": "11.4.0-preview-f6c3e03d",
  "@metamask-previews/ens-controller": "14.0.1-preview-f6c3e03d",
  "@metamask-previews/eth-json-rpc-provider": "4.1.5-preview-f6c3e03d",
  "@metamask-previews/gas-fee-controller": "21.0.0-preview-f6c3e03d",
  "@metamask-previews/json-rpc-engine": "10.0.0-preview-f6c3e03d",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.4-preview-f6c3e03d",
  "@metamask-previews/keyring-controller": "17.3.0-preview-f6c3e03d",
  "@metamask-previews/logging-controller": "6.0.1-preview-f6c3e03d",
  "@metamask-previews/message-manager": "11.0.0-preview-f6c3e03d",
  "@metamask-previews/multichain": "0.0.0-preview-f6c3e03d",
  "@metamask-previews/name-controller": "8.0.1-preview-f6c3e03d",
  "@metamask-previews/network-controller": "22.0.0-preview-f6c3e03d",
  "@metamask-previews/notification-controller": "7.0.0-preview-f6c3e03d",
  "@metamask-previews/notification-services-controller": "0.12.0-preview-f6c3e03d",
  "@metamask-previews/permission-controller": "11.0.2-preview-f6c3e03d",
  "@metamask-previews/permission-log-controller": "3.0.1-preview-f6c3e03d",
  "@metamask-previews/phishing-controller": "12.0.3-preview-f6c3e03d",
  "@metamask-previews/polling-controller": "11.0.0-preview-f6c3e03d",
  "@metamask-previews/preferences-controller": "13.1.0-preview-f6c3e03d",
  "@metamask-previews/profile-sync-controller": "0.9.7-preview-f6c3e03d",
  "@metamask-previews/queued-request-controller": "5.1.0-preview-f6c3e03d",
  "@metamask-previews/rate-limit-controller": "6.0.1-preview-f6c3e03d",
  "@metamask-previews/selected-network-controller": "18.0.2-preview-f6c3e03d",
  "@metamask-previews/signature-controller": "20.1.0-preview-f6c3e03d",
  "@metamask-previews/transaction-controller": "37.3.0-preview-f6c3e03d",
  "@metamask-previews/user-operation-controller": "16.0.0-preview-f6c3e03d"
}

github-actions[bot] avatar Oct 25 '24 20:10 github-actions[bot]

@metamaskbot publish-preview

OGPoyraz avatar Oct 28 '24 10:10 OGPoyraz

Preview builds have been published. See these instructions for more information about preview builds.

Expand for full list of packages and versions.
{
  "@metamask-previews/accounts-controller": "18.2.2-preview-3806a69c",
  "@metamask-previews/address-book-controller": "6.0.1-preview-3806a69c",
  "@metamask-previews/announcement-controller": "7.0.1-preview-3806a69c",
  "@metamask-previews/approval-controller": "7.1.0-preview-3806a69c",
  "@metamask-previews/assets-controllers": "39.0.0-preview-3806a69c",
  "@metamask-previews/base-controller": "7.0.1-preview-3806a69c",
  "@metamask-previews/build-utils": "3.0.1-preview-3806a69c",
  "@metamask-previews/chain-controller": "0.1.3-preview-3806a69c",
  "@metamask-previews/composable-controller": "9.0.1-preview-3806a69c",
  "@metamask-previews/controller-utils": "11.4.0-preview-3806a69c",
  "@metamask-previews/ens-controller": "14.0.1-preview-3806a69c",
  "@metamask-previews/eth-json-rpc-provider": "4.1.5-preview-3806a69c",
  "@metamask-previews/gas-fee-controller": "21.0.0-preview-3806a69c",
  "@metamask-previews/json-rpc-engine": "10.0.0-preview-3806a69c",
  "@metamask-previews/json-rpc-middleware-stream": "8.0.4-preview-3806a69c",
  "@metamask-previews/keyring-controller": "17.3.0-preview-3806a69c",
  "@metamask-previews/logging-controller": "6.0.1-preview-3806a69c",
  "@metamask-previews/message-manager": "11.0.0-preview-3806a69c",
  "@metamask-previews/multichain": "0.0.0-preview-3806a69c",
  "@metamask-previews/name-controller": "8.0.1-preview-3806a69c",
  "@metamask-previews/network-controller": "22.0.0-preview-3806a69c",
  "@metamask-previews/notification-controller": "7.0.0-preview-3806a69c",
  "@metamask-previews/notification-services-controller": "0.12.0-preview-3806a69c",
  "@metamask-previews/permission-controller": "11.0.2-preview-3806a69c",
  "@metamask-previews/permission-log-controller": "3.0.1-preview-3806a69c",
  "@metamask-previews/phishing-controller": "12.0.3-preview-3806a69c",
  "@metamask-previews/polling-controller": "11.0.0-preview-3806a69c",
  "@metamask-previews/preferences-controller": "13.1.0-preview-3806a69c",
  "@metamask-previews/profile-sync-controller": "0.9.7-preview-3806a69c",
  "@metamask-previews/queued-request-controller": "5.1.0-preview-3806a69c",
  "@metamask-previews/rate-limit-controller": "6.0.1-preview-3806a69c",
  "@metamask-previews/selected-network-controller": "18.0.2-preview-3806a69c",
  "@metamask-previews/signature-controller": "20.1.0-preview-3806a69c",
  "@metamask-previews/transaction-controller": "37.3.0-preview-3806a69c",
  "@metamask-previews/user-operation-controller": "16.0.0-preview-3806a69c"
}

github-actions[bot] avatar Oct 28 '24 10:10 github-actions[bot]