{
  "schemaVersion": 1,
  "generatedAt": "2026-09-13T00:30:11.230Z",
  "baseUrl": "http://localhost:3218",
  "methodology": {
    "route": "/pt/photo-hsl",
    "source": "tests/fixtures/images/demo-landscape.png",
    "publishedSource": "/hsl-guide/source.png",
    "sourceOwnership": "Project-owned, programmatically generated fixture.",
    "sourceDimensions": {
      "width": 1200,
      "height": 800
    },
    "editing": "One HSL color range changed per output; all global adjustments remained at zero.",
    "export": "PNG at original 1200x800 dimensions through the public editor UI.",
    "measurement": "Decoded output pixels compared with the source RGB channels; alpha is excluded because this fixture is opaque."
  },
  "environment": {
    "platform": "win32",
    "architecture": "x64",
    "logicalCpuCount": 12,
    "memoryGiB": 32,
    "node": "v24.21.0",
    "chromium": "151.0.7922.34",
    "viewport": "1440x900"
  },
  "colorRangeModel": {
    "ranges": [
      "red",
      "orange",
      "yellow",
      "green",
      "aqua",
      "blue",
      "purple",
      "magenta"
    ],
    "centersInDegrees": {
      "red": 0,
      "orange": 30,
      "yellow": 60,
      "green": 120,
      "aqua": 180,
      "blue": 240,
      "purple": 270,
      "magenta": 300
    },
    "influence": "Linear falloff from each range center to zero at 45 degrees of hue distance."
  },
  "source": {
    "publicPath": "/hsl-guide/source.png",
    "bytes": 23719
  },
  "outputs": [
    {
      "id": "blue",
      "range": "blue",
      "settings": {
        "hue": 0,
        "saturation": 45,
        "luminance": -15
      },
      "publicPath": "/hsl-guide/blue.png",
      "bytes": 37830,
      "pixelDifference": {
        "meanAbsoluteRgbDifference": 37.809,
        "maximumChannelDifference": 114,
        "changedPixelPercent": 98.49
      }
    },
    {
      "id": "purple",
      "range": "purple",
      "settings": {
        "hue": 35,
        "saturation": 30,
        "luminance": 0
      },
      "publicPath": "/hsl-guide/purple.png",
      "bytes": 36167,
      "pixelDifference": {
        "meanAbsoluteRgbDifference": 11.796,
        "maximumChannelDifference": 66,
        "changedPixelPercent": 63.533
      }
    },
    {
      "id": "yellow",
      "range": "yellow",
      "settings": {
        "hue": -25,
        "saturation": 35,
        "luminance": 15
      },
      "publicPath": "/hsl-guide/yellow.png",
      "bytes": 30604,
      "pixelDifference": {
        "meanAbsoluteRgbDifference": 0.287,
        "maximumChannelDifference": 44,
        "changedPixelPercent": 1.51
      }
    }
  ],
  "limitations": [
    "The controls target hue ranges, not recognized objects or semantic masks.",
    "Neighboring colors can receive partial influence because each range fades across nearby hue values.",
    "One synthetic image cannot predict results for portraits, natural textures, color casts, clipped channels, or other files.",
    "Pixel-difference measurements describe this fixture and these settings; they are not perceptual-quality scores."
  ]
}
