tessl install tessl/pypi-web3@7.13.0A Python library for interacting with Ethereum blockchain
Agent Success
Agent success rate when using this tile
88%
Improvement
Agent success rate improvement when using this tile compared to baseline
1.01x
Baseline
Agent success rate without this tile
87%
{
"context": "This criteria evaluates how effectively the engineer uses the web3.py library to estimate gas costs for ERC-20 token transfers. The focus is on proper usage of Web3 provider connection, contract instantiation, and the estimate_gas() method for transaction gas estimation.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Web3 instantiation",
"description": "Uses Web3 class with an appropriate provider (e.g., Web3.HTTPProvider, Web3.WebsocketProvider) to establish connection to Ethereum node",
"max_score": 15
},
{
"name": "Connection verification",
"description": "Uses web3.is_connected() method to check if the connection to the Ethereum node is active",
"max_score": 10
},
{
"name": "Contract object creation",
"description": "Creates a contract instance using web3.eth.contract() with the token address and appropriate ERC-20 ABI",
"max_score": 20
},
{
"name": "Estimate gas method",
"description": "Uses the estimate_gas() method on contract functions (specifically the transfer function) to estimate gas requirements for transactions",
"max_score": 25
},
{
"name": "Transaction parameters",
"description": "Properly structures transaction parameters dictionary with 'from' address when calling estimate_gas(), passes correct arguments to the transfer function (to_address, amount)",
"max_score": 15
},
{
"name": "Multiple estimations",
"description": "Correctly iterates through multiple amounts and performs separate estimate_gas() calls for each, collecting results in a dictionary structure",
"max_score": 10
},
{
"name": "Exception handling",
"description": "Catches and handles exceptions that may be raised by estimate_gas() when estimation fails (e.g., ContractLogicError, BadFunctionCallOutput, or general exceptions from web3)",
"max_score": 5
}
]
}