tessl install tessl/pypi-flask-admin@1.6.0Simple and extensible admin interface framework for Flask
Agent Success
Agent success rate when using this tile
86%
Improvement
Agent success rate improvement when using this tile compared to baseline
1.3x
Baseline
Agent success rate without this tile
66%
{
"context": "This criteria evaluates the engineer's ability to implement Flask-Admin batch actions for bulk operations on database models, including creating custom actions with the @action decorator, managing transactions, and controlling action availability.",
"type": "weighted_checklist",
"checklist": [
{
"name": "@action decorator usage",
"description": "Uses the @action decorator from flask_admin.actions to define custom batch action methods (action_mark_featured, action_discontinue, action_reset_stock) with appropriate parameters (name, text, and confirmation message where specified)",
"max_score": 30
},
{
"name": "Batch update implementation",
"description": "Implements batch operations that correctly query and update multiple records using the provided list of IDs, using appropriate SQLAlchemy query methods like filter() and update() or iterating through selected records",
"max_score": 25
},
{
"name": "Session commit handling",
"description": "Properly commits database changes using self.session.commit() after batch operations to persist the updates to the database",
"max_score": 15
},
{
"name": "Flash messages",
"description": "Uses flask's flash() function to display success messages to users after batch operations, including the count of affected records",
"max_score": 10
},
{
"name": "Confirmation prompts",
"description": "Specifies confirmation message parameter in the @action decorator for the discontinue action with the exact text 'Are you sure you want to discontinue selected products?'",
"max_score": 10
},
{
"name": "Action disablement",
"description": "Disables the default batch delete action by setting action_disallowed_list attribute to include 'delete' or by overriding is_action_allowed() method to return False for the delete action",
"max_score": 10
}
]
}