CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-fs-readdir-recursive

Recursively read a directory and return an array of all file paths

90

1.11x
Overview
Eval results
Files

rubric.jsonevals/scenario-5/

{
  "context": "This criteria evaluates how well the engineer uses fs-readdir-recursive to handle symlinks. The focus is on proper usage of the package's symlink traversal capabilities and correct detection of different symlink types (file symlinks, directory symlinks, and broken symlinks).",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Uses fs-readdir-recursive",
      "description": "Uses the fs-readdir-recursive package's read() function to recursively traverse the directory tree",
      "max_score": 25
    },
    {
      "name": "Leverages symlink traversal",
      "description": "Relies on fs-readdir-recursive's built-in capability to traverse directory symlinks and include file symlinks in results, rather than reimplementing directory traversal",
      "max_score": 25
    },
    {
      "name": "Detects file types",
      "description": "Uses fs.lstatSync() or fs.statSync() to distinguish between files, directories, and symlinks for proper categorization",
      "max_score": 20
    },
    {
      "name": "Identifies broken symlinks",
      "description": "Correctly detects broken symlinks by checking if fs.lstatSync().isSymbolicLink() returns true while the target is inaccessible (e.g., fs.existsSync() returns false or fs.statSync() throws)",
      "max_score": 20
    },
    {
      "name": "Handles symlinks gracefully",
      "description": "Implements error handling that allows broken symlinks to be detected and categorized without causing the function to throw or fail",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-fs-readdir-recursive

tile.json