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 the Bowser library to extract platform information from user agent strings, specifically focusing on proper use of platform detection methods and handling of device details.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Bowser parsing initialization",
      "description": "Uses Bowser.parse() or Bowser.getParser() to parse the user agent string and obtain a parser instance or parsed result",
      "max_score": 20
    },
    {
      "name": "Platform type extraction",
      "description": "Uses getPlatformType() method or accesses platform.type from the parsed result to extract the platform type (desktop, mobile, tablet, tv, or bot)",
      "max_score": 25
    },
    {
      "name": "Platform details retrieval",
      "description": "Uses getPlatform() method or accesses the platform object to retrieve vendor and model information from the parsed result",
      "max_score": 25
    },
    {
      "name": "Bot detection",
      "description": "Correctly identifies bots by checking if platform type equals 'bot' or uses isPlatform('bot') method",
      "max_score": 15
    },
    {
      "name": "Null/undefined handling",
      "description": "Properly handles cases where vendor or model are not detected (returns null/undefined) and validates input before parsing",
      "max_score": 15
    }
  ]
}