What changed, and why it matters
This commit only adds new automated tests for Trezor's Ethereum 'clear signing' feature. It includes a test case for an Aave multi-call transaction, a matching test data blob, and expected screen snapshots for different device models and languages. There are no changes to the actual firmware code that runs on the device, so this commit does not introduce or fix a security vulnerability.
No security action required; this is a test-only commit. Reviewers may optionally verify the new test vectors and binary definition blob match the intended Aave V3 contract and selector.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit is a pure test addition: it adds one fixture entry named ‘aave_lpv3_multicall’ to sign_tx_external_definitions.json, adds a binary display-format definition blob for Aave Pool V3’s multicall selector (ac9650d8) at chain-id 1, and records the corresponding UI test fixture hashes across all supported models/locales. Two minor formatting-only whitespace changes appear in core/tests/test_apps.ethereum.clear_signing.py. No production source code is modified.
Changed components
common/tests/fixtures/ethereum/sign_tx_external_definitions.jsoncore/tests/test_apps.ethereum.clear_signing.pytests/device_tests/ethereum/definitions/eth/chain-id/1/display-format/87870bca3f3fd6335c3f4ce8392d69350b4fa4e2-ac9650d8.dattests/ui_tests/fixtures.jsonInspect captured patch +46 / −6
diff --git a/common/tests/fixtures/ethereum/sign_tx_external_definitions.json b/common/tests/fixtures/ethereum/sign_tx_external_definitions.json
index 8c4e11af..7f1c8c40 100644
--- a/common/tests/fixtures/ethereum/sign_tx_external_definitions.json
+++ b/common/tests/fixtures/ethereum/sign_tx_external_definitions.json
@@ -863,6 +863,26 @@
"sig_r": "6e8437273ed79aef2d04669e41cfff175b243ff4473ed7f8bc790bbe86803a9b",
"sig_s": "498c6dfb22fc35c72226f13f572248a59b5ac21b39327b1bca3624213b586a30"
}
+ },
+ {
+ "name": "aave_lpv3_multicall",
+ "parameters": {
+ "comment": "supported | https://etherscan.io/tx/0x84ef55ba967f89261118364081326870c71341821cd923ca8ab7e508dfd59698",
+ "data": "ac9650d800000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000002428530a470000000000000000000000000000000000000000000000000000000000000028000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000084617ba037000000000000000000000000514910771af9ca656af840dff83e8264ecf986ca0000000000000000000000000000000000000000000000a2a15d09519be00000000000000000000000000000e0623bcdb6dfa6f6756b653a3c3b6e156511301f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "path": "m/44'/60'/0'/0/0",
+ "to_address": "0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2",
+ "chain_id": 1,
+ "nonce": "0x0",
+ "gas_price": "0x14",
+ "gas_limit": "0x14",
+ "tx_type": null,
+ "value": "0x0"
+ },
+ "result": {
+ "sig_v": 37,
+ "sig_r": "ffa6ee4bdc7fd229a89a93648ffb6953ce54771ab527d30173e48b6db6515c24",
+ "sig_s": "442b96cd4dd3b79fdabc81b93ad7571678d0892b003fb8a2ce9685ef9eaee7a8"
+ }
}
]
}
diff --git a/core/tests/test_apps.ethereum.clear_signing.py b/core/tests/test_apps.ethereum.clear_signing.py
index 23cb4143..dd5220d6 100644
--- a/core/tests/test_apps.ethereum.clear_signing.py
+++ b/core/tests/test_apps.ethereum.clear_signing.py
@@ -1402,9 +1402,7 @@ class TestEthereumClearSigning(unittest.TestCase):
for blob in blobs:
offsets.append(32 * len(blobs) + len(tails))
tails += to_bytes(len(blob)) + blob + b"\x00" * (-len(blob) % 32)
- return (
- to_bytes(len(blobs)) + b"".join(to_bytes(o) for o in offsets) + tails
- )
+ return to_bytes(len(blobs)) + b"".join(to_bytes(o) for o in offsets) + tails
def _expand_array(self, blobs, callees=None):
"""Like `_expand`, but the wrapper is `wrapper(callee(s), bytes[] data)`:
@@ -1452,9 +1450,7 @@ class TestEthereumClearSigning(unittest.TestCase):
self.assertEqual(group[1][0][:2], (prefix + "Intent", "Send"))
(label, formatted, _), _, _ = group[2]
self.assertEqual(label, prefix + "To")
- self.assertEqual(
- formatted.lower(), "0x" + hexlify(self.RECIPIENT).decode()
- )
+ self.assertEqual(formatted.lower(), "0x" + hexlify(self.RECIPIENT).decode())
(label, formatted, _), token, token_address = group[3]
self.assertEqual(label, prefix + "Amount")
self.assertEqual(formatted, "2 TST")
diff --git a/tests/device_tests/ethereum/definitions/eth/chain-id/1/display-format/87870bca3f3fd6335c3f4ce8392d69350b4fa4e2-ac9650d8.dat b/tests/device_tests/ethereum/definitions/eth/chain-id/1/display-format/87870bca3f3fd6335c3f4ce8392d69350b4fa4e2-ac9650d8.dat
new file mode 100644
index 00000000..577f489c
Binary files /dev/null and b/tests/device_tests/ethereum/definitions/eth/chain-id/1/display-format/87870bca3f3fd6335c3f4ce8392d69350b4fa4e2-ac9650d8.dat differ
diff --git a/tests/ui_tests/fixtures.json b/tests/ui_tests/fixtures.json
index 93ca1025..c80685b2 100644
--- a/tests/ui_tests/fixtures.json
+++ b/tests/ui_tests/fixtures.json
@@ -2315,6 +2315,7 @@
"T2T1_cs_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "f2b80196c81ce473b7f24f16f6192ac76d9d2ca23fb0b40053c00d02b53d5111",
"T2T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "480ab0a982ccfd54d42ea78502530ca792e6327aa43bdb1e092f92aae3ed6059",
"T2T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "da55e230984dcabdd9431e475b1cd24146a8ce5701c95b712049eb48724fc312",
+"T2T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "7af1766a1a02fa86ff94bd09ef5a79ab560fc9d9dbb98f9087a43752f96eeec0",
"T2T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "47aade45029a8a4d03d239c461fbeab9598d282a9525db96427f1bf59a892e63",
"T2T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "47aade45029a8a4d03d239c461fbeab9598d282a9525db96427f1bf59a892e63",
"T2T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "463f310d333bedb2d001279bd164f5a5605ff8e4acd83699368f2ef1551db87e",
@@ -4144,6 +4145,7 @@
"T2T1_de_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "efeaf51fe18b983e9b1a6947a939ad305a92e57798fe07110bb61c0f65755881",
"T2T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "783a29641ea8337b1eca23a6a93ecd7f32362e994800ffffacd13ee17efab3a7",
"T2T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "57885ab5b96a66ae145f29efeb3f64b282e2d7d0fe99a49077898cb184023131",
+"T2T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "46dd2540f8d36f9f59725d3b49828ec4f060e9906ce31f2168e667659d7f09ff",
"T2T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "2280caffc8d2dd5e6f407b9762b7fdd3ca5b861d124b075467f5217842cd072b",
"T2T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "2280caffc8d2dd5e6f407b9762b7fdd3ca5b861d124b075467f5217842cd072b",
"T2T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "e1d05421ed55d8edd2c9a93d62d4babdc09d5dd5784d6401f93023dba09964f0",
@@ -5973,6 +5975,7 @@
"T2T1_en_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "8aa7c68cd09e700e8c6903dcfc39c4a66214481c12c34dc56762829478399b79",
"T2T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "e51e8df45bd83f48a6e4f92b7e34323ad5c962f6cdda0fadb5956f61a47fae65",
"T2T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "4c49b6d86297abb54fc46a9711b3df71494c87444b6ac144ce91d9a669612b50",
+"T2T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "dd65d4deed65ca5096bc650ac81c76ca4a871194fd67b1fc5f2ed4b7e29798d3",
"T2T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "92f666436975615ac3b5024eab37461939fc13c3928ca83d5831a398082ca9f2",
"T2T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "92f666436975615ac3b5024eab37461939fc13c3928ca83d5831a398082ca9f2",
"T2T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "5187f7e20de959c5d71a6057644c9800794b61c86c33117a7ad84ddb2e68cb58",
@@ -7820,6 +7823,7 @@
"T2T1_es_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "17d836396f272c01cafa175aa87b0c076aedf7698c935d1921c7d3d7e8911903",
"T2T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "d207e2e623ba2ac45949e6c10acfdbe809b2bf9141b6abd3f7a1dda396523a2b",
"T2T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "e8d86aba84ce849abff9e2b3d86a223adcbf3e0dcffad662c909e51d5e440027",
+"T2T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "095c6dc1f5e6bfdb671c5b63f1977f4935689e19630ea0ee1e5d3f10b9783ffa",
"T2T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "cfde361a30e1e0a9452ac9ad38712593759e1d7dcf3dd48e977ddf6b11a13a70",
"T2T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "cfde361a30e1e0a9452ac9ad38712593759e1d7dcf3dd48e977ddf6b11a13a70",
"T2T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "91071a2ef43d6e09be5cdc8cc4c631a90726261f38a70217c351b03745be76ed",
@@ -9649,6 +9653,7 @@
"T2T1_fr_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "7e5a99a4b6aad4cdf7a9f9aecf483faa381108ee2108efaba88f261e29ac1f8a",
"T2T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "05692aaadca4e4aaad936aac61df00cc0fc53aace32cca9e0adfb5410ffa65c9",
"T2T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "87d1b410452cac27b5e68d22c6dc7ffff284d2645b22ada4f3d2924307963b24",
+"T2T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "3b06b19afbbfca18cc90270a6e35e7c8eb4b2408d5f36f6391fcb828fdfec74f",
"T2T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "7d7f6ccb9684c4907d09f9ce760130caa437244823ea63531d8fe5bb68477933",
"T2T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "7d7f6ccb9684c4907d09f9ce760130caa437244823ea63531d8fe5bb68477933",
"T2T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "41037611ef00f7ac6b7452019e6f3260120ae76a2222339820a7784c49e84e3b",
@@ -11478,6 +11483,7 @@
"T2T1_pt_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "020b255e04b59e53d2aa87ae960038f4538d350de28df15a1ac41b376e9d04f2",
"T2T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "e1b79ea064ad6351424a25b3bee8d635afa0ead6a0d53a5014efdf08b6fd755f",
"T2T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "992e91d3043c8b8566f0d3d6ee416e6273803adb88ecf14c51a1beeaa40807ba",
+"T2T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "30b7667d0b7cd3eddc5fa4ef0ed9c4cdc22ec5a5edb234f58ea0631d91b8281a",
"T2T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "10d4c34a780e5b524672a62f7a68968694fbab2cfc44b8caf704c986df2cb03a",
"T2T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "10d4c34a780e5b524672a62f7a68968694fbab2cfc44b8caf704c986df2cb03a",
"T2T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "044420e57a92262835466fd7fe6e977668a8d5ad362539b89ef39a0355453459",
@@ -13558,6 +13564,7 @@
"T3B1_cs_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "aec89f6952811bcfa54db3842b2e2e24d7ae162a65bf19424b4e6b6620fe70bb",
"T3B1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "a911ad41fdbcaaf91028173f16813a7e105a043604f799022884881f594d9c91",
"T3B1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "ff2365322b221886fc7582f32e484c718d77e635012feda683df7de73d822b95",
+"T3B1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "3749c863f2f92ed977caa1af5fea25875d469a913380d6483ac89bbc33c8ff34",
"T3B1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "cd3a5546a75c7731e9d54929f7f14bb89f0a346672a05bb6bfb2bab37166abf5",
"T3B1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "cd3a5546a75c7731e9d54929f7f14bb89f0a346672a05bb6bfb2bab37166abf5",
"T3B1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "78e4f47dfc70b0e9b88d04635e4a23e9fa709a21192fb1ec2bcda6d3b67fce47",
@@ -15326,6 +15333,7 @@
"T3B1_de_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "14dfefb39e3707b5294815085c5d94626e4e632f7fd9ca60df4b28e57d015dde",
"T3B1_de_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "8edf86f1de827a379b414c3707ca1082c1ec4f82a1c6a64fefda0765ed8d1409",
"T3B1_de_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "882f3cbbb554520b0255795e97d899975a999c8eb1ae8d2079fbff974fd71afb",
+"T3B1_de_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "d23f34b9d44579da2966eebeae56cf51d71e01dd3854d4180fe2ba11c5ed5273",
"T3B1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "d464f3752a4d0d7c9feb07222c3b08c82c919ac563a538ee8ef9d9a0a95913af",
"T3B1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "d464f3752a4d0d7c9feb07222c3b08c82c919ac563a538ee8ef9d9a0a95913af",
"T3B1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "169673be9d7cea2364e4a49755b16aab9ec78a3103f59f0aba8eac33ade57722",
@@ -17094,6 +17102,7 @@
"T3B1_en_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "7945fdf0623a34efada654fe62a57fa06c6ab0cf4383bc14c6b7acd594b10596",
"T3B1_en_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "4a589cf817cf23696caa9bba11bf3dd1734887e68c2ec09b385480846e06f789",
"T3B1_en_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "391872c558f63c82e92eac638a419bda3d2c663a127e12353abd55aa9b4b4132",
+"T3B1_en_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "b0641e599e9936a9e368835ad56d8f2d90e0c1b659651c5f81b56394126ce931",
"T3B1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "d599ef4a6ce72101d7753eef625071406b47be8226a9afb28838729935180981",
"T3B1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "d599ef4a6ce72101d7753eef625071406b47be8226a9afb28838729935180981",
"T3B1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "92582504732bc5ad8e87ee29aff3f8b007569f6802d0fae401b8e99f2426db78",
@@ -18862,6 +18871,7 @@
"T3B1_es_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "1c43a01a3864c17b781e3a68121bb7c4378f858ab5c4db5b3d012f138eba5fb8",
"T3B1_es_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "2142e70cfef97d6f21bc09517fa4eb548e4c06c40096e453d7f9e8e63c92930d",
"T3B1_es_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "79dbd8b0e10ad10dafd53d63918ed66045d0d0a0f06c81ab6f580d6e0c25e441",
+"T3B1_es_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "99150684989b5cfcd2dc5fb1c789411c0f173b80f0b3a7da164c8e262deeab2b",
"T3B1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "1055d5e35353647fa4adcf36b4149d00a3e3117cb42829ede573df4fa1effdc1",
"T3B1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "1055d5e35353647fa4adcf36b4149d00a3e3117cb42829ede573df4fa1effdc1",
"T3B1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "42b6c2b0ca606efad8dc0caaff19128d0660271d684ebd8f1bd89643db2a2c0e",
@@ -20630,6 +20640,7 @@
"T3B1_fr_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "979886e5de665a0a5bd752457a29ad2bd0aad9d94702754cb351dc7d31979b42",
"T3B1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "838dd7eee9af70429e3f300ab4ccd9adffd66c93835aad1e80097186845ffc96",
"T3B1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "633f96b03f2ffa8644dfc1e535173d77fb03ca40a5625d9b10dcffc59265c21b",
+"T3B1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "ba0b151dd89ce2074bef60bfdcf9b395c761ba7628f9438fc352822470c94911",
"T3B1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "71d7514060cb5963ea1bd9ff1221e2ddfcb9ad5bcef241b39bc6beccd5dca890",
"T3B1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "71d7514060cb5963ea1bd9ff1221e2ddfcb9ad5bcef241b39bc6beccd5dca890",
"T3B1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "4f1d552092a2a6896d456cde2e995c09f313238442867ec3b508100d25953fd1",
@@ -22398,6 +22409,7 @@
"T3B1_pt_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "bbd866375fe164eb4caaddceb8a49d710b09ad01ca2cf67a0006d3a0d3ecb121",
"T3B1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "9b526d61643f85c0a8f25a5a5f6a0dd1fb56d2ebfd35c14f8d0d26d940745c4c",
"T3B1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "983187b7d1eb0664e0e4b4ab239cb7f81507b3c5411b05a81688acc9f872c7b5",
+"T3B1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "6ac4a4f46bb208ec97285abd52082abdba5b197457b6795ac9d67f8fb9bd42f3",
"T3B1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "c4bf226a4c9f8d3476f67c550ee2b46754801e5208552590ffaacfe160049526",
"T3B1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "c4bf226a4c9f8d3476f67c550ee2b46754801e5208552590ffaacfe160049526",
"T3B1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "8cd2f945e9260abcedf06a5130480d0d23a22f431fe9b69044c374ab09d77951",
@@ -24560,6 +24572,7 @@
"T3T1_cs_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "9c20243bc5dacf2442af5a8778b66a0ab7cb978e11c02fec371f109fbc9d55f6",
"T3T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "5bdfdd72a3d2a698da9d202ebf566fc99b658f44cc600ef8aed627a870050143",
"T3T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "57f366facd1b9bbf3b2d712bea9cf9dd99a13a07ca9be0aa4779da3440be545f",
+"T3T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "ec5101e7e9c6b6975aeb99c31b4055dc9bd51cdb33fa59b43fd31da234fea874",
"T3T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "33421fe62f024b338305513df42c3da15e8333b61a10b74ad39001e4288d3af6",
"T3T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "33421fe62f024b338305513df42c3da15e8333b61a10b74ad39001e4288d3af6",
"T3T1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "f2b58f00c7b6f5781ce23177508f9748d218e155b0c046f4edc2b069938564c6",
@@ -26363,6 +26376,7 @@
"T3T1_de_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "68c146f13417be0845fee20b1d8de4a05e0844608c2efb3cfae9f573be39f0c4",
"T3T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "f1fbb88aeb2d64b68deaa219a2cf456f77705c90df87e8c94e4aa8e87f6fe497",
"T3T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "262e095c80fe80c257494902de8af6d10e29647006db6d526bceb74389befef4",
+"T3T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "021e06bc7b9a5ae217f651c8c353d5f37225c77da33c3c7909609ca2b84b5c90",
"T3T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "a6dcc6094fbea51000dd14898c048e714b599f655215de501c8c0095314553bd",
"T3T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "a6dcc6094fbea51000dd14898c048e714b599f655215de501c8c0095314553bd",
"T3T1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "37e9c5f9d12ff4696ac62d6316d1fe8c2c86387a31f4b7e5763f0e65d71c3312",
@@ -28166,6 +28180,7 @@
"T3T1_en_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "0064e8a52b9bff0c2a31432fa781b800afb21e8910d60f303671bdfc8d8425fc",
"T3T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "96afa04a968639dc544e7dd4197e304372986ad790f1c19820ecd82e18539bdc",
"T3T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "8e51e83e28ad0921ecd7989e4fd5a055abd3deb89e0d169c316e33886fc6e1d7",
+"T3T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "0d86bcdb9e4cb1a2e0ea21219276be1377d3d7fc3a851052874864ae5e449d4f",
"T3T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "a0781889bed2dd4176de3e3af76943c6c85e403ae402fea6a6a82b61f9affb47",
"T3T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "a0781889bed2dd4176de3e3af76943c6c85e403ae402fea6a6a82b61f9affb47",
"T3T1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "009c2c1bc4dd679ffa3b563bf8f3963461bcb9a7f7c805ca63a46477d0524555",
@@ -29969,6 +29984,7 @@
"T3T1_es_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "41b9c9e85d64891dcfd03d675df77c533f035a2d191b161144d00afab69a589d",
"T3T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "a53f90905a7f1d57351ce1e8ef5c7f5808797e05985ab21edab5e27401d29b64",
"T3T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "c71137770d69a436eaf76cb46ef12f46f2a04fe3a8b49625cc3d5d022a60a7b7",
+"T3T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "ea51fe3834dfc4e9c43031d4192318cba8720fe3912576538a2d249501d180d4",
"T3T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "0447faba1cea6dcb384347c126ef9efec42f17f701119311a0c4ea966a7a1a9e",
"T3T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "0447faba1cea6dcb384347c126ef9efec42f17f701119311a0c4ea966a7a1a9e",
"T3T1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "1ed60c54839a36f3bb9848fb25f38f8d734d8bec9688a95719dc9aa76ef19317",
@@ -31772,6 +31788,7 @@
"T3T1_fr_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "116c64aa168d12181b7a5317677ddf135d739fdac22d38ff08571dc3301c2f47",
"T3T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "2b73ea3e5f768d463dd243563ce5c7de29cd3bea600e7524e283c1e1a91fc15d",
"T3T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "0f5663da9c1722546f733703093d5987325ba8fcf096c4507bd7abcb2b78340d",
+"T3T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "89b9d8b022ff64beaceaebc23c1e2f7da46d21c43cb053cdb4615f5836187c03",
"T3T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "48b0c2f2ec367b353a14a770a4be0415495ea38d5d57826709ba1d4dff376c30",
"T3T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "48b0c2f2ec367b353a14a770a4be0415495ea38d5d57826709ba1d4dff376c30",
"T3T1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "9b8e736be6a44f0998361893fa4cf953efd62c4b5789c95e24fcc11118e4e454",
@@ -33575,6 +33592,7 @@
"T3T1_pt_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "14256cd1b801d1b67a37de1198d61a80d342f39e5c5d6fa991ec7fb526d683be",
"T3T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "17481dca56e1b110914bdd65db591e693bbbfb76f0b6d1f96bfb69b902ac37f5",
"T3T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "d2f5b6acf680b58250ee428e44559fd116a8a8f332196e6c10f4c7c5d8a832ce",
+"T3T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "65d5a2e0deb7ee3ba7fc59277c154187bba8d88d77f12149d4fa43b348670c90",
"T3T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "7d6346c2e2c4b3888a6ccd833825e2b84dc363447d864762fef878395e112391",
"T3T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "7d6346c2e2c4b3888a6ccd833825e2b84dc363447d864762fef878395e112391",
"T3T1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "35d782c6a598c63cea4153d2dfc700641429b665c9e016b1d8fe0c2625b84b42",
@@ -36030,6 +36048,7 @@
"T3W1_cs_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "2b06a6c36a96faaad9d1237b47e37374c5452331ad8fa3738accbd2e09ec1500",
"T3W1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "0654c6a701bce2a828cc7ec49dd52ad5879bb994a8a9066885a974e50c700a41",
"T3W1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "160bf8c71923600a74e868c0bac3941ce31a689814576dde08e847dadad872a9",
+"T3W1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "97a593a75450f0aba93c8b2969c1a85bc500cea6fa3f8bbc8745ac9c3db7c61c",
"T3W1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "c2be9544f18bef43ac63456af183e9555ae3e59b2bb837a28b843384acef5063",
"T3W1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "c2be9544f18bef43ac63456af183e9555ae3e59b2bb837a28b843384acef5063",
"T3W1_cs_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "147172dcdae6821a100bc70c33995035f816c7daec17ebe63947f970985a9677",
@@ -37868,6 +37887,7 @@
"T3W1_de_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "32c06c9f4ef6d91d183e5480b273a0aec9bd56572528ddbfb70b7cd609cbef50",
"T3W1_de_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "76f3ad60cd6b7725c7385ba80a6bc3aa0920cdb82b6ed44c138a176ebf704f48",
"T3W1_de_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "ffa573a1b2481a1447dfaea3121ff3e8fa65e2af2ff1180b7475995a7102f53d",
+"T3W1_de_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "85725edc33b4901cacf00ffd9634d19adedbdfb46d9afd5a5d250af2b61e484f",
"T3W1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "5b87078e7f7efb30bff6d382f8d22c0dedbe7c3173a6df47e9995eed60e76d22",
"T3W1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "5b87078e7f7efb30bff6d382f8d22c0dedbe7c3173a6df47e9995eed60e76d22",
"T3W1_de_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "37a1ea6a63a2e15dc5314be0bbfef2405d0d51b894953e02d4b67b1628d1c51a",
@@ -39706,6 +39726,7 @@
"T3W1_en_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "90812f196e8c35dc7f35cb5a9a0e553c8fc6a610812d85b9f166e90b3f1c8b59",
"T3W1_en_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "b2c3428af4784c9e946fa2d0c0d6c6c0ed7cc361f581e4b9f1528d6d523621ce",
"T3W1_en_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "e0f348ee30611777a8b7945bb75d4d3378ecf5aceca663bebeaec389df17b440",
+"T3W1_en_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "5f8ee1e0dc91d4252fb80b07f98d9af3584a84d570abec74793ae9b23b2aaaff",
"T3W1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "dee46cc6cb7a5465c30ba922b8b9a1c0b1e593d907334b9f3e06d86ef6a98a3c",
"T3W1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "dee46cc6cb7a5465c30ba922b8b9a1c0b1e593d907334b9f3e06d86ef6a98a3c",
"T3W1_en_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "84445cd241f430797a0b0ac9a42d64c41e8762b525fc708cb166014bd05de271",
@@ -41544,6 +41565,7 @@
"T3W1_es_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "ddbd1412a9f69aea1c41c375a2ec0647411a0e487ec5c1ee55e24505dfc34e29",
"T3W1_es_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "d86cd0d82565701f039c7d1a326f2df5cc9805fb838f4afebe386cdc94fae4d0",
"T3W1_es_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "aa2d69634719d4ceef5dcc2e15ab574fc264fdc13b68ed496b58c9622a0ab0c5",
+"T3W1_es_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "2732c1e6171aaabf92416a4607f2c547339534395e64a530c3827079a7adb2a0",
"T3W1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "1742888d6dac845be6449a3d9617e046b8514bbbed48638f714554d4a81c6f26",
"T3W1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "1742888d6dac845be6449a3d9617e046b8514bbbed48638f714554d4a81c6f26",
"T3W1_es_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "37d530f90c91e814c30293bb2209a16650e36c7adde6c466f2046595d91df694",
@@ -43382,6 +43404,7 @@
"T3W1_fr_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "a392ca1dea666647fb2d6edfcd90e4e3cad6ab0e294ca85cda7db478214a6a81",
"T3W1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "74c4a4d57ea202d1658ae7ef18aac5f9b2801ea2c9a0889c6ae3017d496a6abc",
"T3W1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "1c57740fddef8f41f7bbf8284fd208995f54d420996c1f3cd8420943fddced3b",
+"T3W1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "396d26fbccaa2b44f39f8cc5b638986bb4e85ea790a19e8076d033ee33e1a3f2",
"T3W1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "ba88ad877385d863ac6e44d8594d5fa4cbc21dddfa084791005a75890023e04a",
"T3W1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "ba88ad877385d863ac6e44d8594d5fa4cbc21dddfa084791005a75890023e04a",
"T3W1_fr_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "894b903353006803c14bcab8a26f0282f2a74cdc1f032fe5b9417ad2405cd34d",
@@ -45225,6 +45248,7 @@
"T3W1_pt_ethereum-test_signtx.py::test_signtx_error[vault_withdraw_with_eth]": "6fb22dca4b252028ed3f91db1fb746e30d12aece0a74e1bcc4abef605a3a9026",
"T3W1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_fillCon-97972226": "ef18577be93e3a7a1004f0d6f9846c88c34df72193b475d06f6fa298e9bee8ae",
"T3W1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[1inch_AggregationRouterV6_permitAndCall]": "81b8c25ac986844b696e3b131d1877968fe70dbde44b3732ca277b70a12a3184",
+"T3W1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[aave_lpv3_multicall]": "90703f30060cba8b3350402256788ae0bf0f4d88589b674de4464bfc0ff620bc",
"T3W1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap2]": "04126c86950c9bf2453ed04b48060fec03fad4d1cef2200835b1c31e1702f273",
"T3W1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswap3]": "04126c86950c9bf2453ed04b48060fec03fad4d1cef2200835b1c31e1702f273",
"T3W1_pt_ethereum-test_signtx.py::test_signtx_external_definitions[clear_sign_1inch_ethUnoswapTo2]": "c355ead22b3b25415c57280bbdc032ab87b6a8ae030e21aa564b608b78c122d2",
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.