CtrlK
CommunityDocumentationLog inGet started
Tessl Logo

tessl/npm-xmlhttprequest

tessl install tessl/npm-xmlhttprequest@1.8.0

XMLHttpRequest for Node.js that emulates the browser XMLHttpRequest object

Agent Success

Agent success rate when using this tile

75%

Improvement

Agent success rate improvement when using this tile compared to baseline

1.15x

Baseline

Agent success rate without this tile

65%

rubric.jsonevals/scenario-2/

{
  "context": "Evaluates whether the solution uses xmlhttprequest correctly to stream text responses, surface status information, and handle bodyless responses while invoking chunk callbacks during LOADING progression. Focus is exclusively on proper use of the XMLHttpRequest API for the behaviors described in the spec.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Library wiring",
      "description": "Creates and configures an XMLHttpRequest instance from the xmlhttprequest package, using async requests via open(..., true) for GET/HEAD as specified.",
      "max_score": 15
    },
    {
      "name": "LOADING chunks",
      "description": "Listens for request progression (e.g., onreadystatechange with readyState === XMLHttpRequest.LOADING or equivalent) to detect new responseText segments and invokes the provided onChunk callback immediately for each newly streamed fragment in order.",
      "max_score": 30
    },
    {
      "name": "Response aggregation",
      "description": "Accumulates the full responseText from the XMLHttpRequest object without losing earlier chunks, returning the concatenated text exactly once when readyState reaches DONE.",
      "max_score": 20
    },
    {
      "name": "Status capture",
      "description": "Reads status and statusText from the XMLHttpRequest instance after completion and returns them verbatim (not hardcoded), including for non-2xx responses.",
      "max_score": 15
    },
    {
      "name": "Error responses",
      "description": "For error statuses (e.g., 503), still resolves with the streamed body and the xhr-provided status/statusText instead of throwing or suppressing the response data.",
      "max_score": 10
    },
    {
      "name": "Bodyless handling",
      "description": "Supports HEAD or other header-only responses by issuing the request with method \"HEAD\" via open, avoiding onChunk calls when responseText is empty, and returning an empty string body.",
      "max_score": 10
    }
  ]
}

Version

Workspace
tessl
Visibility
Public
Created
Last updated
Describes
npmpkg:npm/xmlhttprequest@1.8.x
tile.json