or run

tessl search
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-5/

{
  "context": "This criteria evaluates how effectively the engineer uses oboe.js's method chaining capability to build a fluent, readable request handler. The focus is on whether they chain multiple event handlers together properly and utilize the chaining pattern as intended by the library.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Oboe initialization",
      "description": "Uses oboe() function to initialize a streaming request with the provided URL parameter",
      "max_score": 10
    },
    {
      "name": "Method chaining structure",
      "description": "Chains multiple methods (start, node, done, fail) together in a single fluent chain without breaking into separate statements",
      "max_score": 25
    },
    {
      "name": "Start handler chaining",
      "description": "Chains .start() method to handle HTTP request initiation and capture the status code",
      "max_score": 10
    },
    {
      "name": "Node pattern matching",
      "description": "Chains .node() method calls with JSONPath patterns to match login, logout, and admin events (e.g., '!.events.*' or similar patterns)",
      "max_score": 30
    },
    {
      "name": "Done handler chaining",
      "description": "Chains .done() method to handle stream completion and set the complete flag",
      "max_score": 15
    },
    {
      "name": "Fail handler chaining",
      "description": "Chains .fail() method to handle errors during streaming or parsing",
      "max_score": 10
    }
  ]
}