docs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10
{
"context": "This criteria evaluates how well the engineer uses metro-memory-fs's symbolic link operations to implement a file link manager. The focus is on proper usage of symlinkSync for creating symbolic links, readlinkSync for reading link targets, and lstatSync for verifying link types.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Uses symlinkSync",
"description": "Uses fs.symlinkSync() or equivalent method to create symbolic links with correct parameter order (target, path)",
"max_score": 30
},
{
"name": "Uses readlinkSync",
"description": "Uses fs.readlinkSync() to read the target path that a symbolic link points to",
"max_score": 25
},
{
"name": "Uses lstatSync",
"description": "Uses fs.lstatSync() to get stats about the link itself (not following the link) and uses .isSymbolicLink() method to check if a path is a symbolic link",
"max_score": 25
},
{
"name": "Handles symlink errors",
"description": "Properly handles EEXIST error when attempting to create a link at an existing path, and handles ENOENT or other errors when reading non-existent links",
"max_score": 15
},
{
"name": "Correct API implementation",
"description": "Implements the FileLinkManager class with constructor accepting fs parameter, createLink method returning boolean, and verifyLink method returning string or null",
"max_score": 5
}
]
}