CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-angular-devkit--build-ng-packagr

Angular Build Architect builder for ng-packagr library packaging (deprecated)

89

1.00x
Overview
Eval results
Files

rubric.jsonevals/scenario-10/

{
  "context": "This criteria evaluates how well the engineer uses the @angular-devkit/architect package to implement a custom builder, with focus on correctly using BuilderContext, BuilderOutput types, and supporting the flexible return type patterns that the Architect system accepts.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "BuilderOutput type usage",
      "description": "The builder function returns a value that conforms to the BuilderOutput type with the required 'success' property (boolean) and optional 'error' property (string).",
      "max_score": 20
    },
    {
      "name": "BuilderContext parameter",
      "description": "The builder function accepts BuilderContext as a parameter and uses it appropriately (e.g., accessing workspaceRoot, using logger, or other context properties).",
      "max_score": 15
    },
    {
      "name": "Return type flexibility",
      "description": "The builder returns a type compatible with the Architect system's flexible patterns - either Observable<BuilderOutput>, Promise<BuilderOutput>, AsyncIterable<BuilderOutput>, or plain BuilderOutput.",
      "max_score": 25
    },
    {
      "name": "Error handling pattern",
      "description": "Errors are handled gracefully and returned as BuilderOutput with success: false and descriptive error messages, rather than throwing exceptions.",
      "max_score": 20
    },
    {
      "name": "Options interface definition",
      "description": "Defines a typed options interface (CustomBuilderOptions) with the required configPath property.",
      "max_score": 10
    },
    {
      "name": "Async pattern implementation",
      "description": "Properly implements async operations (file reading, JSON parsing) using appropriate async patterns (async/await, Observables, or Promises).",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-angular-devkit--build-ng-packagr

tile.json