{
 "action": "Rewrite the block as shown; the failing call does not appear in the new version of the block.",
 "agent_rule": "Apply a correction on your own only when the installed version is one it was checked on (versions.checked_on: versions.fails_on and every recheck) and its proof.auto_apply is true (proof.equivalent is true and proof.applicability.status is applies). On a newer version than those checked, a version between versions.works_on and versions.fails_on, or an unknown version, show it to the user as a lead and do not apply it; on versions.works_on or older it does not apply.",
 "alternatives": [
  {
   "action": "Rewrite the block as shown; the failing call does not appear in the new version of the block.",
   "applicability": {
    "exit_code": 0,
    "line": 23,
    "method": "literal_patch",
    "occurrences": 1,
    "output": "same",
    "patched_sha": "3a6b0ad42668",
    "reason": "applied word for word, the patch parses, drops the old names, runs on 16.2.0 and prints what the verified example prints",
    "run_on": "16.2.0",
    "status": "applies"
   },
   "by_notes": true,
   "changelog_ref": {
    "quote": "Remove `isStream` option  c241c6c",
    "url": "https://github.com/sindresorhus/got/releases/tag/v15.0.0"
   },
   "confirmations": 1,
   "detect": [
    "isStream"
   ],
   "equivalence": "same",
   "format": "fragment",
   "kind": "removed",
   "right": "const stream = got.stream(`http://127.0.0.1:${port}/`, {",
   "script_right": "const http = require('node:http');\n\nasync function main() {\n  const { default: got } = await import('got');\n\n  const body = Array.from(\n    { length: 500 },\n    (_, i) => `Line ${i + 1}\\n`\n  ).join('');\n\n  const server = http.createServer((req, res) => {\n    res.writeHead(200, { 'Content-Type': 'text/plain; charset=utf-8' });\n    res.end(body);\n  });\n\n  await new Promise((resolve, reject) => {\n    server.once('error', reject);\n    server.listen(0, '127.0.0.1', resolve);\n  });\n\n  try {\n    const { port } = server.address();\n    const stream = got.stream(`http://127.0.0.1:${port}/`, {\n      retry: { limit: 0 }\n    });\n\n    let lineCount = 0;\n\n    for await (const chunk of stream) {\n      for (const byte of chunk) {\n        if (byte === 0x0a) lineCount++;\n      }\n    }\n\n    console.log(lineCount);\n  } finally {\n    await new Promise((resolve, reject) => {\n      server.close(error => (error ? reject(error) : resolve()));\n    });\n  }\n}\n\nmain().catch(error => {\n  console.error(error);\n  process.exitCode = 1;\n});",
   "script_wrong": "const http = require('node:http');\n\nasync function main() {\n  const { default: got } = await import('got');\n\n  const body = Array.from(\n    { length: 500 },\n    (_, i) => `Line ${i + 1}\\n`\n  ).join('');\n\n  const server = http.createServer((req, res) => {\n    res.writeHead(200, { 'Content-Type': 'text/plain; charset=utf-8' });\n    res.end(body);\n  });\n\n  await new Promise((resolve, reject) => {\n    server.once('error', reject);\n    server.listen(0, '127.0.0.1', resolve);\n  });\n\n  try {\n    const { port } = server.address();\n    const stream = got(`http://127.0.0.1:${port}/`, {\n      isStream: true,\n      retry: { limit: 0 }\n    });\n\n    let lineCount = 0;\n\n    for await (const chunk of stream) {\n      for (const byte of chunk) {\n        if (byte === 0x0a) lineCount++;\n      }\n    }\n\n    console.log(lineCount);\n  } finally {\n    await new Promise((resolve, reject) => {\n      server.close(error => (error ? reject(error) : resolve()));\n    });\n  }\n}\n\nmain().catch(error => {\n  console.error(error);\n  process.exitCode = 1;\n});",
   "seen_in_models": [
    "gpt-6.1-sol"
   ],
   "wrong": "const stream = got(`http://127.0.0.1:${port}/`, {\nisStream: true,"
  }
 ],
 "applicability": {
  "exit_code": 0,
  "line": 21,
  "method": "literal_patch",
  "occurrences": 1,
  "output": "same",
  "patched_sha": "d080dae98185",
  "reason": "applied word for word, the patch parses, drops the old names, runs on 16.2.0 and prints what the verified example prints",
  "run_on": "16.2.0",
  "status": "applies"
 },
 "by_notes": true,
 "changelog_ref": {
  "quote": "Remove `isStream` option  c241c6c",
  "url": "https://github.com/sindresorhus/got/releases/tag/v15.0.0"
 },
 "confirmations": {
  "failed": 0,
  "worked": 2
 },
 "confirmed_by": {
  "external_agents": 0,
  "sandbox": 2
 },
 "detect": [
  "isStream"
 ],
 "ecosystem": "npm",
 "equivalence": "same",
 "error_kind": "type_error",
 "error_signature": {
  "message": "response is not async iterable",
  "norm": "type_error:",
  "type": "TypeError"
 },
 "first_seen": "2026-11-05T06:48:54+00:00",
 "format": "fragment",
 "format_version": 2,
 "id": "npm/got/16.2.0/0003",
 "kind": "removed",
 "license": "https://creativecommons.org/licenses/by/4.0/",
 "package": "got",
 "proof": {
  "applicability": {
   "exit_code": 0,
   "line": 21,
   "method": "literal_patch",
   "occurrences": 1,
   "output": "same",
   "patched_sha": "d080dae98185",
   "reason": "applied word for word, the patch parses, drops the old names, runs on 16.2.0 and prints what the verified example prints",
   "run_on": "16.2.0",
   "status": "applies"
  },
  "auto_apply": true,
  "auto_apply_reason": "proof.equivalent is true and the patch applies word for word",
  "auto_apply_rule": "Automatic application is allowed only when proof.equivalent is true and proof.applicability.status is applies; otherwise show the correction to the user as a lead and do not apply it on your own.",
  "equivalence": "same",
  "equivalent": true,
  "fails_on": "16.2.0",
  "fixed_on": "16.2.0",
  "level": "differential",
  "method": {
   "fix_on": "16.2.0",
   "name": "stdout_match",
   "normalization": "lines stripped, blank lines dropped, runs of whitespace collapsed; memory addresses, timestamps and temporary paths masked",
   "original_on": "14.6.6",
   "scope": "the observable stdout of one example script; return values, files, other inputs and exception types are not compared, so a match is not a proof of equivalent behaviour"
  },
  "script_right": "const http = require('node:http');\n\nasync function main() {\n  const { default: got } = await import('got');\n\n  const server = http.createServer((req, res) => {\n    res.writeHead(200, { 'Content-Type': 'text/plain; charset=utf-8' });\n    for (let i = 1; i <= 500; i++) {\n      res.write(`Line ${i}\\n`);\n    }\n    res.end();\n  });\n\n  await new Promise((resolve, reject) => {\n    server.once('error', reject);\n    server.listen(0, '127.0.0.1', resolve);\n  });\n\n  try {\n    const { port } = server.address();\n    const response = got.stream(`http://127.0.0.1:${port}/`, {\n      retry: { limit: 0 }\n    });\n\n    let lineCount = 0;\n    for await (const chunk of response) {\n      for (const byte of chunk) {\n        if (byte === 10) lineCount++;\n      }\n    }\n\n    console.log(lineCount);\n  } finally {\n    await new Promise((resolve, reject) => {\n      server.close(error => (error ? reject(error) : resolve()));\n    });\n  }\n}\n\nmain().catch(error => {\n  console.error(error);\n  process.exitCode = 1;\n});",
  "script_wrong": "const http = require('node:http');\n\nasync function main() {\n  const { default: got } = await import('got');\n\n  const server = http.createServer((req, res) => {\n    res.writeHead(200, { 'Content-Type': 'text/plain; charset=utf-8' });\n    for (let i = 1; i <= 500; i++) {\n      res.write(`Line ${i}\\n`);\n    }\n    res.end();\n  });\n\n  await new Promise((resolve, reject) => {\n    server.once('error', reject);\n    server.listen(0, '127.0.0.1', resolve);\n  });\n\n  try {\n    const { port } = server.address();\n    const response = got(`http://127.0.0.1:${port}/`, {\n      isStream: true,\n      retry: { limit: 0 }\n    });\n\n    let lineCount = 0;\n    for await (const chunk of response) {\n      for (const byte of chunk) {\n        if (byte === 10) lineCount++;\n      }\n    }\n\n    console.log(lineCount);\n  } finally {\n    await new Promise((resolve, reject) => {\n      server.close(error => (error ? reject(error) : resolve()));\n    });\n  }\n}\n\nmain().catch(error => {\n  console.error(error);\n  process.exitCode = 1;\n});",
  "works_on": "14.6.6"
 },
 "right": "const response = got.stream(`http://127.0.0.1:${port}/`, {",
 "seen_in_models": [
  "gpt-6.1-sol"
 ],
 "seq": 3,
 "slug": "isstream",
 "source": "pipeline",
 "symbol": "isStream",
 "updated": "2026-11-05T06:48:54+00:00",
 "url": "https://formachines.ai/errata/npm/got/0003-isstream/",
 "variant_confirmations": 1,
 "variant_models": [
  "gpt-6.1-sol"
 ],
 "verified": "sandbox",
 "versions": {
  "changed_in": ">14.6.6,<=16.2.0",
  "checked_on": [
   "16.2.0"
  ],
  "fails_on": "16.2.0",
  "works_on": "14.6.6"
 },
 "wrong": "const response = got(`http://127.0.0.1:${port}/`, {\nisStream: true,"
}