evals
scenario-1
scenario-10
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
{
"context": "This criteria evaluates how effectively the engineer uses Nx's configuration management APIs to set up remote cache backends. The focus is on proper usage of @nx/devkit utilities for reading and updating nx.json, and correctly structuring task runner configuration for remote caching.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Uses readNxJson",
"description": "Uses the readNxJson() function from @nx/devkit to read the existing nx.json configuration file",
"max_score": 15
},
{
"name": "Uses updateNxJson",
"description": "Uses the updateNxJson() function from @nx/devkit to write changes back to the nx.json configuration file",
"max_score": 15
},
{
"name": "Uses Tree API",
"description": "Uses the Tree interface from @nx/devkit for file system operations (reading/writing files) in a way that works with Nx's virtual file system",
"max_score": 15
},
{
"name": "Task runner configuration",
"description": "Correctly configures the tasksRunnerOptions property in nx.json with remote cache settings, including the runner name and options",
"max_score": 20
},
{
"name": "Cache URL configuration",
"description": "Properly sets the cache URL or endpoint in the task runner options, using the correct property name for remote cache configuration",
"max_score": 15
},
{
"name": "Configuration validation",
"description": "Validates that required parameters (like cache URL) are provided and that the nx.json file structure is correct before making updates",
"max_score": 10
},
{
"name": "Test implementation",
"description": "Implements tests that demonstrate the cache configuration functionality using appropriate test patterns and assertions",
"max_score": 10
}
]
}