{
  "cases": {
    "accent_missing": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 429.556125,
        "median": 400.589708,
        "min": 398.579166,
        "n": 3,
        "samples": [
          400.589708,
          398.579166,
          429.556125
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.9743,
          "dx": -0.0,
          "dy": 0.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              136,
              390,
              88,
              92
            ],
            "observed": "a reference region at x=136,y=390 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              536,
              496,
              88,
              92
            ],
            "observed": "a reference region at x=536,y=496 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              36,
              178,
              88,
              92
            ],
            "observed": "a reference region at x=36,y=178 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              436,
              284,
              88,
              92
            ],
            "observed": "a reference region at x=436,y=284 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 80.82157666374721,
              "near_uniform": false,
              "rgb_stddev_max": 86.20106489565393
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 97.9270246455535,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 96.27,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "8b2b70e825c548c0a15c72829678994d19894f1f32d31c5d71fb9f4a7798b376",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "2267731361592db563563dec3a9df3012f2f0683584a6a0a3ac6eb1193bc2563",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.2085964119963724,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 1.0012164274148452,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 1.0012164274148452,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.18773677079673518
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 94.87,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 25,
              "coverage": 0.923,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 4,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 92.35,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.9743,
                "dx": -0.0,
                "dy": 0.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9793
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 97.93,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 100.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.893,
              "cand": {
                "area_frac": 0.0353,
                "count": 50,
                "median_h": 14.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 94.66,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 400.589708,
          "result": {
            "alignment": {
              "cc": 0.9743,
              "dx": -0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  136,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=136,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  536,
                  496,
                  88,
                  92
                ],
                "observed": "a reference region at x=536,y=496 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  36,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=36,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 80.82157666374721,
                  "near_uniform": false,
                  "rgb_stddev_max": 86.20106489565393
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 97.9270246455535,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 96.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "8b2b70e825c548c0a15c72829678994d19894f1f32d31c5d71fb9f4a7798b376",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "2267731361592db563563dec3a9df3012f2f0683584a6a0a3ac6eb1193bc2563",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.2085964119963724,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.0012164274148452,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.0012164274148452,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.18773677079673518
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 94.87,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.923,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 4,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 92.35,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9743,
                    "dx": -0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9793
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 97.93,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.893,
                  "cand": {
                    "area_frac": 0.0353,
                    "count": 50,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 94.66,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "fc1bd83175f35b958b70a71eef45fdd76a1ee404ac2957fb43f56228c4c86cc4"
        },
        {
          "elapsed_ms": 398.579166,
          "result": {
            "alignment": {
              "cc": 0.9743,
              "dx": -0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  136,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=136,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  536,
                  496,
                  88,
                  92
                ],
                "observed": "a reference region at x=536,y=496 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  36,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=36,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 80.82157666374721,
                  "near_uniform": false,
                  "rgb_stddev_max": 86.20106489565393
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 97.9270246455535,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 96.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "8b2b70e825c548c0a15c72829678994d19894f1f32d31c5d71fb9f4a7798b376",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "2267731361592db563563dec3a9df3012f2f0683584a6a0a3ac6eb1193bc2563",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.2085964119963724,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.0012164274148452,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.0012164274148452,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.18773677079673518
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 94.87,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.923,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 4,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 92.35,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9743,
                    "dx": -0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9793
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 97.93,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.893,
                  "cand": {
                    "area_frac": 0.0353,
                    "count": 50,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 94.66,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "fc1bd83175f35b958b70a71eef45fdd76a1ee404ac2957fb43f56228c4c86cc4"
        },
        {
          "elapsed_ms": 429.556125,
          "result": {
            "alignment": {
              "cc": 0.9743,
              "dx": -0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  136,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=136,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  536,
                  496,
                  88,
                  92
                ],
                "observed": "a reference region at x=536,y=496 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  36,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=36,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 80.82157666374721,
                  "near_uniform": false,
                  "rgb_stddev_max": 86.20106489565393
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 97.9270246455535,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 96.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "8b2b70e825c548c0a15c72829678994d19894f1f32d31c5d71fb9f4a7798b376",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "2267731361592db563563dec3a9df3012f2f0683584a6a0a3ac6eb1193bc2563",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.2085964119963724,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.0012164274148452,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.0012164274148452,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.18773677079673518
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 94.87,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.923,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 4,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 92.35,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9743,
                    "dx": -0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9793
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 97.93,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.893,
                  "cand": {
                    "area_frac": 0.0353,
                    "count": 50,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 94.66,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "fc1bd83175f35b958b70a71eef45fdd76a1ee404ac2957fb43f56228c4c86cc4"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 398.533917,
          "result": {
            "alignment": {
              "cc": 0.9743,
              "dx": -0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  136,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=136,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  536,
                  496,
                  88,
                  92
                ],
                "observed": "a reference region at x=536,y=496 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  36,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=36,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 80.82157666374721,
                  "near_uniform": false,
                  "rgb_stddev_max": 86.20106489565393
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 97.9270246455535,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 96.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "8b2b70e825c548c0a15c72829678994d19894f1f32d31c5d71fb9f4a7798b376",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "2267731361592db563563dec3a9df3012f2f0683584a6a0a3ac6eb1193bc2563",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.2085964119963724,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.0012164274148452,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.0012164274148452,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.18773677079673518
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 94.87,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.923,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 4,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 92.35,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9743,
                    "dx": -0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9793
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 97.93,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.893,
                  "cand": {
                    "area_frac": 0.0353,
                    "count": 50,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 94.66,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "fc1bd83175f35b958b70a71eef45fdd76a1ee404ac2957fb43f56228c4c86cc4"
        }
      ]
    },
    "accent_recolored": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 406.133208,
        "median": 394.599958,
        "min": 390.386291,
        "n": 3,
        "samples": [
          406.133208,
          394.599958,
          390.386291
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.9999,
          "dx": 0.0,
          "dy": -0.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.53886612028334,
              "near_uniform": false,
              "rgb_stddev_max": 85.98131462712692
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 99.99492684108111,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 99.14,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "994dbe6f5660545a3dfe2db37b568449bea3d3f7b14673e9b1be7f89973774ca",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "2fd7319a72b81875d2353a1ec37d78c0ad40e6f6e0725f13976895c8b4d7e1ba",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.72687774840108,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.8171531476803578,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.8171531476803578,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.654189973560972
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 95.79,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.9999,
                "dx": 0.0,
                "dy": -0.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9999
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 99.99,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 100.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 406.133208,
          "result": {
            "alignment": {
              "cc": 0.9999,
              "dx": 0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.53886612028334,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.98131462712692
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 99.99492684108111,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 99.14,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "994dbe6f5660545a3dfe2db37b568449bea3d3f7b14673e9b1be7f89973774ca",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "2fd7319a72b81875d2353a1ec37d78c0ad40e6f6e0725f13976895c8b4d7e1ba",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.72687774840108,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.8171531476803578,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.8171531476803578,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.654189973560972
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 95.79,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9999,
                    "dx": 0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "b36e0e4dcd5590f38616844ba0df8a8d257bd45440a2de53af1721882df37c8e"
        },
        {
          "elapsed_ms": 394.599958,
          "result": {
            "alignment": {
              "cc": 0.9999,
              "dx": 0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.53886612028334,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.98131462712692
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 99.99492684108111,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 99.14,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "994dbe6f5660545a3dfe2db37b568449bea3d3f7b14673e9b1be7f89973774ca",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "2fd7319a72b81875d2353a1ec37d78c0ad40e6f6e0725f13976895c8b4d7e1ba",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.72687774840108,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.8171531476803578,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.8171531476803578,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.654189973560972
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 95.79,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9999,
                    "dx": 0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "b36e0e4dcd5590f38616844ba0df8a8d257bd45440a2de53af1721882df37c8e"
        },
        {
          "elapsed_ms": 390.386291,
          "result": {
            "alignment": {
              "cc": 0.9999,
              "dx": 0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.53886612028334,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.98131462712692
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 99.99492684108111,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 99.14,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "994dbe6f5660545a3dfe2db37b568449bea3d3f7b14673e9b1be7f89973774ca",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "2fd7319a72b81875d2353a1ec37d78c0ad40e6f6e0725f13976895c8b4d7e1ba",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.72687774840108,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.8171531476803578,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.8171531476803578,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.654189973560972
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 95.79,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9999,
                    "dx": 0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "b36e0e4dcd5590f38616844ba0df8a8d257bd45440a2de53af1721882df37c8e"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 383.557584,
          "result": {
            "alignment": {
              "cc": 0.9999,
              "dx": 0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.53886612028334,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.98131462712692
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 99.99492684108111,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 99.14,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "994dbe6f5660545a3dfe2db37b568449bea3d3f7b14673e9b1be7f89973774ca",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "2fd7319a72b81875d2353a1ec37d78c0ad40e6f6e0725f13976895c8b4d7e1ba",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.72687774840108,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.8171531476803578,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.8171531476803578,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.654189973560972
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 95.79,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9999,
                    "dx": 0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "b36e0e4dcd5590f38616844ba0df8a8d257bd45440a2de53af1721882df37c8e"
        }
      ]
    },
    "color_mass_50_to_50": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 176.975166,
        "median": 171.258333,
        "min": 166.410875,
        "n": 3,
        "samples": [
          171.258333,
          176.975166,
          166.410875
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 160,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 160,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 160,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 109.0,
              "near_uniform": false,
              "rgb_stddev_max": 109.0
            },
            "reference": {
              "gray_stddev": 109.0,
              "near_uniform": false,
              "rgb_stddev_max": 109.0
            }
          },
          "issues": [],
          "layout_identity_score": 100.0,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 100.0,
        "preset": "default",
        "provenance": {
          "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
          "inputs": {
            "candidate": {
              "height": 160,
              "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
              "width": 768
            },
            "reference": {
              "height": 160,
              "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
              "width": 768
            }
          },
          "run_key": "734772a6a1f9b10dc9fb074fbf2368ea2cd2fe77c6d602d0f13676e67620bd20",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.0,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.0,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.0,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.0
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 1
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.0,
                "mean_gap": 0.0,
                "right": 0.4987,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.0,
                "left": 0.0,
                "mean_gap": 0.0,
                "right": 0.4987,
                "top": 0.0
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 100.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 171.258333,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "734772a6a1f9b10dc9fb074fbf2368ea2cd2fe77c6d602d0f13676e67620bd20",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "a9f9af7733c8a5ec4e11ecb97605a0aa8937ce3fc4bfa980084ea0b0987a41da"
        },
        {
          "elapsed_ms": 176.975166,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "734772a6a1f9b10dc9fb074fbf2368ea2cd2fe77c6d602d0f13676e67620bd20",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "a9f9af7733c8a5ec4e11ecb97605a0aa8937ce3fc4bfa980084ea0b0987a41da"
        },
        {
          "elapsed_ms": 166.410875,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "734772a6a1f9b10dc9fb074fbf2368ea2cd2fe77c6d602d0f13676e67620bd20",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "a9f9af7733c8a5ec4e11ecb97605a0aa8937ce3fc4bfa980084ea0b0987a41da"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 169.024833,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "734772a6a1f9b10dc9fb074fbf2368ea2cd2fe77c6d602d0f13676e67620bd20",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "a9f9af7733c8a5ec4e11ecb97605a0aa8937ce3fc4bfa980084ea0b0987a41da"
        }
      ]
    },
    "color_mass_50_to_56_25": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 233.972417,
        "median": 175.701125,
        "min": 167.611083,
        "n": 3,
        "samples": [
          167.611083,
          175.701125,
          233.972417
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 160,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 160,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 160,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              0,
              0,
              385,
              160
            ],
            "observed": "a reference region at x=0,y=0 (385x160) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 5.41 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          },
          {
            "area": "spacing",
            "observed": "left margin differs: reference ~0.0% vs candidate ~56.1% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the left margin toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              431,
              0,
              337,
              160
            ],
            "observed": "an extra region at x=431,y=0 (337x160) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 108.14508483976515,
              "near_uniform": false,
              "rgb_stddev_max": 108.14508483976515
            },
            "reference": {
              "gray_stddev": 109.0,
              "near_uniform": false,
              "rgb_stddev_max": 109.0
            }
          },
          "issues": [],
          "layout_identity_score": 94.1591843861444,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 36.99,
        "preset": "default",
        "provenance": {
          "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
          "inputs": {
            "candidate": {
              "height": 160,
              "rgb_sha256": "0a9451251ea4938db3acbab1ba1a56674e8d46e6cd30765f66caae29dc2b935f",
              "width": 768
            },
            "reference": {
              "height": 160,
              "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
              "width": 768
            }
          },
          "run_key": "01d85621bc6b6aaaa4011428764cf01d431def6591c9b1d1e456687bd5bdf6f1",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.011446560836521352,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 5.4051124566646545,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 5.4051124566646545,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.010301904752869217
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 75.24,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 1,
              "ref_regions": 1
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9416
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 94.16,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.5612,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.0,
                "left": 0.0,
                "mean_gap": 0.0,
                "right": 0.4987,
                "top": 0.0
              },
              "sims": {
                "bottom": 1.0,
                "left": 0.0,
                "mean_gap": 1.0,
                "right": 0.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 60.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 167.611083,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 5.41 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~56.1% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  431,
                  0,
                  337,
                  160
                ],
                "observed": "an extra region at x=431,y=0 (337x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 108.14508483976515,
                  "near_uniform": false,
                  "rgb_stddev_max": 108.14508483976515
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 94.1591843861444,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 36.99,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "0a9451251ea4938db3acbab1ba1a56674e8d46e6cd30765f66caae29dc2b935f",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "01d85621bc6b6aaaa4011428764cf01d431def6591c9b1d1e456687bd5bdf6f1",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.011446560836521352,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 5.4051124566646545,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 5.4051124566646545,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.010301904752869217
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 75.24,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9416
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.5612,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "ff700ebbc69878deac8fd8301762a8a75e71f2a9eda525011653200e9e51732e"
        },
        {
          "elapsed_ms": 175.701125,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 5.41 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~56.1% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  431,
                  0,
                  337,
                  160
                ],
                "observed": "an extra region at x=431,y=0 (337x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 108.14508483976515,
                  "near_uniform": false,
                  "rgb_stddev_max": 108.14508483976515
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 94.1591843861444,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 36.99,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "0a9451251ea4938db3acbab1ba1a56674e8d46e6cd30765f66caae29dc2b935f",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "01d85621bc6b6aaaa4011428764cf01d431def6591c9b1d1e456687bd5bdf6f1",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.011446560836521352,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 5.4051124566646545,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 5.4051124566646545,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.010301904752869217
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 75.24,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9416
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.5612,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "ff700ebbc69878deac8fd8301762a8a75e71f2a9eda525011653200e9e51732e"
        },
        {
          "elapsed_ms": 233.972417,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 5.41 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~56.1% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  431,
                  0,
                  337,
                  160
                ],
                "observed": "an extra region at x=431,y=0 (337x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 108.14508483976515,
                  "near_uniform": false,
                  "rgb_stddev_max": 108.14508483976515
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 94.1591843861444,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 36.99,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "0a9451251ea4938db3acbab1ba1a56674e8d46e6cd30765f66caae29dc2b935f",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "01d85621bc6b6aaaa4011428764cf01d431def6591c9b1d1e456687bd5bdf6f1",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.011446560836521352,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 5.4051124566646545,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 5.4051124566646545,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.010301904752869217
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 75.24,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9416
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.5612,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "ff700ebbc69878deac8fd8301762a8a75e71f2a9eda525011653200e9e51732e"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 164.868416,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 5.41 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~56.1% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  431,
                  0,
                  337,
                  160
                ],
                "observed": "an extra region at x=431,y=0 (337x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 108.14508483976515,
                  "near_uniform": false,
                  "rgb_stddev_max": 108.14508483976515
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 94.1591843861444,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 36.99,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "0a9451251ea4938db3acbab1ba1a56674e8d46e6cd30765f66caae29dc2b935f",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "01d85621bc6b6aaaa4011428764cf01d431def6591c9b1d1e456687bd5bdf6f1",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.011446560836521352,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 5.4051124566646545,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 5.4051124566646545,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.010301904752869217
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 75.24,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9416
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.5612,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "ff700ebbc69878deac8fd8301762a8a75e71f2a9eda525011653200e9e51732e"
        }
      ]
    },
    "color_mass_50_to_62_5": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 201.82675,
        "median": 175.0225,
        "min": 174.189375,
        "n": 3,
        "samples": [
          174.189375,
          201.82675,
          175.0225
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 160,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 160,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 160,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              0,
              0,
              385,
              160
            ],
            "observed": "a reference region at x=0,y=0 (385x160) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 10.81 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          },
          {
            "area": "spacing",
            "observed": "left margin differs: reference ~0.0% vs candidate ~62.4% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the left margin toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              479,
              0,
              289,
              160
            ],
            "observed": "an extra region at x=479,y=0 (289x160) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 105.5387961841521,
              "near_uniform": false,
              "rgb_stddev_max": 105.5387961841521
            },
            "reference": {
              "gray_stddev": 109.0,
              "near_uniform": false,
              "rgb_stddev_max": 109.0
            }
          },
          "issues": [],
          "layout_identity_score": 89.27611705527592,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 33.84,
        "preset": "default",
        "provenance": {
          "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
          "inputs": {
            "candidate": {
              "height": 160,
              "rgb_sha256": "52a09f81c0cae954d3cebb8c623cb22910f8cf5bfd2f3465438b96ed808a880d",
              "width": 768
            },
            "reference": {
              "height": 160,
              "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
              "width": 768
            }
          },
          "run_key": "32c27ae134538f0e3285556bb3d5b02b76aa25550da9fcddca5871dd4bede51c",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.02932797272379097,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 10.810224913329547,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 10.810224913329547,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.026395175451411873
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 56.61,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 1,
              "ref_regions": 1
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.8928
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 89.28,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.6237,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.0,
                "left": 0.0,
                "mean_gap": 0.0,
                "right": 0.4987,
                "top": 0.0
              },
              "sims": {
                "bottom": 1.0,
                "left": 0.0,
                "mean_gap": 1.0,
                "right": 0.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 60.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 174.189375,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 10.81 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~62.4% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  479,
                  0,
                  289,
                  160
                ],
                "observed": "an extra region at x=479,y=0 (289x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 105.5387961841521,
                  "near_uniform": false,
                  "rgb_stddev_max": 105.5387961841521
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 89.27611705527592,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 33.84,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "52a09f81c0cae954d3cebb8c623cb22910f8cf5bfd2f3465438b96ed808a880d",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "32c27ae134538f0e3285556bb3d5b02b76aa25550da9fcddca5871dd4bede51c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.02932797272379097,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.810224913329547,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 10.810224913329547,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.026395175451411873
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 56.61,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8928
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 89.28,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.6237,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "7f7babbc89986d3c58b6c151cd208cbb26da3e145db9e135a3a87f5f02f989b3"
        },
        {
          "elapsed_ms": 201.82675,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 10.81 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~62.4% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  479,
                  0,
                  289,
                  160
                ],
                "observed": "an extra region at x=479,y=0 (289x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 105.5387961841521,
                  "near_uniform": false,
                  "rgb_stddev_max": 105.5387961841521
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 89.27611705527592,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 33.84,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "52a09f81c0cae954d3cebb8c623cb22910f8cf5bfd2f3465438b96ed808a880d",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "32c27ae134538f0e3285556bb3d5b02b76aa25550da9fcddca5871dd4bede51c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.02932797272379097,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.810224913329547,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 10.810224913329547,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.026395175451411873
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 56.61,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8928
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 89.28,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.6237,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "7f7babbc89986d3c58b6c151cd208cbb26da3e145db9e135a3a87f5f02f989b3"
        },
        {
          "elapsed_ms": 175.0225,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 10.81 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~62.4% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  479,
                  0,
                  289,
                  160
                ],
                "observed": "an extra region at x=479,y=0 (289x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 105.5387961841521,
                  "near_uniform": false,
                  "rgb_stddev_max": 105.5387961841521
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 89.27611705527592,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 33.84,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "52a09f81c0cae954d3cebb8c623cb22910f8cf5bfd2f3465438b96ed808a880d",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "32c27ae134538f0e3285556bb3d5b02b76aa25550da9fcddca5871dd4bede51c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.02932797272379097,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.810224913329547,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 10.810224913329547,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.026395175451411873
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 56.61,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8928
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 89.28,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.6237,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "7f7babbc89986d3c58b6c151cd208cbb26da3e145db9e135a3a87f5f02f989b3"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 190.812333,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 10.81 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~62.4% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  479,
                  0,
                  289,
                  160
                ],
                "observed": "an extra region at x=479,y=0 (289x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 105.5387961841521,
                  "near_uniform": false,
                  "rgb_stddev_max": 105.5387961841521
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 89.27611705527592,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 33.84,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "52a09f81c0cae954d3cebb8c623cb22910f8cf5bfd2f3465438b96ed808a880d",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "32c27ae134538f0e3285556bb3d5b02b76aa25550da9fcddca5871dd4bede51c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.02932797272379097,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.810224913329547,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 10.810224913329547,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.026395175451411873
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 56.61,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8928
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 89.28,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.6237,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "7f7babbc89986d3c58b6c151cd208cbb26da3e145db9e135a3a87f5f02f989b3"
        }
      ]
    },
    "color_mass_50_to_81_25": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 226.032334,
        "median": 174.070792,
        "min": 169.330833,
        "n": 3,
        "samples": [
          169.330833,
          226.032334,
          174.070792
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 160,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 160,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 160,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              0,
              0,
              385,
              160
            ],
            "observed": "a reference region at x=0,y=0 (385x160) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 27.03 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          },
          {
            "area": "spacing",
            "observed": "left margin differs: reference ~0.0% vs candidate ~81.1% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the left margin toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              623,
              0,
              145,
              160
            ],
            "observed": "an extra region at x=623,y=0 (145x160) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 85.08809772817817,
              "near_uniform": false,
              "rgb_stddev_max": 85.08809772817817
            },
            "reference": {
              "gray_stddev": 109.0,
              "near_uniform": false,
              "rgb_stddev_max": 109.0
            }
          },
          "issues": [],
          "layout_identity_score": 74.62691506267034,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 25.72,
        "preset": "default",
        "provenance": {
          "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
          "inputs": {
            "candidate": {
              "height": 160,
              "rgb_sha256": "90a26fb763d6cf0adb0dad8d8c058c8af248931fe8c0a118c026c870bd731ef2",
              "width": 768
            },
            "reference": {
              "height": 160,
              "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
              "width": 768
            }
          },
          "run_key": "f58b91f997c27617e746a53ee81d0457613113dfa02b269315046e721e97842a",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.20713865824779948,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 27.025562283320838,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 27.025562283320838,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.18642479242301954
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 24.11,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 1,
              "ref_regions": 1
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.7463
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 74.63,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.8112,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.0,
                "left": 0.0,
                "mean_gap": 0.0,
                "right": 0.4987,
                "top": 0.0
              },
              "sims": {
                "bottom": 1.0,
                "left": 0.0,
                "mean_gap": 1.0,
                "right": 0.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 60.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 169.330833,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 27.03 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~81.1% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  623,
                  0,
                  145,
                  160
                ],
                "observed": "an extra region at x=623,y=0 (145x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 74.62691506267034,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 25.72,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "90a26fb763d6cf0adb0dad8d8c058c8af248931fe8c0a118c026c870bd731ef2",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "f58b91f997c27617e746a53ee81d0457613113dfa02b269315046e721e97842a",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.20713865824779948,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 27.025562283320838,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 27.025562283320838,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.18642479242301954
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 24.11,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.7463
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 74.63,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.8112,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "416089e3edc00fd2362cd4c3b3e432e6e57b6d085cf6d56c118883f077558d85"
        },
        {
          "elapsed_ms": 226.032334,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 27.03 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~81.1% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  623,
                  0,
                  145,
                  160
                ],
                "observed": "an extra region at x=623,y=0 (145x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 74.62691506267034,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 25.72,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "90a26fb763d6cf0adb0dad8d8c058c8af248931fe8c0a118c026c870bd731ef2",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "f58b91f997c27617e746a53ee81d0457613113dfa02b269315046e721e97842a",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.20713865824779948,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 27.025562283320838,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 27.025562283320838,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.18642479242301954
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 24.11,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.7463
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 74.63,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.8112,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "416089e3edc00fd2362cd4c3b3e432e6e57b6d085cf6d56c118883f077558d85"
        },
        {
          "elapsed_ms": 174.070792,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 27.03 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~81.1% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  623,
                  0,
                  145,
                  160
                ],
                "observed": "an extra region at x=623,y=0 (145x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 74.62691506267034,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 25.72,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "90a26fb763d6cf0adb0dad8d8c058c8af248931fe8c0a118c026c870bd731ef2",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "f58b91f997c27617e746a53ee81d0457613113dfa02b269315046e721e97842a",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.20713865824779948,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 27.025562283320838,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 27.025562283320838,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.18642479242301954
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 24.11,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.7463
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 74.63,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.8112,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "416089e3edc00fd2362cd4c3b3e432e6e57b6d085cf6d56c118883f077558d85"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 193.143667,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  385,
                  160
                ],
                "observed": "a reference region at x=0,y=0 (385x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 27.03 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~0.0% vs candidate ~81.1% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  623,
                  0,
                  145,
                  160
                ],
                "observed": "an extra region at x=623,y=0 (145x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                },
                "reference": {
                  "gray_stddev": 109.0,
                  "near_uniform": false,
                  "rgb_stddev_max": 109.0
                }
              },
              "issues": [],
              "layout_identity_score": 74.62691506267034,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 25.72,
            "preset": "default",
            "provenance": {
              "comparison_key": "7370d9bdbdc816c72c61e1843d7582fd7ed4af92801e92f9b3f39ca60791f2f5",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "90a26fb763d6cf0adb0dad8d8c058c8af248931fe8c0a118c026c870bd731ef2",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "8994daeda2007dee176f132701efcba3b718da117bb312a95ba5ce3768abce98",
                  "width": 768
                }
              },
              "run_key": "f58b91f997c27617e746a53ee81d0457613113dfa02b269315046e721e97842a",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.20713865824779948,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 27.025562283320838,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 27.025562283320838,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.18642479242301954
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 24.11,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.7463
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 74.63,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.8112,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.4987,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "416089e3edc00fd2362cd4c3b3e432e6e57b6d085cf6d56c118883f077558d85"
        }
      ]
    },
    "color_mass_81_25_to_18_75": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 225.44125,
        "median": 191.718083,
        "min": 173.094792,
        "n": 3,
        "samples": [
          173.094792,
          225.44125,
          191.718083
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 160,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 160,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 160,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              623,
              0,
              145,
              160
            ],
            "observed": "a reference region at x=623,y=0 (145x160) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "layout",
            "observed": "layout score 50.2 is below 70 after alignment",
            "severity": "medium",
            "suggested_fix": "match the reference structure, spacing, and proportions",
            "type": "layout_mismatch"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 54.05 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          },
          {
            "area": "spacing",
            "observed": "left margin differs: reference ~81.1% vs candidate ~0.0% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the left margin toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              0,
              0,
              145,
              160
            ],
            "observed": "an extra region at x=0,y=0 (145x160) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 85.08809772817817,
              "near_uniform": false,
              "rgb_stddev_max": 85.08809772817817
            },
            "reference": {
              "gray_stddev": 85.08809772817817,
              "near_uniform": false,
              "rgb_stddev_max": 85.08809772817817
            }
          },
          "issues": [],
          "layout_identity_score": 50.211578408327796,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 15.63,
        "preset": "default",
        "provenance": {
          "comparison_key": "90d400cac49fadfc87d30525c132e501fdd308286a73b9c122be4860adfc8e8f",
          "inputs": {
            "candidate": {
              "height": 160,
              "rgb_sha256": "c8049cd1a5f9c09b9c989f7d5297afaed4932654b9e7f839e1abffd14c782a38",
              "width": 768
            },
            "reference": {
              "height": 160,
              "rgb_sha256": "90a26fb763d6cf0adb0dad8d8c058c8af248931fe8c0a118c026c870bd731ef2",
              "width": 768
            }
          },
          "run_key": "43a9c8072b2d05797508adf11f86e795ce7e0a9ce71c92e9b752446299ffa01d",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.48416117947186804,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 54.05112456664175,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 54.05112456664175,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.43574506152468123
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 5.81,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 1,
              "ref_regions": 1
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.5021
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 50.21,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.0,
                "mean_gap": 0.0,
                "right": 0.8112,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.0,
                "left": 0.8112,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "sims": {
                "bottom": 1.0,
                "left": 0.0,
                "mean_gap": 1.0,
                "right": 0.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 60.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 173.094792,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  623,
                  0,
                  145,
                  160
                ],
                "observed": "a reference region at x=623,y=0 (145x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 50.2 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 54.05 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~81.1% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  145,
                  160
                ],
                "observed": "an extra region at x=0,y=0 (145x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                },
                "reference": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                }
              },
              "issues": [],
              "layout_identity_score": 50.211578408327796,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 15.63,
            "preset": "default",
            "provenance": {
              "comparison_key": "90d400cac49fadfc87d30525c132e501fdd308286a73b9c122be4860adfc8e8f",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "c8049cd1a5f9c09b9c989f7d5297afaed4932654b9e7f839e1abffd14c782a38",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "90a26fb763d6cf0adb0dad8d8c058c8af248931fe8c0a118c026c870bd731ef2",
                  "width": 768
                }
              },
              "run_key": "43a9c8072b2d05797508adf11f86e795ce7e0a9ce71c92e9b752446299ffa01d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.48416117947186804,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 54.05112456664175,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 54.05112456664175,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.43574506152468123
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 5.81,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.5021
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 50.21,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.8112,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.8112,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "60326353921976a0f1bacec2e6088c02efb232b460d4b9755476f1a2779b8609"
        },
        {
          "elapsed_ms": 225.44125,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  623,
                  0,
                  145,
                  160
                ],
                "observed": "a reference region at x=623,y=0 (145x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 50.2 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 54.05 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~81.1% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  145,
                  160
                ],
                "observed": "an extra region at x=0,y=0 (145x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                },
                "reference": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                }
              },
              "issues": [],
              "layout_identity_score": 50.211578408327796,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 15.63,
            "preset": "default",
            "provenance": {
              "comparison_key": "90d400cac49fadfc87d30525c132e501fdd308286a73b9c122be4860adfc8e8f",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "c8049cd1a5f9c09b9c989f7d5297afaed4932654b9e7f839e1abffd14c782a38",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "90a26fb763d6cf0adb0dad8d8c058c8af248931fe8c0a118c026c870bd731ef2",
                  "width": 768
                }
              },
              "run_key": "43a9c8072b2d05797508adf11f86e795ce7e0a9ce71c92e9b752446299ffa01d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.48416117947186804,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 54.05112456664175,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 54.05112456664175,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.43574506152468123
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 5.81,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.5021
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 50.21,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.8112,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.8112,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "60326353921976a0f1bacec2e6088c02efb232b460d4b9755476f1a2779b8609"
        },
        {
          "elapsed_ms": 191.718083,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  623,
                  0,
                  145,
                  160
                ],
                "observed": "a reference region at x=623,y=0 (145x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 50.2 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 54.05 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~81.1% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  145,
                  160
                ],
                "observed": "an extra region at x=0,y=0 (145x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                },
                "reference": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                }
              },
              "issues": [],
              "layout_identity_score": 50.211578408327796,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 15.63,
            "preset": "default",
            "provenance": {
              "comparison_key": "90d400cac49fadfc87d30525c132e501fdd308286a73b9c122be4860adfc8e8f",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "c8049cd1a5f9c09b9c989f7d5297afaed4932654b9e7f839e1abffd14c782a38",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "90a26fb763d6cf0adb0dad8d8c058c8af248931fe8c0a118c026c870bd731ef2",
                  "width": 768
                }
              },
              "run_key": "43a9c8072b2d05797508adf11f86e795ce7e0a9ce71c92e9b752446299ffa01d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.48416117947186804,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 54.05112456664175,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 54.05112456664175,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.43574506152468123
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 5.81,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.5021
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 50.21,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.8112,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.8112,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "60326353921976a0f1bacec2e6088c02efb232b460d4b9755476f1a2779b8609"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 169.024958,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 160,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  623,
                  0,
                  145,
                  160
                ],
                "observed": "a reference region at x=623,y=0 (145x160) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 50.2 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 54.05 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "left margin differs: reference ~81.1% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the left margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  0,
                  0,
                  145,
                  160
                ],
                "observed": "an extra region at x=0,y=0 (145x160) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                },
                "reference": {
                  "gray_stddev": 85.08809772817817,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.08809772817817
                }
              },
              "issues": [],
              "layout_identity_score": 50.211578408327796,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 15.63,
            "preset": "default",
            "provenance": {
              "comparison_key": "90d400cac49fadfc87d30525c132e501fdd308286a73b9c122be4860adfc8e8f",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "c8049cd1a5f9c09b9c989f7d5297afaed4932654b9e7f839e1abffd14c782a38",
                  "width": 768
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "90a26fb763d6cf0adb0dad8d8c058c8af248931fe8c0a118c026c870bd731ef2",
                  "width": 768
                }
              },
              "run_key": "43a9c8072b2d05797508adf11f86e795ce7e0a9ce71c92e9b752446299ffa01d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.48416117947186804,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 54.05112456664175,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 54.05112456664175,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.43574506152468123
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 5.81,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.5021
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 50.21,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.8112,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.8112,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 0.0,
                    "mean_gap": 1.0,
                    "right": 0.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 60.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "60326353921976a0f1bacec2e6088c02efb232b460d4b9755476f1a2779b8609"
        }
      ]
    },
    "color_new256color_clean_crop_0px": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 164.839042,
        "median": 159.380875,
        "min": 149.045625,
        "n": 3,
        "samples": [
          159.380875,
          164.839042,
          149.045625
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 100,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              0,
              9,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=9 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              29,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=29 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              49,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=49 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              69,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=69 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "layout",
            "observed": "layout score 63.6 is below 70 after alignment",
            "severity": "medium",
            "suggested_fix": "match the reference structure, spacing, and proportions",
            "type": "layout_mismatch"
          },
          {
            "area": "color",
            "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
            "severity": "medium",
            "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
            "type": "color_missing"
          },
          {
            "area": "spacing",
            "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the vertical gap between blocks toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              234,
              0,
              27,
              100
            ],
            "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              489,
              0,
              27,
              100
            ],
            "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              744,
              0,
              24,
              100
            ],
            "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              29,
              0,
              23,
              100
            ],
            "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 1.3007049996378444,
              "near_uniform": false,
              "rgb_stddev_max": 2.0353174420303315
            },
            "reference": {
              "gray_stddev": 31.118746624004206,
              "near_uniform": false,
              "rgb_stddev_max": 42.520026400639416
            }
          },
          "issues": [],
          "layout_identity_score": 63.609676274942274,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 24.49,
        "preset": "default",
        "provenance": {
          "comparison_key": "57403d9a1d9469b0583d06f6a19f4fc4dba1e01ea9e1fcd347be8069898d4aec",
          "inputs": {
            "candidate": {
              "height": 100,
              "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
              "width": 768
            },
            "reference": {
              "height": 100,
              "rgb_sha256": "f2c51b7bda7e9418375bcdcb14a85cf008800bae04ae885e95651f267536bb9f",
              "width": 768
            }
          },
          "run_key": "75f21fb4cf6098cc8f290dbc049f74d6846a6f4ae670d6269361cbb7073c377d",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.05000000000000013
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 24.08373095697484,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 21.675357861277355,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 2.8397242546583406,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 21.675357861277355
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 31.96,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 25,
              "coverage": 0.0,
              "extra": 25,
              "extra_ratio": 1.0,
              "missing": 5,
              "ref_regions": 5
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.6361
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 63.61,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.0378,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.08,
                "left": 0.0,
                "mean_gap": 0.17,
                "right": 0.0,
                "top": 0.09
              },
              "sims": {
                "bottom": 0.333,
                "left": 0.685,
                "mean_gap": 0.0,
                "right": 1.0,
                "top": 0.25
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 45.37,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 159.380875,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  9,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=9 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  29,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=29 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  49,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=49 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  69,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=69 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "57403d9a1d9469b0583d06f6a19f4fc4dba1e01ea9e1fcd347be8069898d4aec",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "f2c51b7bda7e9418375bcdcb14a85cf008800bae04ae885e95651f267536bb9f",
                  "width": 768
                }
              },
              "run_key": "75f21fb4cf6098cc8f290dbc049f74d6846a6f4ae670d6269361cbb7073c377d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.08,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.09
                  },
                  "sims": {
                    "bottom": 0.333,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.25
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "005ec351a80d124aa18d71154d90249bd9b9406623dc28daf40b622ac3e924c3"
        },
        {
          "elapsed_ms": 164.839042,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  9,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=9 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  29,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=29 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  49,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=49 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  69,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=69 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "57403d9a1d9469b0583d06f6a19f4fc4dba1e01ea9e1fcd347be8069898d4aec",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "f2c51b7bda7e9418375bcdcb14a85cf008800bae04ae885e95651f267536bb9f",
                  "width": 768
                }
              },
              "run_key": "75f21fb4cf6098cc8f290dbc049f74d6846a6f4ae670d6269361cbb7073c377d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.08,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.09
                  },
                  "sims": {
                    "bottom": 0.333,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.25
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "005ec351a80d124aa18d71154d90249bd9b9406623dc28daf40b622ac3e924c3"
        },
        {
          "elapsed_ms": 149.045625,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  9,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=9 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  29,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=29 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  49,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=49 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  69,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=69 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "57403d9a1d9469b0583d06f6a19f4fc4dba1e01ea9e1fcd347be8069898d4aec",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "f2c51b7bda7e9418375bcdcb14a85cf008800bae04ae885e95651f267536bb9f",
                  "width": 768
                }
              },
              "run_key": "75f21fb4cf6098cc8f290dbc049f74d6846a6f4ae670d6269361cbb7073c377d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.08,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.09
                  },
                  "sims": {
                    "bottom": 0.333,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.25
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "005ec351a80d124aa18d71154d90249bd9b9406623dc28daf40b622ac3e924c3"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 163.0265,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  9,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=9 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  29,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=29 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  49,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=49 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  69,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=69 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "57403d9a1d9469b0583d06f6a19f4fc4dba1e01ea9e1fcd347be8069898d4aec",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "f2c51b7bda7e9418375bcdcb14a85cf008800bae04ae885e95651f267536bb9f",
                  "width": 768
                }
              },
              "run_key": "75f21fb4cf6098cc8f290dbc049f74d6846a6f4ae670d6269361cbb7073c377d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.08,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.09
                  },
                  "sims": {
                    "bottom": 0.333,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.25
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "005ec351a80d124aa18d71154d90249bd9b9406623dc28daf40b622ac3e924c3"
        }
      ]
    },
    "color_new256color_clean_crop_1px": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 166.888,
        "median": 166.410834,
        "min": 150.233708,
        "n": 3,
        "samples": [
          166.888,
          166.410834,
          150.233708
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 100,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              0,
              8,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=8 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              28,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=28 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              48,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=48 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              68,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=68 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "layout",
            "observed": "layout score 63.6 is below 70 after alignment",
            "severity": "medium",
            "suggested_fix": "match the reference structure, spacing, and proportions",
            "type": "layout_mismatch"
          },
          {
            "area": "color",
            "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
            "severity": "medium",
            "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
            "type": "color_missing"
          },
          {
            "area": "spacing",
            "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the vertical gap between blocks toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              234,
              0,
              27,
              100
            ],
            "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              489,
              0,
              27,
              100
            ],
            "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              744,
              0,
              24,
              100
            ],
            "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              29,
              0,
              23,
              100
            ],
            "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 1.3007049996378444,
              "near_uniform": false,
              "rgb_stddev_max": 2.0353174420303315
            },
            "reference": {
              "gray_stddev": 31.118746624004206,
              "near_uniform": false,
              "rgb_stddev_max": 42.520026400639416
            }
          },
          "issues": [],
          "layout_identity_score": 63.609676274942274,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 24.49,
        "preset": "default",
        "provenance": {
          "comparison_key": "ce8785640cd98d2a08fc93193d687a777e771ea89c2b5c57dfa17713368d1a42",
          "inputs": {
            "candidate": {
              "height": 100,
              "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
              "width": 768
            },
            "reference": {
              "height": 100,
              "rgb_sha256": "980bc008ccf6792cb30b447ccab54c6b58516cdc26d83f8b8feba012800eaeb2",
              "width": 768
            }
          },
          "run_key": "a6b8a9f9881a5517d7a8f39f60d1cd5a91ae4d06b35417dff6a32599b196c59c",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.05000000000000013
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 24.08373095697484,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 21.675357861277355,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 2.8397242546583406,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 21.675357861277355
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 31.96,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 25,
              "coverage": 0.0,
              "extra": 25,
              "extra_ratio": 1.0,
              "missing": 5,
              "ref_regions": 5
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.6361
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 63.61,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.0378,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.09,
                "left": 0.0,
                "mean_gap": 0.17,
                "right": 0.0,
                "top": 0.08
              },
              "sims": {
                "bottom": 0.25,
                "left": 0.685,
                "mean_gap": 0.0,
                "right": 1.0,
                "top": 0.333
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 45.37,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 166.888,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  8,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=8 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  28,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=28 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  48,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=48 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  68,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=68 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce8785640cd98d2a08fc93193d687a777e771ea89c2b5c57dfa17713368d1a42",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "980bc008ccf6792cb30b447ccab54c6b58516cdc26d83f8b8feba012800eaeb2",
                  "width": 768
                }
              },
              "run_key": "a6b8a9f9881a5517d7a8f39f60d1cd5a91ae4d06b35417dff6a32599b196c59c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.09,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.08
                  },
                  "sims": {
                    "bottom": 0.25,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.333
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "102f5ff21e15e9e9b292e393784a1da14154613931bf7603b4f741e936748317"
        },
        {
          "elapsed_ms": 166.410834,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  8,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=8 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  28,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=28 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  48,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=48 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  68,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=68 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce8785640cd98d2a08fc93193d687a777e771ea89c2b5c57dfa17713368d1a42",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "980bc008ccf6792cb30b447ccab54c6b58516cdc26d83f8b8feba012800eaeb2",
                  "width": 768
                }
              },
              "run_key": "a6b8a9f9881a5517d7a8f39f60d1cd5a91ae4d06b35417dff6a32599b196c59c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.09,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.08
                  },
                  "sims": {
                    "bottom": 0.25,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.333
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "102f5ff21e15e9e9b292e393784a1da14154613931bf7603b4f741e936748317"
        },
        {
          "elapsed_ms": 150.233708,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  8,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=8 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  28,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=28 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  48,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=48 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  68,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=68 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce8785640cd98d2a08fc93193d687a777e771ea89c2b5c57dfa17713368d1a42",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "980bc008ccf6792cb30b447ccab54c6b58516cdc26d83f8b8feba012800eaeb2",
                  "width": 768
                }
              },
              "run_key": "a6b8a9f9881a5517d7a8f39f60d1cd5a91ae4d06b35417dff6a32599b196c59c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.09,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.08
                  },
                  "sims": {
                    "bottom": 0.25,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.333
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "102f5ff21e15e9e9b292e393784a1da14154613931bf7603b4f741e936748317"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 150.674167,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  8,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=8 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  28,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=28 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  48,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=48 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  68,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=68 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce8785640cd98d2a08fc93193d687a777e771ea89c2b5c57dfa17713368d1a42",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "980bc008ccf6792cb30b447ccab54c6b58516cdc26d83f8b8feba012800eaeb2",
                  "width": 768
                }
              },
              "run_key": "a6b8a9f9881a5517d7a8f39f60d1cd5a91ae4d06b35417dff6a32599b196c59c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.09,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.08
                  },
                  "sims": {
                    "bottom": 0.25,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.333
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "102f5ff21e15e9e9b292e393784a1da14154613931bf7603b4f741e936748317"
        }
      ]
    },
    "color_new256color_common_pixel_crop_0px": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 157.133917,
        "median": 152.791417,
        "min": 150.430792,
        "n": 3,
        "samples": [
          152.791417,
          150.430792,
          157.133917
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 100,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              0,
              9,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=9 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              29,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=29 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              49,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=49 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              69,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=69 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "layout",
            "observed": "layout score 63.6 is below 70 after alignment",
            "severity": "medium",
            "suggested_fix": "match the reference structure, spacing, and proportions",
            "type": "layout_mismatch"
          },
          {
            "area": "color",
            "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
            "severity": "medium",
            "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
            "type": "color_missing"
          },
          {
            "area": "spacing",
            "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the vertical gap between blocks toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              234,
              0,
              27,
              100
            ],
            "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              489,
              0,
              27,
              100
            ],
            "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              744,
              0,
              24,
              100
            ],
            "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              29,
              0,
              23,
              100
            ],
            "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 1.3007049996378444,
              "near_uniform": false,
              "rgb_stddev_max": 2.0353174420303315
            },
            "reference": {
              "gray_stddev": 31.118746624004206,
              "near_uniform": false,
              "rgb_stddev_max": 42.520026400639416
            }
          },
          "issues": [],
          "layout_identity_score": 63.609676274942274,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 24.49,
        "preset": "default",
        "provenance": {
          "comparison_key": "addd14dbaa39fd79a02ce2c8445ca4c4ff2c78c3a649c8b65739856fcb6d8b6e",
          "inputs": {
            "candidate": {
              "height": 100,
              "rgb_sha256": "9117dc1a5a1d65c1995c64885c0fe11257d4e59b27a6bd12aaf318385e17bb7c",
              "width": 768
            },
            "reference": {
              "height": 100,
              "rgb_sha256": "0cc7f495dd6779976fb7226c30402cdc434a745004af5253563ce3dd50112cb3",
              "width": 768
            }
          },
          "run_key": "6adb3f58fa63689bba1902b848cd417e4ba1a08837fb8be1ba33f0d08291014b",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.05000000000000013
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 24.083729100053997,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 21.675356190048596,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 2.8397242546583406,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 21.675356190048596
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 31.96,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 25,
              "coverage": 0.0,
              "extra": 25,
              "extra_ratio": 1.0,
              "missing": 5,
              "ref_regions": 5
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.6361
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 63.61,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.0378,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.08,
                "left": 0.0,
                "mean_gap": 0.17,
                "right": 0.0,
                "top": 0.09
              },
              "sims": {
                "bottom": 0.333,
                "left": 0.685,
                "mean_gap": 0.0,
                "right": 1.0,
                "top": 0.25
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 45.37,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 152.791417,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  9,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=9 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  29,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=29 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  49,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=49 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  69,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=69 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "addd14dbaa39fd79a02ce2c8445ca4c4ff2c78c3a649c8b65739856fcb6d8b6e",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "9117dc1a5a1d65c1995c64885c0fe11257d4e59b27a6bd12aaf318385e17bb7c",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "0cc7f495dd6779976fb7226c30402cdc434a745004af5253563ce3dd50112cb3",
                  "width": 768
                }
              },
              "run_key": "6adb3f58fa63689bba1902b848cd417e4ba1a08837fb8be1ba33f0d08291014b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.083729100053997,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675356190048596,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675356190048596
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.08,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.09
                  },
                  "sims": {
                    "bottom": 0.333,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.25
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "625ed4eb07b72b9ae3051318fa78b15d12329b3d79c3debb54f3ddabfd351dc8"
        },
        {
          "elapsed_ms": 150.430792,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  9,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=9 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  29,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=29 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  49,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=49 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  69,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=69 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "addd14dbaa39fd79a02ce2c8445ca4c4ff2c78c3a649c8b65739856fcb6d8b6e",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "9117dc1a5a1d65c1995c64885c0fe11257d4e59b27a6bd12aaf318385e17bb7c",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "0cc7f495dd6779976fb7226c30402cdc434a745004af5253563ce3dd50112cb3",
                  "width": 768
                }
              },
              "run_key": "6adb3f58fa63689bba1902b848cd417e4ba1a08837fb8be1ba33f0d08291014b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.083729100053997,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675356190048596,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675356190048596
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.08,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.09
                  },
                  "sims": {
                    "bottom": 0.333,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.25
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "625ed4eb07b72b9ae3051318fa78b15d12329b3d79c3debb54f3ddabfd351dc8"
        },
        {
          "elapsed_ms": 157.133917,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  9,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=9 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  29,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=29 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  49,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=49 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  69,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=69 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "addd14dbaa39fd79a02ce2c8445ca4c4ff2c78c3a649c8b65739856fcb6d8b6e",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "9117dc1a5a1d65c1995c64885c0fe11257d4e59b27a6bd12aaf318385e17bb7c",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "0cc7f495dd6779976fb7226c30402cdc434a745004af5253563ce3dd50112cb3",
                  "width": 768
                }
              },
              "run_key": "6adb3f58fa63689bba1902b848cd417e4ba1a08837fb8be1ba33f0d08291014b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.083729100053997,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675356190048596,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675356190048596
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.08,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.09
                  },
                  "sims": {
                    "bottom": 0.333,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.25
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "625ed4eb07b72b9ae3051318fa78b15d12329b3d79c3debb54f3ddabfd351dc8"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 154.765417,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  9,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=9 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  29,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=29 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  49,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=49 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  69,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=69 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "addd14dbaa39fd79a02ce2c8445ca4c4ff2c78c3a649c8b65739856fcb6d8b6e",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "9117dc1a5a1d65c1995c64885c0fe11257d4e59b27a6bd12aaf318385e17bb7c",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "0cc7f495dd6779976fb7226c30402cdc434a745004af5253563ce3dd50112cb3",
                  "width": 768
                }
              },
              "run_key": "6adb3f58fa63689bba1902b848cd417e4ba1a08837fb8be1ba33f0d08291014b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.083729100053997,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675356190048596,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675356190048596
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.08,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.09
                  },
                  "sims": {
                    "bottom": 0.333,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.25
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "625ed4eb07b72b9ae3051318fa78b15d12329b3d79c3debb54f3ddabfd351dc8"
        }
      ]
    },
    "color_new256color_common_pixel_crop_1px": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 163.103917,
        "median": 159.339083,
        "min": 157.489,
        "n": 3,
        "samples": [
          163.103917,
          157.489,
          159.339083
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 100,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              0,
              8,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=8 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              28,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=28 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              48,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=48 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              0,
              68,
              768,
              3
            ],
            "observed": "a reference region at x=0,y=68 (768x3) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "layout",
            "observed": "layout score 63.6 is below 70 after alignment",
            "severity": "medium",
            "suggested_fix": "match the reference structure, spacing, and proportions",
            "type": "layout_mismatch"
          },
          {
            "area": "color",
            "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
            "severity": "medium",
            "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
            "type": "color_missing"
          },
          {
            "area": "spacing",
            "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the vertical gap between blocks toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              234,
              0,
              27,
              100
            ],
            "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              489,
              0,
              27,
              100
            ],
            "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              744,
              0,
              24,
              100
            ],
            "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          },
          {
            "area": "content",
            "box": [
              29,
              0,
              23,
              100
            ],
            "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 1.3007049996378444,
              "near_uniform": false,
              "rgb_stddev_max": 2.0353174420303315
            },
            "reference": {
              "gray_stddev": 31.118746624004206,
              "near_uniform": false,
              "rgb_stddev_max": 42.520026400639416
            }
          },
          "issues": [],
          "layout_identity_score": 63.609676274942274,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 24.49,
        "preset": "default",
        "provenance": {
          "comparison_key": "ce8785640cd98d2a08fc93193d687a777e771ea89c2b5c57dfa17713368d1a42",
          "inputs": {
            "candidate": {
              "height": 100,
              "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
              "width": 768
            },
            "reference": {
              "height": 100,
              "rgb_sha256": "980bc008ccf6792cb30b447ccab54c6b58516cdc26d83f8b8feba012800eaeb2",
              "width": 768
            }
          },
          "run_key": "a6b8a9f9881a5517d7a8f39f60d1cd5a91ae4d06b35417dff6a32599b196c59c",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.05000000000000013
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 24.08373095697484,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 21.675357861277355,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 2.8397242546583406,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 21.675357861277355
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 31.96,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 25,
              "coverage": 0.0,
              "extra": 25,
              "extra_ratio": 1.0,
              "missing": 5,
              "ref_regions": 5
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.6361
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 63.61,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.0378,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.09,
                "left": 0.0,
                "mean_gap": 0.17,
                "right": 0.0,
                "top": 0.08
              },
              "sims": {
                "bottom": 0.25,
                "left": 0.685,
                "mean_gap": 0.0,
                "right": 1.0,
                "top": 0.333
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 45.37,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 163.103917,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  8,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=8 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  28,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=28 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  48,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=48 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  68,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=68 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce8785640cd98d2a08fc93193d687a777e771ea89c2b5c57dfa17713368d1a42",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "980bc008ccf6792cb30b447ccab54c6b58516cdc26d83f8b8feba012800eaeb2",
                  "width": 768
                }
              },
              "run_key": "a6b8a9f9881a5517d7a8f39f60d1cd5a91ae4d06b35417dff6a32599b196c59c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.09,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.08
                  },
                  "sims": {
                    "bottom": 0.25,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.333
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "102f5ff21e15e9e9b292e393784a1da14154613931bf7603b4f741e936748317"
        },
        {
          "elapsed_ms": 157.489,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  8,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=8 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  28,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=28 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  48,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=48 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  68,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=68 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce8785640cd98d2a08fc93193d687a777e771ea89c2b5c57dfa17713368d1a42",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "980bc008ccf6792cb30b447ccab54c6b58516cdc26d83f8b8feba012800eaeb2",
                  "width": 768
                }
              },
              "run_key": "a6b8a9f9881a5517d7a8f39f60d1cd5a91ae4d06b35417dff6a32599b196c59c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.09,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.08
                  },
                  "sims": {
                    "bottom": 0.25,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.333
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "102f5ff21e15e9e9b292e393784a1da14154613931bf7603b4f741e936748317"
        },
        {
          "elapsed_ms": 159.339083,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  8,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=8 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  28,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=28 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  48,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=48 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  68,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=68 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce8785640cd98d2a08fc93193d687a777e771ea89c2b5c57dfa17713368d1a42",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "980bc008ccf6792cb30b447ccab54c6b58516cdc26d83f8b8feba012800eaeb2",
                  "width": 768
                }
              },
              "run_key": "a6b8a9f9881a5517d7a8f39f60d1cd5a91ae4d06b35417dff6a32599b196c59c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.09,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.08
                  },
                  "sims": {
                    "bottom": 0.25,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.333
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "102f5ff21e15e9e9b292e393784a1da14154613931bf7603b4f741e936748317"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 154.408292,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  0,
                  8,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=8 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  28,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=28 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  48,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=48 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  0,
                  68,
                  768,
                  3
                ],
                "observed": "a reference region at x=0,y=68 (768x3) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "layout",
                "observed": "layout score 63.6 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 5.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "spacing",
                "observed": "vertical gap between blocks differs: reference ~17.0% vs candidate ~0.0% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the vertical gap between blocks toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  234,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=234,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  489,
                  0,
                  27,
                  100
                ],
                "observed": "an extra region at x=489,y=0 (27x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  744,
                  0,
                  24,
                  100
                ],
                "observed": "an extra region at x=744,y=0 (24x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              },
              {
                "area": "content",
                "box": [
                  29,
                  0,
                  23,
                  100
                ],
                "observed": "an extra region at x=29,y=0 (23x100) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 1.3007049996378444,
                  "near_uniform": false,
                  "rgb_stddev_max": 2.0353174420303315
                },
                "reference": {
                  "gray_stddev": 31.118746624004206,
                  "near_uniform": false,
                  "rgb_stddev_max": 42.520026400639416
                }
              },
              "issues": [],
              "layout_identity_score": 63.609676274942274,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 24.49,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce8785640cd98d2a08fc93193d687a777e771ea89c2b5c57dfa17713368d1a42",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "e11ca3872a11e0dd5ac194117c6b45bd2108eef280026d1413f9458b415268c2",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "980bc008ccf6792cb30b447ccab54c6b58516cdc26d83f8b8feba012800eaeb2",
                  "width": 768
                }
              },
              "run_key": "a6b8a9f9881a5517d7a8f39f60d1cd5a91ae4d06b35417dff6a32599b196c59c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.05000000000000013
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 24.08373095697484,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 21.675357861277355,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.8397242546583406,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 21.675357861277355
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 31.96,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 25,
                  "coverage": 0.0,
                  "extra": 25,
                  "extra_ratio": 1.0,
                  "missing": 5,
                  "ref_regions": 5
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6361
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 63.61,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0378,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.09,
                    "left": 0.0,
                    "mean_gap": 0.17,
                    "right": 0.0,
                    "top": 0.08
                  },
                  "sims": {
                    "bottom": 0.25,
                    "left": 0.685,
                    "mean_gap": 0.0,
                    "right": 1.0,
                    "top": 0.333
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 45.37,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "102f5ff21e15e9e9b292e393784a1da14154613931bf7603b4f741e936748317"
        }
      ]
    },
    "color_nine_stripes_rgb_plus_one": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 542.460875,
        "median": 535.901125,
        "min": 509.802708,
        "n": 3,
        "samples": [
          535.901125,
          542.460875,
          509.802708
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 160,
            "orig_w": 144,
            "scale": 5.333333333333333
          },
          "height": 853,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 160,
            "orig_w": 144,
            "scale": 5.333333333333333
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 38.252894669779984,
              "near_uniform": false,
              "rgb_stddev_max": 71.86716140831558
            },
            "reference": {
              "gray_stddev": 38.25289466978,
              "near_uniform": false,
              "rgb_stddev_max": 71.86716140831557
            }
          },
          "issues": [],
          "layout_identity_score": 99.99326628482206,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 99.56,
        "preset": "default",
        "provenance": {
          "comparison_key": "bf7b5a17931e8d8148efa9553f8f7a97efc47abb7e9c742893a1f052fd98db12",
          "inputs": {
            "candidate": {
              "height": 160,
              "rgb_sha256": "b2dfd0fa5f11e38ce2428f99961092be66dfcc801fc9b37c9755cafa7893d6b1",
              "width": 144
            },
            "reference": {
              "height": 160,
              "rgb_sha256": "98774b19a270b1807c433022a5619bd676b69163619412abfc08b4ea23d07447",
              "width": 144
            }
          },
          "run_key": "67115d549026c84bdd37075e667cb93167abcbe2ec0c5f3f157448c4892b915c",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.08015863316593365,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.34991843266400446,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.34991843266400446,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.07214276984934029
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 98.18,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 6,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 6
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9999
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 99.99,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.4349,
                "mean_gap": 0.0,
                "right": 0.3281,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.0,
                "left": 0.4349,
                "mean_gap": 0.0,
                "right": 0.3281,
                "top": 0.0
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 100.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 535.901125,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 144,
                "scale": 5.333333333333333
              },
              "height": 853,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 144,
                "scale": 5.333333333333333
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 38.252894669779984,
                  "near_uniform": false,
                  "rgb_stddev_max": 71.86716140831558
                },
                "reference": {
                  "gray_stddev": 38.25289466978,
                  "near_uniform": false,
                  "rgb_stddev_max": 71.86716140831557
                }
              },
              "issues": [],
              "layout_identity_score": 99.99326628482206,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 99.56,
            "preset": "default",
            "provenance": {
              "comparison_key": "bf7b5a17931e8d8148efa9553f8f7a97efc47abb7e9c742893a1f052fd98db12",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "b2dfd0fa5f11e38ce2428f99961092be66dfcc801fc9b37c9755cafa7893d6b1",
                  "width": 144
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "98774b19a270b1807c433022a5619bd676b69163619412abfc08b4ea23d07447",
                  "width": 144
                }
              },
              "run_key": "67115d549026c84bdd37075e667cb93167abcbe2ec0c5f3f157448c4892b915c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.08015863316593365,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.34991843266400446,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.34991843266400446,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.07214276984934029
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.18,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 6,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 6
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.4349,
                    "mean_gap": 0.0,
                    "right": 0.3281,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.4349,
                    "mean_gap": 0.0,
                    "right": 0.3281,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "979ac883ba7031820647645c8c8b6c0159380842f8829b421dad5fab989968a3"
        },
        {
          "elapsed_ms": 542.460875,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 144,
                "scale": 5.333333333333333
              },
              "height": 853,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 144,
                "scale": 5.333333333333333
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 38.252894669779984,
                  "near_uniform": false,
                  "rgb_stddev_max": 71.86716140831558
                },
                "reference": {
                  "gray_stddev": 38.25289466978,
                  "near_uniform": false,
                  "rgb_stddev_max": 71.86716140831557
                }
              },
              "issues": [],
              "layout_identity_score": 99.99326628482206,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 99.56,
            "preset": "default",
            "provenance": {
              "comparison_key": "bf7b5a17931e8d8148efa9553f8f7a97efc47abb7e9c742893a1f052fd98db12",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "b2dfd0fa5f11e38ce2428f99961092be66dfcc801fc9b37c9755cafa7893d6b1",
                  "width": 144
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "98774b19a270b1807c433022a5619bd676b69163619412abfc08b4ea23d07447",
                  "width": 144
                }
              },
              "run_key": "67115d549026c84bdd37075e667cb93167abcbe2ec0c5f3f157448c4892b915c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.08015863316593365,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.34991843266400446,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.34991843266400446,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.07214276984934029
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.18,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 6,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 6
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.4349,
                    "mean_gap": 0.0,
                    "right": 0.3281,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.4349,
                    "mean_gap": 0.0,
                    "right": 0.3281,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "979ac883ba7031820647645c8c8b6c0159380842f8829b421dad5fab989968a3"
        },
        {
          "elapsed_ms": 509.802708,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 144,
                "scale": 5.333333333333333
              },
              "height": 853,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 144,
                "scale": 5.333333333333333
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 38.252894669779984,
                  "near_uniform": false,
                  "rgb_stddev_max": 71.86716140831558
                },
                "reference": {
                  "gray_stddev": 38.25289466978,
                  "near_uniform": false,
                  "rgb_stddev_max": 71.86716140831557
                }
              },
              "issues": [],
              "layout_identity_score": 99.99326628482206,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 99.56,
            "preset": "default",
            "provenance": {
              "comparison_key": "bf7b5a17931e8d8148efa9553f8f7a97efc47abb7e9c742893a1f052fd98db12",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "b2dfd0fa5f11e38ce2428f99961092be66dfcc801fc9b37c9755cafa7893d6b1",
                  "width": 144
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "98774b19a270b1807c433022a5619bd676b69163619412abfc08b4ea23d07447",
                  "width": 144
                }
              },
              "run_key": "67115d549026c84bdd37075e667cb93167abcbe2ec0c5f3f157448c4892b915c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.08015863316593365,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.34991843266400446,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.34991843266400446,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.07214276984934029
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.18,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 6,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 6
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.4349,
                    "mean_gap": 0.0,
                    "right": 0.3281,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.4349,
                    "mean_gap": 0.0,
                    "right": 0.3281,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "979ac883ba7031820647645c8c8b6c0159380842f8829b421dad5fab989968a3"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 533.119666,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 160,
                "orig_w": 144,
                "scale": 5.333333333333333
              },
              "height": 853,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 160,
                "orig_w": 144,
                "scale": 5.333333333333333
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 38.252894669779984,
                  "near_uniform": false,
                  "rgb_stddev_max": 71.86716140831558
                },
                "reference": {
                  "gray_stddev": 38.25289466978,
                  "near_uniform": false,
                  "rgb_stddev_max": 71.86716140831557
                }
              },
              "issues": [],
              "layout_identity_score": 99.99326628482206,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 99.56,
            "preset": "default",
            "provenance": {
              "comparison_key": "bf7b5a17931e8d8148efa9553f8f7a97efc47abb7e9c742893a1f052fd98db12",
              "inputs": {
                "candidate": {
                  "height": 160,
                  "rgb_sha256": "b2dfd0fa5f11e38ce2428f99961092be66dfcc801fc9b37c9755cafa7893d6b1",
                  "width": 144
                },
                "reference": {
                  "height": 160,
                  "rgb_sha256": "98774b19a270b1807c433022a5619bd676b69163619412abfc08b4ea23d07447",
                  "width": 144
                }
              },
              "run_key": "67115d549026c84bdd37075e667cb93167abcbe2ec0c5f3f157448c4892b915c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.08015863316593365,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.34991843266400446,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.34991843266400446,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.07214276984934029
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.18,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 6,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 6
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.4349,
                    "mean_gap": 0.0,
                    "right": 0.3281,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.4349,
                    "mean_gap": 0.0,
                    "right": 0.3281,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "979ac883ba7031820647645c8c8b6c0159380842f8829b421dad5fab989968a3"
        }
      ]
    },
    "color_periodic_crop_0px": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 353.450083,
        "median": 352.565125,
        "min": 332.3505,
        "n": 3,
        "samples": [
          353.450083,
          352.565125,
          332.3505
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 480,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 480,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 480,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 70.47827178790368,
              "near_uniform": false,
              "rgb_stddev_max": 104.36968347637487
            },
            "reference": {
              "gray_stddev": 70.47827178790368,
              "near_uniform": false,
              "rgb_stddev_max": 104.36968347637487
            }
          },
          "issues": [],
          "layout_identity_score": 100.0,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 100.0,
        "preset": "default",
        "provenance": {
          "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
          "inputs": {
            "candidate": {
              "height": 480,
              "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
              "width": 768
            },
            "reference": {
              "height": 480,
              "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
              "width": 768
            }
          },
          "run_key": "8a4468d6d53f758bcfb4d9bde958cf226c9d2786c92aa7803064368159ada87d",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.0,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.0,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.0,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.0
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 140,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 140
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.2331,
                "count": 40,
                "median_h": 38.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.2331,
                "count": 40,
                "median_h": 38.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 353.450083,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "8a4468d6d53f758bcfb4d9bde958cf226c9d2786c92aa7803064368159ada87d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9602bd8f9946346170a9f759b807bbeefbc09bc55791a4f119c19fb1692929ef"
        },
        {
          "elapsed_ms": 352.565125,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "8a4468d6d53f758bcfb4d9bde958cf226c9d2786c92aa7803064368159ada87d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9602bd8f9946346170a9f759b807bbeefbc09bc55791a4f119c19fb1692929ef"
        },
        {
          "elapsed_ms": 332.3505,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "8a4468d6d53f758bcfb4d9bde958cf226c9d2786c92aa7803064368159ada87d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9602bd8f9946346170a9f759b807bbeefbc09bc55791a4f119c19fb1692929ef"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 305.873959,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "8a4468d6d53f758bcfb4d9bde958cf226c9d2786c92aa7803064368159ada87d",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9602bd8f9946346170a9f759b807bbeefbc09bc55791a4f119c19fb1692929ef"
        }
      ]
    },
    "color_periodic_crop_1px": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 332.205125,
        "median": 324.672166,
        "min": 301.748625,
        "n": 3,
        "samples": [
          332.205125,
          324.672166,
          301.748625
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 480,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 480,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 480,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 70.47827178790368,
              "near_uniform": false,
              "rgb_stddev_max": 104.36968347637487
            },
            "reference": {
              "gray_stddev": 70.47827178790368,
              "near_uniform": false,
              "rgb_stddev_max": 104.36968347637487
            }
          },
          "issues": [],
          "layout_identity_score": 85.58682074911846,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 93.79,
        "preset": "default",
        "provenance": {
          "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
          "inputs": {
            "candidate": {
              "height": 480,
              "rgb_sha256": "33ca9437e3afe01f25df2a5f0d4cbc33aab8e13d60af151f6ae822c3fb1c0116",
              "width": 768
            },
            "reference": {
              "height": 480,
              "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
              "width": 768
            }
          },
          "run_key": "ee098fbb1f715970bcd3559168a0d2ec4f8c6fc3865b0212359230bced9233fe",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 4.824605716872359e-16,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 1.2633731742931946e-14,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 1.2633731742931946e-14,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 4.3421451451851227e-16
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 140,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 140
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.8559
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 85.59,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.2331,
                "count": 40,
                "median_h": 38.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.2331,
                "count": 40,
                "median_h": 38.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 332.205125,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 85.58682074911846,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 93.79,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "33ca9437e3afe01f25df2a5f0d4cbc33aab8e13d60af151f6ae822c3fb1c0116",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "ee098fbb1f715970bcd3559168a0d2ec4f8c6fc3865b0212359230bced9233fe",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 4.824605716872359e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.2633731742931946e-14,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.2633731742931946e-14,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.3421451451851227e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8559
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.59,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "69ca287636607e07eac005529e3138279fb596d8ec9e8aa83a6651c0a97db221"
        },
        {
          "elapsed_ms": 324.672166,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 85.58682074911846,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 93.79,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "33ca9437e3afe01f25df2a5f0d4cbc33aab8e13d60af151f6ae822c3fb1c0116",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "ee098fbb1f715970bcd3559168a0d2ec4f8c6fc3865b0212359230bced9233fe",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 4.824605716872359e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.2633731742931946e-14,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.2633731742931946e-14,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.3421451451851227e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8559
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.59,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "69ca287636607e07eac005529e3138279fb596d8ec9e8aa83a6651c0a97db221"
        },
        {
          "elapsed_ms": 301.748625,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 85.58682074911846,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 93.79,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "33ca9437e3afe01f25df2a5f0d4cbc33aab8e13d60af151f6ae822c3fb1c0116",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "ee098fbb1f715970bcd3559168a0d2ec4f8c6fc3865b0212359230bced9233fe",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 4.824605716872359e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.2633731742931946e-14,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.2633731742931946e-14,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.3421451451851227e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8559
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.59,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "69ca287636607e07eac005529e3138279fb596d8ec9e8aa83a6651c0a97db221"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 328.293542,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 85.58682074911846,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 93.79,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "33ca9437e3afe01f25df2a5f0d4cbc33aab8e13d60af151f6ae822c3fb1c0116",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "ee098fbb1f715970bcd3559168a0d2ec4f8c6fc3865b0212359230bced9233fe",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 4.824605716872359e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.2633731742931946e-14,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.2633731742931946e-14,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.3421451451851227e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8559
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.59,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "69ca287636607e07eac005529e3138279fb596d8ec9e8aa83a6651c0a97db221"
        }
      ]
    },
    "color_periodic_crop_2px": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 443.012625,
        "median": 335.829167,
        "min": 306.733417,
        "n": 3,
        "samples": [
          306.733417,
          335.829167,
          443.012625
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 480,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 480,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 480,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 70.47827178790368,
              "near_uniform": false,
              "rgb_stddev_max": 104.36968347637487
            },
            "reference": {
              "gray_stddev": 70.47827178790368,
              "near_uniform": false,
              "rgb_stddev_max": 104.36968347637487
            }
          },
          "issues": [],
          "layout_identity_score": 76.07982467965742,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 89.35,
        "preset": "default",
        "provenance": {
          "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
          "inputs": {
            "candidate": {
              "height": 480,
              "rgb_sha256": "f2c0c21003dd1461f641e582264a434131364e52339e592285f2ed68f0598be9",
              "width": 768
            },
            "reference": {
              "height": 480,
              "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
              "width": 768
            }
          },
          "run_key": "5897f6a7d03c748d8199c3f3b98c2437d9d0824f09612ac864118e197905eea7",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 1.9733543214911709e-16,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 1.6424028216846193e-15,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 1.6424028216846193e-15,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 1.7760188893420538e-16
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 140,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 140
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.7608
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 76.08,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.2331,
                "count": 40,
                "median_h": 38.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.2331,
                "count": 40,
                "median_h": 38.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 306.733417,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 76.07982467965742,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 89.35,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "f2c0c21003dd1461f641e582264a434131364e52339e592285f2ed68f0598be9",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "5897f6a7d03c748d8199c3f3b98c2437d9d0824f09612ac864118e197905eea7",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 1.9733543214911709e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.6424028216846193e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.6424028216846193e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 1.7760188893420538e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.7608
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 76.08,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "945beba2b0fcc0b8b4e257c4f7da0d27a2af4cccfde894922650bd876e9ec43f"
        },
        {
          "elapsed_ms": 335.829167,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 76.07982467965742,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 89.35,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "f2c0c21003dd1461f641e582264a434131364e52339e592285f2ed68f0598be9",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "5897f6a7d03c748d8199c3f3b98c2437d9d0824f09612ac864118e197905eea7",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 1.9733543214911709e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.6424028216846193e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.6424028216846193e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 1.7760188893420538e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.7608
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 76.08,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "945beba2b0fcc0b8b4e257c4f7da0d27a2af4cccfde894922650bd876e9ec43f"
        },
        {
          "elapsed_ms": 443.012625,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 76.07982467965742,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 89.35,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "f2c0c21003dd1461f641e582264a434131364e52339e592285f2ed68f0598be9",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "5897f6a7d03c748d8199c3f3b98c2437d9d0824f09612ac864118e197905eea7",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 1.9733543214911709e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.6424028216846193e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.6424028216846193e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 1.7760188893420538e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.7608
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 76.08,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "945beba2b0fcc0b8b4e257c4f7da0d27a2af4cccfde894922650bd876e9ec43f"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 322.429417,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 76.07982467965742,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 89.35,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "f2c0c21003dd1461f641e582264a434131364e52339e592285f2ed68f0598be9",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "5897f6a7d03c748d8199c3f3b98c2437d9d0824f09612ac864118e197905eea7",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 1.9733543214911709e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 1.6424028216846193e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 1.6424028216846193e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 1.7760188893420538e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.7608
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 76.08,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "945beba2b0fcc0b8b4e257c4f7da0d27a2af4cccfde894922650bd876e9ec43f"
        }
      ]
    },
    "color_periodic_crop_3px": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 390.362166,
        "median": 368.312041,
        "min": 363.658125,
        "n": 3,
        "samples": [
          390.362166,
          368.312041,
          363.658125
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 480,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 480,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 480,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "layout",
            "observed": "layout score 69.7 is below 70 after alignment",
            "severity": "medium",
            "suggested_fix": "match the reference structure, spacing, and proportions",
            "type": "layout_mismatch"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 70.47827178790368,
              "near_uniform": false,
              "rgb_stddev_max": 104.36968347637487
            },
            "reference": {
              "gray_stddev": 70.47827178790368,
              "near_uniform": false,
              "rgb_stddev_max": 104.36968347637487
            }
          },
          "issues": [],
          "layout_identity_score": 69.74407627838826,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 86.21,
        "preset": "default",
        "provenance": {
          "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
          "inputs": {
            "candidate": {
              "height": 480,
              "rgb_sha256": "2d4d034d2586619f5961aaedd3545948317d53a4bd2ddafb7a2a2f963ac811cd",
              "width": 768
            },
            "reference": {
              "height": 480,
              "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
              "width": 768
            }
          },
          "run_key": "7e7b2f147e1c15a472ffa8578a41cd67a57934b972efa74504526970d2bea894",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 1.1095337846227716e-16,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 2.9507306059572046e-15,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 2.9507306059572046e-15,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 9.985804061604945e-17
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 140,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 140
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.6974
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 69.74,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.2331,
                "count": 40,
                "median_h": 38.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.2331,
                "count": 40,
                "median_h": 38.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 390.362166,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 69.7 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 69.74407627838826,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 86.21,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "2d4d034d2586619f5961aaedd3545948317d53a4bd2ddafb7a2a2f963ac811cd",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "7e7b2f147e1c15a472ffa8578a41cd67a57934b972efa74504526970d2bea894",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 1.1095337846227716e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 2.9507306059572046e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.9507306059572046e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 9.985804061604945e-17
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6974
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 69.74,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "2521699ab02782dda704432e4cac56f52fe993c5489b0d8b46f8e3b74a39bd83"
        },
        {
          "elapsed_ms": 368.312041,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 69.7 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 69.74407627838826,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 86.21,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "2d4d034d2586619f5961aaedd3545948317d53a4bd2ddafb7a2a2f963ac811cd",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "7e7b2f147e1c15a472ffa8578a41cd67a57934b972efa74504526970d2bea894",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 1.1095337846227716e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 2.9507306059572046e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.9507306059572046e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 9.985804061604945e-17
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6974
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 69.74,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "2521699ab02782dda704432e4cac56f52fe993c5489b0d8b46f8e3b74a39bd83"
        },
        {
          "elapsed_ms": 363.658125,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 69.7 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 69.74407627838826,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 86.21,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "2d4d034d2586619f5961aaedd3545948317d53a4bd2ddafb7a2a2f963ac811cd",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "7e7b2f147e1c15a472ffa8578a41cd67a57934b972efa74504526970d2bea894",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 1.1095337846227716e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 2.9507306059572046e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.9507306059572046e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 9.985804061604945e-17
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6974
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 69.74,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "2521699ab02782dda704432e4cac56f52fe993c5489b0d8b46f8e3b74a39bd83"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 349.183083,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 69.7 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 69.74407627838826,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 86.21,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "2d4d034d2586619f5961aaedd3545948317d53a4bd2ddafb7a2a2f963ac811cd",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "7e7b2f147e1c15a472ffa8578a41cd67a57934b972efa74504526970d2bea894",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 1.1095337846227716e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 2.9507306059572046e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 2.9507306059572046e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 9.985804061604945e-17
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.6974
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 69.74,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "2521699ab02782dda704432e4cac56f52fe993c5489b0d8b46f8e3b74a39bd83"
        }
      ]
    },
    "color_periodic_crop_4px": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 393.322833,
        "median": 375.427125,
        "min": 358.518167,
        "n": 3,
        "samples": [
          393.322833,
          375.427125,
          358.518167
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 480,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 480,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 480,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "layout",
            "observed": "layout score 64.3 is below 70 after alignment",
            "severity": "medium",
            "suggested_fix": "match the reference structure, spacing, and proportions",
            "type": "layout_mismatch"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 70.47827178790368,
              "near_uniform": false,
              "rgb_stddev_max": 104.36968347637487
            },
            "reference": {
              "gray_stddev": 70.47827178790368,
              "near_uniform": false,
              "rgb_stddev_max": 104.36968347637487
            }
          },
          "issues": [],
          "layout_identity_score": 64.30254643036633,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 83.37,
        "preset": "default",
        "provenance": {
          "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
          "inputs": {
            "candidate": {
              "height": 480,
              "rgb_sha256": "e1a1416dc8a814abb08833c5dc0639dfb29ed78ba1d2216f3720eea7e0360e2e",
              "width": 768
            },
            "reference": {
              "height": 480,
              "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
              "width": 768
            }
          },
          "run_key": "9f3ca281f4a9cdd56c79942453638ff103acfb655067ba15f5687ecd49c70723",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 3.157291916473729e-16,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 6.370105548657015e-15,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 6.370105548657015e-15,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 2.8415627248263564e-16
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 140,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 140
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.643
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 64.3,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.2331,
                "count": 40,
                "median_h": 38.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.2331,
                "count": 40,
                "median_h": 38.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 393.322833,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 64.3 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 64.30254643036633,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 83.37,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "e1a1416dc8a814abb08833c5dc0639dfb29ed78ba1d2216f3720eea7e0360e2e",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "9f3ca281f4a9cdd56c79942453638ff103acfb655067ba15f5687ecd49c70723",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 3.157291916473729e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 6.370105548657015e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 6.370105548657015e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 2.8415627248263564e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.643
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 64.3,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9fdb9158dbfe90c84d79d91cdd874c90d3049691dc83fdf26a26cd68e1667126"
        },
        {
          "elapsed_ms": 375.427125,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 64.3 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 64.30254643036633,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 83.37,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "e1a1416dc8a814abb08833c5dc0639dfb29ed78ba1d2216f3720eea7e0360e2e",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "9f3ca281f4a9cdd56c79942453638ff103acfb655067ba15f5687ecd49c70723",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 3.157291916473729e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 6.370105548657015e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 6.370105548657015e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 2.8415627248263564e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.643
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 64.3,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9fdb9158dbfe90c84d79d91cdd874c90d3049691dc83fdf26a26cd68e1667126"
        },
        {
          "elapsed_ms": 358.518167,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 64.3 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 64.30254643036633,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 83.37,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "e1a1416dc8a814abb08833c5dc0639dfb29ed78ba1d2216f3720eea7e0360e2e",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "9f3ca281f4a9cdd56c79942453638ff103acfb655067ba15f5687ecd49c70723",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 3.157291916473729e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 6.370105548657015e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 6.370105548657015e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 2.8415627248263564e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.643
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 64.3,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9fdb9158dbfe90c84d79d91cdd874c90d3049691dc83fdf26a26cd68e1667126"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 399.439625,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 480,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 64.3 is below 70 after alignment",
                "severity": "medium",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                },
                "reference": {
                  "gray_stddev": 70.47827178790368,
                  "near_uniform": false,
                  "rgb_stddev_max": 104.36968347637487
                }
              },
              "issues": [],
              "layout_identity_score": 64.30254643036633,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 83.37,
            "preset": "default",
            "provenance": {
              "comparison_key": "76b5b88d001843df08c48a9e8c041ee998a3e9ea1953cbe30cc9ee047072c857",
              "inputs": {
                "candidate": {
                  "height": 480,
                  "rgb_sha256": "e1a1416dc8a814abb08833c5dc0639dfb29ed78ba1d2216f3720eea7e0360e2e",
                  "width": 768
                },
                "reference": {
                  "height": 480,
                  "rgb_sha256": "7e135dc2abc50deb2055fd01e19bd1d39667fa608128b265017e733aff8c681f",
                  "width": 768
                }
              },
              "run_key": "9f3ca281f4a9cdd56c79942453638ff103acfb655067ba15f5687ecd49c70723",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 3.157291916473729e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 6.370105548657015e-15,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 6.370105548657015e-15,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 2.8415627248263564e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 140,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 140
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.643
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 64.3,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.2331,
                    "count": 40,
                    "median_h": 38.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9fdb9158dbfe90c84d79d91cdd874c90d3049691dc83fdf26a26cd68e1667126"
        }
      ]
    },
    "color_shortlist32_clean": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 152.819875,
        "median": 142.856667,
        "min": 140.932708,
        "n": 3,
        "samples": [
          152.819875,
          140.932708,
          142.856667
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 100,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "color",
            "observed": "Soft bidirectional coverage distance 4.89 proxy units. This does not prove exact color absence.",
            "severity": "medium",
            "suggested_fix": "Inspect color-neighborhood coverage; small incidental matches do not establish adequate accent coverage.",
            "type": "color_coverage_deficit"
          },
          {
            "area": "content",
            "box": [
              0,
              93,
              768,
              7
            ],
            "observed": "an extra region at x=0,y=93 (768x7) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 4.407127415976045,
              "near_uniform": false,
              "rgb_stddev_max": 10.913785560014137
            },
            "reference": {
              "gray_stddev": 0.7013175310746537,
              "near_uniform": false,
              "rgb_stddev_max": 11.429693520902587
            }
          },
          "issues": [],
          "layout_identity_score": 96.68278125292773,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 18.27,
        "preset": "default",
        "provenance": {
          "comparison_key": "49c6cb4a96d12a777e211d3e198409ef62400594e348bca4ab7631d8ecb53f2e",
          "inputs": {
            "candidate": {
              "height": 100,
              "rgb_sha256": "0927ef9e6becce24d1797856eaad058d2f717f84d445933442300b0c454e855b",
              "width": 768
            },
            "reference": {
              "height": 100,
              "rgb_sha256": "23beedfd9862d6f64a4407b332f9c830cedc0491fd1ca625efd9b2c26e6c3d06",
              "width": 768
            }
          },
          "run_key": "f05d59b79dac678b58db234f0706e54ccc54a1b0c294b4a25045a12caeb830e8",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 5.43116680856221,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 4.88805012770599,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.7288404398590816,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 4.88805012770599
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 77.32,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 0,
              "note": "no major regions detected in reference",
              "ref_regions": 0
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9668
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 96.68,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "one image has no major regions"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 0.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 152.819875,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Soft bidirectional coverage distance 4.89 proxy units. This does not prove exact color absence.",
                "severity": "medium",
                "suggested_fix": "Inspect color-neighborhood coverage; small incidental matches do not establish adequate accent coverage.",
                "type": "color_coverage_deficit"
              },
              {
                "area": "content",
                "box": [
                  0,
                  93,
                  768,
                  7
                ],
                "observed": "an extra region at x=0,y=93 (768x7) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 4.407127415976045,
                  "near_uniform": false,
                  "rgb_stddev_max": 10.913785560014137
                },
                "reference": {
                  "gray_stddev": 0.7013175310746537,
                  "near_uniform": false,
                  "rgb_stddev_max": 11.429693520902587
                }
              },
              "issues": [],
              "layout_identity_score": 96.68278125292773,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 18.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "49c6cb4a96d12a777e211d3e198409ef62400594e348bca4ab7631d8ecb53f2e",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "0927ef9e6becce24d1797856eaad058d2f717f84d445933442300b0c454e855b",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "23beedfd9862d6f64a4407b332f9c830cedc0491fd1ca625efd9b2c26e6c3d06",
                  "width": 768
                }
              },
              "run_key": "f05d59b79dac678b58db234f0706e54ccc54a1b0c294b4a25045a12caeb830e8",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 5.43116680856221,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 4.88805012770599,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7288404398590816,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.88805012770599
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 77.32,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9668
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 96.68,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "efb3e87ebc025b940f6c79e3e2a40769d60c25a94e77495829ea693a83f6acff"
        },
        {
          "elapsed_ms": 140.932708,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Soft bidirectional coverage distance 4.89 proxy units. This does not prove exact color absence.",
                "severity": "medium",
                "suggested_fix": "Inspect color-neighborhood coverage; small incidental matches do not establish adequate accent coverage.",
                "type": "color_coverage_deficit"
              },
              {
                "area": "content",
                "box": [
                  0,
                  93,
                  768,
                  7
                ],
                "observed": "an extra region at x=0,y=93 (768x7) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 4.407127415976045,
                  "near_uniform": false,
                  "rgb_stddev_max": 10.913785560014137
                },
                "reference": {
                  "gray_stddev": 0.7013175310746537,
                  "near_uniform": false,
                  "rgb_stddev_max": 11.429693520902587
                }
              },
              "issues": [],
              "layout_identity_score": 96.68278125292773,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 18.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "49c6cb4a96d12a777e211d3e198409ef62400594e348bca4ab7631d8ecb53f2e",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "0927ef9e6becce24d1797856eaad058d2f717f84d445933442300b0c454e855b",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "23beedfd9862d6f64a4407b332f9c830cedc0491fd1ca625efd9b2c26e6c3d06",
                  "width": 768
                }
              },
              "run_key": "f05d59b79dac678b58db234f0706e54ccc54a1b0c294b4a25045a12caeb830e8",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 5.43116680856221,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 4.88805012770599,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7288404398590816,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.88805012770599
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 77.32,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9668
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 96.68,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "efb3e87ebc025b940f6c79e3e2a40769d60c25a94e77495829ea693a83f6acff"
        },
        {
          "elapsed_ms": 142.856667,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Soft bidirectional coverage distance 4.89 proxy units. This does not prove exact color absence.",
                "severity": "medium",
                "suggested_fix": "Inspect color-neighborhood coverage; small incidental matches do not establish adequate accent coverage.",
                "type": "color_coverage_deficit"
              },
              {
                "area": "content",
                "box": [
                  0,
                  93,
                  768,
                  7
                ],
                "observed": "an extra region at x=0,y=93 (768x7) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 4.407127415976045,
                  "near_uniform": false,
                  "rgb_stddev_max": 10.913785560014137
                },
                "reference": {
                  "gray_stddev": 0.7013175310746537,
                  "near_uniform": false,
                  "rgb_stddev_max": 11.429693520902587
                }
              },
              "issues": [],
              "layout_identity_score": 96.68278125292773,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 18.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "49c6cb4a96d12a777e211d3e198409ef62400594e348bca4ab7631d8ecb53f2e",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "0927ef9e6becce24d1797856eaad058d2f717f84d445933442300b0c454e855b",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "23beedfd9862d6f64a4407b332f9c830cedc0491fd1ca625efd9b2c26e6c3d06",
                  "width": 768
                }
              },
              "run_key": "f05d59b79dac678b58db234f0706e54ccc54a1b0c294b4a25045a12caeb830e8",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 5.43116680856221,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 4.88805012770599,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7288404398590816,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.88805012770599
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 77.32,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9668
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 96.68,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "efb3e87ebc025b940f6c79e3e2a40769d60c25a94e77495829ea693a83f6acff"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 144.884208,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Soft bidirectional coverage distance 4.89 proxy units. This does not prove exact color absence.",
                "severity": "medium",
                "suggested_fix": "Inspect color-neighborhood coverage; small incidental matches do not establish adequate accent coverage.",
                "type": "color_coverage_deficit"
              },
              {
                "area": "content",
                "box": [
                  0,
                  93,
                  768,
                  7
                ],
                "observed": "an extra region at x=0,y=93 (768x7) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 4.407127415976045,
                  "near_uniform": false,
                  "rgb_stddev_max": 10.913785560014137
                },
                "reference": {
                  "gray_stddev": 0.7013175310746537,
                  "near_uniform": false,
                  "rgb_stddev_max": 11.429693520902587
                }
              },
              "issues": [],
              "layout_identity_score": 96.68278125292773,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 18.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "49c6cb4a96d12a777e211d3e198409ef62400594e348bca4ab7631d8ecb53f2e",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "0927ef9e6becce24d1797856eaad058d2f717f84d445933442300b0c454e855b",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "23beedfd9862d6f64a4407b332f9c830cedc0491fd1ca625efd9b2c26e6c3d06",
                  "width": 768
                }
              },
              "run_key": "f05d59b79dac678b58db234f0706e54ccc54a1b0c294b4a25045a12caeb830e8",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 5.43116680856221,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 4.88805012770599,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7288404398590816,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.88805012770599
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 77.32,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9668
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 96.68,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "efb3e87ebc025b940f6c79e3e2a40769d60c25a94e77495829ea693a83f6acff"
        }
      ]
    },
    "color_shortlist32_common_pixel": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 144.988583,
        "median": 143.185209,
        "min": 142.628667,
        "n": 3,
        "samples": [
          143.185209,
          144.988583,
          142.628667
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 100,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 100,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "color",
            "observed": "Soft bidirectional coverage distance 4.89 proxy units. This does not prove exact color absence.",
            "severity": "medium",
            "suggested_fix": "Inspect color-neighborhood coverage; small incidental matches do not establish adequate accent coverage.",
            "type": "color_coverage_deficit"
          },
          {
            "area": "content",
            "box": [
              0,
              93,
              768,
              7
            ],
            "observed": "an extra region at x=0,y=93 (768x7) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 4.410249219077246,
              "near_uniform": false,
              "rgb_stddev_max": 10.914300484778012
            },
            "reference": {
              "gray_stddev": 0.7215660395069254,
              "near_uniform": false,
              "rgb_stddev_max": 11.435451626440216
            }
          },
          "issues": [],
          "layout_identity_score": 96.68278125292773,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 18.27,
        "preset": "default",
        "provenance": {
          "comparison_key": "ce112c31c6ac6c7f61a759715984143de8d8d80023da753abc24e8b221c3488c",
          "inputs": {
            "candidate": {
              "height": 100,
              "rgb_sha256": "ef126ebeb178cf8acc897fcafd5627402dc15382a5439f7a7f7f8a38fc92fdd1",
              "width": 768
            },
            "reference": {
              "height": 100,
              "rgb_sha256": "dfcfdfb631321062a9eb769ad66bb37a28e0bb3b40519c5ccd051a9ff152d217",
              "width": 768
            }
          },
          "run_key": "0b9fd5fa45a7358210a31713e0c3bc9d8ea8ac6f912b0e70c249c30f8f895e30",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 5.430826010811904,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 4.887743409730714,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.7288404398590816,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 4.887743409730714
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 77.32,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 0,
              "note": "no major regions detected in reference",
              "ref_regions": 0
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9668
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 96.68,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "one image has no major regions"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 0.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 143.185209,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Soft bidirectional coverage distance 4.89 proxy units. This does not prove exact color absence.",
                "severity": "medium",
                "suggested_fix": "Inspect color-neighborhood coverage; small incidental matches do not establish adequate accent coverage.",
                "type": "color_coverage_deficit"
              },
              {
                "area": "content",
                "box": [
                  0,
                  93,
                  768,
                  7
                ],
                "observed": "an extra region at x=0,y=93 (768x7) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 4.410249219077246,
                  "near_uniform": false,
                  "rgb_stddev_max": 10.914300484778012
                },
                "reference": {
                  "gray_stddev": 0.7215660395069254,
                  "near_uniform": false,
                  "rgb_stddev_max": 11.435451626440216
                }
              },
              "issues": [],
              "layout_identity_score": 96.68278125292773,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 18.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce112c31c6ac6c7f61a759715984143de8d8d80023da753abc24e8b221c3488c",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "ef126ebeb178cf8acc897fcafd5627402dc15382a5439f7a7f7f8a38fc92fdd1",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "dfcfdfb631321062a9eb769ad66bb37a28e0bb3b40519c5ccd051a9ff152d217",
                  "width": 768
                }
              },
              "run_key": "0b9fd5fa45a7358210a31713e0c3bc9d8ea8ac6f912b0e70c249c30f8f895e30",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 5.430826010811904,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 4.887743409730714,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7288404398590816,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.887743409730714
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 77.32,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9668
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 96.68,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "08b20971ac2fe1ca41976e6f252eb5c991c3d830439255b9dd17633999053a33"
        },
        {
          "elapsed_ms": 144.988583,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Soft bidirectional coverage distance 4.89 proxy units. This does not prove exact color absence.",
                "severity": "medium",
                "suggested_fix": "Inspect color-neighborhood coverage; small incidental matches do not establish adequate accent coverage.",
                "type": "color_coverage_deficit"
              },
              {
                "area": "content",
                "box": [
                  0,
                  93,
                  768,
                  7
                ],
                "observed": "an extra region at x=0,y=93 (768x7) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 4.410249219077246,
                  "near_uniform": false,
                  "rgb_stddev_max": 10.914300484778012
                },
                "reference": {
                  "gray_stddev": 0.7215660395069254,
                  "near_uniform": false,
                  "rgb_stddev_max": 11.435451626440216
                }
              },
              "issues": [],
              "layout_identity_score": 96.68278125292773,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 18.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce112c31c6ac6c7f61a759715984143de8d8d80023da753abc24e8b221c3488c",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "ef126ebeb178cf8acc897fcafd5627402dc15382a5439f7a7f7f8a38fc92fdd1",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "dfcfdfb631321062a9eb769ad66bb37a28e0bb3b40519c5ccd051a9ff152d217",
                  "width": 768
                }
              },
              "run_key": "0b9fd5fa45a7358210a31713e0c3bc9d8ea8ac6f912b0e70c249c30f8f895e30",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 5.430826010811904,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 4.887743409730714,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7288404398590816,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.887743409730714
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 77.32,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9668
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 96.68,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "08b20971ac2fe1ca41976e6f252eb5c991c3d830439255b9dd17633999053a33"
        },
        {
          "elapsed_ms": 142.628667,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Soft bidirectional coverage distance 4.89 proxy units. This does not prove exact color absence.",
                "severity": "medium",
                "suggested_fix": "Inspect color-neighborhood coverage; small incidental matches do not establish adequate accent coverage.",
                "type": "color_coverage_deficit"
              },
              {
                "area": "content",
                "box": [
                  0,
                  93,
                  768,
                  7
                ],
                "observed": "an extra region at x=0,y=93 (768x7) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 4.410249219077246,
                  "near_uniform": false,
                  "rgb_stddev_max": 10.914300484778012
                },
                "reference": {
                  "gray_stddev": 0.7215660395069254,
                  "near_uniform": false,
                  "rgb_stddev_max": 11.435451626440216
                }
              },
              "issues": [],
              "layout_identity_score": 96.68278125292773,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 18.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce112c31c6ac6c7f61a759715984143de8d8d80023da753abc24e8b221c3488c",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "ef126ebeb178cf8acc897fcafd5627402dc15382a5439f7a7f7f8a38fc92fdd1",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "dfcfdfb631321062a9eb769ad66bb37a28e0bb3b40519c5ccd051a9ff152d217",
                  "width": 768
                }
              },
              "run_key": "0b9fd5fa45a7358210a31713e0c3bc9d8ea8ac6f912b0e70c249c30f8f895e30",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 5.430826010811904,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 4.887743409730714,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7288404398590816,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.887743409730714
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 77.32,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9668
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 96.68,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "08b20971ac2fe1ca41976e6f252eb5c991c3d830439255b9dd17633999053a33"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 153.280041,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 100,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 100,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Soft bidirectional coverage distance 4.89 proxy units. This does not prove exact color absence.",
                "severity": "medium",
                "suggested_fix": "Inspect color-neighborhood coverage; small incidental matches do not establish adequate accent coverage.",
                "type": "color_coverage_deficit"
              },
              {
                "area": "content",
                "box": [
                  0,
                  93,
                  768,
                  7
                ],
                "observed": "an extra region at x=0,y=93 (768x7) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 4.410249219077246,
                  "near_uniform": false,
                  "rgb_stddev_max": 10.914300484778012
                },
                "reference": {
                  "gray_stddev": 0.7215660395069254,
                  "near_uniform": false,
                  "rgb_stddev_max": 11.435451626440216
                }
              },
              "issues": [],
              "layout_identity_score": 96.68278125292773,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 18.27,
            "preset": "default",
            "provenance": {
              "comparison_key": "ce112c31c6ac6c7f61a759715984143de8d8d80023da753abc24e8b221c3488c",
              "inputs": {
                "candidate": {
                  "height": 100,
                  "rgb_sha256": "ef126ebeb178cf8acc897fcafd5627402dc15382a5439f7a7f7f8a38fc92fdd1",
                  "width": 768
                },
                "reference": {
                  "height": 100,
                  "rgb_sha256": "dfcfdfb631321062a9eb769ad66bb37a28e0bb3b40519c5ccd051a9ff152d217",
                  "width": 768
                }
              },
              "run_key": "0b9fd5fa45a7358210a31713e0c3bc9d8ea8ac6f912b0e70c249c30f8f895e30",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 5.430826010811904,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 4.887743409730714,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7288404398590816,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 4.887743409730714
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 77.32,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9668
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 96.68,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "08b20971ac2fe1ca41976e6f252eb5c991c3d830439255b9dd17633999053a33"
        }
      ]
    },
    "color_single_red_pixel": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 427.673625,
        "median": 407.782375,
        "min": 401.192167,
        "n": 3,
        "samples": [
          427.673625,
          407.782375,
          401.192167
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 768,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 768,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 768,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 0.1861977588411701,
              "near_uniform": true,
              "rgb_stddev_max": 0.2539060347721293
            },
            "reference": {
              "gray_stddev": 0.0,
              "near_uniform": true,
              "rgb_stddev_max": 0.0
            }
          },
          "issues": [
            {
              "code": "near_uniform_input",
              "side": "reference"
            },
            {
              "code": "near_uniform_input",
              "side": "candidate"
            }
          ],
          "layout_identity_score": 99.99259887906489,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 99.99,
        "preset": "default",
        "provenance": {
          "comparison_key": "9dc9c7615ad45bdd7213873191f13a8a82c23709d63fa52d256de713db2fec22",
          "inputs": {
            "candidate": {
              "height": 768,
              "rgb_sha256": "8a6668e585cf3f92657b8a22c6f8dd21bcaadca7c77ef4367c195244a3bb3574",
              "width": 768
            },
            "reference": {
              "height": 768,
              "rgb_sha256": "03bc7a04dc55798d35c91b0d30207cac7c51c0aa6d8ac70ccf29e9554272728f",
              "width": 768
            }
          },
          "run_key": "d09c921341c0e01eb805b7e549f47314c502c176e57d8d6a5edfd4757f08548e",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 1.6954210069444444e-06,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 2.352116543697431e-06,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 9.612848249211122e-05,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 9.612848249211122e-05,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 2.116904889327688e-06
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 0,
              "coverage": 0.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "note": "no major regions detected in reference",
              "ref_regions": 0
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": null,
            "status": "not_applicable"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9999
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 99.99,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 427.673625,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 768,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.1861977588411701,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.2539060347721293
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 99.99259887906489,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.99,
            "preset": "default",
            "provenance": {
              "comparison_key": "9dc9c7615ad45bdd7213873191f13a8a82c23709d63fa52d256de713db2fec22",
              "inputs": {
                "candidate": {
                  "height": 768,
                  "rgb_sha256": "8a6668e585cf3f92657b8a22c6f8dd21bcaadca7c77ef4367c195244a3bb3574",
                  "width": 768
                },
                "reference": {
                  "height": 768,
                  "rgb_sha256": "03bc7a04dc55798d35c91b0d30207cac7c51c0aa6d8ac70ccf29e9554272728f",
                  "width": 768
                }
              },
              "run_key": "d09c921341c0e01eb805b7e549f47314c502c176e57d8d6a5edfd4757f08548e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 1.6954210069444444e-06,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 2.352116543697431e-06,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 9.612848249211122e-05,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 9.612848249211122e-05,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 2.116904889327688e-06
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "b83e3aaea386414fd0dcdcca6e22cb997665fcfcf9ed8cd02ad2d43c503f78e0"
        },
        {
          "elapsed_ms": 407.782375,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 768,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.1861977588411701,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.2539060347721293
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 99.99259887906489,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.99,
            "preset": "default",
            "provenance": {
              "comparison_key": "9dc9c7615ad45bdd7213873191f13a8a82c23709d63fa52d256de713db2fec22",
              "inputs": {
                "candidate": {
                  "height": 768,
                  "rgb_sha256": "8a6668e585cf3f92657b8a22c6f8dd21bcaadca7c77ef4367c195244a3bb3574",
                  "width": 768
                },
                "reference": {
                  "height": 768,
                  "rgb_sha256": "03bc7a04dc55798d35c91b0d30207cac7c51c0aa6d8ac70ccf29e9554272728f",
                  "width": 768
                }
              },
              "run_key": "d09c921341c0e01eb805b7e549f47314c502c176e57d8d6a5edfd4757f08548e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 1.6954210069444444e-06,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 2.352116543697431e-06,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 9.612848249211122e-05,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 9.612848249211122e-05,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 2.116904889327688e-06
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "b83e3aaea386414fd0dcdcca6e22cb997665fcfcf9ed8cd02ad2d43c503f78e0"
        },
        {
          "elapsed_ms": 401.192167,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 768,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.1861977588411701,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.2539060347721293
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 99.99259887906489,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.99,
            "preset": "default",
            "provenance": {
              "comparison_key": "9dc9c7615ad45bdd7213873191f13a8a82c23709d63fa52d256de713db2fec22",
              "inputs": {
                "candidate": {
                  "height": 768,
                  "rgb_sha256": "8a6668e585cf3f92657b8a22c6f8dd21bcaadca7c77ef4367c195244a3bb3574",
                  "width": 768
                },
                "reference": {
                  "height": 768,
                  "rgb_sha256": "03bc7a04dc55798d35c91b0d30207cac7c51c0aa6d8ac70ccf29e9554272728f",
                  "width": 768
                }
              },
              "run_key": "d09c921341c0e01eb805b7e549f47314c502c176e57d8d6a5edfd4757f08548e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 1.6954210069444444e-06,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 2.352116543697431e-06,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 9.612848249211122e-05,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 9.612848249211122e-05,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 2.116904889327688e-06
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "b83e3aaea386414fd0dcdcca6e22cb997665fcfcf9ed8cd02ad2d43c503f78e0"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 445.501167,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 768,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.1861977588411701,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.2539060347721293
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 99.99259887906489,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.99,
            "preset": "default",
            "provenance": {
              "comparison_key": "9dc9c7615ad45bdd7213873191f13a8a82c23709d63fa52d256de713db2fec22",
              "inputs": {
                "candidate": {
                  "height": 768,
                  "rgb_sha256": "8a6668e585cf3f92657b8a22c6f8dd21bcaadca7c77ef4367c195244a3bb3574",
                  "width": 768
                },
                "reference": {
                  "height": 768,
                  "rgb_sha256": "03bc7a04dc55798d35c91b0d30207cac7c51c0aa6d8ac70ccf29e9554272728f",
                  "width": 768
                }
              },
              "run_key": "d09c921341c0e01eb805b7e549f47314c502c176e57d8d6a5edfd4757f08548e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 1.6954210069444444e-06,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 2.352116543697431e-06,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 9.612848249211122e-05,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 9.612848249211122e-05,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 2.116904889327688e-06
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9999
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.99,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "b83e3aaea386414fd0dcdcca6e22cb997665fcfcf9ed8cd02ad2d43c503f78e0"
        }
      ]
    },
    "color_small_red_accent_missing": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 397.695,
        "median": 396.031834,
        "min": 390.175959,
        "n": 3,
        "samples": [
          390.175959,
          396.031834,
          397.695
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 768,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 768,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 768,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              95,
              95,
              98,
              79
            ],
            "observed": "a reference region at x=95,y=95 (98x79) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "color",
            "observed": "At least 1.25% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
            "severity": "medium",
            "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
            "type": "color_missing"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 0.0,
              "near_uniform": true,
              "rgb_stddev_max": 0.0
            },
            "reference": {
              "gray_stddev": 15.88786028174208,
              "near_uniform": false,
              "rgb_stddev_max": 21.665264020557657
            }
          },
          "issues": [
            {
              "code": "near_uniform_input",
              "side": "candidate"
            }
          ],
          "layout_identity_score": 99.31313219062304,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 17.59,
        "preset": "default",
        "provenance": {
          "comparison_key": "3990b1766931cbf7cc7b3bfbdf0ff95de5b2f29153f9cd314aa6a416247ef370",
          "inputs": {
            "candidate": {
              "height": 768,
              "rgb_sha256": "03bc7a04dc55798d35c91b0d30207cac7c51c0aa6d8ac70ccf29e9554272728f",
              "width": 768
            },
            "reference": {
              "height": 768,
              "rgb_sha256": "27151cd770e37fe07f9b61e7d7df26eefd8942399f263745bf08c5c9586efac1",
              "width": 768
            }
          },
          "run_key": "7e62c5c8768725084d34a4376c856262b51cb2c9e6b7966064b05fa4ea261c42",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.012500339084201062
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 9.857390808787578,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 8.871651727908821,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.7087553014177442,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 8.871651727908821
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 62.69,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 0,
              "coverage": 0.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 1,
              "ref_regions": 1
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9931
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 99.31,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "one image has no major regions"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 0.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 390.175959,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 768,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  95,
                  95,
                  98,
                  79
                ],
                "observed": "a reference region at x=95,y=95 (98x79) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "At least 1.25% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 15.88786028174208,
                  "near_uniform": false,
                  "rgb_stddev_max": 21.665264020557657
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 99.31313219062304,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 17.59,
            "preset": "default",
            "provenance": {
              "comparison_key": "3990b1766931cbf7cc7b3bfbdf0ff95de5b2f29153f9cd314aa6a416247ef370",
              "inputs": {
                "candidate": {
                  "height": 768,
                  "rgb_sha256": "03bc7a04dc55798d35c91b0d30207cac7c51c0aa6d8ac70ccf29e9554272728f",
                  "width": 768
                },
                "reference": {
                  "height": 768,
                  "rgb_sha256": "27151cd770e37fe07f9b61e7d7df26eefd8942399f263745bf08c5c9586efac1",
                  "width": 768
                }
              },
              "run_key": "7e62c5c8768725084d34a4376c856262b51cb2c9e6b7966064b05fa4ea261c42",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.012500339084201062
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.857390808787578,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.871651727908821,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7087553014177442,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.871651727908821
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 62.69,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9931
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.31,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "0237ee7b8ba8eb2d2c7bdc6e2458c496abc7728bdfb03b7de5c2b583dae1ba07"
        },
        {
          "elapsed_ms": 396.031834,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 768,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  95,
                  95,
                  98,
                  79
                ],
                "observed": "a reference region at x=95,y=95 (98x79) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "At least 1.25% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 15.88786028174208,
                  "near_uniform": false,
                  "rgb_stddev_max": 21.665264020557657
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 99.31313219062304,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 17.59,
            "preset": "default",
            "provenance": {
              "comparison_key": "3990b1766931cbf7cc7b3bfbdf0ff95de5b2f29153f9cd314aa6a416247ef370",
              "inputs": {
                "candidate": {
                  "height": 768,
                  "rgb_sha256": "03bc7a04dc55798d35c91b0d30207cac7c51c0aa6d8ac70ccf29e9554272728f",
                  "width": 768
                },
                "reference": {
                  "height": 768,
                  "rgb_sha256": "27151cd770e37fe07f9b61e7d7df26eefd8942399f263745bf08c5c9586efac1",
                  "width": 768
                }
              },
              "run_key": "7e62c5c8768725084d34a4376c856262b51cb2c9e6b7966064b05fa4ea261c42",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.012500339084201062
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.857390808787578,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.871651727908821,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7087553014177442,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.871651727908821
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 62.69,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9931
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.31,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "0237ee7b8ba8eb2d2c7bdc6e2458c496abc7728bdfb03b7de5c2b583dae1ba07"
        },
        {
          "elapsed_ms": 397.695,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 768,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  95,
                  95,
                  98,
                  79
                ],
                "observed": "a reference region at x=95,y=95 (98x79) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "At least 1.25% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 15.88786028174208,
                  "near_uniform": false,
                  "rgb_stddev_max": 21.665264020557657
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 99.31313219062304,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 17.59,
            "preset": "default",
            "provenance": {
              "comparison_key": "3990b1766931cbf7cc7b3bfbdf0ff95de5b2f29153f9cd314aa6a416247ef370",
              "inputs": {
                "candidate": {
                  "height": 768,
                  "rgb_sha256": "03bc7a04dc55798d35c91b0d30207cac7c51c0aa6d8ac70ccf29e9554272728f",
                  "width": 768
                },
                "reference": {
                  "height": 768,
                  "rgb_sha256": "27151cd770e37fe07f9b61e7d7df26eefd8942399f263745bf08c5c9586efac1",
                  "width": 768
                }
              },
              "run_key": "7e62c5c8768725084d34a4376c856262b51cb2c9e6b7966064b05fa4ea261c42",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.012500339084201062
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.857390808787578,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.871651727908821,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7087553014177442,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.871651727908821
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 62.69,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9931
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.31,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "0237ee7b8ba8eb2d2c7bdc6e2458c496abc7728bdfb03b7de5c2b583dae1ba07"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 384.773041,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 768,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 768,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  95,
                  95,
                  98,
                  79
                ],
                "observed": "a reference region at x=95,y=95 (98x79) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "At least 1.25% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 15.88786028174208,
                  "near_uniform": false,
                  "rgb_stddev_max": 21.665264020557657
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 99.31313219062304,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 17.59,
            "preset": "default",
            "provenance": {
              "comparison_key": "3990b1766931cbf7cc7b3bfbdf0ff95de5b2f29153f9cd314aa6a416247ef370",
              "inputs": {
                "candidate": {
                  "height": 768,
                  "rgb_sha256": "03bc7a04dc55798d35c91b0d30207cac7c51c0aa6d8ac70ccf29e9554272728f",
                  "width": 768
                },
                "reference": {
                  "height": 768,
                  "rgb_sha256": "27151cd770e37fe07f9b61e7d7df26eefd8942399f263745bf08c5c9586efac1",
                  "width": 768
                }
              },
              "run_key": "7e62c5c8768725084d34a4376c856262b51cb2c9e6b7966064b05fa4ea261c42",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.012500339084201062
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.857390808787578,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.871651727908821,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.7087553014177442,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.871651727908821
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 62.69,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 1,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9931
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 99.31,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "one image has no major regions"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 0.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "0237ee7b8ba8eb2d2c7bdc6e2458c496abc7728bdfb03b7de5c2b583dae1ba07"
        }
      ]
    },
    "color_transport256_clean": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 122.608583,
        "median": 120.255625,
        "min": 119.978458,
        "n": 3,
        "samples": [
          122.608583,
          120.255625,
          119.978458
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 10,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 10,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 10,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "color",
            "observed": "Maximum projected mass distance 8.00 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 61.8027920923142,
              "near_uniform": false,
              "rgb_stddev_max": 80.86275472160081
            },
            "reference": {
              "gray_stddev": 59.32767592986554,
              "near_uniform": false,
              "rgb_stddev_max": 85.45584296337702
            }
          },
          "issues": [],
          "layout_identity_score": 98.16470857152032,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 87.64,
        "preset": "default",
        "provenance": {
          "comparison_key": "2c30cfed5fbda0b498efc2d64d297e3cc30db529a5a952124bf63e33e8cb5f61",
          "inputs": {
            "candidate": {
              "height": 10,
              "rgb_sha256": "9e97aefe2a0a4307d1e7265efce6feb4c3387c37eb57e90a383dc6bd0747dad0",
              "width": 768
            },
            "reference": {
              "height": 10,
              "rgb_sha256": "4c558c0d2563e2298bfeb3d2d83f029ffd1a21863c17beca1e6d88c389e4b0c8",
              "width": 768
            }
          },
          "run_key": "40cfab381ae9402268d7774fe8bec5014d1b13e2c36a1537f789b679d1cbae9b",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 11.151145515218532,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 10.03603096369668,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 7.996692496379749,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 10.03603096369668
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 58.97,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 1
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9816
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 98.16,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.0,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.0,
                "left": 0.0,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 100.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 122.608583,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 10,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Maximum projected mass distance 8.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 61.8027920923142,
                  "near_uniform": false,
                  "rgb_stddev_max": 80.86275472160081
                },
                "reference": {
                  "gray_stddev": 59.32767592986554,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.45584296337702
                }
              },
              "issues": [],
              "layout_identity_score": 98.16470857152032,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 87.64,
            "preset": "default",
            "provenance": {
              "comparison_key": "2c30cfed5fbda0b498efc2d64d297e3cc30db529a5a952124bf63e33e8cb5f61",
              "inputs": {
                "candidate": {
                  "height": 10,
                  "rgb_sha256": "9e97aefe2a0a4307d1e7265efce6feb4c3387c37eb57e90a383dc6bd0747dad0",
                  "width": 768
                },
                "reference": {
                  "height": 10,
                  "rgb_sha256": "4c558c0d2563e2298bfeb3d2d83f029ffd1a21863c17beca1e6d88c389e4b0c8",
                  "width": 768
                }
              },
              "run_key": "40cfab381ae9402268d7774fe8bec5014d1b13e2c36a1537f789b679d1cbae9b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 11.151145515218532,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.03603096369668,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.996692496379749,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 10.03603096369668
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 58.97,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9816
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 98.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "00c5ba654bcdd7327a0268d7683320bef56a66d4d7785a7dc1dab4988a18a392"
        },
        {
          "elapsed_ms": 120.255625,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 10,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Maximum projected mass distance 8.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 61.8027920923142,
                  "near_uniform": false,
                  "rgb_stddev_max": 80.86275472160081
                },
                "reference": {
                  "gray_stddev": 59.32767592986554,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.45584296337702
                }
              },
              "issues": [],
              "layout_identity_score": 98.16470857152032,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 87.64,
            "preset": "default",
            "provenance": {
              "comparison_key": "2c30cfed5fbda0b498efc2d64d297e3cc30db529a5a952124bf63e33e8cb5f61",
              "inputs": {
                "candidate": {
                  "height": 10,
                  "rgb_sha256": "9e97aefe2a0a4307d1e7265efce6feb4c3387c37eb57e90a383dc6bd0747dad0",
                  "width": 768
                },
                "reference": {
                  "height": 10,
                  "rgb_sha256": "4c558c0d2563e2298bfeb3d2d83f029ffd1a21863c17beca1e6d88c389e4b0c8",
                  "width": 768
                }
              },
              "run_key": "40cfab381ae9402268d7774fe8bec5014d1b13e2c36a1537f789b679d1cbae9b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 11.151145515218532,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.03603096369668,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.996692496379749,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 10.03603096369668
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 58.97,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9816
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 98.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "00c5ba654bcdd7327a0268d7683320bef56a66d4d7785a7dc1dab4988a18a392"
        },
        {
          "elapsed_ms": 119.978458,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 10,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Maximum projected mass distance 8.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 61.8027920923142,
                  "near_uniform": false,
                  "rgb_stddev_max": 80.86275472160081
                },
                "reference": {
                  "gray_stddev": 59.32767592986554,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.45584296337702
                }
              },
              "issues": [],
              "layout_identity_score": 98.16470857152032,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 87.64,
            "preset": "default",
            "provenance": {
              "comparison_key": "2c30cfed5fbda0b498efc2d64d297e3cc30db529a5a952124bf63e33e8cb5f61",
              "inputs": {
                "candidate": {
                  "height": 10,
                  "rgb_sha256": "9e97aefe2a0a4307d1e7265efce6feb4c3387c37eb57e90a383dc6bd0747dad0",
                  "width": 768
                },
                "reference": {
                  "height": 10,
                  "rgb_sha256": "4c558c0d2563e2298bfeb3d2d83f029ffd1a21863c17beca1e6d88c389e4b0c8",
                  "width": 768
                }
              },
              "run_key": "40cfab381ae9402268d7774fe8bec5014d1b13e2c36a1537f789b679d1cbae9b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 11.151145515218532,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.03603096369668,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.996692496379749,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 10.03603096369668
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 58.97,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9816
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 98.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "00c5ba654bcdd7327a0268d7683320bef56a66d4d7785a7dc1dab4988a18a392"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 124.964166,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 10,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Maximum projected mass distance 8.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 61.8027920923142,
                  "near_uniform": false,
                  "rgb_stddev_max": 80.86275472160081
                },
                "reference": {
                  "gray_stddev": 59.32767592986554,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.45584296337702
                }
              },
              "issues": [],
              "layout_identity_score": 98.16470857152032,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 87.64,
            "preset": "default",
            "provenance": {
              "comparison_key": "2c30cfed5fbda0b498efc2d64d297e3cc30db529a5a952124bf63e33e8cb5f61",
              "inputs": {
                "candidate": {
                  "height": 10,
                  "rgb_sha256": "9e97aefe2a0a4307d1e7265efce6feb4c3387c37eb57e90a383dc6bd0747dad0",
                  "width": 768
                },
                "reference": {
                  "height": 10,
                  "rgb_sha256": "4c558c0d2563e2298bfeb3d2d83f029ffd1a21863c17beca1e6d88c389e4b0c8",
                  "width": 768
                }
              },
              "run_key": "40cfab381ae9402268d7774fe8bec5014d1b13e2c36a1537f789b679d1cbae9b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 11.151145515218532,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.03603096369668,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.996692496379749,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 10.03603096369668
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 58.97,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9816
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 98.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "00c5ba654bcdd7327a0268d7683320bef56a66d4d7785a7dc1dab4988a18a392"
        }
      ]
    },
    "color_transport256_common_pixel": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 123.791042,
        "median": 122.076042,
        "min": 116.81825,
        "n": 3,
        "samples": [
          116.81825,
          123.791042,
          122.076042
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 10,
            "orig_w": 768,
            "scale": 1.0
          },
          "height": 10,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 10,
            "orig_w": 768,
            "scale": 1.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "color",
            "observed": "Maximum projected mass distance 8.00 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 61.8030029652294,
              "near_uniform": false,
              "rgb_stddev_max": 80.86275472160081
            },
            "reference": {
              "gray_stddev": 59.32789560024431,
              "near_uniform": false,
              "rgb_stddev_max": 85.45596125977931
            }
          },
          "issues": [],
          "layout_identity_score": 98.16470934265391,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 87.64,
        "preset": "default",
        "provenance": {
          "comparison_key": "fbbed18bbd72cafffebcf3481e2f5537529b804d98938b7b3ff5228b1d246c0d",
          "inputs": {
            "candidate": {
              "height": 10,
              "rgb_sha256": "32d49f567de599269ec0c4bc08823c38bc90e3df42f731a83539d76d7d566eef",
              "width": 768
            },
            "reference": {
              "height": 10,
              "rgb_sha256": "49b71ea55ac6c73a04e8fd80894ca8e6df471ce67238e5eec66f772abd846377",
              "width": 768
            }
          },
          "run_key": "13ddf5b0f4f9fded52c6dd41c86a542939f072325194e6f8d05b6e684d5c062e",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 11.151147342084629,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 10.036032607876166,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 7.996692496379749,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 10.036032607876166
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 58.97,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 1
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9816
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 98.16,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0,
                "left": 0.0,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "ref": {
                "bottom": 0.0,
                "left": 0.0,
                "mean_gap": 0.0,
                "right": 0.0,
                "top": 0.0
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 100.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 116.81825,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 10,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Maximum projected mass distance 8.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 61.8030029652294,
                  "near_uniform": false,
                  "rgb_stddev_max": 80.86275472160081
                },
                "reference": {
                  "gray_stddev": 59.32789560024431,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.45596125977931
                }
              },
              "issues": [],
              "layout_identity_score": 98.16470934265391,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 87.64,
            "preset": "default",
            "provenance": {
              "comparison_key": "fbbed18bbd72cafffebcf3481e2f5537529b804d98938b7b3ff5228b1d246c0d",
              "inputs": {
                "candidate": {
                  "height": 10,
                  "rgb_sha256": "32d49f567de599269ec0c4bc08823c38bc90e3df42f731a83539d76d7d566eef",
                  "width": 768
                },
                "reference": {
                  "height": 10,
                  "rgb_sha256": "49b71ea55ac6c73a04e8fd80894ca8e6df471ce67238e5eec66f772abd846377",
                  "width": 768
                }
              },
              "run_key": "13ddf5b0f4f9fded52c6dd41c86a542939f072325194e6f8d05b6e684d5c062e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 11.151147342084629,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.036032607876166,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.996692496379749,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 10.036032607876166
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 58.97,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9816
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 98.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "bc529694d56801d8c4b9b19fc6dcaafdbf4c2472035e34bc7defce0e88dae445"
        },
        {
          "elapsed_ms": 123.791042,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 10,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Maximum projected mass distance 8.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 61.8030029652294,
                  "near_uniform": false,
                  "rgb_stddev_max": 80.86275472160081
                },
                "reference": {
                  "gray_stddev": 59.32789560024431,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.45596125977931
                }
              },
              "issues": [],
              "layout_identity_score": 98.16470934265391,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 87.64,
            "preset": "default",
            "provenance": {
              "comparison_key": "fbbed18bbd72cafffebcf3481e2f5537529b804d98938b7b3ff5228b1d246c0d",
              "inputs": {
                "candidate": {
                  "height": 10,
                  "rgb_sha256": "32d49f567de599269ec0c4bc08823c38bc90e3df42f731a83539d76d7d566eef",
                  "width": 768
                },
                "reference": {
                  "height": 10,
                  "rgb_sha256": "49b71ea55ac6c73a04e8fd80894ca8e6df471ce67238e5eec66f772abd846377",
                  "width": 768
                }
              },
              "run_key": "13ddf5b0f4f9fded52c6dd41c86a542939f072325194e6f8d05b6e684d5c062e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 11.151147342084629,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.036032607876166,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.996692496379749,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 10.036032607876166
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 58.97,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9816
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 98.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "bc529694d56801d8c4b9b19fc6dcaafdbf4c2472035e34bc7defce0e88dae445"
        },
        {
          "elapsed_ms": 122.076042,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 10,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Maximum projected mass distance 8.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 61.8030029652294,
                  "near_uniform": false,
                  "rgb_stddev_max": 80.86275472160081
                },
                "reference": {
                  "gray_stddev": 59.32789560024431,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.45596125977931
                }
              },
              "issues": [],
              "layout_identity_score": 98.16470934265391,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 87.64,
            "preset": "default",
            "provenance": {
              "comparison_key": "fbbed18bbd72cafffebcf3481e2f5537529b804d98938b7b3ff5228b1d246c0d",
              "inputs": {
                "candidate": {
                  "height": 10,
                  "rgb_sha256": "32d49f567de599269ec0c4bc08823c38bc90e3df42f731a83539d76d7d566eef",
                  "width": 768
                },
                "reference": {
                  "height": 10,
                  "rgb_sha256": "49b71ea55ac6c73a04e8fd80894ca8e6df471ce67238e5eec66f772abd846377",
                  "width": 768
                }
              },
              "run_key": "13ddf5b0f4f9fded52c6dd41c86a542939f072325194e6f8d05b6e684d5c062e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 11.151147342084629,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.036032607876166,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.996692496379749,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 10.036032607876166
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 58.97,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9816
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 98.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "bc529694d56801d8c4b9b19fc6dcaafdbf4c2472035e34bc7defce0e88dae445"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 123.744417,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "height": 10,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 10,
                "orig_w": 768,
                "scale": 1.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "color",
                "observed": "Maximum projected mass distance 8.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 61.8030029652294,
                  "near_uniform": false,
                  "rgb_stddev_max": 80.86275472160081
                },
                "reference": {
                  "gray_stddev": 59.32789560024431,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.45596125977931
                }
              },
              "issues": [],
              "layout_identity_score": 98.16470934265391,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 87.64,
            "preset": "default",
            "provenance": {
              "comparison_key": "fbbed18bbd72cafffebcf3481e2f5537529b804d98938b7b3ff5228b1d246c0d",
              "inputs": {
                "candidate": {
                  "height": 10,
                  "rgb_sha256": "32d49f567de599269ec0c4bc08823c38bc90e3df42f731a83539d76d7d566eef",
                  "width": 768
                },
                "reference": {
                  "height": 10,
                  "rgb_sha256": "49b71ea55ac6c73a04e8fd80894ca8e6df471ce67238e5eec66f772abd846377",
                  "width": 768
                }
              },
              "run_key": "13ddf5b0f4f9fded52c6dd41c86a542939f072325194e6f8d05b6e684d5c062e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 11.151147342084629,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 10.036032607876166,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.996692496379749,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 10.036032607876166
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 58.97,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9816
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 98.16,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "ref": {
                    "bottom": 0.0,
                    "left": 0.0,
                    "mean_gap": 0.0,
                    "right": 0.0,
                    "top": 0.0
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "bc529694d56801d8c4b9b19fc6dcaafdbf4c2472035e34bc7defce0e88dae445"
        }
      ]
    },
    "crop_+1": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 396.441,
        "median": 391.9025,
        "min": 390.4555,
        "n": 3,
        "samples": [
          390.4555,
          391.9025,
          396.441
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.9957,
          "dx": -1.06,
          "dy": -1.2,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 319,
            "orig_w": 383,
            "scale": 2.0052219321148823
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.56440117994785,
              "near_uniform": false,
              "rgb_stddev_max": 87.63801133867186
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [
            {
              "code": "translation_applied"
            }
          ],
          "layout_identity_score": 84.84326912158284,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 96.34,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 319,
              "rgb_sha256": "26ec2d04710ca9dfb0fa5a71b7c67d7bbedd8c52a5b4b5cbb43d5933c11a35f9",
              "width": 383
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "384f89b409b33dfe987c23e13e045bf72c21d6f8f412b38b3eca2dba2b1aa4fd",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.38543694053697797,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.3468932464832802,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.17402547629189638,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.3468932464832802
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 98.19,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.9957,
                "dx": -1.06,
                "dy": -1.2,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9454
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 94.54,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7688,
                "left": 0.0365,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0312
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.974,
                "left": 0.978,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 0.974
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 98.52,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.921,
              "cand": {
                "area_frac": 0.0429,
                "count": 55,
                "median_h": 13.0
              },
              "height_sim": 0.929,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 92.47,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 390.4555,
          "result": {
            "alignment": {
              "cc": 0.9957,
              "dx": -1.06,
              "dy": -1.2,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 319,
                "orig_w": 383,
                "scale": 2.0052219321148823
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.56440117994785,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.63801133867186
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 84.84326912158284,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 96.34,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 319,
                  "rgb_sha256": "26ec2d04710ca9dfb0fa5a71b7c67d7bbedd8c52a5b4b5cbb43d5933c11a35f9",
                  "width": 383
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "384f89b409b33dfe987c23e13e045bf72c21d6f8f412b38b3eca2dba2b1aa4fd",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38543694053697797,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3468932464832802,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.17402547629189638,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3468932464832802
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.19,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9957,
                    "dx": -1.06,
                    "dy": -1.2,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9454
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.54,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7688,
                    "left": 0.0365,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.52,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.921,
                  "cand": {
                    "area_frac": 0.0429,
                    "count": 55,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 92.47,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "74761b95d10e7e92c08a94940ffed4d71aa76c798d46cb7e179e8669b3e8119b"
        },
        {
          "elapsed_ms": 391.9025,
          "result": {
            "alignment": {
              "cc": 0.9957,
              "dx": -1.06,
              "dy": -1.2,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 319,
                "orig_w": 383,
                "scale": 2.0052219321148823
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.56440117994785,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.63801133867186
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 84.84326912158284,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 96.34,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 319,
                  "rgb_sha256": "26ec2d04710ca9dfb0fa5a71b7c67d7bbedd8c52a5b4b5cbb43d5933c11a35f9",
                  "width": 383
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "384f89b409b33dfe987c23e13e045bf72c21d6f8f412b38b3eca2dba2b1aa4fd",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38543694053697797,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3468932464832802,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.17402547629189638,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3468932464832802
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.19,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9957,
                    "dx": -1.06,
                    "dy": -1.2,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9454
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.54,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7688,
                    "left": 0.0365,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.52,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.921,
                  "cand": {
                    "area_frac": 0.0429,
                    "count": 55,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 92.47,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "74761b95d10e7e92c08a94940ffed4d71aa76c798d46cb7e179e8669b3e8119b"
        },
        {
          "elapsed_ms": 396.441,
          "result": {
            "alignment": {
              "cc": 0.9957,
              "dx": -1.06,
              "dy": -1.2,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 319,
                "orig_w": 383,
                "scale": 2.0052219321148823
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.56440117994785,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.63801133867186
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 84.84326912158284,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 96.34,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 319,
                  "rgb_sha256": "26ec2d04710ca9dfb0fa5a71b7c67d7bbedd8c52a5b4b5cbb43d5933c11a35f9",
                  "width": 383
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "384f89b409b33dfe987c23e13e045bf72c21d6f8f412b38b3eca2dba2b1aa4fd",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38543694053697797,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3468932464832802,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.17402547629189638,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3468932464832802
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.19,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9957,
                    "dx": -1.06,
                    "dy": -1.2,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9454
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.54,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7688,
                    "left": 0.0365,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.52,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.921,
                  "cand": {
                    "area_frac": 0.0429,
                    "count": 55,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 92.47,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "74761b95d10e7e92c08a94940ffed4d71aa76c798d46cb7e179e8669b3e8119b"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 401.634,
          "result": {
            "alignment": {
              "cc": 0.9957,
              "dx": -1.06,
              "dy": -1.2,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 319,
                "orig_w": 383,
                "scale": 2.0052219321148823
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.56440117994785,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.63801133867186
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 84.84326912158284,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 96.34,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 319,
                  "rgb_sha256": "26ec2d04710ca9dfb0fa5a71b7c67d7bbedd8c52a5b4b5cbb43d5933c11a35f9",
                  "width": 383
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "384f89b409b33dfe987c23e13e045bf72c21d6f8f412b38b3eca2dba2b1aa4fd",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38543694053697797,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3468932464832802,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.17402547629189638,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3468932464832802
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.19,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9957,
                    "dx": -1.06,
                    "dy": -1.2,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9454
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.54,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7688,
                    "left": 0.0365,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.52,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.921,
                  "cand": {
                    "area_frac": 0.0429,
                    "count": 55,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 92.47,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "74761b95d10e7e92c08a94940ffed4d71aa76c798d46cb7e179e8669b3e8119b"
        }
      ]
    },
    "crop_+2": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 407.365458,
        "median": 406.099833,
        "min": 403.0855,
        "n": 3,
        "samples": [
          407.365458,
          406.099833,
          403.0855
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.9897,
          "dx": -2.14,
          "dy": -2.8,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 318,
            "orig_w": 382,
            "scale": 2.0104712041884816
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.72373699892911,
              "near_uniform": false,
              "rgb_stddev_max": 87.82071516603408
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [
            {
              "code": "translation_applied"
            }
          ],
          "layout_identity_score": 65.57709604497329,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 93.57,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 318,
              "rgb_sha256": "f2f60b6828cee677e0620102a06d899a7df758480c48b64240005b098a00e032",
              "width": 382
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "3f6a142f4c6f7e9a0062ee83cb649f402d3b5ac34bad7bedfac8df722c5afeb6",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.36337875087271837,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.32704087578544655,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.21958096730212226,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.32704087578544655
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 98.29,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.9897,
                "dx": -2.14,
                "dy": -2.8,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0016,
              "ssim": 0.8848
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 88.48,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7719,
                "left": 0.0339,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0281
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.948,
                "left": 0.957,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 0.948
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 97.05,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.873,
              "cand": {
                "area_frac": 0.0452,
                "count": 56,
                "median_h": 13.0
              },
              "height_sim": 0.929,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 90.08,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 407.365458,
          "result": {
            "alignment": {
              "cc": 0.9897,
              "dx": -2.14,
              "dy": -2.8,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 318,
                "orig_w": 382,
                "scale": 2.0104712041884816
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.72373699892911,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.82071516603408
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 65.57709604497329,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 93.57,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 318,
                  "rgb_sha256": "f2f60b6828cee677e0620102a06d899a7df758480c48b64240005b098a00e032",
                  "width": 382
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "3f6a142f4c6f7e9a0062ee83cb649f402d3b5ac34bad7bedfac8df722c5afeb6",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.36337875087271837,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.32704087578544655,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.21958096730212226,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.32704087578544655
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.29,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9897,
                    "dx": -2.14,
                    "dy": -2.8,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0016,
                  "ssim": 0.8848
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 88.48,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7719,
                    "left": 0.0339,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0281
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 97.05,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.873,
                  "cand": {
                    "area_frac": 0.0452,
                    "count": 56,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 90.08,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "d0b702963bf476c0b4bf432f29d86a5afb2dfc99eed5faa7134cd1e8c1eadf25"
        },
        {
          "elapsed_ms": 406.099833,
          "result": {
            "alignment": {
              "cc": 0.9897,
              "dx": -2.14,
              "dy": -2.8,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 318,
                "orig_w": 382,
                "scale": 2.0104712041884816
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.72373699892911,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.82071516603408
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 65.57709604497329,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 93.57,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 318,
                  "rgb_sha256": "f2f60b6828cee677e0620102a06d899a7df758480c48b64240005b098a00e032",
                  "width": 382
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "3f6a142f4c6f7e9a0062ee83cb649f402d3b5ac34bad7bedfac8df722c5afeb6",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.36337875087271837,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.32704087578544655,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.21958096730212226,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.32704087578544655
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.29,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9897,
                    "dx": -2.14,
                    "dy": -2.8,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0016,
                  "ssim": 0.8848
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 88.48,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7719,
                    "left": 0.0339,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0281
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 97.05,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.873,
                  "cand": {
                    "area_frac": 0.0452,
                    "count": 56,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 90.08,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "d0b702963bf476c0b4bf432f29d86a5afb2dfc99eed5faa7134cd1e8c1eadf25"
        },
        {
          "elapsed_ms": 403.0855,
          "result": {
            "alignment": {
              "cc": 0.9897,
              "dx": -2.14,
              "dy": -2.8,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 318,
                "orig_w": 382,
                "scale": 2.0104712041884816
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.72373699892911,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.82071516603408
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 65.57709604497329,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 93.57,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 318,
                  "rgb_sha256": "f2f60b6828cee677e0620102a06d899a7df758480c48b64240005b098a00e032",
                  "width": 382
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "3f6a142f4c6f7e9a0062ee83cb649f402d3b5ac34bad7bedfac8df722c5afeb6",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.36337875087271837,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.32704087578544655,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.21958096730212226,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.32704087578544655
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.29,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9897,
                    "dx": -2.14,
                    "dy": -2.8,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0016,
                  "ssim": 0.8848
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 88.48,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7719,
                    "left": 0.0339,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0281
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 97.05,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.873,
                  "cand": {
                    "area_frac": 0.0452,
                    "count": 56,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 90.08,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "d0b702963bf476c0b4bf432f29d86a5afb2dfc99eed5faa7134cd1e8c1eadf25"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 410.205375,
          "result": {
            "alignment": {
              "cc": 0.9897,
              "dx": -2.14,
              "dy": -2.8,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 318,
                "orig_w": 382,
                "scale": 2.0104712041884816
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.72373699892911,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.82071516603408
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 65.57709604497329,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 93.57,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 318,
                  "rgb_sha256": "f2f60b6828cee677e0620102a06d899a7df758480c48b64240005b098a00e032",
                  "width": 382
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "3f6a142f4c6f7e9a0062ee83cb649f402d3b5ac34bad7bedfac8df722c5afeb6",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.36337875087271837,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.32704087578544655,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.21958096730212226,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.32704087578544655
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.29,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9897,
                    "dx": -2.14,
                    "dy": -2.8,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0016,
                  "ssim": 0.8848
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 88.48,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7719,
                    "left": 0.0339,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0281
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 97.05,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.873,
                  "cand": {
                    "area_frac": 0.0452,
                    "count": 56,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 90.08,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "d0b702963bf476c0b4bf432f29d86a5afb2dfc99eed5faa7134cd1e8c1eadf25"
        }
      ]
    },
    "crop_-1": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 397.119959,
        "median": 397.012375,
        "min": 389.277625,
        "n": 3,
        "samples": [
          397.119959,
          389.277625,
          397.012375
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.996,
          "dx": 0.94,
          "dy": 0.8,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 319,
            "orig_w": 383,
            "scale": 2.0052219321148823
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.56440117994785,
              "near_uniform": false,
              "rgb_stddev_max": 87.63801133867186
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 84.57961107805995,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 96.6,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 319,
              "rgb_sha256": "9247d6e0c93cdc4d85ae51c4c3a13d84d0fa6f02fbe3b48b642768b815ab033a",
              "width": 383
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "35fb55af93fc3e559756373e98a9e5a8f60cb887c3a43b0dcbbb4fbff7561cec",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.38757341311801274,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.3488160718062115,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.17435434835809197,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.3488160718062115
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 98.18,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.996,
                "dx": 0.94,
                "dy": 0.8,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.9454
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 94.54,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0365,
                "top": 0.0344
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 0.978,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 99.57,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.934,
              "cand": {
                "area_frac": 0.0423,
                "count": 55,
                "median_h": 13.0
              },
              "height_sim": 0.929,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 93.14,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 397.119959,
          "result": {
            "alignment": {
              "cc": 0.996,
              "dx": 0.94,
              "dy": 0.8,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 319,
                "orig_w": 383,
                "scale": 2.0052219321148823
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.56440117994785,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.63801133867186
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 84.57961107805995,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 96.6,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 319,
                  "rgb_sha256": "9247d6e0c93cdc4d85ae51c4c3a13d84d0fa6f02fbe3b48b642768b815ab033a",
                  "width": 383
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "35fb55af93fc3e559756373e98a9e5a8f60cb887c3a43b0dcbbb4fbff7561cec",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38757341311801274,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3488160718062115,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.17435434835809197,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3488160718062115
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.18,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.996,
                    "dx": 0.94,
                    "dy": 0.8,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9454
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.54,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0365,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 99.57,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.934,
                  "cand": {
                    "area_frac": 0.0423,
                    "count": 55,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 93.14,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "03290d17e99bd549c1c7a319c468edc2afd999cec7b339857891745e08c75757"
        },
        {
          "elapsed_ms": 389.277625,
          "result": {
            "alignment": {
              "cc": 0.996,
              "dx": 0.94,
              "dy": 0.8,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 319,
                "orig_w": 383,
                "scale": 2.0052219321148823
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.56440117994785,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.63801133867186
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 84.57961107805995,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 96.6,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 319,
                  "rgb_sha256": "9247d6e0c93cdc4d85ae51c4c3a13d84d0fa6f02fbe3b48b642768b815ab033a",
                  "width": 383
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "35fb55af93fc3e559756373e98a9e5a8f60cb887c3a43b0dcbbb4fbff7561cec",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38757341311801274,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3488160718062115,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.17435434835809197,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3488160718062115
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.18,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.996,
                    "dx": 0.94,
                    "dy": 0.8,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9454
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.54,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0365,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 99.57,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.934,
                  "cand": {
                    "area_frac": 0.0423,
                    "count": 55,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 93.14,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "03290d17e99bd549c1c7a319c468edc2afd999cec7b339857891745e08c75757"
        },
        {
          "elapsed_ms": 397.012375,
          "result": {
            "alignment": {
              "cc": 0.996,
              "dx": 0.94,
              "dy": 0.8,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 319,
                "orig_w": 383,
                "scale": 2.0052219321148823
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.56440117994785,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.63801133867186
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 84.57961107805995,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 96.6,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 319,
                  "rgb_sha256": "9247d6e0c93cdc4d85ae51c4c3a13d84d0fa6f02fbe3b48b642768b815ab033a",
                  "width": 383
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "35fb55af93fc3e559756373e98a9e5a8f60cb887c3a43b0dcbbb4fbff7561cec",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38757341311801274,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3488160718062115,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.17435434835809197,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3488160718062115
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.18,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.996,
                    "dx": 0.94,
                    "dy": 0.8,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9454
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.54,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0365,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 99.57,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.934,
                  "cand": {
                    "area_frac": 0.0423,
                    "count": 55,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 93.14,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "03290d17e99bd549c1c7a319c468edc2afd999cec7b339857891745e08c75757"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 397.876458,
          "result": {
            "alignment": {
              "cc": 0.996,
              "dx": 0.94,
              "dy": 0.8,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 319,
                "orig_w": 383,
                "scale": 2.0052219321148823
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.56440117994785,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.63801133867186
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 84.57961107805995,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 96.6,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 319,
                  "rgb_sha256": "9247d6e0c93cdc4d85ae51c4c3a13d84d0fa6f02fbe3b48b642768b815ab033a",
                  "width": 383
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "35fb55af93fc3e559756373e98a9e5a8f60cb887c3a43b0dcbbb4fbff7561cec",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38757341311801274,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3488160718062115,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.17435434835809197,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3488160718062115
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.18,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.996,
                    "dx": 0.94,
                    "dy": 0.8,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.9454
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 94.54,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0365,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 99.57,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.934,
                  "cand": {
                    "area_frac": 0.0423,
                    "count": 55,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 93.14,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "03290d17e99bd549c1c7a319c468edc2afd999cec7b339857891745e08c75757"
        }
      ]
    },
    "crop_-2": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 413.07725,
        "median": 410.688792,
        "min": 398.174084,
        "n": 3,
        "samples": [
          410.688792,
          398.174084,
          413.07725
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.9894,
          "dx": 1.88,
          "dy": 1.22,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 318,
            "orig_w": 382,
            "scale": 2.0104712041884816
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.72373699892911,
              "near_uniform": false,
              "rgb_stddev_max": 87.82071516603408
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [
            {
              "code": "translation_applied"
            }
          ],
          "layout_identity_score": 73.94743106265712,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 93.98,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 318,
              "rgb_sha256": "5d33f582370979f6cdfeac86b778d7191415cdc11a14f120476a30772b937fc0",
              "width": 382
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "a9bb6ede8e38df38f45a7b7028b665726a826b3a510a5ec233809a0dc0826201",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.38419660811436307,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.3457769473029268,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.22269031414606044,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.3457769473029268
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 98.2,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.9894,
                "dx": 1.88,
                "dy": 1.22,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0016,
              "ssim": 0.885
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 88.5,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0339,
                "top": 0.0344
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 0.957,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 99.13,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.889,
              "cand": {
                "area_frac": 0.0444,
                "count": 56,
                "median_h": 13.0
              },
              "height_sim": 0.929,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 90.88,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 410.688792,
          "result": {
            "alignment": {
              "cc": 0.9894,
              "dx": 1.88,
              "dy": 1.22,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 318,
                "orig_w": 382,
                "scale": 2.0104712041884816
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.72373699892911,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.82071516603408
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 73.94743106265712,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 93.98,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 318,
                  "rgb_sha256": "5d33f582370979f6cdfeac86b778d7191415cdc11a14f120476a30772b937fc0",
                  "width": 382
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a9bb6ede8e38df38f45a7b7028b665726a826b3a510a5ec233809a0dc0826201",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38419660811436307,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3457769473029268,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.22269031414606044,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3457769473029268
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.2,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9894,
                    "dx": 1.88,
                    "dy": 1.22,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0016,
                  "ssim": 0.885
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 88.5,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0339,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 99.13,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.889,
                  "cand": {
                    "area_frac": 0.0444,
                    "count": 56,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 90.88,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "1a05c7309a3cf16139b4aa34bd819c5bb2aa096cadfb7316e06e4859a39733d3"
        },
        {
          "elapsed_ms": 398.174084,
          "result": {
            "alignment": {
              "cc": 0.9894,
              "dx": 1.88,
              "dy": 1.22,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 318,
                "orig_w": 382,
                "scale": 2.0104712041884816
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.72373699892911,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.82071516603408
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 73.94743106265712,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 93.98,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 318,
                  "rgb_sha256": "5d33f582370979f6cdfeac86b778d7191415cdc11a14f120476a30772b937fc0",
                  "width": 382
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a9bb6ede8e38df38f45a7b7028b665726a826b3a510a5ec233809a0dc0826201",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38419660811436307,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3457769473029268,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.22269031414606044,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3457769473029268
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.2,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9894,
                    "dx": 1.88,
                    "dy": 1.22,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0016,
                  "ssim": 0.885
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 88.5,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0339,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 99.13,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.889,
                  "cand": {
                    "area_frac": 0.0444,
                    "count": 56,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 90.88,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "1a05c7309a3cf16139b4aa34bd819c5bb2aa096cadfb7316e06e4859a39733d3"
        },
        {
          "elapsed_ms": 413.07725,
          "result": {
            "alignment": {
              "cc": 0.9894,
              "dx": 1.88,
              "dy": 1.22,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 318,
                "orig_w": 382,
                "scale": 2.0104712041884816
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.72373699892911,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.82071516603408
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 73.94743106265712,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 93.98,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 318,
                  "rgb_sha256": "5d33f582370979f6cdfeac86b778d7191415cdc11a14f120476a30772b937fc0",
                  "width": 382
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a9bb6ede8e38df38f45a7b7028b665726a826b3a510a5ec233809a0dc0826201",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38419660811436307,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3457769473029268,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.22269031414606044,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3457769473029268
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.2,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9894,
                    "dx": 1.88,
                    "dy": 1.22,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0016,
                  "ssim": 0.885
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 88.5,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0339,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 99.13,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.889,
                  "cand": {
                    "area_frac": 0.0444,
                    "count": 56,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 90.88,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "1a05c7309a3cf16139b4aa34bd819c5bb2aa096cadfb7316e06e4859a39733d3"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 400.994875,
          "result": {
            "alignment": {
              "cc": 0.9894,
              "dx": 1.88,
              "dy": 1.22,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 318,
                "orig_w": 382,
                "scale": 2.0104712041884816
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.72373699892911,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.82071516603408
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 73.94743106265712,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 93.98,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 318,
                  "rgb_sha256": "5d33f582370979f6cdfeac86b778d7191415cdc11a14f120476a30772b937fc0",
                  "width": 382
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a9bb6ede8e38df38f45a7b7028b665726a826b3a510a5ec233809a0dc0826201",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.38419660811436307,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.3457769473029268,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.22269031414606044,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.3457769473029268
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 98.2,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.9894,
                    "dx": 1.88,
                    "dy": 1.22,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0016,
                  "ssim": 0.885
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 88.5,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0339,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 99.13,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.889,
                  "cand": {
                    "area_frac": 0.0444,
                    "count": 56,
                    "median_h": 13.0
                  },
                  "height_sim": 0.929,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 90.88,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "1a05c7309a3cf16139b4aa34bd819c5bb2aa096cadfb7316e06e4859a39733d3"
        }
      ]
    },
    "ecc_failure": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 326.276792,
        "median": 312.667791,
        "min": 292.573,
        "n": 3,
        "samples": [
          326.276792,
          312.667791,
          292.573
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "screen",
          "note": "ECC did not converge; fell back to identity (error)",
          "outcome": "identity_fallback",
          "reason": "ecc_nonconvergence"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 128,
            "orig_w": 192,
            "scale": 4.0
          },
          "height": 512,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 128,
            "orig_w": 192,
            "scale": 4.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "layout",
            "observed": "layout score 38.5 is below 70 after alignment",
            "severity": "high",
            "suggested_fix": "match the reference structure, spacing, and proportions",
            "type": "layout_mismatch"
          },
          {
            "area": "color",
            "observed": "At least 100.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
            "severity": "medium",
            "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
            "type": "color_missing"
          },
          {
            "area": "color",
            "observed": "At least 100.00% of candidate color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
            "severity": "medium",
            "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
            "type": "color_added"
          },
          {
            "area": "color",
            "observed": "Both images have certified unmatched color mass. No spatial correspondence was inferred.",
            "severity": "medium",
            "suggested_fix": "Inspect corresponding regions before recoloring; preserve colors in unchanged regions.",
            "type": "color_shift"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 68.21 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 0.0,
              "near_uniform": true,
              "rgb_stddev_max": 0.0
            },
            "reference": {
              "gray_stddev": 0.0,
              "near_uniform": true,
              "rgb_stddev_max": 0.0
            }
          },
          "issues": [
            {
              "code": "near_uniform_input",
              "side": "reference"
            },
            {
              "code": "near_uniform_input",
              "side": "candidate"
            },
            {
              "code": "alignment_unresolved"
            }
          ],
          "layout_identity_score": 38.470692681115636,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 14.76,
        "preset": "default",
        "provenance": {
          "comparison_key": "de94bdb8665e5c83ec94f079a4045018a66ecd43fc8432d067e3bba88dbea74a",
          "inputs": {
            "candidate": {
              "height": 128,
              "rgb_sha256": "17626ea6817fce3e79e6f6588abb273f9e65411ebdf76dd8cf7efb2aa9d0f32e",
              "width": 192
            },
            "reference": {
              "height": 128,
              "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
              "width": 192
            }
          },
          "run_key": "82c8421dc01a81ed79bec61da518d17cb0046af943a5490b7e7d330ac23bd878",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.9999999999994682,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.9999999999994996
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 74.94081943979505,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 68.20903862707503,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 68.20903862707503,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 67.44673749581554
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 2.76,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 0,
              "coverage": 0.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "note": "no major regions detected in reference",
              "ref_regions": 0
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": null,
            "status": "not_applicable"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "ECC did not converge; fell back to identity (error)",
                "outcome": "identity_fallback",
                "reason": "ecc_nonconvergence"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.3847
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 38.47,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 326.276792,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "screen",
              "note": "ECC did not converge; fell back to identity (error)",
              "outcome": "identity_fallback",
              "reason": "ecc_nonconvergence"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 38.5 is below 70 after alignment",
                "severity": "high",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of candidate color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_added"
              },
              {
                "area": "color",
                "observed": "Both images have certified unmatched color mass. No spatial correspondence was inferred.",
                "severity": "medium",
                "suggested_fix": "Inspect corresponding regions before recoloring; preserve colors in unchanged regions.",
                "type": "color_shift"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 68.21 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                },
                {
                  "code": "alignment_unresolved"
                }
              ],
              "layout_identity_score": 38.470692681115636,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 14.76,
            "preset": "default",
            "provenance": {
              "comparison_key": "de94bdb8665e5c83ec94f079a4045018a66ecd43fc8432d067e3bba88dbea74a",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "17626ea6817fce3e79e6f6588abb273f9e65411ebdf76dd8cf7efb2aa9d0f32e",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "82c8421dc01a81ed79bec61da518d17cb0046af943a5490b7e7d330ac23bd878",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.9999999999994682,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.9999999999994996
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 74.94081943979505,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 68.20903862707503,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 68.20903862707503,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 67.44673749581554
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 2.76,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "ECC did not converge; fell back to identity (error)",
                    "outcome": "identity_fallback",
                    "reason": "ecc_nonconvergence"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.3847
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 38.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "d2b51b2854d92601ff0d61933f2682d5d3417996deb35d4b1a429cd1ef1aa261"
        },
        {
          "elapsed_ms": 312.667791,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "screen",
              "note": "ECC did not converge; fell back to identity (error)",
              "outcome": "identity_fallback",
              "reason": "ecc_nonconvergence"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 38.5 is below 70 after alignment",
                "severity": "high",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of candidate color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_added"
              },
              {
                "area": "color",
                "observed": "Both images have certified unmatched color mass. No spatial correspondence was inferred.",
                "severity": "medium",
                "suggested_fix": "Inspect corresponding regions before recoloring; preserve colors in unchanged regions.",
                "type": "color_shift"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 68.21 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                },
                {
                  "code": "alignment_unresolved"
                }
              ],
              "layout_identity_score": 38.470692681115636,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 14.76,
            "preset": "default",
            "provenance": {
              "comparison_key": "de94bdb8665e5c83ec94f079a4045018a66ecd43fc8432d067e3bba88dbea74a",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "17626ea6817fce3e79e6f6588abb273f9e65411ebdf76dd8cf7efb2aa9d0f32e",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "82c8421dc01a81ed79bec61da518d17cb0046af943a5490b7e7d330ac23bd878",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.9999999999994682,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.9999999999994996
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 74.94081943979505,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 68.20903862707503,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 68.20903862707503,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 67.44673749581554
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 2.76,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "ECC did not converge; fell back to identity (error)",
                    "outcome": "identity_fallback",
                    "reason": "ecc_nonconvergence"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.3847
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 38.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "d2b51b2854d92601ff0d61933f2682d5d3417996deb35d4b1a429cd1ef1aa261"
        },
        {
          "elapsed_ms": 292.573,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "screen",
              "note": "ECC did not converge; fell back to identity (error)",
              "outcome": "identity_fallback",
              "reason": "ecc_nonconvergence"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 38.5 is below 70 after alignment",
                "severity": "high",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of candidate color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_added"
              },
              {
                "area": "color",
                "observed": "Both images have certified unmatched color mass. No spatial correspondence was inferred.",
                "severity": "medium",
                "suggested_fix": "Inspect corresponding regions before recoloring; preserve colors in unchanged regions.",
                "type": "color_shift"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 68.21 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                },
                {
                  "code": "alignment_unresolved"
                }
              ],
              "layout_identity_score": 38.470692681115636,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 14.76,
            "preset": "default",
            "provenance": {
              "comparison_key": "de94bdb8665e5c83ec94f079a4045018a66ecd43fc8432d067e3bba88dbea74a",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "17626ea6817fce3e79e6f6588abb273f9e65411ebdf76dd8cf7efb2aa9d0f32e",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "82c8421dc01a81ed79bec61da518d17cb0046af943a5490b7e7d330ac23bd878",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.9999999999994682,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.9999999999994996
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 74.94081943979505,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 68.20903862707503,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 68.20903862707503,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 67.44673749581554
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 2.76,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "ECC did not converge; fell back to identity (error)",
                    "outcome": "identity_fallback",
                    "reason": "ecc_nonconvergence"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.3847
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 38.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "d2b51b2854d92601ff0d61933f2682d5d3417996deb35d4b1a429cd1ef1aa261"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 299.974167,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "screen",
              "note": "ECC did not converge; fell back to identity (error)",
              "outcome": "identity_fallback",
              "reason": "ecc_nonconvergence"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 38.5 is below 70 after alignment",
                "severity": "high",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of candidate color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_added"
              },
              {
                "area": "color",
                "observed": "Both images have certified unmatched color mass. No spatial correspondence was inferred.",
                "severity": "medium",
                "suggested_fix": "Inspect corresponding regions before recoloring; preserve colors in unchanged regions.",
                "type": "color_shift"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 68.21 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                },
                {
                  "code": "alignment_unresolved"
                }
              ],
              "layout_identity_score": 38.470692681115636,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 14.76,
            "preset": "default",
            "provenance": {
              "comparison_key": "de94bdb8665e5c83ec94f079a4045018a66ecd43fc8432d067e3bba88dbea74a",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "17626ea6817fce3e79e6f6588abb273f9e65411ebdf76dd8cf7efb2aa9d0f32e",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "82c8421dc01a81ed79bec61da518d17cb0046af943a5490b7e7d330ac23bd878",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.9999999999994682,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.9999999999994996
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 74.94081943979505,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 68.20903862707503,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 68.20903862707503,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 67.44673749581554
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 2.76,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "ECC did not converge; fell back to identity (error)",
                    "outcome": "identity_fallback",
                    "reason": "ecc_nonconvergence"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.3847
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 38.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "d2b51b2854d92601ff0d61933f2682d5d3417996deb35d4b1a429cd1ef1aa261"
        }
      ]
    },
    "flat_identical_screen": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 294.519125,
        "median": 287.530416,
        "min": 282.789958,
        "n": 3,
        "samples": [
          294.519125,
          282.789958,
          287.530416
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "screen",
          "note": "ECC did not converge; fell back to identity (error)",
          "outcome": "identity_fallback",
          "reason": "ecc_nonconvergence"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 128,
            "orig_w": 192,
            "scale": 4.0
          },
          "height": 512,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 128,
            "orig_w": 192,
            "scale": 4.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 0.0,
              "near_uniform": true,
              "rgb_stddev_max": 0.0
            },
            "reference": {
              "gray_stddev": 0.0,
              "near_uniform": true,
              "rgb_stddev_max": 0.0
            }
          },
          "issues": [
            {
              "code": "near_uniform_input",
              "side": "reference"
            },
            {
              "code": "near_uniform_input",
              "side": "candidate"
            }
          ],
          "layout_identity_score": 100.0,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 100.0,
        "preset": "default",
        "provenance": {
          "comparison_key": "de94bdb8665e5c83ec94f079a4045018a66ecd43fc8432d067e3bba88dbea74a",
          "inputs": {
            "candidate": {
              "height": 128,
              "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
              "width": 192
            },
            "reference": {
              "height": 128,
              "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
              "width": 192
            }
          },
          "run_key": "4e66d52be228d094afaa8e1c8268cbff95e1d17bb504a7b49898e661440b31d9",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.0,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.0,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.0,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.0
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 0,
              "coverage": 0.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "note": "no major regions detected in reference",
              "ref_regions": 0
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": null,
            "status": "not_applicable"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "ECC did not converge; fell back to identity (error)",
                "outcome": "identity_fallback",
                "reason": "ecc_nonconvergence"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 294.519125,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "screen",
              "note": "ECC did not converge; fell back to identity (error)",
              "outcome": "identity_fallback",
              "reason": "ecc_nonconvergence"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "de94bdb8665e5c83ec94f079a4045018a66ecd43fc8432d067e3bba88dbea74a",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "4e66d52be228d094afaa8e1c8268cbff95e1d17bb504a7b49898e661440b31d9",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "ECC did not converge; fell back to identity (error)",
                    "outcome": "identity_fallback",
                    "reason": "ecc_nonconvergence"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9deb0f005a4cc004b1ac8fa2ed416227dafa948ae189ea243218a17bdd6787c9"
        },
        {
          "elapsed_ms": 282.789958,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "screen",
              "note": "ECC did not converge; fell back to identity (error)",
              "outcome": "identity_fallback",
              "reason": "ecc_nonconvergence"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "de94bdb8665e5c83ec94f079a4045018a66ecd43fc8432d067e3bba88dbea74a",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "4e66d52be228d094afaa8e1c8268cbff95e1d17bb504a7b49898e661440b31d9",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "ECC did not converge; fell back to identity (error)",
                    "outcome": "identity_fallback",
                    "reason": "ecc_nonconvergence"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9deb0f005a4cc004b1ac8fa2ed416227dafa948ae189ea243218a17bdd6787c9"
        },
        {
          "elapsed_ms": 287.530416,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "screen",
              "note": "ECC did not converge; fell back to identity (error)",
              "outcome": "identity_fallback",
              "reason": "ecc_nonconvergence"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "de94bdb8665e5c83ec94f079a4045018a66ecd43fc8432d067e3bba88dbea74a",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "4e66d52be228d094afaa8e1c8268cbff95e1d17bb504a7b49898e661440b31d9",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "ECC did not converge; fell back to identity (error)",
                    "outcome": "identity_fallback",
                    "reason": "ecc_nonconvergence"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9deb0f005a4cc004b1ac8fa2ed416227dafa948ae189ea243218a17bdd6787c9"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 288.281375,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "screen",
              "note": "ECC did not converge; fell back to identity (error)",
              "outcome": "identity_fallback",
              "reason": "ecc_nonconvergence"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "de94bdb8665e5c83ec94f079a4045018a66ecd43fc8432d067e3bba88dbea74a",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "4e66d52be228d094afaa8e1c8268cbff95e1d17bb504a7b49898e661440b31d9",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "ECC did not converge; fell back to identity (error)",
                    "outcome": "identity_fallback",
                    "reason": "ecc_nonconvergence"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9deb0f005a4cc004b1ac8fa2ed416227dafa948ae189ea243218a17bdd6787c9"
        }
      ]
    },
    "flat_identical_widget": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 283.611667,
        "median": 278.382917,
        "min": 278.05675,
        "n": 3,
        "samples": [
          283.611667,
          278.05675,
          278.382917
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 128,
            "orig_w": 192,
            "scale": 4.0
          },
          "height": 512,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 128,
            "orig_w": 192,
            "scale": 4.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 0.0,
              "near_uniform": true,
              "rgb_stddev_max": 0.0
            },
            "reference": {
              "gray_stddev": 0.0,
              "near_uniform": true,
              "rgb_stddev_max": 0.0
            }
          },
          "issues": [
            {
              "code": "near_uniform_input",
              "side": "reference"
            },
            {
              "code": "near_uniform_input",
              "side": "candidate"
            }
          ],
          "layout_identity_score": 100.0,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 100.0,
        "preset": "default",
        "provenance": {
          "comparison_key": "bc9c4f312a2599940afb92584aecea1bae22fc33218d7b6a842d8a109108aa72",
          "inputs": {
            "candidate": {
              "height": 128,
              "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
              "width": 192
            },
            "reference": {
              "height": 128,
              "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
              "width": 192
            }
          },
          "run_key": "3cddfc3ae9cf2e12d6cd87b658c5a0f806ffd015919f12096171155ca8cf216e",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.0,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.0,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.0,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.0
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 0,
              "coverage": 0.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "note": "no major regions detected in reference",
              "ref_regions": 0
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": null,
            "status": "not_applicable"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 283.611667,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "bc9c4f312a2599940afb92584aecea1bae22fc33218d7b6a842d8a109108aa72",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "3cddfc3ae9cf2e12d6cd87b658c5a0f806ffd015919f12096171155ca8cf216e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "2045ba0ec5fca09cb394af231c19ccf940576f3365c72cc536f7b1e4e4065b6f"
        },
        {
          "elapsed_ms": 278.05675,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "bc9c4f312a2599940afb92584aecea1bae22fc33218d7b6a842d8a109108aa72",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "3cddfc3ae9cf2e12d6cd87b658c5a0f806ffd015919f12096171155ca8cf216e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "2045ba0ec5fca09cb394af231c19ccf940576f3365c72cc536f7b1e4e4065b6f"
        },
        {
          "elapsed_ms": 278.382917,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "bc9c4f312a2599940afb92584aecea1bae22fc33218d7b6a842d8a109108aa72",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "3cddfc3ae9cf2e12d6cd87b658c5a0f806ffd015919f12096171155ca8cf216e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "2045ba0ec5fca09cb394af231c19ccf940576f3365c72cc536f7b1e4e4065b6f"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 279.852375,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                },
                "reference": {
                  "gray_stddev": 0.0,
                  "near_uniform": true,
                  "rgb_stddev_max": 0.0
                }
              },
              "issues": [
                {
                  "code": "near_uniform_input",
                  "side": "reference"
                },
                {
                  "code": "near_uniform_input",
                  "side": "candidate"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "bc9c4f312a2599940afb92584aecea1bae22fc33218d7b6a842d8a109108aa72",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "abf485a99ab309e743825130bd9bc12ae4eb7bee8f8a907ba828c200a251591b",
                  "width": 192
                }
              },
              "run_key": "3cddfc3ae9cf2e12d6cd87b658c5a0f806ffd015919f12096171155ca8cf216e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "2045ba0ec5fca09cb394af231c19ccf940576f3365c72cc536f7b1e4e4065b6f"
        }
      ]
    },
    "header_omitted_full": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 403.576708,
        "median": 403.228542,
        "min": 396.175083,
        "n": 3,
        "samples": [
          403.228542,
          403.576708,
          396.175083
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.3393,
          "dx": 0.0,
          "dy": 0.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              30,
              22,
              708,
              128
            ],
            "observed": "a reference region at x=30,y=22 (708x128) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              436,
              178,
              88,
              92
            ],
            "observed": "a reference region at x=436,y=178 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              336,
              284,
              88,
              92
            ],
            "observed": "a reference region at x=336,y=284 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              236,
              390,
              88,
              92
            ],
            "observed": "a reference region at x=236,y=390 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          },
          {
            "area": "spacing",
            "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the top margin toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              33,
              175,
              694,
              416
            ],
            "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 40.313476801693085,
              "near_uniform": false,
              "rgb_stddev_max": 45.83730413808101
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 85.46661804963476,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 37.05,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "a433a639dbcde25abda180e2e099a37b8c317c5a3597c3136b195842e9d5d61e",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 7.185619734430296,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 13.332385849303881,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 13.332385849303881,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 6.467057760987267
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 49.57,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 29,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.3393,
                "dx": 0.0,
                "dy": 0.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.8547
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 85.47,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0766,
                "left": 0.043,
                "mean_gap": 0.0,
                "right": 0.0534,
                "top": 0.2734
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.0,
                "left": 0.967,
                "mean_gap": 1.0,
                "right": 0.881,
                "top": 0.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 56.96,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.898,
              "cand": {
                "area_frac": 0.0355,
                "count": 56,
                "median_h": 17.0
              },
              "height_sim": 0.824,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 86.09,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 403.228542,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a433a639dbcde25abda180e2e099a37b8c317c5a3597c3136b195842e9d5d61e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e9241adba69877026fb1ac30a19b0b490d5e991d332c34d118820664e944efef"
        },
        {
          "elapsed_ms": 403.576708,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a433a639dbcde25abda180e2e099a37b8c317c5a3597c3136b195842e9d5d61e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e9241adba69877026fb1ac30a19b0b490d5e991d332c34d118820664e944efef"
        },
        {
          "elapsed_ms": 396.175083,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a433a639dbcde25abda180e2e099a37b8c317c5a3597c3136b195842e9d5d61e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e9241adba69877026fb1ac30a19b0b490d5e991d332c34d118820664e944efef"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 406.879292,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a433a639dbcde25abda180e2e099a37b8c317c5a3597c3136b195842e9d5d61e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e9241adba69877026fb1ac30a19b0b490d5e991d332c34d118820664e944efef"
        }
      ]
    },
    "header_omitted_ignored": {
      "effective_params": {
        "ignore_regions": [
          [
            0,
            0,
            384,
            80
          ]
        ],
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 422.937875,
        "median": 420.2265,
        "min": 397.138375,
        "n": 3,
        "samples": [
          397.138375,
          420.2265,
          422.937875
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 1.0,
          "dx": 0.0,
          "dy": 0.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 40.313476801693085,
              "near_uniform": false,
              "rgb_stddev_max": 45.83730413808101
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [
            {
              "code": "mask_fill_semantics"
            }
          ],
          "layout_identity_score": 100.0,
          "scope": {
            "compared_fraction": 0.75,
            "ignored_fraction": 0.25
          },
          "status": "review",
          "version": 1
        },
        "overall": 100.0,
        "preset": "default",
        "provenance": {
          "comparison_key": "0ef6f8d46afec6592b2ff0b0616b31e5581bf450f4b132ba839e5c2101c8adbb",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "c76d2f7908cea5266ef29ef0fbedd30ed5998c0798c5f68cd1b2c71bc860dc09",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [
              [
                0.0,
                0.0,
                384.0,
                80.0
              ]
            ],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.0,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.0,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.0,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.0
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 1
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 1.0,
                "dx": 0.0,
                "dy": 0.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0766,
                "left": 0.043,
                "mean_gap": 0.0,
                "right": 0.0534,
                "top": 0.2734
              },
              "ref": {
                "bottom": 0.0766,
                "left": 0.043,
                "mean_gap": 0.0,
                "right": 0.0534,
                "top": 0.2734
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 100.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.0355,
                "count": 56,
                "median_h": 17.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.0355,
                "count": 56,
                "median_h": 17.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 397.138375,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 0.75,
                "ignored_fraction": 0.25
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "0ef6f8d46afec6592b2ff0b0616b31e5581bf450f4b132ba839e5c2101c8adbb",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "c76d2f7908cea5266ef29ef0fbedd30ed5998c0798c5f68cd1b2c71bc860dc09",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    384.0,
                    80.0
                  ]
                ],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "546d1ff175d2b10f33056e519e3e261363e7a90f5dc3975988191d0ecba85648"
        },
        {
          "elapsed_ms": 420.2265,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 0.75,
                "ignored_fraction": 0.25
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "0ef6f8d46afec6592b2ff0b0616b31e5581bf450f4b132ba839e5c2101c8adbb",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "c76d2f7908cea5266ef29ef0fbedd30ed5998c0798c5f68cd1b2c71bc860dc09",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    384.0,
                    80.0
                  ]
                ],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "546d1ff175d2b10f33056e519e3e261363e7a90f5dc3975988191d0ecba85648"
        },
        {
          "elapsed_ms": 422.937875,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 0.75,
                "ignored_fraction": 0.25
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "0ef6f8d46afec6592b2ff0b0616b31e5581bf450f4b132ba839e5c2101c8adbb",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "c76d2f7908cea5266ef29ef0fbedd30ed5998c0798c5f68cd1b2c71bc860dc09",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    384.0,
                    80.0
                  ]
                ],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "546d1ff175d2b10f33056e519e3e261363e7a90f5dc3975988191d0ecba85648"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 395.231917,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 0.75,
                "ignored_fraction": 0.25
              },
              "status": "review",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "0ef6f8d46afec6592b2ff0b0616b31e5581bf450f4b132ba839e5c2101c8adbb",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "c76d2f7908cea5266ef29ef0fbedd30ed5998c0798c5f68cd1b2c71bc860dc09",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    384.0,
                    80.0
                  ]
                ],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "546d1ff175d2b10f33056e519e3e261363e7a90f5dc3975988191d0ecba85648"
        }
      ]
    },
    "header_omitted_scoped": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 300.257042,
        "median": 292.313667,
        "min": 288.693833,
        "n": 3,
        "samples": [
          288.693833,
          300.257042,
          292.313667
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 240,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 480,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 240,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 45.87302849971023,
              "near_uniform": false,
              "rgb_stddev_max": 52.44753212309309
            },
            "reference": {
              "gray_stddev": 45.87302849971023,
              "near_uniform": false,
              "rgb_stddev_max": 52.44753212309309
            }
          },
          "issues": [],
          "layout_identity_score": 100.0,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 100.0,
        "preset": "default",
        "provenance": {
          "comparison_key": "54e84523ef9a1f932649804a24118af4004a23305ebe8c0586c6f546af84d852",
          "inputs": {
            "candidate": {
              "height": 240,
              "rgb_sha256": "82c88751b2d6bac849f9e3c785a65e790a69139d14a31ae1ab480221d5025ecd",
              "width": 384
            },
            "reference": {
              "height": 240,
              "rgb_sha256": "82c88751b2d6bac849f9e3c785a65e790a69139d14a31ae1ab480221d5025ecd",
              "width": 384
            }
          },
          "run_key": "d3a544937106f7dadf3cd320e4658407a06f31ad6cfa198c5de83ead8c88471e",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.0,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.0,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.0,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.0
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 1
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.1021,
                "left": 0.043,
                "mean_gap": 0.0,
                "right": 0.0534,
                "top": 0.0312
              },
              "ref": {
                "bottom": 0.1021,
                "left": 0.043,
                "mean_gap": 0.0,
                "right": 0.0534,
                "top": 0.0312
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 100.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.0473,
                "count": 56,
                "median_h": 17.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.0473,
                "count": 56,
                "median_h": 17.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 288.693833,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 240,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 240,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 45.87302849971023,
                  "near_uniform": false,
                  "rgb_stddev_max": 52.44753212309309
                },
                "reference": {
                  "gray_stddev": 45.87302849971023,
                  "near_uniform": false,
                  "rgb_stddev_max": 52.44753212309309
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "54e84523ef9a1f932649804a24118af4004a23305ebe8c0586c6f546af84d852",
              "inputs": {
                "candidate": {
                  "height": 240,
                  "rgb_sha256": "82c88751b2d6bac849f9e3c785a65e790a69139d14a31ae1ab480221d5025ecd",
                  "width": 384
                },
                "reference": {
                  "height": 240,
                  "rgb_sha256": "82c88751b2d6bac849f9e3c785a65e790a69139d14a31ae1ab480221d5025ecd",
                  "width": 384
                }
              },
              "run_key": "d3a544937106f7dadf3cd320e4658407a06f31ad6cfa198c5de83ead8c88471e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.1021,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.1021,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.0312
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0473,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0473,
                    "count": 56,
                    "median_h": 17.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "dfa274be90e2e56f01df1d2d3454057ed73bdfa3e17b3c99690c43354d9e5c17"
        },
        {
          "elapsed_ms": 300.257042,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 240,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 240,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 45.87302849971023,
                  "near_uniform": false,
                  "rgb_stddev_max": 52.44753212309309
                },
                "reference": {
                  "gray_stddev": 45.87302849971023,
                  "near_uniform": false,
                  "rgb_stddev_max": 52.44753212309309
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "54e84523ef9a1f932649804a24118af4004a23305ebe8c0586c6f546af84d852",
              "inputs": {
                "candidate": {
                  "height": 240,
                  "rgb_sha256": "82c88751b2d6bac849f9e3c785a65e790a69139d14a31ae1ab480221d5025ecd",
                  "width": 384
                },
                "reference": {
                  "height": 240,
                  "rgb_sha256": "82c88751b2d6bac849f9e3c785a65e790a69139d14a31ae1ab480221d5025ecd",
                  "width": 384
                }
              },
              "run_key": "d3a544937106f7dadf3cd320e4658407a06f31ad6cfa198c5de83ead8c88471e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.1021,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.1021,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.0312
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0473,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0473,
                    "count": 56,
                    "median_h": 17.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "dfa274be90e2e56f01df1d2d3454057ed73bdfa3e17b3c99690c43354d9e5c17"
        },
        {
          "elapsed_ms": 292.313667,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 240,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 240,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 45.87302849971023,
                  "near_uniform": false,
                  "rgb_stddev_max": 52.44753212309309
                },
                "reference": {
                  "gray_stddev": 45.87302849971023,
                  "near_uniform": false,
                  "rgb_stddev_max": 52.44753212309309
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "54e84523ef9a1f932649804a24118af4004a23305ebe8c0586c6f546af84d852",
              "inputs": {
                "candidate": {
                  "height": 240,
                  "rgb_sha256": "82c88751b2d6bac849f9e3c785a65e790a69139d14a31ae1ab480221d5025ecd",
                  "width": 384
                },
                "reference": {
                  "height": 240,
                  "rgb_sha256": "82c88751b2d6bac849f9e3c785a65e790a69139d14a31ae1ab480221d5025ecd",
                  "width": 384
                }
              },
              "run_key": "d3a544937106f7dadf3cd320e4658407a06f31ad6cfa198c5de83ead8c88471e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.1021,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.1021,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.0312
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0473,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0473,
                    "count": 56,
                    "median_h": 17.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "dfa274be90e2e56f01df1d2d3454057ed73bdfa3e17b3c99690c43354d9e5c17"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 294.174,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 240,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 480,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 240,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 45.87302849971023,
                  "near_uniform": false,
                  "rgb_stddev_max": 52.44753212309309
                },
                "reference": {
                  "gray_stddev": 45.87302849971023,
                  "near_uniform": false,
                  "rgb_stddev_max": 52.44753212309309
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "54e84523ef9a1f932649804a24118af4004a23305ebe8c0586c6f546af84d852",
              "inputs": {
                "candidate": {
                  "height": 240,
                  "rgb_sha256": "82c88751b2d6bac849f9e3c785a65e790a69139d14a31ae1ab480221d5025ecd",
                  "width": 384
                },
                "reference": {
                  "height": 240,
                  "rgb_sha256": "82c88751b2d6bac849f9e3c785a65e790a69139d14a31ae1ab480221d5025ecd",
                  "width": 384
                }
              },
              "run_key": "d3a544937106f7dadf3cd320e4658407a06f31ad6cfa198c5de83ead8c88471e",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 1
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.1021,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.1021,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.0312
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0473,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0473,
                    "count": 56,
                    "median_h": 17.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "dfa274be90e2e56f01df1d2d3454057ed73bdfa3e17b3c99690c43354d9e5c17"
        }
      ]
    },
    "latency_screen_visuals": {
      "effective_params": {
        "return_visuals": true
      },
      "errors": [],
      "latency": {
        "max": 401.244917,
        "median": 401.114333,
        "min": 394.101375,
        "n": 3,
        "samples": [
          401.244917,
          394.101375,
          401.114333
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 1.0,
          "dx": -0.0,
          "dy": -0.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 100.0,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 100.0,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "ae7fd1472888a3e5e99bcc60c0b96af835f9597d21e4fa8ada24a99c2b93dccc",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.0,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.0,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.0,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.0
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 1.0,
                "dx": -0.0,
                "dy": -0.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 100.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [
          {
            "bytes": 138581,
            "mime_type": "image/png",
            "name": "overlay",
            "sha256": "457395a11c2979d03d61c9b713435b49b7802e77086f5d601b6cb0fa76f3ee3b"
          },
          {
            "bytes": 3279,
            "mime_type": "image/png",
            "name": "diff_heatmap",
            "sha256": "72c982d91a07d23076099653fc11562a92d64362d5f22c56418c8587f77c3751"
          },
          {
            "bytes": 122963,
            "mime_type": "image/png",
            "name": "content_regions",
            "sha256": "47580711a0eeac5df4e8d2bbeed7d9697cd20223dd8ea459b3eeeb804ed2efdc"
          },
          {
            "bytes": 277808,
            "mime_type": "image/png",
            "name": "side_by_side",
            "sha256": "c2043982797a4883207e1534be4bd2fe13d266482ff50fce4412de852b7d903c"
          }
        ],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 401.244917,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "ae7fd1472888a3e5e99bcc60c0b96af835f9597d21e4fa8ada24a99c2b93dccc",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [
              {
                "bytes": 138581,
                "mime_type": "image/png",
                "name": "overlay",
                "sha256": "457395a11c2979d03d61c9b713435b49b7802e77086f5d601b6cb0fa76f3ee3b"
              },
              {
                "bytes": 3279,
                "mime_type": "image/png",
                "name": "diff_heatmap",
                "sha256": "72c982d91a07d23076099653fc11562a92d64362d5f22c56418c8587f77c3751"
              },
              {
                "bytes": 122963,
                "mime_type": "image/png",
                "name": "content_regions",
                "sha256": "47580711a0eeac5df4e8d2bbeed7d9697cd20223dd8ea459b3eeeb804ed2efdc"
              },
              {
                "bytes": 277808,
                "mime_type": "image/png",
                "name": "side_by_side",
                "sha256": "c2043982797a4883207e1534be4bd2fe13d266482ff50fce4412de852b7d903c"
              }
            ],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9997933e797ad346b7a1f8c5efb8e59b9794e08a43581bb977833bab5e3fbb08"
        },
        {
          "elapsed_ms": 394.101375,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "ae7fd1472888a3e5e99bcc60c0b96af835f9597d21e4fa8ada24a99c2b93dccc",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [
              {
                "bytes": 138581,
                "mime_type": "image/png",
                "name": "overlay",
                "sha256": "457395a11c2979d03d61c9b713435b49b7802e77086f5d601b6cb0fa76f3ee3b"
              },
              {
                "bytes": 3279,
                "mime_type": "image/png",
                "name": "diff_heatmap",
                "sha256": "72c982d91a07d23076099653fc11562a92d64362d5f22c56418c8587f77c3751"
              },
              {
                "bytes": 122963,
                "mime_type": "image/png",
                "name": "content_regions",
                "sha256": "47580711a0eeac5df4e8d2bbeed7d9697cd20223dd8ea459b3eeeb804ed2efdc"
              },
              {
                "bytes": 277808,
                "mime_type": "image/png",
                "name": "side_by_side",
                "sha256": "c2043982797a4883207e1534be4bd2fe13d266482ff50fce4412de852b7d903c"
              }
            ],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9997933e797ad346b7a1f8c5efb8e59b9794e08a43581bb977833bab5e3fbb08"
        },
        {
          "elapsed_ms": 401.114333,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "ae7fd1472888a3e5e99bcc60c0b96af835f9597d21e4fa8ada24a99c2b93dccc",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [
              {
                "bytes": 138581,
                "mime_type": "image/png",
                "name": "overlay",
                "sha256": "457395a11c2979d03d61c9b713435b49b7802e77086f5d601b6cb0fa76f3ee3b"
              },
              {
                "bytes": 3279,
                "mime_type": "image/png",
                "name": "diff_heatmap",
                "sha256": "72c982d91a07d23076099653fc11562a92d64362d5f22c56418c8587f77c3751"
              },
              {
                "bytes": 122963,
                "mime_type": "image/png",
                "name": "content_regions",
                "sha256": "47580711a0eeac5df4e8d2bbeed7d9697cd20223dd8ea459b3eeeb804ed2efdc"
              },
              {
                "bytes": 277808,
                "mime_type": "image/png",
                "name": "side_by_side",
                "sha256": "c2043982797a4883207e1534be4bd2fe13d266482ff50fce4412de852b7d903c"
              }
            ],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9997933e797ad346b7a1f8c5efb8e59b9794e08a43581bb977833bab5e3fbb08"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 400.73025,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "ae7fd1472888a3e5e99bcc60c0b96af835f9597d21e4fa8ada24a99c2b93dccc",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [
              {
                "bytes": 138581,
                "mime_type": "image/png",
                "name": "overlay",
                "sha256": "457395a11c2979d03d61c9b713435b49b7802e77086f5d601b6cb0fa76f3ee3b"
              },
              {
                "bytes": 3279,
                "mime_type": "image/png",
                "name": "diff_heatmap",
                "sha256": "72c982d91a07d23076099653fc11562a92d64362d5f22c56418c8587f77c3751"
              },
              {
                "bytes": 122963,
                "mime_type": "image/png",
                "name": "content_regions",
                "sha256": "47580711a0eeac5df4e8d2bbeed7d9697cd20223dd8ea459b3eeeb804ed2efdc"
              },
              {
                "bytes": 277808,
                "mime_type": "image/png",
                "name": "side_by_side",
                "sha256": "c2043982797a4883207e1534be4bd2fe13d266482ff50fce4412de852b7d903c"
              }
            ],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "9997933e797ad346b7a1f8c5efb8e59b9794e08a43581bb977833bab5e3fbb08"
        }
      ]
    },
    "motion_both_static": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 3.213583,
        "median": 2.513917,
        "min": 2.499166,
        "n": 3,
        "samples": [
          3.213583,
          2.513917,
          2.499166
        ],
        "unit": "ms"
      },
      "result": {
        "cand_energy": 0.0,
        "cand_moving": false,
        "cand_signature": [
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0
        ],
        "critique_rubric": "Motion comparison (neither side animates in these frames). `motion_status` is static. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
        "energy_ratio": 1.0,
        "frames": {
          "candidate": 9,
          "reference": 9
        },
        "motion_energy_score": null,
        "motion_score": null,
        "motion_score_meaning": "motion_energy_similarity_only",
        "motion_status": "static",
        "ref_energy": 0.0,
        "ref_moving": false,
        "ref_signature": [
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0
        ],
        "stub": false,
        "temporal_corr": null,
        "timing_diagnostics": {
          "cadence_verified": false,
          "reason": "both_static",
          "recommendation": "Capture the active interaction window; two static captures cannot establish timing. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
          "sampled_profile": {
            "correlation": null,
            "reason": "both_static",
            "status": "inconclusive"
          },
          "score": null,
          "status": "inconclusive"
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 3.213583,
          "result": {
            "cand_energy": 0.0,
            "cand_moving": false,
            "cand_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "critique_rubric": "Motion comparison (neither side animates in these frames). `motion_status` is static. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": null,
            "motion_score": null,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "static",
            "ref_energy": 0.0,
            "ref_moving": false,
            "ref_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "both_static",
              "recommendation": "Capture the active interaction window; two static captures cannot establish timing. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "both_static",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "2b7cd50ef6bbf4dfbde54659835504f9ff7c250db9cb229e5383f31cc81f5170"
        },
        {
          "elapsed_ms": 2.513917,
          "result": {
            "cand_energy": 0.0,
            "cand_moving": false,
            "cand_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "critique_rubric": "Motion comparison (neither side animates in these frames). `motion_status` is static. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": null,
            "motion_score": null,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "static",
            "ref_energy": 0.0,
            "ref_moving": false,
            "ref_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "both_static",
              "recommendation": "Capture the active interaction window; two static captures cannot establish timing. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "both_static",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "2b7cd50ef6bbf4dfbde54659835504f9ff7c250db9cb229e5383f31cc81f5170"
        },
        {
          "elapsed_ms": 2.499166,
          "result": {
            "cand_energy": 0.0,
            "cand_moving": false,
            "cand_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "critique_rubric": "Motion comparison (neither side animates in these frames). `motion_status` is static. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": null,
            "motion_score": null,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "static",
            "ref_energy": 0.0,
            "ref_moving": false,
            "ref_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "both_static",
              "recommendation": "Capture the active interaction window; two static captures cannot establish timing. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "both_static",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "2b7cd50ef6bbf4dfbde54659835504f9ff7c250db9cb229e5383f31cc81f5170"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 2.523875,
          "result": {
            "cand_energy": 0.0,
            "cand_moving": false,
            "cand_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "critique_rubric": "Motion comparison (neither side animates in these frames). `motion_status` is static. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": null,
            "motion_score": null,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "static",
            "ref_energy": 0.0,
            "ref_moving": false,
            "ref_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "both_static",
              "recommendation": "Capture the active interaction window; two static captures cannot establish timing. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "both_static",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "2b7cd50ef6bbf4dfbde54659835504f9ff7c250db9cb229e5383f31cc81f5170"
        }
      ]
    },
    "motion_identical": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 4.005,
        "median": 3.063666,
        "min": 2.762,
        "n": 3,
        "samples": [
          3.063666,
          2.762,
          4.005
        ],
        "unit": "ms"
      },
      "result": {
        "cand_energy": 0.00685,
        "cand_moving": true,
        "cand_signature": [
          0.0041,
          0.0,
          0.0146,
          0.0,
          0.0076,
          0.0,
          0.0286,
          0.0
        ],
        "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
        "energy_ratio": 1.0,
        "frames": {
          "candidate": 9,
          "reference": 9
        },
        "motion_energy_score": 100.0,
        "motion_score": 100.0,
        "motion_score_meaning": "motion_energy_similarity_only",
        "motion_status": "compared",
        "ref_energy": 0.00685,
        "ref_moving": true,
        "ref_signature": [
          0.0041,
          0.0,
          0.0146,
          0.0,
          0.0076,
          0.0,
          0.0286,
          0.0
        ],
        "stub": false,
        "temporal_corr": 1.0,
        "timing_diagnostics": {
          "cadence_verified": false,
          "reason": "cadence_unknown",
          "recommendation": "Frame-index profile correlation is a diagnostic, not proof of matching rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
          "sampled_profile": {
            "basis": "frame_index",
            "correlation": 1.0,
            "status": "compared"
          },
          "score": null,
          "status": "inconclusive"
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 3.063666,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": 1.0,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "Frame-index profile correlation is a diagnostic, not proof of matching rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": 1.0,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "9410865b350cf701997c32c4cb7f7aef9d5d174bd52e9ab6094f8b5908ecc27f"
        },
        {
          "elapsed_ms": 2.762,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": 1.0,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "Frame-index profile correlation is a diagnostic, not proof of matching rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": 1.0,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "9410865b350cf701997c32c4cb7f7aef9d5d174bd52e9ab6094f8b5908ecc27f"
        },
        {
          "elapsed_ms": 4.005,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": 1.0,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "Frame-index profile correlation is a diagnostic, not proof of matching rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": 1.0,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "9410865b350cf701997c32c4cb7f7aef9d5d174bd52e9ab6094f8b5908ecc27f"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 4.3835,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": 1.0,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "Frame-index profile correlation is a diagnostic, not proof of matching rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": 1.0,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "9410865b350cf701997c32c4cb7f7aef9d5d174bd52e9ab6094f8b5908ecc27f"
        }
      ]
    },
    "motion_reversed": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 3.256667,
        "median": 2.843791,
        "min": 2.552125,
        "n": 3,
        "samples": [
          2.552125,
          2.843791,
          3.256667
        ],
        "unit": "ms"
      },
      "result": {
        "cand_energy": 0.00685,
        "cand_moving": true,
        "cand_signature": [
          0.0,
          0.0286,
          0.0,
          0.0076,
          0.0,
          0.0146,
          0.0,
          0.0041
        ],
        "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
        "energy_ratio": 1.0,
        "frames": {
          "candidate": 9,
          "reference": 9
        },
        "motion_energy_score": 100.0,
        "motion_score": 100.0,
        "motion_score_meaning": "motion_energy_similarity_only",
        "motion_status": "compared",
        "ref_energy": 0.00685,
        "ref_moving": true,
        "ref_signature": [
          0.0041,
          0.0,
          0.0146,
          0.0,
          0.0076,
          0.0,
          0.0286,
          0.0
        ],
        "stub": false,
        "temporal_corr": -0.5153364271492592,
        "timing_diagnostics": {
          "cadence_verified": false,
          "reason": "cadence_unknown",
          "recommendation": "The sampled frame-index profiles differ; equal energy can coexist with wrong rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
          "sampled_profile": {
            "basis": "frame_index",
            "correlation": -0.5153364271492592,
            "status": "compared"
          },
          "score": null,
          "status": "inconclusive"
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 2.552125,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0,
              0.0286,
              0.0,
              0.0076,
              0.0,
              0.0146,
              0.0,
              0.0041
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": -0.5153364271492592,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "The sampled frame-index profiles differ; equal energy can coexist with wrong rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": -0.5153364271492592,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "f2a05739e94097cb15fcb59abc4340412c7220e2a95e0d4d32a1ad3a27714b67"
        },
        {
          "elapsed_ms": 2.843791,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0,
              0.0286,
              0.0,
              0.0076,
              0.0,
              0.0146,
              0.0,
              0.0041
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": -0.5153364271492592,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "The sampled frame-index profiles differ; equal energy can coexist with wrong rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": -0.5153364271492592,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "f2a05739e94097cb15fcb59abc4340412c7220e2a95e0d4d32a1ad3a27714b67"
        },
        {
          "elapsed_ms": 3.256667,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0,
              0.0286,
              0.0,
              0.0076,
              0.0,
              0.0146,
              0.0,
              0.0041
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": -0.5153364271492592,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "The sampled frame-index profiles differ; equal energy can coexist with wrong rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": -0.5153364271492592,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "f2a05739e94097cb15fcb59abc4340412c7220e2a95e0d4d32a1ad3a27714b67"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 2.673209,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0,
              0.0286,
              0.0,
              0.0076,
              0.0,
              0.0146,
              0.0,
              0.0041
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": -0.5153364271492592,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "The sampled frame-index profiles differ; equal energy can coexist with wrong rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": -0.5153364271492592,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "f2a05739e94097cb15fcb59abc4340412c7220e2a95e0d4d32a1ad3a27714b67"
        }
      ]
    },
    "motion_shifted": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 3.023167,
        "median": 2.85925,
        "min": 2.480458,
        "n": 3,
        "samples": [
          2.480458,
          2.85925,
          3.023167
        ],
        "unit": "ms"
      },
      "result": {
        "cand_energy": 0.00685,
        "cand_moving": true,
        "cand_signature": [
          0.0,
          0.0041,
          0.0,
          0.0146,
          0.0,
          0.0076,
          0.0,
          0.0286
        ],
        "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
        "energy_ratio": 1.0,
        "frames": {
          "candidate": 9,
          "reference": 9
        },
        "motion_energy_score": 100.0,
        "motion_score": 100.0,
        "motion_score_meaning": "motion_energy_similarity_only",
        "motion_status": "compared",
        "ref_energy": 0.00685,
        "ref_moving": true,
        "ref_signature": [
          0.0041,
          0.0,
          0.0146,
          0.0,
          0.0076,
          0.0,
          0.0286,
          0.0
        ],
        "stub": false,
        "temporal_corr": -0.5153364271492592,
        "timing_diagnostics": {
          "cadence_verified": false,
          "reason": "cadence_unknown",
          "recommendation": "The sampled frame-index profiles differ; equal energy can coexist with wrong rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
          "sampled_profile": {
            "basis": "frame_index",
            "correlation": -0.5153364271492592,
            "status": "compared"
          },
          "score": null,
          "status": "inconclusive"
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 2.480458,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0,
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": -0.5153364271492592,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "The sampled frame-index profiles differ; equal energy can coexist with wrong rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": -0.5153364271492592,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "13ddd5d3041c36bb46c1203e57b241eae95d53ef85dc14e41cd4ff6eed48da80"
        },
        {
          "elapsed_ms": 2.85925,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0,
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": -0.5153364271492592,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "The sampled frame-index profiles differ; equal energy can coexist with wrong rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": -0.5153364271492592,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "13ddd5d3041c36bb46c1203e57b241eae95d53ef85dc14e41cd4ff6eed48da80"
        },
        {
          "elapsed_ms": 3.023167,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0,
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": -0.5153364271492592,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "The sampled frame-index profiles differ; equal energy can coexist with wrong rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": -0.5153364271492592,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "13ddd5d3041c36bb46c1203e57b241eae95d53ef85dc14e41cd4ff6eed48da80"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 2.596208,
          "result": {
            "cand_energy": 0.00685,
            "cand_moving": true,
            "cand_signature": [
              0.0,
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 1.00). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 1.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 100.0,
            "motion_score": 100.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": -0.5153364271492592,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "cadence_unknown",
              "recommendation": "The sampled frame-index profiles differ; equal energy can coexist with wrong rhythm. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "basis": "frame_index",
                "correlation": -0.5153364271492592,
                "status": "compared"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "13ddd5d3041c36bb46c1203e57b241eae95d53ef85dc14e41cd4ff6eed48da80"
        }
      ]
    },
    "motion_static": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 3.405125,
        "median": 2.753208,
        "min": 2.555958,
        "n": 3,
        "samples": [
          3.405125,
          2.555958,
          2.753208
        ],
        "unit": "ms"
      },
      "result": {
        "cand_energy": 0.0,
        "cand_moving": false,
        "cand_signature": [
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0,
          0.0
        ],
        "critique_rubric": "Motion comparison (motion mismatch: reference animates but candidate is static). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
        "energy_ratio": 0.0,
        "frames": {
          "candidate": 9,
          "reference": 9
        },
        "motion_energy_score": 0.0,
        "motion_score": 0.0,
        "motion_score_meaning": "motion_energy_similarity_only",
        "motion_status": "compared",
        "ref_energy": 0.00685,
        "ref_moving": true,
        "ref_signature": [
          0.0041,
          0.0,
          0.0146,
          0.0,
          0.0076,
          0.0,
          0.0286,
          0.0
        ],
        "stub": false,
        "temporal_corr": null,
        "timing_diagnostics": {
          "cadence_verified": false,
          "reason": "motion_presence_mismatch",
          "recommendation": "Check that both captures include the same active interaction; only one side moves. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
          "sampled_profile": {
            "correlation": null,
            "reason": "motion_presence_mismatch",
            "status": "inconclusive"
          },
          "score": null,
          "status": "inconclusive"
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 3.405125,
          "result": {
            "cand_energy": 0.0,
            "cand_moving": false,
            "cand_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "critique_rubric": "Motion comparison (motion mismatch: reference animates but candidate is static). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 0.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 0.0,
            "motion_score": 0.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "motion_presence_mismatch",
              "recommendation": "Check that both captures include the same active interaction; only one side moves. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "motion_presence_mismatch",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "47e5c26bf91264accf45ef776c75ce611fb26b4d02fc85cad758901f0a4a7fc2"
        },
        {
          "elapsed_ms": 2.555958,
          "result": {
            "cand_energy": 0.0,
            "cand_moving": false,
            "cand_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "critique_rubric": "Motion comparison (motion mismatch: reference animates but candidate is static). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 0.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 0.0,
            "motion_score": 0.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "motion_presence_mismatch",
              "recommendation": "Check that both captures include the same active interaction; only one side moves. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "motion_presence_mismatch",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "47e5c26bf91264accf45ef776c75ce611fb26b4d02fc85cad758901f0a4a7fc2"
        },
        {
          "elapsed_ms": 2.753208,
          "result": {
            "cand_energy": 0.0,
            "cand_moving": false,
            "cand_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "critique_rubric": "Motion comparison (motion mismatch: reference animates but candidate is static). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 0.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 0.0,
            "motion_score": 0.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "motion_presence_mismatch",
              "recommendation": "Check that both captures include the same active interaction; only one side moves. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "motion_presence_mismatch",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "47e5c26bf91264accf45ef776c75ce611fb26b4d02fc85cad758901f0a4a7fc2"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 2.659292,
          "result": {
            "cand_energy": 0.0,
            "cand_moving": false,
            "cand_signature": [
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0,
              0.0
            ],
            "critique_rubric": "Motion comparison (motion mismatch: reference animates but candidate is static). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 0.0,
            "frames": {
              "candidate": 9,
              "reference": 9
            },
            "motion_energy_score": 0.0,
            "motion_score": 0.0,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "motion_presence_mismatch",
              "recommendation": "Check that both captures include the same active interaction; only one side moves. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "motion_presence_mismatch",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "47e5c26bf91264accf45ef776c75ce611fb26b4d02fc85cad758901f0a4a7fc2"
        }
      ]
    },
    "motion_unequal": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 3.629625,
        "median": 3.419334,
        "min": 2.953125,
        "n": 3,
        "samples": [
          3.419334,
          3.629625,
          2.953125
        ],
        "unit": "ms"
      },
      "result": {
        "cand_energy": 0.00612,
        "cand_moving": true,
        "cand_signature": [
          0.0041,
          0.0,
          0.0146,
          0.0,
          0.0076,
          0.0,
          0.0286,
          0.0,
          0.0041,
          0.0,
          0.0146,
          0.0
        ],
        "critique_rubric": "Motion comparison (both animate; motion energy ratio 0.89). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
        "energy_ratio": 0.893,
        "frames": {
          "candidate": 13,
          "reference": 9
        },
        "motion_energy_score": 89.3,
        "motion_score": 89.3,
        "motion_score_meaning": "motion_energy_similarity_only",
        "motion_status": "compared",
        "ref_energy": 0.00685,
        "ref_moving": true,
        "ref_signature": [
          0.0041,
          0.0,
          0.0146,
          0.0,
          0.0076,
          0.0,
          0.0286,
          0.0
        ],
        "stub": false,
        "temporal_corr": null,
        "timing_diagnostics": {
          "cadence_verified": false,
          "reason": "unequal_length",
          "recommendation": "Recapture equal-length sequences over independently verified matching windows; do not truncate or stretch their signatures to infer timing. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
          "sampled_profile": {
            "correlation": null,
            "reason": "unequal_length",
            "status": "inconclusive"
          },
          "score": null,
          "status": "inconclusive"
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 3.419334,
          "result": {
            "cand_energy": 0.00612,
            "cand_moving": true,
            "cand_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0,
              0.0041,
              0.0,
              0.0146,
              0.0
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 0.89). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 0.893,
            "frames": {
              "candidate": 13,
              "reference": 9
            },
            "motion_energy_score": 89.3,
            "motion_score": 89.3,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "unequal_length",
              "recommendation": "Recapture equal-length sequences over independently verified matching windows; do not truncate or stretch their signatures to infer timing. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "unequal_length",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "59bd08c57e0f2a7174ea7f0867ec92e3e607ec65ca77c47f7d2a64d0a82da9c3"
        },
        {
          "elapsed_ms": 3.629625,
          "result": {
            "cand_energy": 0.00612,
            "cand_moving": true,
            "cand_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0,
              0.0041,
              0.0,
              0.0146,
              0.0
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 0.89). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 0.893,
            "frames": {
              "candidate": 13,
              "reference": 9
            },
            "motion_energy_score": 89.3,
            "motion_score": 89.3,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "unequal_length",
              "recommendation": "Recapture equal-length sequences over independently verified matching windows; do not truncate or stretch their signatures to infer timing. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "unequal_length",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "59bd08c57e0f2a7174ea7f0867ec92e3e607ec65ca77c47f7d2a64d0a82da9c3"
        },
        {
          "elapsed_ms": 2.953125,
          "result": {
            "cand_energy": 0.00612,
            "cand_moving": true,
            "cand_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0,
              0.0041,
              0.0,
              0.0146,
              0.0
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 0.89). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 0.893,
            "frames": {
              "candidate": 13,
              "reference": 9
            },
            "motion_energy_score": 89.3,
            "motion_score": 89.3,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "unequal_length",
              "recommendation": "Recapture equal-length sequences over independently verified matching windows; do not truncate or stretch their signatures to infer timing. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "unequal_length",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "59bd08c57e0f2a7174ea7f0867ec92e3e607ec65ca77c47f7d2a64d0a82da9c3"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 3.225291,
          "result": {
            "cand_energy": 0.00612,
            "cand_moving": true,
            "cand_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0,
              0.0041,
              0.0,
              0.0146,
              0.0
            ],
            "critique_rubric": "Motion comparison (both animate; motion energy ratio 0.89). `motion_status` is compared. A null `motion_score` is inconclusive (static or capture_unreliable), not a perfect 100. `motion_energy_score` aliases `motion_score` and measures energy similarity only, not animation fidelity. Read timing_diagnostics status, reason and recommendation: without timestamps timing is inconclusive and cadence is not verified. sampled_profile and its temporal_corr alias are optional frame-index correlation, not rhythm or elapsed-time alignment. The motion_signature chart (green=reference, blue=candidate) shows sampled intensity against frame index, not guaranteed capture cadence. A one-shot animation may have finished before capture. Confirm capture state before attributing a low energy score to the product.",
            "energy_ratio": 0.893,
            "frames": {
              "candidate": 13,
              "reference": 9
            },
            "motion_energy_score": 89.3,
            "motion_score": 89.3,
            "motion_score_meaning": "motion_energy_similarity_only",
            "motion_status": "compared",
            "ref_energy": 0.00685,
            "ref_moving": true,
            "ref_signature": [
              0.0041,
              0.0,
              0.0146,
              0.0,
              0.0076,
              0.0,
              0.0286,
              0.0
            ],
            "stub": false,
            "temporal_corr": null,
            "timing_diagnostics": {
              "cadence_verified": false,
              "reason": "unequal_length",
              "recommendation": "Recapture equal-length sequences over independently verified matching windows; do not truncate or stretch their signatures to infer timing. These inputs contain no timestamps. Independently verify cadence, duration and interaction alignment using source timestamps before judging temporal fidelity.",
              "sampled_profile": {
                "correlation": null,
                "reason": "unequal_length",
                "status": "inconclusive"
              },
              "score": null,
              "status": "inconclusive"
            }
          },
          "result_sha256": "59bd08c57e0f2a7174ea7f0867ec92e3e607ec65ca77c47f7d2a64d0a82da9c3"
        }
      ]
    },
    "scope_all_ignored": {
      "effective_params": {
        "ignore_regions": [
          [
            0,
            0,
            384,
            320
          ]
        ],
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 385.82875,
        "median": 367.48075,
        "min": 366.569667,
        "n": 3,
        "samples": [
          367.48075,
          366.569667,
          385.82875
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 40.313476801693085,
              "near_uniform": false,
              "rgb_stddev_max": 45.83730413808101
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [
            {
              "code": "mask_fill_semantics"
            },
            {
              "code": "empty_compare_scope"
            }
          ],
          "layout_identity_score": 100.0,
          "scope": {
            "compared_fraction": 0.0,
            "ignored_fraction": 1.0
          },
          "status": "inconclusive",
          "version": 1
        },
        "overall": 100.0,
        "preset": "default",
        "provenance": {
          "comparison_key": "33197977a5fb134b444fac18ad4542933a038ac5ce0a2997511f02c3371750f2",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "b404a91103d16277947928828436d35b339df7b9fc7272a7d514374a4fcd76fa",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [
              [
                0.0,
                0.0,
                384.0,
                320.0
              ]
            ],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.0,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.0,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.0,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.0
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 0,
              "coverage": 0.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "note": "no major regions detected in reference",
              "ref_regions": 0
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": null,
            "status": "not_applicable"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 367.48075,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                },
                {
                  "code": "empty_compare_scope"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 0.0,
                "ignored_fraction": 1.0
              },
              "status": "inconclusive",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "33197977a5fb134b444fac18ad4542933a038ac5ce0a2997511f02c3371750f2",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "b404a91103d16277947928828436d35b339df7b9fc7272a7d514374a4fcd76fa",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    384.0,
                    320.0
                  ]
                ],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "a0422754e7ed461334cb663c54886ebd2cf896fe65d0e881f08640b2aa34bb05"
        },
        {
          "elapsed_ms": 366.569667,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                },
                {
                  "code": "empty_compare_scope"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 0.0,
                "ignored_fraction": 1.0
              },
              "status": "inconclusive",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "33197977a5fb134b444fac18ad4542933a038ac5ce0a2997511f02c3371750f2",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "b404a91103d16277947928828436d35b339df7b9fc7272a7d514374a4fcd76fa",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    384.0,
                    320.0
                  ]
                ],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "a0422754e7ed461334cb663c54886ebd2cf896fe65d0e881f08640b2aa34bb05"
        },
        {
          "elapsed_ms": 385.82875,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                },
                {
                  "code": "empty_compare_scope"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 0.0,
                "ignored_fraction": 1.0
              },
              "status": "inconclusive",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "33197977a5fb134b444fac18ad4542933a038ac5ce0a2997511f02c3371750f2",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "b404a91103d16277947928828436d35b339df7b9fc7272a7d514374a4fcd76fa",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    384.0,
                    320.0
                  ]
                ],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "a0422754e7ed461334cb663c54886ebd2cf896fe65d0e881f08640b2aa34bb05"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 381.1325,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                },
                {
                  "code": "empty_compare_scope"
                }
              ],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 0.0,
                "ignored_fraction": 1.0
              },
              "status": "inconclusive",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "33197977a5fb134b444fac18ad4542933a038ac5ce0a2997511f02c3371750f2",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "b404a91103d16277947928828436d35b339df7b9fc7272a7d514374a4fcd76fa",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    384.0,
                    320.0
                  ]
                ],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "a0422754e7ed461334cb663c54886ebd2cf896fe65d0e881f08640b2aa34bb05"
        }
      ]
    },
    "scope_all_ignored_different_fill": {
      "effective_params": {
        "ignore_regions": [
          [
            0,
            0,
            192,
            128
          ]
        ],
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 294.158417,
        "median": 292.981167,
        "min": 287.662375,
        "n": 3,
        "samples": [
          292.981167,
          287.662375,
          294.158417
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 128,
            "orig_w": 192,
            "scale": 4.0
          },
          "height": 512,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 128,
            "orig_w": 192,
            "scale": 4.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "layout",
            "observed": "layout score 0.0 is below 70 after alignment",
            "severity": "high",
            "suggested_fix": "match the reference structure, spacing, and proportions",
            "type": "layout_mismatch"
          },
          {
            "area": "color",
            "observed": "At least 100.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
            "severity": "medium",
            "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
            "type": "color_missing"
          },
          {
            "area": "color",
            "observed": "At least 100.00% of candidate color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
            "severity": "medium",
            "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
            "type": "color_added"
          },
          {
            "area": "color",
            "observed": "Both images have certified unmatched color mass. No spatial correspondence was inferred.",
            "severity": "medium",
            "suggested_fix": "Inspect corresponding regions before recoloring; preserve colors in unchanged regions.",
            "type": "color_shift"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 100.00 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 52.25689927525503,
              "near_uniform": false,
              "rgb_stddev_max": 87.86558285219871
            },
            "reference": {
              "gray_stddev": 65.66796192111696,
              "near_uniform": false,
              "rgb_stddev_max": 85.5533306718777
            }
          },
          "issues": [
            {
              "code": "mask_fill_semantics"
            },
            {
              "code": "mask_fill_colors_differ"
            },
            {
              "code": "empty_compare_scope"
            }
          ],
          "layout_identity_score": 0.00999900009999,
          "scope": {
            "compared_fraction": 0.0,
            "ignored_fraction": 1.0
          },
          "status": "inconclusive",
          "version": 1
        },
        "overall": 1.0,
        "preset": "default",
        "provenance": {
          "comparison_key": "a7105baea03e2f35ca13a432ef4fe3801925c6157f02cfa6c2e40b734c342f70",
          "inputs": {
            "candidate": {
              "height": 128,
              "rgb_sha256": "df6030a4d0db0fe254fb4bc434fdf689feb7a1d00e1d6c76d6fdf5b9b4e2b57f",
              "width": 192
            },
            "reference": {
              "height": 128,
              "rgb_sha256": "cc98fa66bf91d257b5c6b2c6d2044ba99bd9fc006a21a446b745151d0e12f9b8",
              "width": 192
            }
          },
          "run_key": "d734c2095e657f306acde7cb02e949a76c7da894860961cbf0b02c680f8b917b",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [
              [
                0.0,
                0.0,
                192.0,
                128.0
              ]
            ],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 1.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.9999999999988936
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 115.00015451709653,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 103.50013906538688,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 100.0,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 103.50013906538688
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 0.43,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 0,
              "coverage": 0.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "note": "no major regions detected in reference",
              "ref_regions": 0
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": null,
            "status": "not_applicable"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.0001
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 0.01,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "note": "no major regions to assess spacing"
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": null,
            "status": "not_applicable"
          },
          "typography": {
            "measurements": {
              "cand": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              },
              "note": "no text detected in either image",
              "ref": {
                "area_frac": 0.0,
                "count": 0,
                "median_h": 0.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": null,
            "status": "not_applicable"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 292.981167,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 0.0 is below 70 after alignment",
                "severity": "high",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of candidate color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_added"
              },
              {
                "area": "color",
                "observed": "Both images have certified unmatched color mass. No spatial correspondence was inferred.",
                "severity": "medium",
                "suggested_fix": "Inspect corresponding regions before recoloring; preserve colors in unchanged regions.",
                "type": "color_shift"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 100.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 52.25689927525503,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.86558285219871
                },
                "reference": {
                  "gray_stddev": 65.66796192111696,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.5533306718777
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                },
                {
                  "code": "mask_fill_colors_differ"
                },
                {
                  "code": "empty_compare_scope"
                }
              ],
              "layout_identity_score": 0.00999900009999,
              "scope": {
                "compared_fraction": 0.0,
                "ignored_fraction": 1.0
              },
              "status": "inconclusive",
              "version": 1
            },
            "overall": 1.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "a7105baea03e2f35ca13a432ef4fe3801925c6157f02cfa6c2e40b734c342f70",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "df6030a4d0db0fe254fb4bc434fdf689feb7a1d00e1d6c76d6fdf5b9b4e2b57f",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "cc98fa66bf91d257b5c6b2c6d2044ba99bd9fc006a21a446b745151d0e12f9b8",
                  "width": 192
                }
              },
              "run_key": "d734c2095e657f306acde7cb02e949a76c7da894860961cbf0b02c680f8b917b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    192.0,
                    128.0
                  ]
                ],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 1.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.9999999999988936
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 115.00015451709653,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 103.50013906538688,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 100.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 103.50013906538688
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 0.43,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.0001
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 0.01,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "6323e15b136d971f71a7295a86b9db5cc3b4ad5cb0607430ab861b0e086e71b8"
        },
        {
          "elapsed_ms": 287.662375,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 0.0 is below 70 after alignment",
                "severity": "high",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of candidate color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_added"
              },
              {
                "area": "color",
                "observed": "Both images have certified unmatched color mass. No spatial correspondence was inferred.",
                "severity": "medium",
                "suggested_fix": "Inspect corresponding regions before recoloring; preserve colors in unchanged regions.",
                "type": "color_shift"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 100.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 52.25689927525503,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.86558285219871
                },
                "reference": {
                  "gray_stddev": 65.66796192111696,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.5533306718777
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                },
                {
                  "code": "mask_fill_colors_differ"
                },
                {
                  "code": "empty_compare_scope"
                }
              ],
              "layout_identity_score": 0.00999900009999,
              "scope": {
                "compared_fraction": 0.0,
                "ignored_fraction": 1.0
              },
              "status": "inconclusive",
              "version": 1
            },
            "overall": 1.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "a7105baea03e2f35ca13a432ef4fe3801925c6157f02cfa6c2e40b734c342f70",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "df6030a4d0db0fe254fb4bc434fdf689feb7a1d00e1d6c76d6fdf5b9b4e2b57f",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "cc98fa66bf91d257b5c6b2c6d2044ba99bd9fc006a21a446b745151d0e12f9b8",
                  "width": 192
                }
              },
              "run_key": "d734c2095e657f306acde7cb02e949a76c7da894860961cbf0b02c680f8b917b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    192.0,
                    128.0
                  ]
                ],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 1.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.9999999999988936
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 115.00015451709653,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 103.50013906538688,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 100.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 103.50013906538688
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 0.43,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.0001
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 0.01,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "6323e15b136d971f71a7295a86b9db5cc3b4ad5cb0607430ab861b0e086e71b8"
        },
        {
          "elapsed_ms": 294.158417,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 0.0 is below 70 after alignment",
                "severity": "high",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of candidate color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_added"
              },
              {
                "area": "color",
                "observed": "Both images have certified unmatched color mass. No spatial correspondence was inferred.",
                "severity": "medium",
                "suggested_fix": "Inspect corresponding regions before recoloring; preserve colors in unchanged regions.",
                "type": "color_shift"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 100.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 52.25689927525503,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.86558285219871
                },
                "reference": {
                  "gray_stddev": 65.66796192111696,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.5533306718777
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                },
                {
                  "code": "mask_fill_colors_differ"
                },
                {
                  "code": "empty_compare_scope"
                }
              ],
              "layout_identity_score": 0.00999900009999,
              "scope": {
                "compared_fraction": 0.0,
                "ignored_fraction": 1.0
              },
              "status": "inconclusive",
              "version": 1
            },
            "overall": 1.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "a7105baea03e2f35ca13a432ef4fe3801925c6157f02cfa6c2e40b734c342f70",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "df6030a4d0db0fe254fb4bc434fdf689feb7a1d00e1d6c76d6fdf5b9b4e2b57f",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "cc98fa66bf91d257b5c6b2c6d2044ba99bd9fc006a21a446b745151d0e12f9b8",
                  "width": 192
                }
              },
              "run_key": "d734c2095e657f306acde7cb02e949a76c7da894860961cbf0b02c680f8b917b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    192.0,
                    128.0
                  ]
                ],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 1.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.9999999999988936
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 115.00015451709653,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 103.50013906538688,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 100.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 103.50013906538688
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 0.43,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.0001
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 0.01,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "6323e15b136d971f71a7295a86b9db5cc3b4ad5cb0607430ab861b0e086e71b8"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 297.539542,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "height": 512,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 128,
                "orig_w": 192,
                "scale": 4.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "layout",
                "observed": "layout score 0.0 is below 70 after alignment",
                "severity": "high",
                "suggested_fix": "match the reference structure, spacing, and proportions",
                "type": "layout_mismatch"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of reference color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_missing"
              },
              {
                "area": "color",
                "observed": "At least 100.00% of candidate color mass has no counterpart within proxy distance 10, with lattice uncertainty guards. This is not a nearest-CIEDE2000 claim.",
                "severity": "medium",
                "suggested_fix": "Inspect the affected color coverage; the palette does not identify their positions. Proxy distance is not CIEDE2000.",
                "type": "color_added"
              },
              {
                "area": "color",
                "observed": "Both images have certified unmatched color mass. No spatial correspondence was inferred.",
                "severity": "medium",
                "suggested_fix": "Inspect corresponding regions before recoloring; preserve colors in unchanged regions.",
                "type": "color_shift"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 100.00 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 52.25689927525503,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.86558285219871
                },
                "reference": {
                  "gray_stddev": 65.66796192111696,
                  "near_uniform": false,
                  "rgb_stddev_max": 85.5533306718777
                }
              },
              "issues": [
                {
                  "code": "mask_fill_semantics"
                },
                {
                  "code": "mask_fill_colors_differ"
                },
                {
                  "code": "empty_compare_scope"
                }
              ],
              "layout_identity_score": 0.00999900009999,
              "scope": {
                "compared_fraction": 0.0,
                "ignored_fraction": 1.0
              },
              "status": "inconclusive",
              "version": 1
            },
            "overall": 1.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "a7105baea03e2f35ca13a432ef4fe3801925c6157f02cfa6c2e40b734c342f70",
              "inputs": {
                "candidate": {
                  "height": 128,
                  "rgb_sha256": "df6030a4d0db0fe254fb4bc434fdf689feb7a1d00e1d6c76d6fdf5b9b4e2b57f",
                  "width": 192
                },
                "reference": {
                  "height": 128,
                  "rgb_sha256": "cc98fa66bf91d257b5c6b2c6d2044ba99bd9fc006a21a446b745151d0e12f9b8",
                  "width": 192
                }
              },
              "run_key": "d734c2095e657f306acde7cb02e949a76c7da894860961cbf0b02c680f8b917b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [
                  [
                    0.0,
                    0.0,
                    192.0,
                    128.0
                  ]
                ],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 1.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.9999999999988936
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 115.00015451709653,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 103.50013906538688,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 100.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 103.50013906538688
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 0.43,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 0,
                  "coverage": 0.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "note": "no major regions detected in reference",
                  "ref_regions": 0
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": null,
                "status": "not_applicable"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.0001
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 0.01,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "note": "no major regions to assess spacing"
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": null,
                "status": "not_applicable"
              },
              "typography": {
                "measurements": {
                  "cand": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  },
                  "note": "no text detected in either image",
                  "ref": {
                    "area_frac": 0.0,
                    "count": 0,
                    "median_h": 0.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": null,
                "status": "not_applicable"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "6323e15b136d971f71a7295a86b9db5cc3b4ad5cb0607430ab861b0e086e71b8"
        }
      ]
    },
    "screen_identical": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 391.1035,
        "median": 386.916833,
        "min": 383.882417,
        "n": 3,
        "samples": [
          391.1035,
          386.916833,
          383.882417
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 1.0,
          "dx": -0.0,
          "dy": -0.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 100.0,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 100.0,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "ae7fd1472888a3e5e99bcc60c0b96af835f9597d21e4fa8ada24a99c2b93dccc",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 0.0,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 0.0,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 0.0,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 0.0
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 1.0,
                "dx": -0.0,
                "dy": -0.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 1.0,
                "left": 1.0,
                "mean_gap": 1.0,
                "right": 1.0,
                "top": 1.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 100.0,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 391.1035,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "ae7fd1472888a3e5e99bcc60c0b96af835f9597d21e4fa8ada24a99c2b93dccc",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e38cc521e6a6a9d6b5628ed8f12bf9a81859ee9672d808aead0f3559020bf2f5"
        },
        {
          "elapsed_ms": 386.916833,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "ae7fd1472888a3e5e99bcc60c0b96af835f9597d21e4fa8ada24a99c2b93dccc",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e38cc521e6a6a9d6b5628ed8f12bf9a81859ee9672d808aead0f3559020bf2f5"
        },
        {
          "elapsed_ms": 383.882417,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "ae7fd1472888a3e5e99bcc60c0b96af835f9597d21e4fa8ada24a99c2b93dccc",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e38cc521e6a6a9d6b5628ed8f12bf9a81859ee9672d808aead0f3559020bf2f5"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 409.928542,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -0.0,
              "dy": -0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 100.0,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 100.0,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "ae7fd1472888a3e5e99bcc60c0b96af835f9597d21e4fa8ada24a99c2b93dccc",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 0.0,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 0.0,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 0.0,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 0.0
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -0.0,
                    "dy": -0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 1.0,
                    "left": 1.0,
                    "mean_gap": 1.0,
                    "right": 1.0,
                    "top": 1.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 100.0,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e38cc521e6a6a9d6b5628ed8f12bf9a81859ee9672d808aead0f3559020bf2f5"
        }
      ]
    },
    "settings_context_v1": {
      "effective_params": {
        "comparison_context": {
          "protocolKey": "d1e9764c0b362634a650a022318f1af1d66ed32ca9ab37a99956e9234bcf340c",
          "scopeId": "generated-calendar-full"
        },
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 389.476541,
        "median": 382.927333,
        "min": 378.185,
        "n": 3,
        "samples": [
          389.476541,
          382.927333,
          378.185
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.3393,
          "dx": 0.0,
          "dy": 0.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              30,
              22,
              708,
              128
            ],
            "observed": "a reference region at x=30,y=22 (708x128) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              436,
              178,
              88,
              92
            ],
            "observed": "a reference region at x=436,y=178 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              336,
              284,
              88,
              92
            ],
            "observed": "a reference region at x=336,y=284 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              236,
              390,
              88,
              92
            ],
            "observed": "a reference region at x=236,y=390 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          },
          {
            "area": "spacing",
            "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the top margin toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              33,
              175,
              694,
              416
            ],
            "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 40.313476801693085,
              "near_uniform": false,
              "rgb_stddev_max": 45.83730413808101
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 85.46661804963476,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 37.05,
        "preset": "default",
        "provenance": {
          "comparison_key": "ff96497350e900945866fde6e3fdecef9739f46b90db5fc5fb0de2c42eca211a",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "a71b9d0c32de3940cf87b338aebcb6b0027faf9a02c4202f9c5debed127be8b7",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": {
              "protocolKey": "d1e9764c0b362634a650a022318f1af1d66ed32ca9ab37a99956e9234bcf340c",
              "scopeId": "generated-calendar-full"
            },
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 7.185619734430296,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 13.332385849303881,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 13.332385849303881,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 6.467057760987267
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 49.57,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 29,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.3393,
                "dx": 0.0,
                "dy": 0.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.8547
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 85.47,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0766,
                "left": 0.043,
                "mean_gap": 0.0,
                "right": 0.0534,
                "top": 0.2734
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.0,
                "left": 0.967,
                "mean_gap": 1.0,
                "right": 0.881,
                "top": 0.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 56.96,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.898,
              "cand": {
                "area_frac": 0.0355,
                "count": 56,
                "median_h": 17.0
              },
              "height_sim": 0.824,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 86.09,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 389.476541,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "ff96497350e900945866fde6e3fdecef9739f46b90db5fc5fb0de2c42eca211a",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a71b9d0c32de3940cf87b338aebcb6b0027faf9a02c4202f9c5debed127be8b7",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": {
                  "protocolKey": "d1e9764c0b362634a650a022318f1af1d66ed32ca9ab37a99956e9234bcf340c",
                  "scopeId": "generated-calendar-full"
                },
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "ddfd8f3e83dee4925aaa9526a91edce014916d641c79108dacafda4b7f6462b1"
        },
        {
          "elapsed_ms": 382.927333,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "ff96497350e900945866fde6e3fdecef9739f46b90db5fc5fb0de2c42eca211a",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a71b9d0c32de3940cf87b338aebcb6b0027faf9a02c4202f9c5debed127be8b7",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": {
                  "protocolKey": "d1e9764c0b362634a650a022318f1af1d66ed32ca9ab37a99956e9234bcf340c",
                  "scopeId": "generated-calendar-full"
                },
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "ddfd8f3e83dee4925aaa9526a91edce014916d641c79108dacafda4b7f6462b1"
        },
        {
          "elapsed_ms": 378.185,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "ff96497350e900945866fde6e3fdecef9739f46b90db5fc5fb0de2c42eca211a",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a71b9d0c32de3940cf87b338aebcb6b0027faf9a02c4202f9c5debed127be8b7",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": {
                  "protocolKey": "d1e9764c0b362634a650a022318f1af1d66ed32ca9ab37a99956e9234bcf340c",
                  "scopeId": "generated-calendar-full"
                },
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "ddfd8f3e83dee4925aaa9526a91edce014916d641c79108dacafda4b7f6462b1"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 388.179791,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "ff96497350e900945866fde6e3fdecef9739f46b90db5fc5fb0de2c42eca211a",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "a71b9d0c32de3940cf87b338aebcb6b0027faf9a02c4202f9c5debed127be8b7",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": {
                  "protocolKey": "d1e9764c0b362634a650a022318f1af1d66ed32ca9ab37a99956e9234bcf340c",
                  "scopeId": "generated-calendar-full"
                },
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "ddfd8f3e83dee4925aaa9526a91edce014916d641c79108dacafda4b7f6462b1"
        }
      ]
    },
    "settings_context_v2": {
      "effective_params": {
        "comparison_context": {
          "protocolKey": "51c5a773abf6bd7f355b39ba01ce2d4e1b3a83e8255c6430bb6941dfb7f025c1",
          "scopeId": "generated-calendar-full"
        },
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 415.308625,
        "median": 384.511416,
        "min": 379.023125,
        "n": 3,
        "samples": [
          379.023125,
          415.308625,
          384.511416
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.3393,
          "dx": 0.0,
          "dy": 0.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              30,
              22,
              708,
              128
            ],
            "observed": "a reference region at x=30,y=22 (708x128) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              436,
              178,
              88,
              92
            ],
            "observed": "a reference region at x=436,y=178 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              336,
              284,
              88,
              92
            ],
            "observed": "a reference region at x=336,y=284 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              236,
              390,
              88,
              92
            ],
            "observed": "a reference region at x=236,y=390 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          },
          {
            "area": "spacing",
            "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the top margin toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              33,
              175,
              694,
              416
            ],
            "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 40.313476801693085,
              "near_uniform": false,
              "rgb_stddev_max": 45.83730413808101
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 85.46661804963476,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 37.05,
        "preset": "default",
        "provenance": {
          "comparison_key": "a48ed9cb261a746d4dcd2efc4ac281d3207f5dd3e6315e3d16a9590b219d3b8f",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "b02ffe0a4df149720bb5e7400107628b8f2ba685474fa26d4c2b9a6df6a16ffe",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": {
              "protocolKey": "51c5a773abf6bd7f355b39ba01ce2d4e1b3a83e8255c6430bb6941dfb7f025c1",
              "scopeId": "generated-calendar-full"
            },
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 7.185619734430296,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 13.332385849303881,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 13.332385849303881,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 6.467057760987267
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 49.57,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 29,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.3393,
                "dx": 0.0,
                "dy": 0.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.8547
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 85.47,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0766,
                "left": 0.043,
                "mean_gap": 0.0,
                "right": 0.0534,
                "top": 0.2734
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.0,
                "left": 0.967,
                "mean_gap": 1.0,
                "right": 0.881,
                "top": 0.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 56.96,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.898,
              "cand": {
                "area_frac": 0.0355,
                "count": 56,
                "median_h": 17.0
              },
              "height_sim": 0.824,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 86.09,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 379.023125,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "a48ed9cb261a746d4dcd2efc4ac281d3207f5dd3e6315e3d16a9590b219d3b8f",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "b02ffe0a4df149720bb5e7400107628b8f2ba685474fa26d4c2b9a6df6a16ffe",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": {
                  "protocolKey": "51c5a773abf6bd7f355b39ba01ce2d4e1b3a83e8255c6430bb6941dfb7f025c1",
                  "scopeId": "generated-calendar-full"
                },
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "4be316f1443095ab756ccb33dfa9b12802d24e9efc873858011ded3b429001c5"
        },
        {
          "elapsed_ms": 415.308625,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "a48ed9cb261a746d4dcd2efc4ac281d3207f5dd3e6315e3d16a9590b219d3b8f",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "b02ffe0a4df149720bb5e7400107628b8f2ba685474fa26d4c2b9a6df6a16ffe",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": {
                  "protocolKey": "51c5a773abf6bd7f355b39ba01ce2d4e1b3a83e8255c6430bb6941dfb7f025c1",
                  "scopeId": "generated-calendar-full"
                },
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "4be316f1443095ab756ccb33dfa9b12802d24e9efc873858011ded3b429001c5"
        },
        {
          "elapsed_ms": 384.511416,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "a48ed9cb261a746d4dcd2efc4ac281d3207f5dd3e6315e3d16a9590b219d3b8f",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "b02ffe0a4df149720bb5e7400107628b8f2ba685474fa26d4c2b9a6df6a16ffe",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": {
                  "protocolKey": "51c5a773abf6bd7f355b39ba01ce2d4e1b3a83e8255c6430bb6941dfb7f025c1",
                  "scopeId": "generated-calendar-full"
                },
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "4be316f1443095ab756ccb33dfa9b12802d24e9efc873858011ded3b429001c5"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 384.376792,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "a48ed9cb261a746d4dcd2efc4ac281d3207f5dd3e6315e3d16a9590b219d3b8f",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "b02ffe0a4df149720bb5e7400107628b8f2ba685474fa26d4c2b9a6df6a16ffe",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": {
                  "protocolKey": "51c5a773abf6bd7f355b39ba01ce2d4e1b3a83e8255c6430bb6941dfb7f025c1",
                  "scopeId": "generated-calendar-full"
                },
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "4be316f1443095ab756ccb33dfa9b12802d24e9efc873858011ded3b429001c5"
        }
      ]
    },
    "settings_custom_weights": {
      "effective_params": {
        "return_visuals": false,
        "weights": {
          "color": 0.7,
          "layout": 0.1
        }
      },
      "errors": [],
      "latency": {
        "max": 391.5945,
        "median": 387.751959,
        "min": 386.842583,
        "n": 3,
        "samples": [
          391.5945,
          386.842583,
          387.751959
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.3393,
          "dx": 0.0,
          "dy": 0.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              30,
              22,
              708,
              128
            ],
            "observed": "a reference region at x=30,y=22 (708x128) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              436,
              178,
              88,
              92
            ],
            "observed": "a reference region at x=436,y=178 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              336,
              284,
              88,
              92
            ],
            "observed": "a reference region at x=336,y=284 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              236,
              390,
              88,
              92
            ],
            "observed": "a reference region at x=236,y=390 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          },
          {
            "area": "spacing",
            "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the top margin toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              33,
              175,
              694,
              416
            ],
            "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 40.313476801693085,
              "near_uniform": false,
              "rgb_stddev_max": 45.83730413808101
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 85.46661804963476,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 35.22,
        "preset": "default",
        "provenance": {
          "comparison_key": "f935b46716e32fc23937c819cb67aa664f39c69d857726d1808e17134c10addc",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "cf4532c877f8f271edcbec4d1eea87aee19ee939cc9f933e53f053057964167b",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.7,
              "content": 0.15,
              "layout": 0.1,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 7.185619734430296,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 13.332385849303881,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 13.332385849303881,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 6.467057760987267
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 49.57,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 29,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.3393,
                "dx": 0.0,
                "dy": 0.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.8547
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 85.47,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0766,
                "left": 0.043,
                "mean_gap": 0.0,
                "right": 0.0534,
                "top": 0.2734
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.0,
                "left": 0.967,
                "mean_gap": 1.0,
                "right": 0.881,
                "top": 0.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 56.96,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.898,
              "cand": {
                "area_frac": 0.0355,
                "count": 56,
                "median_h": 17.0
              },
              "height_sim": 0.824,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 86.09,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.7,
          "content": 0.15,
          "layout": 0.1,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 391.5945,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 35.22,
            "preset": "default",
            "provenance": {
              "comparison_key": "f935b46716e32fc23937c819cb67aa664f39c69d857726d1808e17134c10addc",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "cf4532c877f8f271edcbec4d1eea87aee19ee939cc9f933e53f053057964167b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.7,
                  "content": 0.15,
                  "layout": 0.1,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.7,
              "content": 0.15,
              "layout": 0.1,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "c23367042c757ea49e71e2afab806d3c5ed877eb5c45217eb9ec3efebdc510bf"
        },
        {
          "elapsed_ms": 386.842583,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 35.22,
            "preset": "default",
            "provenance": {
              "comparison_key": "f935b46716e32fc23937c819cb67aa664f39c69d857726d1808e17134c10addc",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "cf4532c877f8f271edcbec4d1eea87aee19ee939cc9f933e53f053057964167b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.7,
                  "content": 0.15,
                  "layout": 0.1,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.7,
              "content": 0.15,
              "layout": 0.1,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "c23367042c757ea49e71e2afab806d3c5ed877eb5c45217eb9ec3efebdc510bf"
        },
        {
          "elapsed_ms": 387.751959,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 35.22,
            "preset": "default",
            "provenance": {
              "comparison_key": "f935b46716e32fc23937c819cb67aa664f39c69d857726d1808e17134c10addc",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "cf4532c877f8f271edcbec4d1eea87aee19ee939cc9f933e53f053057964167b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.7,
                  "content": 0.15,
                  "layout": 0.1,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.7,
              "content": 0.15,
              "layout": 0.1,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "c23367042c757ea49e71e2afab806d3c5ed877eb5c45217eb9ec3efebdc510bf"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 384.93975,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 35.22,
            "preset": "default",
            "provenance": {
              "comparison_key": "f935b46716e32fc23937c819cb67aa664f39c69d857726d1808e17134c10addc",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "cf4532c877f8f271edcbec4d1eea87aee19ee939cc9f933e53f053057964167b",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.7,
                  "content": 0.15,
                  "layout": 0.1,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.7,
              "content": 0.15,
              "layout": 0.1,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "c23367042c757ea49e71e2afab806d3c5ed877eb5c45217eb9ec3efebdc510bf"
        }
      ]
    },
    "settings_dark_ui": {
      "effective_params": {
        "preset": "dark-ui",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 393.422291,
        "median": 389.640875,
        "min": 388.955791,
        "n": 3,
        "samples": [
          388.955791,
          389.640875,
          393.422291
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 0.3393,
          "dx": 0.0,
          "dy": 0.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              30,
              22,
              708,
              128
            ],
            "observed": "a reference region at x=30,y=22 (708x128) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              436,
              178,
              88,
              92
            ],
            "observed": "a reference region at x=436,y=178 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              336,
              284,
              88,
              92
            ],
            "observed": "a reference region at x=336,y=284 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              236,
              390,
              88,
              92
            ],
            "observed": "a reference region at x=236,y=390 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          },
          {
            "area": "spacing",
            "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the top margin toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              33,
              175,
              694,
              416
            ],
            "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 40.313476801693085,
              "near_uniform": false,
              "rgb_stddev_max": 45.83730413808101
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 85.46661804963476,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 81.11,
        "preset": "dark-ui",
        "provenance": {
          "comparison_key": "20c9a481a34130fdb57b125d5de1d82d1abe01f5afdc2713857601885ccd51a2",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "1053dfddce96652e0420cf21a653f15c656d58760a9e3b6c8bfa8df7c9275b17",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "dark-ui",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.1,
              "content": 0.0,
              "layout": 0.6,
              "spacing": 0.0,
              "typography": 0.3
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 7.185619734430296,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 13.332385849303881,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 13.332385849303881,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 6.467057760987267
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 49.57,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 29,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 0.3393,
                "dx": 0.0,
                "dy": 0.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.8547
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 85.47,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0766,
                "left": 0.043,
                "mean_gap": 0.0,
                "right": 0.0534,
                "top": 0.2734
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.0,
                "left": 0.967,
                "mean_gap": 1.0,
                "right": 0.881,
                "top": 0.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 56.96,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.898,
              "cand": {
                "area_frac": 0.0355,
                "count": 56,
                "median_h": 17.0
              },
              "height_sim": 0.824,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 86.09,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.1,
          "content": 0.0,
          "layout": 0.6,
          "spacing": 0.0,
          "typography": 0.3
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 388.955791,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 81.11,
            "preset": "dark-ui",
            "provenance": {
              "comparison_key": "20c9a481a34130fdb57b125d5de1d82d1abe01f5afdc2713857601885ccd51a2",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "1053dfddce96652e0420cf21a653f15c656d58760a9e3b6c8bfa8df7c9275b17",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "dark-ui",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.1,
                  "content": 0.0,
                  "layout": 0.6,
                  "spacing": 0.0,
                  "typography": 0.3
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.1,
              "content": 0.0,
              "layout": 0.6,
              "spacing": 0.0,
              "typography": 0.3
            }
          },
          "result_sha256": "17b37d4664075df897732636eb38c9e8052f5408ba03157a5229eadccb5ac0a6"
        },
        {
          "elapsed_ms": 389.640875,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 81.11,
            "preset": "dark-ui",
            "provenance": {
              "comparison_key": "20c9a481a34130fdb57b125d5de1d82d1abe01f5afdc2713857601885ccd51a2",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "1053dfddce96652e0420cf21a653f15c656d58760a9e3b6c8bfa8df7c9275b17",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "dark-ui",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.1,
                  "content": 0.0,
                  "layout": 0.6,
                  "spacing": 0.0,
                  "typography": 0.3
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.1,
              "content": 0.0,
              "layout": 0.6,
              "spacing": 0.0,
              "typography": 0.3
            }
          },
          "result_sha256": "17b37d4664075df897732636eb38c9e8052f5408ba03157a5229eadccb5ac0a6"
        },
        {
          "elapsed_ms": 393.422291,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 81.11,
            "preset": "dark-ui",
            "provenance": {
              "comparison_key": "20c9a481a34130fdb57b125d5de1d82d1abe01f5afdc2713857601885ccd51a2",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "1053dfddce96652e0420cf21a653f15c656d58760a9e3b6c8bfa8df7c9275b17",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "dark-ui",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.1,
                  "content": 0.0,
                  "layout": 0.6,
                  "spacing": 0.0,
                  "typography": 0.3
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.1,
              "content": 0.0,
              "layout": 0.6,
              "spacing": 0.0,
              "typography": 0.3
            }
          },
          "result_sha256": "17b37d4664075df897732636eb38c9e8052f5408ba03157a5229eadccb5ac0a6"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 389.136584,
          "result": {
            "alignment": {
              "cc": 0.3393,
              "dx": 0.0,
              "dy": 0.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 81.11,
            "preset": "dark-ui",
            "provenance": {
              "comparison_key": "20c9a481a34130fdb57b125d5de1d82d1abe01f5afdc2713857601885ccd51a2",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "1053dfddce96652e0420cf21a653f15c656d58760a9e3b6c8bfa8df7c9275b17",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "dark-ui",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.1,
                  "content": 0.0,
                  "layout": 0.6,
                  "spacing": 0.0,
                  "typography": 0.3
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 0.3393,
                    "dx": 0.0,
                    "dy": 0.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.1,
              "content": 0.0,
              "layout": 0.6,
              "spacing": 0.0,
              "typography": 0.3
            }
          },
          "result_sha256": "17b37d4664075df897732636eb38c9e8052f5408ba03157a5229eadccb5ac0a6"
        }
      ]
    },
    "settings_widget": {
      "effective_params": {
        "mode": "widget",
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 461.281125,
        "median": 404.822875,
        "min": 341.195166,
        "n": 3,
        "samples": [
          461.281125,
          404.822875,
          341.195166
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "fallback": true,
          "method": "identity",
          "mode": "widget",
          "note": "widget mode assumes a pre-aligned crop",
          "outcome": "not_requested",
          "reason": "widget_identity"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [
          {
            "area": "content",
            "box": [
              30,
              22,
              708,
              128
            ],
            "observed": "a reference region at x=30,y=22 (708x128) is absent",
            "severity": "high",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              436,
              178,
              88,
              92
            ],
            "observed": "a reference region at x=436,y=178 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              336,
              284,
              88,
              92
            ],
            "observed": "a reference region at x=336,y=284 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "content",
            "box": [
              236,
              390,
              88,
              92
            ],
            "observed": "a reference region at x=236,y=390 (88x92) is absent",
            "severity": "medium",
            "suggested_fix": "add the missing element at this position",
            "type": "missing_region"
          },
          {
            "area": "color",
            "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
            "severity": "medium",
            "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
            "type": "color_distribution"
          },
          {
            "area": "spacing",
            "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
            "severity": "medium",
            "suggested_fix": "adjust the top margin toward the reference",
            "type": "spacing_mismatch"
          },
          {
            "area": "content",
            "box": [
              33,
              175,
              694,
              416
            ],
            "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
            "severity": "low",
            "suggested_fix": "remove or relocate this element",
            "type": "extra_region"
          }
        ],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 40.313476801693085,
              "near_uniform": false,
              "rgb_stddev_max": 45.83730413808101
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [],
          "layout_identity_score": 85.46661804963476,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "ok",
          "version": 1
        },
        "overall": 37.05,
        "preset": "default",
        "provenance": {
          "comparison_key": "eaa1568f7e0fc862d4252c5797a6dccd924deb67c465fe5c5809c1c58048d7e8",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "f7701bb620f1f9aeb0374524b2ac63117e522c5eeb8d2729fda931b2b7644009",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "widget",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 7.185619734430296,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 13.332385849303881,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 13.332385849303881,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 6.467057760987267
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 49.57,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 1,
              "coverage": 0.0,
              "extra": 1,
              "extra_ratio": 1.0,
              "missing": 29,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 0.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "fallback": true,
                "method": "identity",
                "note": "widget mode assumes a pre-aligned crop",
                "outcome": "not_requested",
                "reason": "widget_identity"
              },
              "aspect_mismatch": 0.0,
              "ssim": 0.8547
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 85.47,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.0766,
                "left": 0.043,
                "mean_gap": 0.0,
                "right": 0.0534,
                "top": 0.2734
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.0,
                "left": 0.967,
                "mean_gap": 1.0,
                "right": 0.881,
                "top": 0.0
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 56.96,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 0.898,
              "cand": {
                "area_frac": 0.0355,
                "count": 56,
                "median_h": 17.0
              },
              "height_sim": 0.824,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 86.09,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 461.281125,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "eaa1568f7e0fc862d4252c5797a6dccd924deb67c465fe5c5809c1c58048d7e8",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "f7701bb620f1f9aeb0374524b2ac63117e522c5eeb8d2729fda931b2b7644009",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "f70ec38d3721c7a6631213a7f5bf86f6ea0ad1b6b9b01ba5e4304c4cfe5d15c3"
        },
        {
          "elapsed_ms": 404.822875,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "eaa1568f7e0fc862d4252c5797a6dccd924deb67c465fe5c5809c1c58048d7e8",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "f7701bb620f1f9aeb0374524b2ac63117e522c5eeb8d2729fda931b2b7644009",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "f70ec38d3721c7a6631213a7f5bf86f6ea0ad1b6b9b01ba5e4304c4cfe5d15c3"
        },
        {
          "elapsed_ms": 341.195166,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "eaa1568f7e0fc862d4252c5797a6dccd924deb67c465fe5c5809c1c58048d7e8",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "f7701bb620f1f9aeb0374524b2ac63117e522c5eeb8d2729fda931b2b7644009",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "f70ec38d3721c7a6631213a7f5bf86f6ea0ad1b6b9b01ba5e4304c4cfe5d15c3"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 341.909584,
          "result": {
            "alignment": {
              "fallback": true,
              "method": "identity",
              "mode": "widget",
              "note": "widget mode assumes a pre-aligned crop",
              "outcome": "not_requested",
              "reason": "widget_identity"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [
              {
                "area": "content",
                "box": [
                  30,
                  22,
                  708,
                  128
                ],
                "observed": "a reference region at x=30,y=22 (708x128) is absent",
                "severity": "high",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  436,
                  178,
                  88,
                  92
                ],
                "observed": "a reference region at x=436,y=178 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  336,
                  284,
                  88,
                  92
                ],
                "observed": "a reference region at x=336,y=284 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "content",
                "box": [
                  236,
                  390,
                  88,
                  92
                ],
                "observed": "a reference region at x=236,y=390 (88x92) is absent",
                "severity": "medium",
                "suggested_fix": "add the missing element at this position",
                "type": "missing_region"
              },
              {
                "area": "color",
                "observed": "Maximum projected mass distance 13.33 proxy units. This is not exact 3D optimal transport.",
                "severity": "medium",
                "suggested_fix": "Inspect color proportions and identity; no exact moved-pixel fraction was inferred.",
                "type": "color_distribution"
              },
              {
                "area": "spacing",
                "observed": "top margin differs: reference ~3.4% vs candidate ~27.3% of the canvas",
                "severity": "medium",
                "suggested_fix": "adjust the top margin toward the reference",
                "type": "spacing_mismatch"
              },
              {
                "area": "content",
                "box": [
                  33,
                  175,
                  694,
                  416
                ],
                "observed": "an extra region at x=33,y=175 (694x416) is not in the reference",
                "severity": "low",
                "suggested_fix": "remove or relocate this element",
                "type": "extra_region"
              }
            ],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 40.313476801693085,
                  "near_uniform": false,
                  "rgb_stddev_max": 45.83730413808101
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [],
              "layout_identity_score": 85.46661804963476,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "ok",
              "version": 1
            },
            "overall": 37.05,
            "preset": "default",
            "provenance": {
              "comparison_key": "eaa1568f7e0fc862d4252c5797a6dccd924deb67c465fe5c5809c1c58048d7e8",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "398e5b19d422ebdfafe906eaf4ee444ab5c364c494ffd5e0a94312a7e5ffde17",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "f7701bb620f1f9aeb0374524b2ac63117e522c5eeb8d2729fda931b2b7644009",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "widget",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 7.185619734430296,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 13.332385849303881,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 13.332385849303881,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 6.467057760987267
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 49.57,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 1,
                  "coverage": 0.0,
                  "extra": 1,
                  "extra_ratio": 1.0,
                  "missing": 29,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 0.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "fallback": true,
                    "method": "identity",
                    "note": "widget mode assumes a pre-aligned crop",
                    "outcome": "not_requested",
                    "reason": "widget_identity"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 0.8547
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 85.47,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.0766,
                    "left": 0.043,
                    "mean_gap": 0.0,
                    "right": 0.0534,
                    "top": 0.2734
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.0,
                    "left": 0.967,
                    "mean_gap": 1.0,
                    "right": 0.881,
                    "top": 0.0
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 56.96,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 0.898,
                  "cand": {
                    "area_frac": 0.0355,
                    "count": 56,
                    "median_h": 17.0
                  },
                  "height_sim": 0.824,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 86.09,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "f70ec38d3721c7a6631213a7f5bf86f6ea0ad1b6b9b01ba5e4304c4cfe5d15c3"
        }
      ]
    },
    "translation_+1": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 401.028583,
        "median": 398.543875,
        "min": 396.058916,
        "n": 3,
        "samples": [
          396.058916,
          401.028583,
          398.543875
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 1.0,
          "dx": 2.0,
          "dy": -2.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [
            {
              "code": "translation_applied"
            }
          ],
          "layout_identity_score": 66.56553946311668,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 99.71,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "68f8582a1c08b88857b5b87fb703c570a45231a051c48c2ee433e8a2e1df6124",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "3ebe54798906d371af2e4c90a49be4fd791c39b6b9b3a7f8159b43f8b626757a",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 6.118657445353923e-16,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 6.218708669820101e-13,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 6.218708669820101e-13,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 5.506791700818531e-16
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 1.0,
                "dx": 2.0,
                "dy": -2.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7688,
                "left": 0.0417,
                "mean_gap": 0.0,
                "right": 0.0365,
                "top": 0.0312
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.974,
                "left": 0.978,
                "mean_gap": 1.0,
                "right": 0.978,
                "top": 0.974
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 98.09,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 396.058916,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 2.0,
              "dy": -2.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 66.56553946311668,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.71,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "68f8582a1c08b88857b5b87fb703c570a45231a051c48c2ee433e8a2e1df6124",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "3ebe54798906d371af2e4c90a49be4fd791c39b6b9b3a7f8159b43f8b626757a",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 6.118657445353923e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 6.218708669820101e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 6.218708669820101e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 5.506791700818531e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 2.0,
                    "dy": -2.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7688,
                    "left": 0.0417,
                    "mean_gap": 0.0,
                    "right": 0.0365,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.09,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "87e3d6bfe07e20b81678fc163b99bdacfc1208ea01a6b8bb05c47ba6851f95d1"
        },
        {
          "elapsed_ms": 401.028583,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 2.0,
              "dy": -2.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 66.56553946311668,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.71,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "68f8582a1c08b88857b5b87fb703c570a45231a051c48c2ee433e8a2e1df6124",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "3ebe54798906d371af2e4c90a49be4fd791c39b6b9b3a7f8159b43f8b626757a",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 6.118657445353923e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 6.218708669820101e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 6.218708669820101e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 5.506791700818531e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 2.0,
                    "dy": -2.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7688,
                    "left": 0.0417,
                    "mean_gap": 0.0,
                    "right": 0.0365,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.09,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "87e3d6bfe07e20b81678fc163b99bdacfc1208ea01a6b8bb05c47ba6851f95d1"
        },
        {
          "elapsed_ms": 398.543875,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 2.0,
              "dy": -2.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 66.56553946311668,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.71,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "68f8582a1c08b88857b5b87fb703c570a45231a051c48c2ee433e8a2e1df6124",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "3ebe54798906d371af2e4c90a49be4fd791c39b6b9b3a7f8159b43f8b626757a",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 6.118657445353923e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 6.218708669820101e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 6.218708669820101e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 5.506791700818531e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 2.0,
                    "dy": -2.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7688,
                    "left": 0.0417,
                    "mean_gap": 0.0,
                    "right": 0.0365,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.09,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "87e3d6bfe07e20b81678fc163b99bdacfc1208ea01a6b8bb05c47ba6851f95d1"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 399.275166,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 2.0,
              "dy": -2.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 66.56553946311668,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.71,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "68f8582a1c08b88857b5b87fb703c570a45231a051c48c2ee433e8a2e1df6124",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "3ebe54798906d371af2e4c90a49be4fd791c39b6b9b3a7f8159b43f8b626757a",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 6.118657445353923e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 6.218708669820101e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 6.218708669820101e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 5.506791700818531e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 2.0,
                    "dy": -2.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7688,
                    "left": 0.0417,
                    "mean_gap": 0.0,
                    "right": 0.0365,
                    "top": 0.0312
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.09,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "87e3d6bfe07e20b81678fc163b99bdacfc1208ea01a6b8bb05c47ba6851f95d1"
        }
      ]
    },
    "translation_+2": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 398.427583,
        "median": 394.524875,
        "min": 387.666416,
        "n": 3,
        "samples": [
          398.427583,
          387.666416,
          394.524875
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 1.0,
          "dx": 4.0,
          "dy": -4.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [
            {
              "code": "translation_applied"
            }
          ],
          "layout_identity_score": 53.26750276187475,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 99.42,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "419c459d814a40e815e52dbf9a2500e0c14371351a557a81fdfc7b7d2073e55d",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "d1ddd60855bba9377d4c7d97c65590afeb364a7d90628cc20f5e8bc4583d8468",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 9.344932938536328e-16,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 8.810959485719278e-13,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 8.810959485719278e-13,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 8.410439644682695e-16
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 1.0,
                "dx": 4.0,
                "dy": -4.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7719,
                "left": 0.0443,
                "mean_gap": 0.0,
                "right": 0.0339,
                "top": 0.0281
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.948,
                "left": 0.957,
                "mean_gap": 1.0,
                "right": 0.957,
                "top": 0.948
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 96.18,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 398.427583,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 4.0,
              "dy": -4.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 53.26750276187475,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.42,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "419c459d814a40e815e52dbf9a2500e0c14371351a557a81fdfc7b7d2073e55d",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "d1ddd60855bba9377d4c7d97c65590afeb364a7d90628cc20f5e8bc4583d8468",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.344932938536328e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.810959485719278e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 8.810959485719278e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.410439644682695e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 4.0,
                    "dy": -4.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7719,
                    "left": 0.0443,
                    "mean_gap": 0.0,
                    "right": 0.0339,
                    "top": 0.0281
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 96.18,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "47197fc5baa29b988dc38c85287fc9675f4c94598384350485edbd14d7cd74eb"
        },
        {
          "elapsed_ms": 387.666416,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 4.0,
              "dy": -4.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 53.26750276187475,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.42,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "419c459d814a40e815e52dbf9a2500e0c14371351a557a81fdfc7b7d2073e55d",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "d1ddd60855bba9377d4c7d97c65590afeb364a7d90628cc20f5e8bc4583d8468",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.344932938536328e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.810959485719278e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 8.810959485719278e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.410439644682695e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 4.0,
                    "dy": -4.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7719,
                    "left": 0.0443,
                    "mean_gap": 0.0,
                    "right": 0.0339,
                    "top": 0.0281
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 96.18,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "47197fc5baa29b988dc38c85287fc9675f4c94598384350485edbd14d7cd74eb"
        },
        {
          "elapsed_ms": 394.524875,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 4.0,
              "dy": -4.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 53.26750276187475,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.42,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "419c459d814a40e815e52dbf9a2500e0c14371351a557a81fdfc7b7d2073e55d",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "d1ddd60855bba9377d4c7d97c65590afeb364a7d90628cc20f5e8bc4583d8468",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.344932938536328e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.810959485719278e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 8.810959485719278e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.410439644682695e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 4.0,
                    "dy": -4.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7719,
                    "left": 0.0443,
                    "mean_gap": 0.0,
                    "right": 0.0339,
                    "top": 0.0281
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 96.18,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "47197fc5baa29b988dc38c85287fc9675f4c94598384350485edbd14d7cd74eb"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 393.855916,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": 4.0,
              "dy": -4.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 53.26750276187475,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.42,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "419c459d814a40e815e52dbf9a2500e0c14371351a557a81fdfc7b7d2073e55d",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "d1ddd60855bba9377d4c7d97c65590afeb364a7d90628cc20f5e8bc4583d8468",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.344932938536328e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.810959485719278e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 8.810959485719278e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.410439644682695e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": 4.0,
                    "dy": -4.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7719,
                    "left": 0.0443,
                    "mean_gap": 0.0,
                    "right": 0.0339,
                    "top": 0.0281
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 96.18,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "47197fc5baa29b988dc38c85287fc9675f4c94598384350485edbd14d7cd74eb"
        }
      ]
    },
    "translation_-1": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 403.246333,
        "median": 401.967458,
        "min": 390.044625,
        "n": 3,
        "samples": [
          390.044625,
          401.967458,
          403.246333
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 1.0,
          "dx": -2.0,
          "dy": 2.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [
            {
              "code": "translation_applied"
            }
          ],
          "layout_identity_score": 66.56553946311668,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 99.71,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "0c66ff426e112852af39aec60d6735f43c5d952b916ac8f6ab9d1286a1866132",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "0d6499892907375396038fa678976633a0e0e1f60857a013f121be86c245044c",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 6.020415124771904e-16,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 8.054229506120781e-13,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 8.054229506120781e-13,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 5.418373612294714e-16
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 1.0,
                "dx": -2.0,
                "dy": 2.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7625,
                "left": 0.0365,
                "mean_gap": 0.0,
                "right": 0.0417,
                "top": 0.0375
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.974,
                "left": 0.978,
                "mean_gap": 1.0,
                "right": 0.978,
                "top": 0.974
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 98.09,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 390.044625,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -2.0,
              "dy": 2.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 66.56553946311668,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.71,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "0c66ff426e112852af39aec60d6735f43c5d952b916ac8f6ab9d1286a1866132",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "0d6499892907375396038fa678976633a0e0e1f60857a013f121be86c245044c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 6.020415124771904e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.054229506120781e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 8.054229506120781e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 5.418373612294714e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -2.0,
                    "dy": 2.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7625,
                    "left": 0.0365,
                    "mean_gap": 0.0,
                    "right": 0.0417,
                    "top": 0.0375
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.09,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "3f0b05be50107000b834008a7d5aec93a258552334479d21137aed71dbbc4899"
        },
        {
          "elapsed_ms": 401.967458,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -2.0,
              "dy": 2.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 66.56553946311668,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.71,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "0c66ff426e112852af39aec60d6735f43c5d952b916ac8f6ab9d1286a1866132",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "0d6499892907375396038fa678976633a0e0e1f60857a013f121be86c245044c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 6.020415124771904e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.054229506120781e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 8.054229506120781e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 5.418373612294714e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -2.0,
                    "dy": 2.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7625,
                    "left": 0.0365,
                    "mean_gap": 0.0,
                    "right": 0.0417,
                    "top": 0.0375
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.09,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "3f0b05be50107000b834008a7d5aec93a258552334479d21137aed71dbbc4899"
        },
        {
          "elapsed_ms": 403.246333,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -2.0,
              "dy": 2.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 66.56553946311668,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.71,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "0c66ff426e112852af39aec60d6735f43c5d952b916ac8f6ab9d1286a1866132",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "0d6499892907375396038fa678976633a0e0e1f60857a013f121be86c245044c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 6.020415124771904e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.054229506120781e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 8.054229506120781e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 5.418373612294714e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -2.0,
                    "dy": 2.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7625,
                    "left": 0.0365,
                    "mean_gap": 0.0,
                    "right": 0.0417,
                    "top": 0.0375
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.09,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "3f0b05be50107000b834008a7d5aec93a258552334479d21137aed71dbbc4899"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 402.684041,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -2.0,
              "dy": 2.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 66.56553946311668,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.71,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "0c66ff426e112852af39aec60d6735f43c5d952b916ac8f6ab9d1286a1866132",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "0d6499892907375396038fa678976633a0e0e1f60857a013f121be86c245044c",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 6.020415124771904e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 8.054229506120781e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 8.054229506120781e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 5.418373612294714e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -2.0,
                    "dy": 2.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7625,
                    "left": 0.0365,
                    "mean_gap": 0.0,
                    "right": 0.0417,
                    "top": 0.0375
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.974,
                    "left": 0.978,
                    "mean_gap": 1.0,
                    "right": 0.978,
                    "top": 0.974
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 98.09,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "3f0b05be50107000b834008a7d5aec93a258552334479d21137aed71dbbc4899"
        }
      ]
    },
    "translation_-2": {
      "effective_params": {
        "return_visuals": false
      },
      "errors": [],
      "latency": {
        "max": 402.73025,
        "median": 401.004,
        "min": 395.366791,
        "n": 3,
        "samples": [
          401.004,
          395.366791,
          402.73025
        ],
        "unit": "ms"
      },
      "result": {
        "alignment": {
          "cc": 1.0,
          "dx": -4.0,
          "dy": 4.0,
          "fallback": false,
          "method": "ecc_translation",
          "mode": "screen",
          "outcome": "applied",
          "reason": "ecc_accepted"
        },
        "canonical_width": 768,
        "canvas": {
          "candidate": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "height": 640,
          "ignore_input_space": "reference_original_pixels",
          "ignore_space": "canonical_768",
          "reference": {
            "orig_h": 320,
            "orig_w": 384,
            "scale": 2.0
          },
          "width": 768
        },
        "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
        "cv_findings": [],
        "diagnostics": {
          "capture": {
            "candidate": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            },
            "reference": {
              "gray_stddev": 81.40526778157218,
              "near_uniform": false,
              "rgb_stddev_max": 87.45570871710888
            }
          },
          "issues": [
            {
              "code": "translation_applied"
            }
          ],
          "layout_identity_score": 53.26750276187481,
          "scope": {
            "compared_fraction": 1.0,
            "ignored_fraction": 0.0
          },
          "status": "review",
          "version": 1
        },
        "overall": 99.42,
        "preset": "default",
        "provenance": {
          "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
          "inputs": {
            "candidate": {
              "height": 320,
              "rgb_sha256": "527f6e8d88b8f0370c7ad00c3a54e2366e36bc39b0c599933b083c761cbd80a2",
              "width": 384
            },
            "reference": {
              "height": 320,
              "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
              "width": 384
            }
          },
          "run_key": "59c2683ddbf5a6f7eb8f2de6595b18ed435fe67188e4517d3d46d55be8c24417",
          "settings": {
            "alignment_policy": "ecc-translation-guards-v1",
            "canonical_width": 768,
            "comparison_context": null,
            "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
            "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
            "ignore_regions": [],
            "mode": "screen",
            "normalization_policy": "independent-width-modal-bottom-pad-v1",
            "preset": "default",
            "runtime_versions": {
              "Pillow": "12.3.0",
              "numpy": "2.5.1",
              "opencv": "5.0.0",
              "python": "3.13.7",
              "scikit-image": "0.26.0",
              "scikit-learn": "1.9.0",
              "scipy": "1.18.0"
            },
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "version": 1
        },
        "stub": false,
        "subscores": {
          "color": {
            "measurements": {
              "certificate": {
                "added_mass": 0.0,
                "distance": 10.0,
                "lattice_guard": 13.856406460551018,
                "mass_floor": 0.001,
                "missing_mass": 0.0
              },
              "coordinate_system": {
                "base": "D65_CIELab",
                "chroma_compression": 0.045
              },
              "coverage_distance": 9.250271699015301e-16,
              "coverage_method": {
                "density_cap": 0.05,
                "density_sigma": 10.0,
                "gain": 0.9,
                "mass_scale": 0.001,
                "name": "source_density_scaled_bidirectional_soft_clearance",
                "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                "query_mass_resolution": "mass_scale / source_alpha",
                "radii": [
                  0.0,
                  2.0,
                  4.0,
                  6.0,
                  8.0,
                  10.0,
                  14.0,
                  20.0,
                  28.0,
                  40.0,
                  60.0,
                  90.0,
                  140.0
                ],
                "source_alpha": "density_cap / max(source_density, density_cap)"
              },
              "decay": 19.0,
              "distance": 7.41496102449388e-13,
              "lattice": {
                "assignment": "trilinear_all_pixels",
                "nodes": 16250,
                "origin": [
                  0.0,
                  -48.0,
                  -48.0
                ],
                "pixel_batch": 65536,
                "shape": [
                  26,
                  25,
                  25
                ],
                "step": 4.0
              },
              "mass_distance": 7.41496102449388e-13,
              "mass_method": {
                "directions": 64,
                "exact_3d_transport": false,
                "name": "max_sliced_wasserstein_1d"
              },
              "metric": "soft_grid_source_density_scaled_clearance_v2",
              "units": "chroma_compressed_lab_proxy",
              "weighted_coverage_distance": 8.325244529113771e-16
            },
            "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
            "score": 100.0,
            "status": "scored"
          },
          "content": {
            "measurements": {
              "cand_regions": 29,
              "coverage": 1.0,
              "extra": 0,
              "extra_ratio": 0.0,
              "missing": 0,
              "ref_regions": 29
            },
            "reason": "reference-region coverage (IoU matching)",
            "score": 100.0,
            "status": "scored"
          },
          "layout": {
            "measurements": {
              "alignment": {
                "cc": 1.0,
                "dx": -4.0,
                "dy": 4.0,
                "fallback": false,
                "method": "ecc_translation",
                "outcome": "applied",
                "reason": "ecc_accepted"
              },
              "aspect_mismatch": 0.0,
              "ssim": 1.0
            },
            "reason": "structural similarity (SSIM) after alignment",
            "score": 100.0,
            "status": "scored"
          },
          "spacing": {
            "measurements": {
              "cand": {
                "bottom": 0.7594,
                "left": 0.0339,
                "mean_gap": 0.0,
                "right": 0.0443,
                "top": 0.0406
              },
              "ref": {
                "bottom": 0.7656,
                "left": 0.0391,
                "mean_gap": 0.0,
                "right": 0.0391,
                "top": 0.0344
              },
              "sims": {
                "bottom": 0.948,
                "left": 0.957,
                "mean_gap": 1.0,
                "right": 0.957,
                "top": 0.948
              }
            },
            "reason": "block margins + vertical rhythm (coarse)",
            "score": 96.18,
            "status": "scored"
          },
          "typography": {
            "measurements": {
              "area_sim": 1.0,
              "cand": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              },
              "height_sim": 1.0,
              "ref": {
                "area_frac": 0.0395,
                "count": 58,
                "median_h": 14.0
              }
            },
            "reason": "text amount + scale (coarse; not font identity)",
            "score": 100.0,
            "status": "scored"
          }
        },
        "visuals": [],
        "weights": {
          "color": 0.2,
          "content": 0.15,
          "layout": 0.35,
          "spacing": 0.15,
          "typography": 0.15
        }
      },
      "stable_results": true,
      "status": "ok",
      "trials": [
        {
          "elapsed_ms": 401.004,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -4.0,
              "dy": 4.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 53.26750276187481,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.42,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "527f6e8d88b8f0370c7ad00c3a54e2366e36bc39b0c599933b083c761cbd80a2",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "59c2683ddbf5a6f7eb8f2de6595b18ed435fe67188e4517d3d46d55be8c24417",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.250271699015301e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 7.41496102449388e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.41496102449388e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.325244529113771e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -4.0,
                    "dy": 4.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7594,
                    "left": 0.0339,
                    "mean_gap": 0.0,
                    "right": 0.0443,
                    "top": 0.0406
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 96.18,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e34b0d9dec13fb1ae4b9032601d35f26c7572fc06d8cb8f01c5d391e8c5f28d5"
        },
        {
          "elapsed_ms": 395.366791,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -4.0,
              "dy": 4.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 53.26750276187481,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.42,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "527f6e8d88b8f0370c7ad00c3a54e2366e36bc39b0c599933b083c761cbd80a2",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "59c2683ddbf5a6f7eb8f2de6595b18ed435fe67188e4517d3d46d55be8c24417",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.250271699015301e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 7.41496102449388e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.41496102449388e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.325244529113771e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -4.0,
                    "dy": 4.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7594,
                    "left": 0.0339,
                    "mean_gap": 0.0,
                    "right": 0.0443,
                    "top": 0.0406
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 96.18,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e34b0d9dec13fb1ae4b9032601d35f26c7572fc06d8cb8f01c5d391e8c5f28d5"
        },
        {
          "elapsed_ms": 402.73025,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -4.0,
              "dy": 4.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 53.26750276187481,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.42,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "527f6e8d88b8f0370c7ad00c3a54e2366e36bc39b0c599933b083c761cbd80a2",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "59c2683ddbf5a6f7eb8f2de6595b18ed435fe67188e4517d3d46d55be8c24417",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.250271699015301e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 7.41496102449388e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.41496102449388e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.325244529113771e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -4.0,
                    "dy": 4.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7594,
                    "left": 0.0339,
                    "mean_gap": 0.0,
                    "right": 0.0443,
                    "top": 0.0406
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 96.18,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e34b0d9dec13fb1ae4b9032601d35f26c7572fc06d8cb8f01c5d391e8c5f28d5"
        }
      ],
      "unsupported_metadata_params": [],
      "warmups": [
        {
          "elapsed_ms": 413.767125,
          "result": {
            "alignment": {
              "cc": 1.0,
              "dx": -4.0,
              "dy": 4.0,
              "fallback": false,
              "method": "ecc_translation",
              "mode": "screen",
              "outcome": "applied",
              "reason": "ecc_accepted"
            },
            "canonical_width": 768,
            "canvas": {
              "candidate": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "height": 640,
              "ignore_input_space": "reference_original_pixels",
              "ignore_space": "canonical_768",
              "reference": {
                "orig_h": 320,
                "orig_w": 384,
                "scale": 2.0
              },
              "width": 768
            },
            "critique_rubric": "Resolve diagnostics capture/state and scope before turning findings into product work. status=ok is not capture verification or a design pass. near_uniform_input means near-uniform pixels; confirm expected content/state. alignment_unresolved means identity fallback, not failed capture. translation_applied means layout tolerates a global translation; inspect unaligned placement and layout_identity_score. Alignment dx/dy are canonical pixels; divide by canvas.reference.scale or canvas.candidate.scale for original pixels. Rejected dx/dy are attempted, not applied. aspect_mismatch may be capture/crop protocol or real proportions. mask_fill_semantics means fill, not true exclusion; mask_fill_colors_differ means unequal fills. Scope fractions describe the clipped union on the padded canvas, not metric confidence. empty_compare_scope is inconclusive: show raw numeric overall but do not rank or accept it. metric_failed means failed measurement, not measured defect; its legacy floor remains. comparison_key excludes candidate content; run_key includes it. Missing/different comparison keys require baseline re-scoring before reporting deltas. comparison_context is caller-declared metadata, never verified capture proof; omission leaves external capture/crop state unknown. Scored on a 768-wide canonical canvas; ignores use original reference pixels. Dimensions: layout (SSIM), color (fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage in chroma-compressed Lab proxy units), content (region coverage), typography (text amount/scale), spacing (margins/rhythm). Confirm coarse typography/spacing hints visually. Color is not CIEDE2000, exact color matching or 3D optimal transport. Projected-mass distance does not identify transport edges, moved-pixel fractions or spatial correspondence. Source-query alpha=.05/max(rho_source,.05) scales both own and target occupancy per direction; query mass resolution is .001/alpha. Missing/added findings need conservative absence certificates. color_shift summarizes two certified unmatched masses, not any recoloring. Failure to certify absence does not prove presence or a nearby counterpart. color_coverage_deficit does not prove exact absence. Color scores need version-matched baselines, not historical anchors. Ground fixes in unaligned side_by_side, overlay, diff_heatmap and content_regions; order by score impact/severity. Report each fix as {area, observed, expected, severity, suggested_fix}.",
            "cv_findings": [],
            "diagnostics": {
              "capture": {
                "candidate": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                },
                "reference": {
                  "gray_stddev": 81.40526778157218,
                  "near_uniform": false,
                  "rgb_stddev_max": 87.45570871710888
                }
              },
              "issues": [
                {
                  "code": "translation_applied"
                }
              ],
              "layout_identity_score": 53.26750276187481,
              "scope": {
                "compared_fraction": 1.0,
                "ignored_fraction": 0.0
              },
              "status": "review",
              "version": 1
            },
            "overall": 99.42,
            "preset": "default",
            "provenance": {
              "comparison_key": "26f34f4a3c2cccfa1bbb947a20ac795bac6f532d9fefb0e4e5c4de4525154574",
              "inputs": {
                "candidate": {
                  "height": 320,
                  "rgb_sha256": "527f6e8d88b8f0370c7ad00c3a54e2366e36bc39b0c599933b083c761cbd80a2",
                  "width": 384
                },
                "reference": {
                  "height": 320,
                  "rgb_sha256": "86682b46243f49037c4dbbaa876d8a3154e4a0dcd7a105e78e248ee6a4cc526a",
                  "width": 384
                }
              },
              "run_key": "59c2683ddbf5a6f7eb8f2de6595b18ed435fe67188e4517d3d46d55be8c24417",
              "settings": {
                "alignment_policy": "ecc-translation-guards-v1",
                "canonical_width": 768,
                "comparison_context": null,
                "engine_revision": "sha256:af00e69615847f5fbdbbb23c9edf742ae6d38fb785ab518ba658eb7e63498144",
                "ignore_policy": "reference-boxes-per-image-modal-fill-v1",
                "ignore_regions": [],
                "mode": "screen",
                "normalization_policy": "independent-width-modal-bottom-pad-v1",
                "preset": "default",
                "runtime_versions": {
                  "Pillow": "12.3.0",
                  "numpy": "2.5.1",
                  "opencv": "5.0.0",
                  "python": "3.13.7",
                  "scikit-image": "0.26.0",
                  "scikit-learn": "1.9.0",
                  "scipy": "1.18.0"
                },
                "weights": {
                  "color": 0.2,
                  "content": 0.15,
                  "layout": 0.35,
                  "spacing": 0.15,
                  "typography": 0.15
                }
              },
              "version": 1
            },
            "stub": false,
            "subscores": {
              "color": {
                "measurements": {
                  "certificate": {
                    "added_mass": 0.0,
                    "distance": 10.0,
                    "lattice_guard": 13.856406460551018,
                    "mass_floor": 0.001,
                    "missing_mass": 0.0
                  },
                  "coordinate_system": {
                    "base": "D65_CIELab",
                    "chroma_compression": 0.045
                  },
                  "coverage_distance": 9.250271699015301e-16,
                  "coverage_method": {
                    "density_cap": 0.05,
                    "density_sigma": 10.0,
                    "gain": 0.9,
                    "mass_scale": 0.001,
                    "name": "source_density_scaled_bidirectional_soft_clearance",
                    "occupancy_scaling": "same_source_query_alpha_for_own_and_target",
                    "query_mass_resolution": "mass_scale / source_alpha",
                    "radii": [
                      0.0,
                      2.0,
                      4.0,
                      6.0,
                      8.0,
                      10.0,
                      14.0,
                      20.0,
                      28.0,
                      40.0,
                      60.0,
                      90.0,
                      140.0
                    ],
                    "source_alpha": "density_cap / max(source_density, density_cap)"
                  },
                  "decay": 19.0,
                  "distance": 7.41496102449388e-13,
                  "lattice": {
                    "assignment": "trilinear_all_pixels",
                    "nodes": 16250,
                    "origin": [
                      0.0,
                      -48.0,
                      -48.0
                    ],
                    "pixel_batch": 65536,
                    "shape": [
                      26,
                      25,
                      25
                    ],
                    "step": 4.0
                  },
                  "mass_distance": 7.41496102449388e-13,
                  "mass_method": {
                    "directions": 64,
                    "exact_3d_transport": false,
                    "name": "max_sliced_wasserstein_1d"
                  },
                  "metric": "soft_grid_source_density_scaled_clearance_v2",
                  "units": "chroma_compressed_lab_proxy",
                  "weighted_coverage_distance": 8.325244529113771e-16
                },
                "reason": "fixed-lattice max-sliced mass and source-density-scaled soft rare-color coverage (chroma-compressed Lab proxy)",
                "score": 100.0,
                "status": "scored"
              },
              "content": {
                "measurements": {
                  "cand_regions": 29,
                  "coverage": 1.0,
                  "extra": 0,
                  "extra_ratio": 0.0,
                  "missing": 0,
                  "ref_regions": 29
                },
                "reason": "reference-region coverage (IoU matching)",
                "score": 100.0,
                "status": "scored"
              },
              "layout": {
                "measurements": {
                  "alignment": {
                    "cc": 1.0,
                    "dx": -4.0,
                    "dy": 4.0,
                    "fallback": false,
                    "method": "ecc_translation",
                    "outcome": "applied",
                    "reason": "ecc_accepted"
                  },
                  "aspect_mismatch": 0.0,
                  "ssim": 1.0
                },
                "reason": "structural similarity (SSIM) after alignment",
                "score": 100.0,
                "status": "scored"
              },
              "spacing": {
                "measurements": {
                  "cand": {
                    "bottom": 0.7594,
                    "left": 0.0339,
                    "mean_gap": 0.0,
                    "right": 0.0443,
                    "top": 0.0406
                  },
                  "ref": {
                    "bottom": 0.7656,
                    "left": 0.0391,
                    "mean_gap": 0.0,
                    "right": 0.0391,
                    "top": 0.0344
                  },
                  "sims": {
                    "bottom": 0.948,
                    "left": 0.957,
                    "mean_gap": 1.0,
                    "right": 0.957,
                    "top": 0.948
                  }
                },
                "reason": "block margins + vertical rhythm (coarse)",
                "score": 96.18,
                "status": "scored"
              },
              "typography": {
                "measurements": {
                  "area_sim": 1.0,
                  "cand": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  },
                  "height_sim": 1.0,
                  "ref": {
                    "area_frac": 0.0395,
                    "count": 58,
                    "median_h": 14.0
                  }
                },
                "reason": "text amount + scale (coarse; not font identity)",
                "score": 100.0,
                "status": "scored"
              }
            },
            "visuals": [],
            "weights": {
              "color": 0.2,
              "content": 0.15,
              "layout": 0.35,
              "spacing": 0.15,
              "typography": 0.15
            }
          },
          "result_sha256": "e34b0d9dec13fb1ae4b9032601d35f26c7572fc06d8cb8f01c5d391e8c5f28d5"
        }
      ]
    }
  },
  "environment": {
    "cpu_count": 18,
    "dependencies": {
      "ImageIO": "2.37.4",
      "design-compare-vision-worker": "0.12.0",
      "joblib": "1.5.3",
      "lazy-loader": "0.5",
      "narwhals": "2.24.0",
      "networkx": "3.6.1",
      "numpy": "2.5.1",
      "opencv-python-headless": "5.0.0.93",
      "packaging": "26.2",
      "pillow": "12.3.0",
      "pip": "26.1.2",
      "scikit-image": "0.26.0",
      "scikit-learn": "1.9.0",
      "scipy": "1.18.0",
      "threadpoolctl": "3.6.0",
      "tifffile": "2026.7.14"
    },
    "executable": "/Users/codenameakshay/Development/codenameakshay/design-compare-mcp/worker/.venv/bin/python",
    "loaded_worker_files": {
      "vision_worker": "worker/vision_worker/__init__.py",
      "vision_worker.aggregate": "worker/vision_worker/aggregate.py",
      "vision_worker.align": "worker/vision_worker/align.py",
      "vision_worker.io_utils": "worker/vision_worker/io_utils.py",
      "vision_worker.metrics": "worker/vision_worker/metrics/__init__.py",
      "vision_worker.metrics.color": "worker/vision_worker/metrics/color.py",
      "vision_worker.metrics.content": "worker/vision_worker/metrics/content.py",
      "vision_worker.metrics.spacing": "worker/vision_worker/metrics/spacing.py",
      "vision_worker.metrics.structure": "worker/vision_worker/metrics/structure.py",
      "vision_worker.metrics.typography": "worker/vision_worker/metrics/typography.py",
      "vision_worker.motion": "worker/vision_worker/motion.py",
      "vision_worker.normalize": "worker/vision_worker/normalize.py",
      "vision_worker.pipeline": "worker/vision_worker/pipeline.py",
      "vision_worker.reliability": "worker/vision_worker/reliability.py",
      "vision_worker.visuals": "worker/vision_worker/visuals.py"
    },
    "machine": "arm64",
    "numpy": "2.5.1",
    "opencv": "5.0.0",
    "opencv_threads": 18,
    "platform": "macOS-27.0.1-arm64-arm-64bit-Mach-O",
    "processor": "arm",
    "python": "3.13.7 (v3.13.7:bcee1c32211, Aug 14 2025, 19:10:51) [Clang 16.0.0 (clang-1600.0.26.6)]",
    "source_manifest": {
      "files": {
        "worker/pyproject.toml": "de97b5cc117df1cb4744d659f6552a5d28eab63e6e4bf79e8bb3f910cc796fa1",
        "worker/vision_worker/__init__.py": "1d4822f6ffcd2c7d44fb83f83f68b020ff79a978847737e9430ad8cd0584592b",
        "worker/vision_worker/__main__.py": "a0c16f1f2fa961fc816fa65ae2f451c4e0ba2da31d73e82a79586e66cefff7c9",
        "worker/vision_worker/aggregate.py": "4f694075facbe4a4db024bdd743a78e886ccc7758144f637249bd10e1d68870d",
        "worker/vision_worker/align.py": "9be365675ec078b83f00fae86223b019268c4cd414432c2028b88bae70a5998b",
        "worker/vision_worker/io_utils.py": "80ba55b5038cd347bd25c3ca79f649dbc092e0c5517059a89e4a5a484b5af5e9",
        "worker/vision_worker/metrics/__init__.py": "4cd624363c9e2d61624a35eef96bf591e8532521e479fdea93dbb1b62c67fcba",
        "worker/vision_worker/metrics/color.py": "296712351518bf2a88b46dcfa9f0811dc8ce68f8c1989d09d624e87d62724e46",
        "worker/vision_worker/metrics/content.py": "16c93f0e05d08909cfb2c5fceb8855301eae7f92c938ed46fcdd05addf50aea5",
        "worker/vision_worker/metrics/spacing.py": "a63833e3166c3877ba3e5a381b2249f2dda34af83f072c1a9412f827bcdd8fe0",
        "worker/vision_worker/metrics/structure.py": "e9747971a1d717c59de4d74e4e92c2082524a3fa2d4fa4a51d171f0654c78ce3",
        "worker/vision_worker/metrics/typography.py": "ec79568f13e90725ac0dae79d8fb42da2db7210014fe4f8a2722f966882dc0d7",
        "worker/vision_worker/motion.py": "aeb2cf71efb93f6f1b08db23bb272f57b3b7affd864e9ff8f4df657fc4a12042",
        "worker/vision_worker/normalize.py": "ffb6edc6a18564717e38847f8eb5cf81bef26ad6ed8415d6ef6ff8934c1042fd",
        "worker/vision_worker/pipeline.py": "e121550fb92801346b0aca9c99e615c503eb59b0eebff27a26a6cd502faed76e",
        "worker/vision_worker/reliability.py": "5a7567cd1104f206aec1d0f8a42f6aa91086064f701820e51e66cd3969eb68c8",
        "worker/vision_worker/visuals.py": "c7b38a035832d91b0bfb5947e5740b4c9aacba15232968a9bcdd8ad6bd3f27d9"
      },
      "sha256": "fa35542962f731dd8dd9317d5448567023ae4ca66c4fefe9e90bc8de1be4d2e9"
    },
    "thread_environment": {
      "MKL_NUM_THREADS": "1",
      "NUMEXPR_NUM_THREADS": "1",
      "OMP_NUM_THREADS": "1",
      "OPENBLAS_NUM_THREADS": "1",
      "PYTHONHASHSEED": "0",
      "VECLIB_MAXIMUM_THREADS": "1"
    },
    "worker_module": "worker/vision_worker/__init__.py",
    "worker_version": "0.12.0"
  }
}
