{
  "status": "completed",
  "applicable_count": 1,
  "completed_count": 1,
  "failed_count": 0,
  "schema_version": 2,
  "config_hash": "ce33f24ce9c44fae",
  "data": {
    "per_fp": {
      "fp_repair_shop_main": {
        "fp_id": "fp_repair_shop_main",
        "readback_status": "ok",
        "readback": {
          "status": "ok",
          "fp_id": "fp_repair_shop_main",
          "grid_size": [
            10,
            10
          ],
          "observed_markers": [
            {
              "number": 1,
              "row": 4,
              "col": 1,
              "kind": "base_structural_unit"
            },
            {
              "number": 3,
              "row": 1,
              "col": 2,
              "kind": "base_structural_unit"
            },
            {
              "number": 4,
              "row": 9,
              "col": 2,
              "kind": "base_structural_unit"
            },
            {
              "number": 5,
              "row": 9,
              "col": 5,
              "kind": "base_opening"
            },
            {
              "number": 6,
              "row": 4,
              "col": 9,
              "kind": "base_persistent_furniture"
            },
            {
              "number": 7,
              "row": 5,
              "col": 4,
              "kind": "base_persistent_fixture"
            }
          ],
          "missing_markers": [
            2
          ],
          "extra_markers": [],
          "confidence": 0.99,
          "diagnostics": [
            "Marker 2 is not visibly numbered in the rendering."
          ],
          "cell_collision_diagnostics": [],
          "provider_name": "litellm_gpt55_vision_v1"
        },
        "geometry": {
          "fp_id": "fp_repair_shop_main",
          "grid_size": [
            10,
            10
          ],
          "readback_status": "ok",
          "marker_cells": {
            "1": [
              4,
              1
            ],
            "3": [
              1,
              2
            ],
            "4": [
              9,
              2
            ],
            "5": [
              9,
              5
            ],
            "6": [
              4,
              9
            ],
            "7": [
              5,
              4
            ]
          },
          "unit_marker_cells": {
            "1": [
              4,
              1
            ],
            "3": [
              1,
              2
            ],
            "4": [
              9,
              2
            ]
          },
          "opening_marker_cells": {
            "5": [
              9,
              5
            ]
          },
          "fixture_marker_cells": {
            "7": [
              5,
              4
            ]
          },
          "furniture_marker_cells": {
            "6": [
              4,
              9
            ]
          },
          "camera_cell_candidates_per_unit": {
            "1": [
              [
                4,
                1
              ]
            ],
            "3": [
              [
                1,
                2
              ]
            ],
            "4": [
              [
                9,
                2
              ]
            ]
          },
          "look_at_cell_candidates_per_unit": {
            "1": [
              [
                4,
                9
              ],
              [
                5,
                4
              ],
              [
                9,
                5
              ]
            ],
            "3": [
              [
                4,
                9
              ],
              [
                5,
                4
              ],
              [
                9,
                5
              ]
            ],
            "4": [
              [
                4,
                9
              ],
              [
                5,
                4
              ],
              [
                9,
                5
              ]
            ]
          },
          "direction_vector_records": [
            {
              "camera_unit": 1,
              "camera_cell": [
                4,
                1
              ],
              "look_at_unit": 3,
              "look_at_cell": [
                1,
                2
              ],
              "dx": 1,
              "dy": -3,
              "length_l1": 4
            },
            {
              "camera_unit": 1,
              "camera_cell": [
                4,
                1
              ],
              "look_at_unit": 4,
              "look_at_cell": [
                9,
                2
              ],
              "dx": 1,
              "dy": 5,
              "length_l1": 6
            },
            {
              "camera_unit": 3,
              "camera_cell": [
                1,
                2
              ],
              "look_at_unit": 1,
              "look_at_cell": [
                4,
                1
              ],
              "dx": -1,
              "dy": 3,
              "length_l1": 4
            },
            {
              "camera_unit": 3,
              "camera_cell": [
                1,
                2
              ],
              "look_at_unit": 4,
              "look_at_cell": [
                9,
                2
              ],
              "dx": 0,
              "dy": 8,
              "length_l1": 8
            },
            {
              "camera_unit": 4,
              "camera_cell": [
                9,
                2
              ],
              "look_at_unit": 1,
              "look_at_cell": [
                4,
                1
              ],
              "dx": -1,
              "dy": -5,
              "length_l1": 6
            },
            {
              "camera_unit": 4,
              "camera_cell": [
                9,
                2
              ],
              "look_at_unit": 3,
              "look_at_cell": [
                1,
                2
              ],
              "dx": 0,
              "dy": -8,
              "length_l1": 8
            }
          ],
          "view_cone_records": [
            {
              "camera_unit": 1,
              "camera_cell": [
                4,
                1
              ],
              "look_at_unit": 3,
              "look_at_cell": [
                1,
                2
              ],
              "dx": 1,
              "dy": -3,
              "lens_enum": "wide",
              "fov_deg": 90
            },
            {
              "camera_unit": 1,
              "camera_cell": [
                4,
                1
              ],
              "look_at_unit": 3,
              "look_at_cell": [
                1,
                2
              ],
              "dx": 1,
              "dy": -3,
              "lens_enum": "normal",
              "fov_deg": 50
            },
            {
              "camera_unit": 1,
              "camera_cell": [
                4,
                1
              ],
              "look_at_unit": 3,
              "look_at_cell": [
                1,
                2
              ],
              "dx": 1,
              "dy": -3,
              "lens_enum": "telephoto",
              "fov_deg": 25
            },
            {
              "camera_unit": 1,
              "camera_cell": [
                4,
                1
              ],
              "look_at_unit": 4,
              "look_at_cell": [
                9,
                2
              ],
              "dx": 1,
              "dy": 5,
              "lens_enum": "wide",
              "fov_deg": 90
            },
            {
              "camera_unit": 1,
              "camera_cell": [
                4,
                1
              ],
              "look_at_unit": 4,
              "look_at_cell": [
                9,
                2
              ],
              "dx": 1,
              "dy": 5,
              "lens_enum": "normal",
              "fov_deg": 50
            },
            {
              "camera_unit": 1,
              "camera_cell": [
                4,
                1
              ],
              "look_at_unit": 4,
              "look_at_cell": [
                9,
                2
              ],
              "dx": 1,
              "dy": 5,
              "lens_enum": "telephoto",
              "fov_deg": 25
            },
            {
              "camera_unit": 3,
              "camera_cell": [
                1,
                2
              ],
              "look_at_unit": 1,
              "look_at_cell": [
                4,
                1
              ],
              "dx": -1,
              "dy": 3,
              "lens_enum": "wide",
              "fov_deg": 90
            },
            {
              "camera_unit": 3,
              "camera_cell": [
                1,
                2
              ],
              "look_at_unit": 1,
              "look_at_cell": [
                4,
                1
              ],
              "dx": -1,
              "dy": 3,
              "lens_enum": "normal",
              "fov_deg": 50
            },
            {
              "camera_unit": 3,
              "camera_cell": [
                1,
                2
              ],
              "look_at_unit": 1,
              "look_at_cell": [
                4,
                1
              ],
              "dx": -1,
              "dy": 3,
              "lens_enum": "telephoto",
              "fov_deg": 25
            },
            {
              "camera_unit": 3,
              "camera_cell": [
                1,
                2
              ],
              "look_at_unit": 4,
              "look_at_cell": [
                9,
                2
              ],
              "dx": 0,
              "dy": 8,
              "lens_enum": "wide",
              "fov_deg": 90
            },
            {
              "camera_unit": 3,
              "camera_cell": [
                1,
                2
              ],
              "look_at_unit": 4,
              "look_at_cell": [
                9,
                2
              ],
              "dx": 0,
              "dy": 8,
              "lens_enum": "normal",
              "fov_deg": 50
            },
            {
              "camera_unit": 3,
              "camera_cell": [
                1,
                2
              ],
              "look_at_unit": 4,
              "look_at_cell": [
                9,
                2
              ],
              "dx": 0,
              "dy": 8,
              "lens_enum": "telephoto",
              "fov_deg": 25
            },
            {
              "camera_unit": 4,
              "camera_cell": [
                9,
                2
              ],
              "look_at_unit": 1,
              "look_at_cell": [
                4,
                1
              ],
              "dx": -1,
              "dy": -5,
              "lens_enum": "wide",
              "fov_deg": 90
            },
            {
              "camera_unit": 4,
              "camera_cell": [
                9,
                2
              ],
              "look_at_unit": 1,
              "look_at_cell": [
                4,
                1
              ],
              "dx": -1,
              "dy": -5,
              "lens_enum": "normal",
              "fov_deg": 50
            },
            {
              "camera_unit": 4,
              "camera_cell": [
                9,
                2
              ],
              "look_at_unit": 1,
              "look_at_cell": [
                4,
                1
              ],
              "dx": -1,
              "dy": -5,
              "lens_enum": "telephoto",
              "fov_deg": 25
            },
            {
              "camera_unit": 4,
              "camera_cell": [
                9,
                2
              ],
              "look_at_unit": 3,
              "look_at_cell": [
                1,
                2
              ],
              "dx": 0,
              "dy": -8,
              "lens_enum": "wide",
              "fov_deg": 90
            },
            {
              "camera_unit": 4,
              "camera_cell": [
                9,
                2
              ],
              "look_at_unit": 3,
              "look_at_cell": [
                1,
                2
              ],
              "dx": 0,
              "dy": -8,
              "lens_enum": "normal",
              "fov_deg": 50
            },
            {
              "camera_unit": 4,
              "camera_cell": [
                9,
                2
              ],
              "look_at_unit": 3,
              "look_at_cell": [
                1,
                2
              ],
              "dx": 0,
              "dy": -8,
              "lens_enum": "telephoto",
              "fov_deg": 25
            }
          ],
          "visible_units_candidates": {
            "1": [
              3,
              4
            ],
            "3": [
              1,
              4
            ],
            "4": [
              1,
              3
            ]
          },
          "visible_openings_candidates": {
            "1": [
              5
            ],
            "3": [
              5
            ],
            "4": [
              5
            ]
          },
          "wall_door_invalidation_diagnostics": [
            "readback does not encode wall segment polylines; wall/door line-of-sight invalidation cannot be performed at this layer.",
            "opening-to-unit adjacency cannot be derived from cell positions alone; consumer must treat visible_units_candidates and visible_openings_candidates as supersets, not committed sets."
          ],
          "cell_collision_diagnostics": [],
          "diagnostics": []
        },
        "review_html_relative_path": "floor_plan_geometry_readback/review_html/fp_repair_shop_main.html",
        "real_vlm_call": true,
        "real_vlm_call_count": 1,
        "input_hash": "fd3369d63b95d514"
      }
    },
    "real_vlm_call_count": 1,
    "image_api_call_count": 0,
    "llm_call_count": 0
  },
  "step_id": "floor_plan_geometry_readback",
  "run_id": "5a333573-1597-4079-b253-55834d2ec4da",
  "resolved_model": "gpt",
  "updated_at": "2026-08-24T13:27:51.520085+00:00",
  "project_config_snapshot": {}
}