tessl install tessl/golang-gorm-io--gorm@1.31.0Full-featured ORM library for Golang with associations, hooks, transactions, migrations, and developer-friendly chainable API
Agent Success
Agent success rate when using this tile
81%
Improvement
Agent success rate improvement when using this tile compared to baseline
1.13x
Baseline
Agent success rate without this tile
72%
{
"context": "This criteria evaluates how well the engineer uses GORM's FindInBatches method to efficiently process large datasets without loading all records into memory. The focus is on proper usage of batch processing, error handling within batch callbacks, and aggregation patterns.",
"type": "weighted_checklist",
"checklist": [
{
"name": "FindInBatches usage",
"description": "Uses GORM's FindInBatches method to process records in batches rather than loading all records with Find",
"max_score": 30
},
{
"name": "Batch size configuration",
"description": "Correctly passes the batchSize parameter to FindInBatches to control the number of records processed in each iteration",
"max_score": 15
},
{
"name": "Batch callback implementation",
"description": "Implements the callback function that receives a batch of records and processes them within the FindInBatches iteration",
"max_score": 15
},
{
"name": "Error propagation",
"description": "Properly returns errors from the batch callback to stop iteration and propagates FindInBatches errors to the caller",
"max_score": 15
},
{
"name": "Batch iteration control",
"description": "Correctly implements logic to continue iteration by returning nil from callbacks and stop iteration by returning an error",
"max_score": 10
},
{
"name": "State accumulation",
"description": "Maintains state across batch iterations to aggregate results (e.g., counting records or summing values) using closure variables or similar patterns",
"max_score": 10
},
{
"name": "Query filtering",
"description": "Uses GORM's Where method or similar to filter records before batch processing (e.g., IsActive=true, Status='completed')",
"max_score": 5
}
]
}