CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-libnpmorg

Programmatic API for managing npm organization memberships and roles

74

0.97x
Overview
Eval results
Files

rubric.jsonevals/scenario-4/

{
  "context": "Evaluates how the solution leverages npm CLI tooling to bump package versions and control dist-tags for stable and prerelease channels. Checks focus entirely on whether npm commands are invoked correctly for version increments, tag assignment, and tag inspection. The goal is to reward solutions that lean on npm's release workflows rather than manual file edits.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Version bump command",
      "description": "Uses `npm version <releaseType>` (optionally with `--no-git-tag-version` when git tagging is not desired) to bump the manifest for patch/minor/major releases instead of manually editing semver strings.",
      "max_score": 30
    },
    {
      "name": "Prerelease preid",
      "description": "For prerelease flows, invokes `npm version prerelease --preid=<identifier>` (or `npm version <type> --preid=<identifier>`) to produce semver-suffixed versions like 2.0.1-beta.0 using npm's built-in logic.",
      "max_score": 20
    },
    {
      "name": "Default tag update",
      "description": "After a stable release, assigns the new version to the primary channel via `npm dist-tag add <package>@<version> latest` (or equivalent default tag) rather than leaving tags untouched.",
      "max_score": 15
    },
    {
      "name": "Channel tagging",
      "description": "For non-default channels (e.g., next/beta), applies `npm dist-tag add <package>@<version> <channel>` and, when necessary, cleans outdated tags with `npm dist-tag rm` without overwriting the default channel unless explicitly intended.",
      "max_score": 15
    },
    {
      "name": "Tag inspection & dry-run",
      "description": "Retrieves current assignments with `npm dist-tag ls <package>` to guide operations and, when dryRun is requested, reports planned npm commands instead of executing `npm version` or `npm dist-tag add`/`rm`.",
      "max_score": 20
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-libnpmorg

tile.json