{
  "generatedAt": "2026-08-27T01:32:14.151Z",
  "environment": {
    "node": "v26.7.0",
    "python": "3.14.6",
    "jq": "1.7.1-apple",
    "jqAvailable": true,
    "json5": "2.2.3",
    "jsoncParser": "3.3.1",
    "os": "Darwin 25.5.0",
    "machine": "Apple M5 Pro"
  },
  "cases": [
    {
      "id": "line-comment-object",
      "description": "Line comment before the first property of a multi-line object (the snippet the article shows)",
      "input": "{\n  // server settings\n  \"host\": \"localhost\",\n  \"port\": 8080 /* default */\n}",
      "parsers": {
        "V8 (Node.js v26.7.0) JSON.parse": {
          "accepted": false,
          "message": "Expected property name or '}' in JSON at position 4 (line 2 column 3)",
          "position": {
            "offset": 4,
            "line": 2,
            "column": 3
          }
        },
        "Python 3.14.6 json.loads": {
          "accepted": false,
          "message": "Expecting property name enclosed in double quotes: line 2 column 3 (char 4)",
          "position": {
            "line": 2,
            "column": 3,
            "offset": 4
          }
        },
        "jq jq-1.7.1-apple": {
          "accepted": false,
          "message": "jq: parse error: Invalid numeric literal at line 2, column 5",
          "position": {
            "line": 2,
            "column": 5,
            "offset": null
          }
        },
        "json5 2.2.3": {
          "accepted": true,
          "message": null,
          "position": null
        },
        "jsonc-parser 3.3.1": {
          "accepted": true,
          "message": null,
          "position": null
        }
      }
    },
    {
      "id": "line-comment-only",
      "description": "Line comment before the first property, no block comment",
      "input": "{\n  // server settings\n  \"host\": \"localhost\"\n}",
      "parsers": {
        "V8 (Node.js v26.7.0) JSON.parse": {
          "accepted": false,
          "message": "Expected property name or '}' in JSON at position 4 (line 2 column 3)",
          "position": {
            "offset": 4,
            "line": 2,
            "column": 3
          }
        },
        "Python 3.14.6 json.loads": {
          "accepted": false,
          "message": "Expecting property name enclosed in double quotes: line 2 column 3 (char 4)",
          "position": {
            "line": 2,
            "column": 3,
            "offset": 4
          }
        },
        "jq jq-1.7.1-apple": {
          "accepted": false,
          "message": "jq: parse error: Invalid numeric literal at line 2, column 5",
          "position": {
            "line": 2,
            "column": 5,
            "offset": null
          }
        },
        "json5 2.2.3": {
          "accepted": true,
          "message": null,
          "position": null
        },
        "jsonc-parser 3.3.1": {
          "accepted": true,
          "message": null,
          "position": null
        }
      }
    },
    {
      "id": "block-comment-after-value",
      "description": "Block comment after a value on a single line",
      "input": "{\"port\": 8080 /* default */}",
      "parsers": {
        "V8 (Node.js v26.7.0) JSON.parse": {
          "accepted": false,
          "message": "Expected ',' or '}' after property value in JSON at position 14 (line 1 column 15)",
          "position": {
            "offset": 14,
            "line": 1,
            "column": 15
          }
        },
        "Python 3.14.6 json.loads": {
          "accepted": false,
          "message": "Expecting ',' delimiter: line 1 column 15 (char 14)",
          "position": {
            "line": 1,
            "column": 15,
            "offset": 14
          }
        },
        "jq jq-1.7.1-apple": {
          "accepted": false,
          "message": "jq: parse error: Invalid numeric literal at line 1, column 17",
          "position": {
            "line": 1,
            "column": 17,
            "offset": null
          }
        },
        "json5 2.2.3": {
          "accepted": true,
          "message": null,
          "position": null
        },
        "jsonc-parser 3.3.1": {
          "accepted": true,
          "message": null,
          "position": null
        }
      }
    },
    {
      "id": "block-comment-before-value",
      "description": "Block comment standing where a value is expected",
      "input": "{\"port\": /* default */ 8080}",
      "parsers": {
        "V8 (Node.js v26.7.0) JSON.parse": {
          "accepted": false,
          "message": "Unexpected token '/', \"{\"port\": /* default\"... is not valid JSON",
          "position": null
        },
        "Python 3.14.6 json.loads": {
          "accepted": false,
          "message": "Expecting value: line 1 column 10 (char 9)",
          "position": {
            "line": 1,
            "column": 10,
            "offset": 9
          }
        },
        "jq jq-1.7.1-apple": {
          "accepted": false,
          "message": "jq: parse error: Invalid numeric literal at line 1, column 12",
          "position": {
            "line": 1,
            "column": 12,
            "offset": null
          }
        },
        "json5 2.2.3": {
          "accepted": true,
          "message": null,
          "position": null
        },
        "jsonc-parser 3.3.1": {
          "accepted": true,
          "message": null,
          "position": null
        }
      }
    },
    {
      "id": "valid-baseline",
      "description": "Same object with no comments - negative control that every parser must accept",
      "input": "{\n  \"host\": \"localhost\",\n  \"port\": 8080\n}",
      "parsers": {
        "V8 (Node.js v26.7.0) JSON.parse": {
          "accepted": true,
          "message": null,
          "position": null
        },
        "Python 3.14.6 json.loads": {
          "accepted": true,
          "message": null,
          "position": null
        },
        "jq jq-1.7.1-apple": {
          "accepted": true,
          "message": null,
          "position": null
        },
        "json5 2.2.3": {
          "accepted": true,
          "message": null,
          "position": null
        },
        "jsonc-parser 3.3.1": {
          "accepted": true,
          "message": null,
          "position": null
        }
      }
    }
  ]
}
