or run

npx @tessl/cli init
Log in

Version

Files

docs

index.mdport-configuration.mdport-finding.mdsocket-finding.md
tile.json

rubric.jsonevals/scenario-2/

{
  "context": "Evaluates how well the solution leverages portfinder to locate a single available TCP port via both Promise and callback flows. Checks that range constraints and host targeting use the library's options rather than ad-hoc probing. Rewards correct propagation of portfinder results and errors.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Promise API",
      "description": "Uses portfinder.getPortPromise with provided start/stop options to resolve a free port for the Promise-based entry point.",
      "max_score": 30
    },
    {
      "name": "Callback API",
      "description": "Uses portfinder.getPort with a Node-style callback to deliver a free port and propagate errors for the callback entry point.",
      "max_score": 30
    },
    {
      "name": "Range handling",
      "description": "Passes startPort/stopPort into portfinder options (or configures basePort/highestPort) so searches stay within the requested bounds and surface exhaustion errors.",
      "max_score": 20
    },
    {
      "name": "Host targeting",
      "description": "Supplies the host option to portfinder when a host is specified so the returned port is valid for that interface.",
      "max_score": 10
    },
    {
      "name": "Default configuration",
      "description": "Initializes portfinder defaults (basePort or highestPort) to match the spec's expected starting point before issuing lookups.",
      "max_score": 10
    }
  ]
}