tessl install tessl/pypi-textual@6.1.0Modern Text User Interface framework for building cross-platform terminal and web applications with Python
Agent Success
Agent success rate when using this tile
93%
Improvement
Agent success rate improvement when using this tile compared to baseline
1.18x
Baseline
Agent success rate without this tile
79%
{
"context": "This criteria evaluates how well the engineer uses Textual's Async Worker System to implement background task processing with progress tracking and cancellation support. The focus is on proper usage of worker decorators, worker management, progress updates, and cancellation handling.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Worker Decorator Usage",
"description": "Uses the @work decorator to define the background processing method. The decorator should be applied to the process_items method or equivalent background task method.",
"max_score": 25
},
{
"name": "Worker Invocation",
"description": "Correctly invokes the worker method (e.g., self.process_items() or run_worker()) to start background processing. The worker should be started when the start button is pressed.",
"max_score": 15
},
{
"name": "Progress Tracking",
"description": "Uses worker progress tracking methods (advance() or update()) to report progress as items are processed. Progress should be updated after each item or through the worker's progress property.",
"max_score": 20
},
{
"name": "Worker Cancellation",
"description": "Implements proper cancellation using worker.cancel() or by storing and managing worker references. The cancel button should stop the running worker.",
"max_score": 20
},
{
"name": "Worker State Handling",
"description": "Properly handles different worker states or outcomes (e.g., checking if worker is running, handling completion vs cancellation). May use worker state properties or result checking.",
"max_score": 10
},
{
"name": "Error Handling",
"description": "Implements error handling for worker failures, either through try-except blocks within the worker or by using exit_on_error parameter in the @work decorator.",
"max_score": 10
}
]
}