{
  "source": {
    "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/source/original.fbx",
    "counts": {
      "vertices": 88467,
      "polygons": 32269,
      "triangles": 32269,
      "materials": 1,
      "uv_layers": 1,
      "sharp_edges": 0
    },
    "dimensions": [
      0.16659390926361084,
      0.09792017936706543,
      0.17377100884914398
    ],
    "sha256": "9feb1e7e83756542c167245ae07cf2ee06edc47bd4310298e3612f4bd5e6c342",
    "bytes": 2254108
  },
  "common_target": {
    "triangles": 6453,
    "retained_percent": 20,
    "reduction_percent": 80,
    "basis": "Prior pedal reduction screen identified 80% as the best starting point."
  },
  "results": [
    {
      "id": "h01_uniform_collapse",
      "title": "Uniform quadric collapse",
      "status": "executed",
      "source_counts": {
        "vertices": 88467,
        "polygons": 32269,
        "triangles": 32269,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "result_counts": {
        "vertices": 62655,
        "polygons": 6453,
        "triangles": 6453,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "requested_target_triangles": 6453,
      "achieved_reduction_percent": 80.00247915956491,
      "dimensions": [
        0.16659390926361084,
        0.09792985767126083,
        0.17376932501792908
      ],
      "dimension_delta": [
        0.0,
        9.678304195404053e-06,
        -1.6838312149047852e-06
      ],
      "notes": [],
      "voxel_trials": null,
      "render": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h01_uniform_collapse.png",
        "bytes": 207856,
        "sha256": "b65e9aab23381650df9272031a1e5b054f2facc541b1f2ff5b6b6481267888e8"
      },
      "fbx": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h01_uniform_collapse.fbx",
        "bytes": 944972,
        "sha256": "c1ae795098036d7adc89cc5561ab980859a24f087c4206bdb42db9face120f90"
      },
      "glb": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h01_uniform_collapse.glb",
        "bytes": 613520,
        "sha256": "efadf58666f74dcefe4e3deae29db6a041e803f228345b3a9294fd5cfb7575a6"
      }
    },
    {
      "id": "h02_material_guard",
      "title": "Material-boundary guard",
      "status": "executed",
      "source_counts": {
        "vertices": 88467,
        "polygons": 32269,
        "triangles": 32269,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "result_counts": {
        "vertices": 62655,
        "polygons": 6453,
        "triangles": 6453,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "requested_target_triangles": 6453,
      "achieved_reduction_percent": 80.00247915956491,
      "dimensions": [
        0.16659390926361084,
        0.09792985767126083,
        0.17376932501792908
      ],
      "dimension_delta": [
        0.0,
        9.678304195404053e-06,
        -1.6838312149047852e-06
      ],
      "notes": [
        "Source has 1 material slot and no active inter-material edge boundary; guard is a measured no-op before collapse."
      ],
      "voxel_trials": null,
      "render": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h02_material_guard.png",
        "bytes": 207856,
        "sha256": "b65e9aab23381650df9272031a1e5b054f2facc541b1f2ff5b6b6481267888e8"
      },
      "fbx": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h02_material_guard.fbx",
        "bytes": 944956,
        "sha256": "ed41f149eec2470675e98c659e119aa1c92e73d9dc1f57bad86e465e19554f2a"
      },
      "glb": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h02_material_guard.glb",
        "bytes": 613516,
        "sha256": "811b6722640bfb823d0d3b023972566c604bc46c1b432f23d2755b80072a67e0"
      }
    },
    {
      "id": "h03_uv_guard",
      "title": "UV-seam guard",
      "status": "executed",
      "source_counts": {
        "vertices": 88467,
        "polygons": 32269,
        "triangles": 32269,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "result_counts": {
        "vertices": 62655,
        "polygons": 6453,
        "triangles": 6453,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "requested_target_triangles": 6453,
      "achieved_reduction_percent": 80.00247915956491,
      "dimensions": [
        0.16659390926361084,
        0.09792985767126083,
        0.17376932501792908
      ],
      "dimension_delta": [
        0.0,
        9.678304195404053e-06,
        -1.6838312149047852e-06
      ],
      "notes": [
        "UV seams preserved before collapse."
      ],
      "voxel_trials": null,
      "render": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h03_uv_guard.png",
        "bytes": 207856,
        "sha256": "b65e9aab23381650df9272031a1e5b054f2facc541b1f2ff5b6b6481267888e8"
      },
      "fbx": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h03_uv_guard.fbx",
        "bytes": 944956,
        "sha256": "a03d8301f39e4b54e16ec55c1e43d14055ced82bb3507e05e38af048b7177fe3"
      },
      "glb": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h03_uv_guard.glb",
        "bytes": 613504,
        "sha256": "04adefaf0bbed185c4e91138a5cac31cfc3ef964ad179d00a7f3fa9498a6db35"
      }
    },
    {
      "id": "h04_normal_guard",
      "title": "Sharp-normal guard",
      "status": "executed",
      "source_counts": {
        "vertices": 88467,
        "polygons": 32269,
        "triangles": 32269,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "result_counts": {
        "vertices": 62655,
        "polygons": 6453,
        "triangles": 6453,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "requested_target_triangles": 6453,
      "achieved_reduction_percent": 80.00247915956491,
      "dimensions": [
        0.16659390926361084,
        0.09792985767126083,
        0.17376932501792908
      ],
      "dimension_delta": [
        0.0,
        9.678304195404053e-06,
        -1.6838312149047852e-06
      ],
      "notes": [
        "Source has 0 explicitly sharp edges; sharp-normal guard is a measured no-op before collapse."
      ],
      "voxel_trials": null,
      "render": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h04_normal_guard.png",
        "bytes": 207856,
        "sha256": "e1a70da65b6adb573eb8d4a442cf3ea9be740fc783cdfbb49d7bd867fa1f7b72"
      },
      "fbx": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h04_normal_guard.fbx",
        "bytes": 944956,
        "sha256": "32f1e479c9ee67f7552beba97b4a11f0ccd87f2fa223e282f93e4b590e8f9ed7"
      },
      "glb": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h04_normal_guard.glb",
        "bytes": 613512,
        "sha256": "95fdb2abb66aa7e087688540b3459821a426fe073c0e50124c38ff6b9fb4fedc"
      }
    },
    {
      "id": "h05_planar_2deg",
      "title": "Planar dissolve at 2 degrees, then collapse",
      "status": "executed",
      "source_counts": {
        "vertices": 88467,
        "polygons": 32269,
        "triangles": 32269,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "result_counts": {
        "vertices": 62655,
        "polygons": 6453,
        "triangles": 6453,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "requested_target_triangles": 6453,
      "achieved_reduction_percent": 80.00247915956491,
      "dimensions": [
        0.16659390926361084,
        0.09792985767126083,
        0.17376932501792908
      ],
      "dimension_delta": [
        0.0,
        9.678304195404053e-06,
        -1.6838312149047852e-06
      ],
      "notes": [
        "Planar prepass changed triangles from 32269 to 32142."
      ],
      "voxel_trials": null,
      "render": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h05_planar_2deg.png",
        "bytes": 207705,
        "sha256": "5b5d47d6f94e81134be051453327687e9a7a578d59e57b3c5265032681c60458"
      },
      "fbx": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h05_planar_2deg.fbx",
        "bytes": 947756,
        "sha256": "d250b10a29aa0fd8eff5ce345a5e67a8510093b86a2484d0348cfe64f721e996"
      },
      "glb": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h05_planar_2deg.glb",
        "bytes": 613608,
        "sha256": "e51975bef78fc20a417432cb952e472c99ca0deaf364644691bf92a8ca2d006e"
      }
    },
    {
      "id": "h06_planar_8deg",
      "title": "Planar dissolve at 8 degrees, then collapse",
      "status": "executed",
      "source_counts": {
        "vertices": 88467,
        "polygons": 32269,
        "triangles": 32269,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "result_counts": {
        "vertices": 62653,
        "polygons": 6453,
        "triangles": 6453,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "requested_target_triangles": 6453,
      "achieved_reduction_percent": 80.00247915956491,
      "dimensions": [
        0.16659390926361084,
        0.09792985767126083,
        0.17376932501792908
      ],
      "dimension_delta": [
        0.0,
        9.678304195404053e-06,
        -1.6838312149047852e-06
      ],
      "notes": [
        "Planar prepass changed triangles from 32269 to 31747."
      ],
      "voxel_trials": null,
      "render": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h06_planar_8deg.png",
        "bytes": 207984,
        "sha256": "ce690994f0264a16aeb52455689432541e65438d2d2b60514f493a417eafb530"
      },
      "fbx": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h06_planar_8deg.fbx",
        "bytes": 944812,
        "sha256": "f73c64db08b02de898029bf9efb88d8d62e433c6930a63b40c290b2c352cc1ea"
      },
      "glb": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h06_planar_8deg.glb",
        "bytes": 614696,
        "sha256": "39d147a017e6f3e468b5d43201bc32740264c7ce53ea2e4e406de6b01f40da29"
      }
    },
    {
      "id": "h07_micro_weld",
      "title": "Micro-weld exact duplicates, then collapse",
      "status": "executed",
      "source_counts": {
        "vertices": 88467,
        "polygons": 32269,
        "triangles": 32269,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "result_counts": {
        "vertices": 3225,
        "polygons": 6453,
        "triangles": 6453,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "requested_target_triangles": 6453,
      "achieved_reduction_percent": 80.00247915956491,
      "dimensions": [
        0.1666092574596405,
        0.0978928729891777,
        0.17377933859825134
      ],
      "dimension_delta": [
        1.5348196029663086e-05,
        -2.730637788772583e-05,
        8.32974910736084e-06
      ],
      "notes": [
        "Welded 72332 exact duplicate vertices at 1e-7 m before collapse without changing source triangle count."
      ],
      "voxel_trials": null,
      "render": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h07_micro_weld.png",
        "bytes": 206235,
        "sha256": "e51f06560c727128390a597f8eafe310289fa115dc23afdf826e516ba8b2b964"
      },
      "fbx": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h07_micro_weld.fbx",
        "bytes": 239052,
        "sha256": "057c1d3f9c95f1d4adfd84d10458aa3a6a6073f9d8c4a7d9b4bd47bbb2705d70"
      },
      "glb": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h07_micro_weld.glb",
        "bytes": 217628,
        "sha256": "445de6e334ac4282ec8338892f601bc46c37fc2a3830a949edd8d8dc5454ec85"
      }
    },
    {
      "id": "h08_voxel_remesh",
      "title": "Voxel topology reset",
      "status": "executed",
      "source_counts": {
        "vertices": 88467,
        "polygons": 32269,
        "triangles": 32269,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "result_counts": {
        "vertices": 3204,
        "polygons": 3216,
        "triangles": 6432,
        "materials": 1,
        "uv_layers": 0,
        "sharp_edges": 0
      },
      "requested_target_triangles": 6453,
      "achieved_reduction_percent": 80.06755709814372,
      "dimensions": [
        0.16288481652736664,
        0.09731787443161011,
        0.16984397172927856
      ],
      "dimension_delta": [
        -0.0037090927362442017,
        -0.0006023049354553223,
        -0.0039270371198654175
      ],
      "notes": [
        "Selected voxel size 0.004666748 m by 12-step search for closest result to 6453 triangles."
      ],
      "voxel_trials": [
        {
          "voxel_size": 0.010125,
          "triangles": 1084
        },
        {
          "voxel_size": 0.0051875,
          "triangles": 5008
        },
        {
          "voxel_size": 0.0027187500000000002,
          "triangles": 21648
        },
        {
          "voxel_size": 0.003953125,
          "triangles": 9364
        },
        {
          "voxel_size": 0.0045703125,
          "triangles": 6648
        },
        {
          "voxel_size": 0.00487890625,
          "triangles": 5700
        },
        {
          "voxel_size": 0.004724609375,
          "triangles": 6184
        },
        {
          "voxel_size": 0.0046474609375,
          "triangles": 6540
        },
        {
          "voxel_size": 0.004686035156250001,
          "triangles": 6400
        },
        {
          "voxel_size": 0.0046667480468750005,
          "triangles": 6432
        },
        {
          "voxel_size": 0.0046571044921875,
          "triangles": 6544
        },
        {
          "voxel_size": 0.00466192626953125,
          "triangles": 6484
        }
      ],
      "render": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h08_voxel_remesh.png",
        "bytes": 215154,
        "sha256": "86ab3646f4196aa309b0a8da7cedc97906cff72420820c8e68c5a15b1c281c70"
      },
      "fbx": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h08_voxel_remesh.fbx",
        "bytes": 132636,
        "sha256": "216bf73755ae11c6414183f3f93b60279621fd2f52e5d70d330602ff2cb18972"
      },
      "glb": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h08_voxel_remesh.glb",
        "bytes": 348068,
        "sha256": "517ab9928a7139dbee4705d38b7a143c884e35823d20d99f2270bf853f446bb9"
      }
    },
    {
      "id": "h09_unsubdivide",
      "title": "Unsubdivide, then collapse",
      "status": "executed",
      "source_counts": {
        "vertices": 88467,
        "polygons": 32269,
        "triangles": 32269,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "result_counts": {
        "vertices": 62652,
        "polygons": 6453,
        "triangles": 6453,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "requested_target_triangles": 6453,
      "achieved_reduction_percent": 80.00247915956491,
      "dimensions": [
        0.16659390926361084,
        0.09792985767126083,
        0.17376932501792908
      ],
      "dimension_delta": [
        0.0,
        9.678304195404053e-06,
        -1.6838312149047852e-06
      ],
      "notes": [
        "Unsubdivide prepass changed triangles from 32269 to 31691."
      ],
      "voxel_trials": null,
      "render": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h09_unsubdivide.png",
        "bytes": 210079,
        "sha256": "f376c1808c2a58b682ecb37d5bd3a07858308fdec57161ff2975857512bbc07b"
      },
      "fbx": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h09_unsubdivide.fbx",
        "bytes": 944108,
        "sha256": "9775bd38e68bb978dd304725fdf82208ecc61f8690ac78f1fc7f30be7a7a9b48"
      },
      "glb": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h09_unsubdivide.glb",
        "bytes": 624104,
        "sha256": "a0bbb65d9b6aa0e8284488e24e4eeee0ce87c4c983f98174bcda2556cdd35678"
      }
    },
    {
      "id": "h10_symmetry_x",
      "title": "X-symmetry-aware collapse",
      "status": "executed",
      "source_counts": {
        "vertices": 88467,
        "polygons": 32269,
        "triangles": 32269,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "result_counts": {
        "vertices": 62655,
        "polygons": 6453,
        "triangles": 6453,
        "materials": 1,
        "uv_layers": 1,
        "sharp_edges": 0
      },
      "requested_target_triangles": 6453,
      "achieved_reduction_percent": 80.00247915956491,
      "dimensions": [
        0.16659390926361084,
        0.09792985767126083,
        0.17376932501792908
      ],
      "dimension_delta": [
        0.0,
        9.678304195404053e-06,
        -1.6838312149047852e-06
      ],
      "notes": [],
      "voxel_trials": null,
      "render": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h10_symmetry_x.png",
        "bytes": 207856,
        "sha256": "5a42f6dc82d306ecf9394862d208963510bbcf6eaba69b00fb76b735499549ca"
      },
      "fbx": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h10_symmetry_x.fbx",
        "bytes": 944956,
        "sha256": "6a5448b8d935038ea1e09584e10126c22459d2df6908365f00e22c7ad6832fad"
      },
      "glb": {
        "path": "/Users/forgebot/tmp/pedal-tool-hypothesis-study/hypotheses/h10_symmetry_x.glb",
        "bytes": 613508,
        "sha256": "77b62b84b93dcbdcd4ec29646b70c01f3d6a1492d5020ce1869636f82c92164b"
      }
    }
  ]
}