or run

tessl search
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-4/

{
  "context": "This criteria evaluates the engineer's ability to use Oboe.js Basic JSONPath Pattern Matching to extract specific data from streaming JSON. The focus is on correctly implementing pattern matching for the root object, named paths, array elements, and array indices using Oboe.js's pattern syntax.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Oboe initialization",
      "description": "Uses oboe() function to initialize streaming from a URL or readable stream (e.g., oboe(url) or oboe(stream))",
      "max_score": 10
    },
    {
      "name": "Root pattern",
      "description": "Uses the root selector pattern '!' to capture the entire root object using .node() callback",
      "max_score": 15
    },
    {
      "name": "Named path pattern",
      "description": "Uses named path pattern '!.metadata.source' or similar dot notation to access nested properties",
      "max_score": 15
    },
    {
      "name": "Array wildcard pattern",
      "description": "Uses array wildcard pattern '!.products.*' or '!.products[*]' to match all array elements",
      "max_score": 20
    },
    {
      "name": "Property in arrays",
      "description": "Uses pattern like '!.products.*.name' or '!.products[*].name' to extract specific properties from all array elements",
      "max_score": 15
    },
    {
      "name": "Array index pattern",
      "description": "Uses specific array index pattern '!.products[0].price' or '![0]' notation to access element at specific position",
      "max_score": 15
    },
    {
      "name": "Node callback usage",
      "description": "Correctly uses .node(pattern, callback) method with proper callback signature to handle matched nodes",
      "max_score": 10
    }
  ]
}