or run

npx @tessl/cli init
Log in

Version

Files

tile.json

rubric.jsonevals/scenario-9/

{
  "context": "This criteria evaluates how well the engineer uses the cli package's streaming input capabilities to process log files line-by-line. The focus is specifically on using cli.withInput() for memory-efficient streaming and cli.parse() for argument handling.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Uses cli.parse()",
      "description": "Uses cli.parse() to define and parse the -f/--file command-line option for accepting the log file path",
      "max_score": 20
    },
    {
      "name": "Uses cli.withInput()",
      "description": "Uses cli.withInput() method to process the input line-by-line, passing either the file path or handling stdin appropriately",
      "max_score": 35
    },
    {
      "name": "Line-by-line processing",
      "description": "Correctly implements the callback function for cli.withInput() to receive and process each line individually with the (line, separator, eof) signature",
      "max_score": 25
    },
    {
      "name": "Stdin handling",
      "description": "Properly handles the case where no file is provided by passing an appropriate value to cli.withInput() to read from stdin",
      "max_score": 15
    },
    {
      "name": "Callback completion",
      "description": "Uses the eof parameter or completes processing appropriately to output results after all lines have been processed",
      "max_score": 5
    }
  ]
}