CtrlK
CommunityDocumentationLog inGet started
Tessl Logo

tessl/npm-cpr

Cross-platform recursive file copying library that replicates Unix 'cp -R' command functionality

Agent Success

Agent success rate when using this tile

66%

Improvement

Agent success rate improvement when using this tile compared to baseline

1x

Baseline

Agent success rate without this tile

66%

Overview
Eval results
Files

rubric.jsonevals/scenario-2/

{
  "context": "Evaluates whether the solution relies on the cpr package to copy templates while controlling overwrite behavior. Checks that overwrite toggles are wired into cpr options and its results/errors are used to report copied, replaced, or skipped paths. Verifies conflicts and errors are surfaced through cpr rather than reimplemented logic.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "cpr usage",
      "description": "Invokes cpr (or cpr.cpr) as the core recursive copy mechanism instead of manual filesystem traversal, targeting the provided template and destination paths.",
      "max_score": 20
    },
    {
      "name": "Overwrite flag",
      "description": "Maps the overwriteExisting input into cpr's overwrite option so conflicts trigger EEXIST errors or err.list entries when false and replacements proceed when true.",
      "max_score": 30
    },
    {
      "name": "Skip conflicts",
      "description": "When overwriteExisting is false, leaves existing destination files untouched, surfaces cpr's conflict signals (EEXIST/err.list), and records those paths as skipped.",
      "max_score": 15
    },
    {
      "name": "Replace conflicts",
      "description": "When overwriteExisting is true, ensures cpr runs with overwrite enabled (or via deleteFirst) so conflicting files are overwritten and captured in the replaced report.",
      "max_score": 20
    },
    {
      "name": "Path reporting",
      "description": "Derives copied/replaced/skipped path lists from cpr's resolved destination paths and error list, returning absolute destinations instead of recomputing paths manually.",
      "max_score": 10
    },
    {
      "name": "Error propagation",
      "description": "Propagates non-overwrite cpr failures (e.g., permission problems) rather than swallowing them, optionally using err.list to aggregate issues.",
      "max_score": 5
    }
  ]
}
tessl i tessl/npm-cpr@3.0.0

tile.json