{
  "spec": "knownfix-catalog/0.1",
  "store": "KnownFix",
  "tagline": "Verified fixes, priced below the tokens it takes to re-derive them.",
  "pricing": {
    "perFix": {
      "wei": "20000000000000",
      "display": "0.00002 ETH on Base (~$0.08)",
      "note": "Base mainnet; ~$0.08 varies with ETH price"
    }
  },
  "provenance": "Every entry marked verified-in-production was reproduced and fixed in a real working session, not scraped. Confidence levels are honest: 'documented' means sourced from platform documentation, not independently reproduced here.",
  "mcp": "https://knownfix-backend-28.b-hash88.deno.net/mcp",
  "tier": "free — signatures and titles; sample:true entries serve full bodies free; other bodies are paid",
  "entries": [
    {
      "id": "oz5-mcopy-cancun",
      "title": "OpenZeppelin 5.x fails to compile: Function \"mcopy\" not found",
      "signature": "DeclarationError: Function \"mcopy\" not found",
      "tags": [
        "solidity",
        "hardhat",
        "openzeppelin",
        "compile"
      ],
      "confidence": "verified-in-production",
      "sample": true,
      "page": "https://b-hash88.github.io/knownfix/fixes/oz5-mcopy-cancun.md"
    },
    {
      "id": "hardhat-verify-peer-conflict",
      "title": "npm ERESOLVE installing @nomicfoundation/hardhat-verify with Hardhat 2",
      "signature": "peer hardhat@\"^3.12.0\" from @nomicfoundation/hardhat-verify",
      "tags": [
        "npm",
        "hardhat",
        "dependencies"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/hardhat-verify-peer-conflict.md"
    },
    {
      "id": "mcp-stdio-env-not-inherited",
      "title": "Env var set for an MCP stdio server never arrives",
      "signature": "MCP server ignores environment variable set in parent shell",
      "tags": [
        "mcp",
        "stdio",
        "environment",
        "secrets"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/mcp-stdio-env-not-inherited.md"
    },
    {
      "id": "ethers6-custom-error-unnamed",
      "title": "ethers v6 reports 'execution reverted (unknown custom error)' though the ABI defines it",
      "signature": "execution reverted (unknown custom error)",
      "tags": [
        "ethers",
        "solidity",
        "errors",
        "testing"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/ethers6-custom-error-unnamed.md"
    },
    {
      "id": "hardhat-wait-confirmations-hang",
      "title": "deploymentTransaction().wait(N>1) hangs forever on a local Hardhat node",
      "signature": "wait(2) never resolves on localhost 31337",
      "tags": [
        "hardhat",
        "deploy",
        "localhost"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/hardhat-wait-confirmations-hang.md"
    },
    {
      "id": "windows-libuv-assert-on-exit",
      "title": "Node on Windows: 'Assertion failed: !(handle->flags & UV_HANDLE_CLOSING)' at exit",
      "signature": "Assertion failed: !(handle->flags & UV_HANDLE_CLOSING), file src\\win\\async.c",
      "tags": [
        "node",
        "windows",
        "ethers",
        "process"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/windows-libuv-assert-on-exit.md"
    },
    {
      "id": "node-test-dir-arg-windows",
      "title": "node --test with a bare directory argument fails with a nameless failing 'test'",
      "signature": "test at test:1:1 ... 'test failed' with zero real tests run",
      "tags": [
        "node",
        "testing",
        "windows"
      ],
      "confidence": "verified-in-production",
      "sample": true,
      "page": "https://b-hash88.github.io/knownfix/fixes/node-test-dir-arg-windows.md"
    },
    {
      "id": "solidity-panic-0x32-derived-index",
      "title": "Panic 0x32 (array out-of-bounds) in a view function that 'cannot' be wrong",
      "signature": "reverted with panic code 0x32",
      "tags": [
        "solidity",
        "arrays",
        "fuzzing"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/solidity-panic-0x32-derived-index.md"
    },
    {
      "id": "npm-install-silent-failure",
      "title": "npm install 'succeeded' but the package is not there",
      "signature": "Cannot find module 'X' immediately after npm i X appeared to succeed",
      "tags": [
        "npm",
        "dependencies",
        "ci"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/npm-install-silent-failure.md"
    },
    {
      "id": "ps51-no-pipeline-chain-operators",
      "title": "PowerShell 5.1: '&&' and '||' are parser errors",
      "signature": "The token '&&' is not a valid statement separator in this version",
      "tags": [
        "powershell",
        "windows",
        "shell"
      ],
      "confidence": "documented",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/ps51-no-pipeline-chain-operators.md"
    },
    {
      "id": "ethers6-sequential-nonce-reuse",
      "title": "ethers v6: 'nonce has already been used' on back-to-back transactions",
      "signature": "nonce has already been used",
      "tags": [
        "ethers",
        "nonce",
        "transactions"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/ethers6-sequential-nonce-reuse.md"
    },
    {
      "id": "msys-curl-format-path-mangling",
      "title": "curl -w format strings mangled into C:/Program Files/Git/ paths on git-bash",
      "signature": "C:/Program Files/Git/ prefixed onto strings that started with a forward slash",
      "tags": [
        "windows",
        "git-bash",
        "msys",
        "curl"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/msys-curl-format-path-mangling.md"
    },
    {
      "id": "localtunnel-dies-with-parent-shell",
      "title": "localtunnel started with & goes dead (408) after the launching shell exits",
      "signature": "tunnel URL returns 408 minutes after working",
      "tags": [
        "localtunnel",
        "tunnels",
        "processes"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/localtunnel-dies-with-parent-shell.md"
    },
    {
      "id": "free-tunnel-noindex-interstitial",
      "title": "Search engines cannot index a site behind a free tunnel",
      "signature": "crawler receives 'Tunnel website ahead!' page with meta robots noindex",
      "tags": [
        "seo",
        "tunnels",
        "crawlers",
        "indexing"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/free-tunnel-noindex-interstitial.md"
    },
    {
      "id": "gh-pages-deploy-lag",
      "title": "File 404s on GitHub Pages for a minute or two after a successful push",
      "signature": "fresh push visible in repo but 404 on the pages URL",
      "tags": [
        "github-pages",
        "deploy",
        "ci"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/gh-pages-deploy-lag.md"
    },
    {
      "id": "err-package-path-not-exported-probe",
      "title": "Probing a dependency via require('X/package.json') throws ERR_PACKAGE_PATH_NOT_EXPORTED",
      "signature": "Package subpath './package.json' is not defined by \"exports\"",
      "tags": [
        "node",
        "npm",
        "exports-map"
      ],
      "confidence": "verified-in-production",
      "sample": true,
      "page": "https://b-hash88.github.io/knownfix/fixes/err-package-path-not-exported-probe.md"
    },
    {
      "id": "gh-cli-second-account-device-flow",
      "title": "Adding a second GitHub account to the gh CLI without touching credentials",
      "signature": "gh auth switch says 'no accounts matched that criteria' for a browser-logged-in account",
      "tags": [
        "github",
        "gh-cli",
        "auth",
        "agents"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/gh-cli-second-account-device-flow.md"
    },
    {
      "id": "npm-publish-2fa-403",
      "title": "npm publish 403: two-factor authentication or bypass-2fa token required",
      "signature": "403 Forbidden - PUT https://registry.npmjs.org/... Two-factor authentication or granular access token with bypass 2fa enabled is required to publish packages",
      "tags": [
        "npm",
        "publish",
        "2fa",
        "tokens"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/npm-publish-2fa-403.md"
    },
    {
      "id": "npm-granular-token-new-package-404",
      "title": "npm publish E404 on a brand-new package with a granular access token",
      "signature": "npm error 404 Not Found - PUT https://registry.npmjs.org/<pkg> - The requested resource could not be found or you do not have permission",
      "tags": [
        "npm",
        "publish",
        "tokens",
        "permissions"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/npm-granular-token-new-package-404.md"
    },
    {
      "id": "powershell-readhost-prompt-secret",
      "title": "PowerShell Read-Host: secret pasted into the prompt string yields an empty variable",
      "signature": "$t = Read-Host \"<the secret itself>\" ... later auth fails with ENEEDAUTH / empty credential",
      "tags": [
        "powershell",
        "windows",
        "secrets",
        "shell"
      ],
      "confidence": "verified-in-production",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/powershell-readhost-prompt-secret.md"
    },
    {
      "id": "mcp-tool-search-batching",
      "title": "Loading deferred MCP tools one at a time wastes a round-trip per tool",
      "signature": "repeated ToolSearch select: calls for tools from the same server",
      "tags": [
        "mcp",
        "agents",
        "performance"
      ],
      "confidence": "documented",
      "sample": false,
      "page": "https://b-hash88.github.io/knownfix/fixes/mcp-tool-search-batching.md"
    }
  ]
}