{
  "date": "2026-10-05",
  "runtime": "v24.19.0",
  "app_sha256": "b5b23e8c7028a1ee6ede9b41b459f5213af44661fc42f3d8c07b4a45f99c0644",
  "method": "Synthetic fixtures, not Claude samples. Actual homepage script in minimal DOM. Invisible checkbox on; dash Keep unless matrix says otherwise. Observations are fixture-specific, not general application tests.",
  "rows": [
    {
      "label": "Hidden suffix fragment",
      "stage": "direct string",
      "mode": "keep",
      "input": "report.t​xt",
      "output": "report.txt",
      "input_codepoints": "U+0072 U+0065 U+0070 U+006F U+0072 U+0074 U+002E U+0074 U+200B U+0078 U+0074",
      "output_codepoints": "U+0072 U+0065 U+0070 U+006F U+0072 U+0074 U+002E U+0074 U+0078 U+0074",
      "status": "Removed 1 invisible character",
      "before": {
        "extension": ".t​xt",
        "endsWithTxt": false,
        "equalsBaseline": false
      },
      "after": {
        "extension": ".txt",
        "endsWithTxt": true,
        "equalsBaseline": true
      }
    },
    {
      "label": "Hidden trailing marker",
      "stage": "direct string",
      "mode": "keep",
      "input": "report.txt​",
      "output": "report.txt",
      "input_codepoints": "U+0072 U+0065 U+0070 U+006F U+0072 U+0074 U+002E U+0074 U+0078 U+0074 U+200B",
      "output_codepoints": "U+0072 U+0065 U+0070 U+006F U+0072 U+0074 U+002E U+0074 U+0078 U+0074",
      "status": "Removed 1 invisible character",
      "before": {
        "extension": ".txt​",
        "endsWithTxt": false,
        "equalsBaseline": false
      },
      "after": {
        "extension": ".txt",
        "endsWithTxt": true,
        "equalsBaseline": true
      }
    },
    {
      "label": "Trailing NBSP",
      "stage": "direct string",
      "mode": "keep",
      "input": "report.txt ",
      "output": "report.txt ",
      "input_codepoints": "U+0072 U+0065 U+0070 U+006F U+0072 U+0074 U+002E U+0074 U+0078 U+0074 U+00A0",
      "output_codepoints": "U+0072 U+0065 U+0070 U+006F U+0072 U+0074 U+002E U+0074 U+0078 U+0074 U+00A0",
      "status": "No selected invisible characters found",
      "before": {
        "extension": ".txt ",
        "endsWithTxt": false,
        "equalsBaseline": false
      },
      "after": {
        "extension": ".txt ",
        "endsWithTxt": false,
        "equalsBaseline": false
      }
    },
    {
      "label": "Baseline name",
      "stage": "direct string",
      "mode": "keep",
      "input": "report.txt",
      "output": "report.txt",
      "input_codepoints": "U+0072 U+0065 U+0070 U+006F U+0072 U+0074 U+002E U+0074 U+0078 U+0074",
      "output_codepoints": "U+0072 U+0065 U+0070 U+006F U+0072 U+0074 U+002E U+0074 U+0078 U+0074",
      "status": "No selected invisible characters found",
      "before": {
        "extension": ".txt",
        "endsWithTxt": true,
        "equalsBaseline": true
      },
      "after": {
        "extension": ".txt",
        "endsWithTxt": true,
        "equalsBaseline": true
      }
    }
  ]
}