CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-tmp-promise

The tmp package with promises support and disposers.

93

1.78x
Overview
Eval results
Files

rubric.jsonevals/scenario-1/

{
  "context": "This criteria evaluates the engineer's ability to properly use tmp-promise for error handling and propagation, focusing on promise rejection handling, try-catch usage, cleanup guarantees, and appropriate error recovery strategies.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Promise rejection handling",
      "description": "Uses proper promise rejection handling (try-catch with async/await or .catch()) when calling tmp-promise methods like file() or dir()",
      "max_score": 20
    },
    {
      "name": "Cleanup function usage",
      "description": "Properly calls the cleanup() function returned by file() or dir() in finally blocks or after operations complete to ensure resource cleanup",
      "max_score": 25
    },
    {
      "name": "withFile disposer pattern",
      "description": "Uses withFile() or withDir() disposer pattern to guarantee automatic cleanup even when errors occur, avoiding manual cleanup management",
      "max_score": 25
    },
    {
      "name": "Error propagation",
      "description": "Correctly propagates errors from tmp-promise operations through the application's error handling chain (rejecting promises or throwing in async functions)",
      "max_score": 15
    },
    {
      "name": "Retry and fallback",
      "description": "Implements retry logic or fallback strategies when tmp-promise operations fail, using the tries option or implementing custom retry mechanisms",
      "max_score": 15
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-tmp-promise

tile.json