{
  "schema_version": 1,
  "status": "selected_article_blocks_executed",
  "guide_id": 979,
  "guide_url": "https://mexela.com/blog/nodejs-fetch-undici-proxy/",
  "executed_date": "2026-10-20",
  "runtime": "Node.js 24.17.0 / Undici 6.29.0",
  "source_body_sha256": "1578d1f29786feb1e6de2331b8d27790ae7b1b2ec41bd929ed5207adda848f83",
  "code_fingerprint": {
    "blocks": 3,
    "sha256": "bc843e5773f6fd70c04f8f4f501d02efbcd56b3386fda41b1748e40625716ac5"
  },
  "checks_passed": 5,
  "checks": [
    {
      "name": "Undici article block 1 CONNECT",
      "passed": true,
      "source_block_indices": [
        1
      ],
      "adaptations": [
        "Reserved destination replaced by environment-selected loopback HTTPS endpoint; package imports resolved to existing local dependency."
      ],
      "command": [
        "node",
        ".\\reports\\seo-five-guide-execution-20261020\\undici-block-1.cjs"
      ],
      "result": {
        "exit_code": 0,
        "proxy_upstreams": 1,
        "proxy_connect_attempts": null,
        "destination_requests": 1,
        "denied": 0,
        "elapsed_ms": 347,
        "output": "{ status: 200 }",
        "error_type": null
      },
      "executed_program_sha256": "e4b4456b2937526f404b9e84ec8a7edecc45da7e78b256b2acd9ad1d56df21d3"
    },
    {
      "name": "Undici article block 2 CONNECT",
      "passed": true,
      "source_block_indices": [
        2
      ],
      "adaptations": [
        "Reserved destination replaced by environment-selected loopback HTTPS endpoint; package imports resolved to existing local dependency.",
        "Append status output and dispatcher close for isolated subprocess cleanup."
      ],
      "command": [
        "node",
        ".\\reports\\seo-five-guide-execution-20261020\\undici-block-2.cjs"
      ],
      "result": {
        "exit_code": 0,
        "proxy_upstreams": 1,
        "proxy_connect_attempts": null,
        "destination_requests": 1,
        "denied": 0,
        "elapsed_ms": 352,
        "output": "{\"status\":200}",
        "error_type": null
      },
      "executed_program_sha256": "9a25d293b5e80288265f97c2672e5dae7e3986bd3dd235584097f077b911c2c2"
    },
    {
      "name": "Undici article block 3 CONNECT",
      "passed": true,
      "source_block_indices": [
        3
      ],
      "adaptations": [
        "Reserved destination replaced by environment-selected loopback HTTPS endpoint; package imports resolved to existing local dependency.",
        "Authentication-only fragment composed with ProxyAgent import, request and cleanup from block1."
      ],
      "command": [
        "node",
        ".\\reports\\seo-five-guide-execution-20261020\\undici-block-3.cjs"
      ],
      "result": {
        "exit_code": 0,
        "proxy_upstreams": 1,
        "proxy_connect_attempts": null,
        "destination_requests": 1,
        "denied": 0,
        "elapsed_ms": 313,
        "output": "{\"status\":200}",
        "error_type": null
      },
      "executed_program_sha256": "7a5193ad2d54d694bcbddb969f6dcbebbb8265daf1c3b4de26f836954acf3bbf"
    },
    {
      "name": "Undici untrusted TLS rejected",
      "passed": true,
      "source_block_indices": [
        1
      ],
      "adaptations": [
        "No isolated CA supplied."
      ],
      "command": [
        "node",
        ".\\reports\\seo-five-guide-execution-20261020\\undici-block-1.cjs"
      ],
      "result": {
        "exit_code": 1,
        "proxy_upstreams": 1,
        "proxy_connect_attempts": null,
        "destination_requests": 0,
        "denied": 0,
        "elapsed_ms": 299,
        "output": null,
        "error_type": "certificate_rejected"
      },
      "executed_program_sha256": "e4b4456b2937526f404b9e84ec8a7edecc45da7e78b256b2acd9ad1d56df21d3"
    },
    {
      "name": "Undici missing proxy authentication rejected",
      "passed": true,
      "source_block_indices": [
        1
      ],
      "adaptations": [
        "Proxy URI omits in-memory fixture credentials."
      ],
      "command": [
        "node",
        ".\\reports\\seo-five-guide-execution-20261020\\undici-block-1.cjs"
      ],
      "result": {
        "exit_code": 1,
        "proxy_upstreams": 0,
        "proxy_connect_attempts": null,
        "destination_requests": 0,
        "denied": 1,
        "elapsed_ms": 304,
        "output": null,
        "error_type": "expected_failure"
      },
      "executed_program_sha256": "e4b4456b2937526f404b9e84ec8a7edecc45da7e78b256b2acd9ad1d56df21d3"
    }
  ],
  "findings": "The explicit ProxyAgent request, global-dispatcher request and separate Basic-token configuration reached the owned HTTPS fixture through real CONNECT sockets. The token fragment was composed with the import, request and cleanup from the first example. Untrusted TLS and missing proxy authentication were rejected before the destination received an HTTP request.",
  "limits": [
    "Only the stated Node.js and Undici versions ran. The reserved example destination was replaced by the owned loopback HTTPS endpoint; the global dispatcher existed only in its isolated subprocess. This does not qualify every Node version or environment.",
    "Local owned fixtures only. No production or commercial proxy requests, no public exit/geography/anonymity/speed/uptime certification, and no SEO or conversion effect inferred.",
    "Commands are the real invocation structure with local machine roots replaced; cached dependency locations and supplied environment values are intentionally not published.",
    "This dated receipt is an execution observation, not a claim that tested versions are the latest releases."
  ],
  "primary_documentation": "https://github.com/nodejs/undici/blob/v6.29.0/docs/docs/api/ProxyAgent.md"
}
