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 picomatch to implement cross-platform path matching functionality. The focus is on proper usage of picomatch's platform-specific options, path handling capabilities, and matching functions to support both Windows and POSIX path formats.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Windows option usage",
"description": "Uses picomatch's `windows` option to enable Windows path support in the createMatcher function, allowing both forward slashes and backslashes as path separators",
"max_score": 25
},
{
"name": "Platform-specific matching",
"description": "Correctly implements platform-specific behavior by passing appropriate options (windows: true for Windows platform, windows: false or omitted for POSIX) to picomatch functions",
"max_score": 20
},
{
"name": "Case sensitivity handling",
"description": "Uses picomatch's `nocase` option for Windows platform to implement case-insensitive matching, while maintaining case-sensitive matching for POSIX",
"max_score": 15
},
{
"name": "Matcher function creation",
"description": "Uses picomatch() to create reusable matcher functions that can be called repeatedly with different paths, rather than using isMatch() for every test",
"max_score": 15
},
{
"name": "Batch matching implementation",
"description": "Implements batch path matching using picomatch.isMatch() or a picomatch() matcher function to filter arrays of paths against patterns",
"max_score": 15
},
{
"name": "Path normalization",
"description": "Implements path normalization by converting between forward slashes and backslashes based on target platform (replacing '\\\\' with '/' for POSIX, '/' with '\\\\' for Windows)",
"max_score": 10
}
]
}