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 evaluation assesses how effectively the engineer uses web3.py's event processing capabilities, specifically focusing on the contract event API and the configurable error handling modes for processing transaction receipt logs.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Contract instantiation",
"description": "Creates a Web3 contract instance using web3.eth.contract() with the provided ABI to access event processing capabilities",
"max_score": 15
},
{
"name": "Event processing method",
"description": "Uses contract.events.<EventName>().process_receipt() or contract.events.<EventName>().process_log() to decode events from the transaction receipt",
"max_score": 25
},
{
"name": "Strict mode implementation",
"description": "Correctly implements strict error handling mode by passing errors=STRICT (or equivalent) parameter, which raises exceptions on decode failures",
"max_score": 15
},
{
"name": "Warn mode implementation",
"description": "Correctly implements warn error handling mode by passing errors=WARN (or equivalent) parameter, which logs warnings for decode failures but continues processing",
"max_score": 15
},
{
"name": "Ignore mode implementation",
"description": "Correctly implements ignore error handling mode by passing errors=IGNORE (or equivalent) parameter, which silently skips decode failures",
"max_score": 10
},
{
"name": "Discard mode implementation",
"description": "Correctly implements discard error handling mode by passing errors=DISCARD (or equivalent) parameter, which filters out failed events and returns only successfully decoded ones",
"max_score": 10
},
{
"name": "Event data extraction",
"description": "Properly extracts and structures decoded event data including event names and arguments from the processed events, utilizing web3.py's decoded event format",
"max_score": 10
}
]
}