or run

npx @tessl/cli init
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-3/

{
  "context": "This criteria evaluates how effectively the engineer uses picomatch's isMatch() function to implement file path validation against glob patterns. The focus is on proper usage of picomatch.isMatch() for one-off pattern matching operations, including handling single and multiple patterns, and implementing exclusion logic.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Uses picomatch.isMatch()",
      "description": "The implementation uses picomatch.isMatch() function for pattern matching rather than creating matcher functions with picomatch() or using other methods. This is the appropriate method for one-off matching operations.",
      "max_score": 40
    },
    {
      "name": "Handles multiple patterns",
      "description": "The implementation correctly passes array patterns to picomatch.isMatch() when includePatterns is an array, or normalizes single patterns to work with the same logic. picomatch.isMatch() natively supports arrays of patterns.",
      "max_score": 20
    },
    {
      "name": "Implements exclusion logic",
      "description": "The implementation correctly uses picomatch.isMatch() to check if a path matches exclusion patterns and returns false when it does. This should happen after checking inclusion patterns.",
      "max_score": 25
    },
    {
      "name": "Correct function usage",
      "description": "The implementation passes parameters to picomatch.isMatch() in the correct order: isMatch(string, patterns, options). The string to test comes first, followed by the pattern(s).",
      "max_score": 15
    }
  ]
}