{
  "status": "completed",
  "applicable_count": 1,
  "completed_count": 2,
  "failed_count": 0,
  "schema_version": 10,
  "config_hash": "98833fa1843c165d",
  "data": {
    "per_fp": {
      "fp_l01_mine_tunnel": {
        "fp_id": "fp_l01_mine_tunnel",
        "shot_aware_bg_render_plan_status": "ok",
        "graph": {
          "nodes": [
            {
              "bg_id": "L01B03",
              "node_index": 0,
              "mode": "fp_seeded_anchor",
              "is_dwelling_identity_anchor": true,
              "rationale": "L01B03 is the sole clean anchor candidate and supports S1_Shot8 with a unit-4 camera directed toward unit 2 and base marker 8. A normal lens preserves a neutral medium framing while establishing fixed marker positions 5, 6, 8, 9, 10, and 11 without inheriting any state overlays.",
              "reference_decision": {
                "selected_refs": [],
                "rejected_refs": [],
                "same_physical_space_dedup_decision": "not_applicable_no_reference",
                "why_single_ref_or_two_refs": "No earlier same-fp node exists; this node seeds the dwelling identity directly from the floor plan.",
                "physical_space_id_per_ref": [],
                "same_physical_space_low_delta_candidate": false,
                "low_delta_reuse_target_bg_id": "",
                "low_delta_rationale": ""
              },
              "camera_decision": {
                "camera_unit": 4,
                "camera_cell": [
                  4,
                  6
                ],
                "look_at_unit": 2,
                "look_at_cell": [
                  4,
                  9
                ],
                "lens_enum": "normal",
                "fov_deg": 50,
                "framing_notes": "Use the unit-4 camera at [4,6] toward unit 2, centering the vicinity of base marker 8 at [4,9]. Neutral coverage supports the committed medium framing and the subject-to-marker-8 relation in S1_Shot8."
              },
              "render_guidance": {
                "visible_space_directive": "Show the unit-4 to unit-2 portion of the continuous structure, with base marker 8 at the look-at cell and fixed markers 6, 9, and 10 maintaining their floor-plan relationships; opening marker 7 and units outside this eastward view are not required to be visible.",
                "camera_framing_directive": "Frame from camera unit 4 at [4,6] toward unit 2 and look-at cell [4,9] with a normal 50-degree lens, giving neutral medium coverage around base marker 8 and the committed reaching path.",
                "subject_position_directive": "For S1_Shot8, place the committed upper-body subject left of center at a front-side three-quarter angle, with the extended hand fully visible between the face and base marker 8; the gaze follows the marker toward its off-screen continuation rather than the lens.",
                "state_cue_directive": "Because clean_background_expected is true and no transient markers are listed, no committed state cue beyond \"clean residential space\" applies; refrain from inventing additional state cues.",
                "negative_continuity_directive": "Exclude overlay markers 12, 13, 14, 15, 16, 17, 18, 19, 20, and 21. Do not invent additional subjects, state overlays, fixtures, or visibility for units and openings outside the chosen unit-4 to unit-2 view."
              },
              "render_action": "render_new_plate",
              "reuse_target_bg_id": "",
              "anchor_shot_id": "",
              "projection_card_id": "",
              "projection_card_hash": "",
              "projection_card_state": "not_applicable",
              "projection_card_fallback_reason": "no_projection_card_target",
              "projection_card_source_bg_id": "L01B03",
              "projection_card_inherited": false,
              "plate_group_id": "L01B03",
              "plate_anchor_bg_id": "L01B03",
              "needs_new_plate": true,
              "plate_anchor_shot_id": "",
              "plate_shareability": "exclusive",
              "render_order_index": 0,
              "ref_tree_parents": [],
              "ref_role_per_parent": {},
              "max_refs": 2,
              "render_action_source": "geometry_route",
              "partition_fallback_reason": "partition_plan_missing"
            },
            {
              "bg_id": "L01B02",
              "node_index": 1,
              "mode": "same_physical_space_view",
              "is_dwelling_identity_anchor": false,
              "rationale": "L01B02 uses the same physical-space identity as L01B03 but requires a westward, wide, steeply upward staging for S1_Shot9 and S2_Shot12. L01B03 therefore supplies fixed marker placement while the unit-1 camera toward unit 3 provides a genuinely different structural slice centered near opening marker 7; a new plate is required because marker 12 represents structural damage and the geometry differs from the anchor.",
              "reference_decision": {
                "selected_refs": [
                  {
                    "ref_bg_id": "L01B03",
                    "physical_space_id": "fp_l01_mine_tunnel_space_01",
                    "space_description": "Continuous physical space containing units 1, 2, 3, and 4 and base markers 5 through 11."
                  }
                ],
                "rejected_refs": [],
                "same_physical_space_dedup_decision": "single_reference_same_physical_space",
                "why_single_ref_or_two_refs": "One clean earlier reference is sufficient because all target units belong to one continuous physical space; no consuming shot requires two distinct co-visible spaces.",
                "physical_space_id_per_ref": [
                  "fp_l01_mine_tunnel_space_01"
                ],
                "same_physical_space_low_delta_candidate": false,
                "low_delta_reuse_target_bg_id": "",
                "low_delta_rationale": ""
              },
              "camera_decision": {
                "camera_unit": 1,
                "camera_cell": [
                  4,
                  3
                ],
                "look_at_unit": 3,
                "look_at_cell": [
                  4,
                  1
                ],
                "lens_enum": "wide",
                "fov_deg": 90,
                "framing_notes": "Use the unit-1 camera at [4,3] toward unit 3 and opening marker 7 at [4,1]. Broad coverage accommodates the wide, steep upward compositions and preserves lower-to-upper movement axes."
              },
              "render_guidance": {
                "visible_space_directive": "Show the unit-1 to unit-3 structural span and opening marker 7, retaining the fixed positions of markers 5, 6, 7, 10, and 11 established by L01B03 where they fall within the westward view. Treat units 2 and 4 only as geometry supersets, not required visible spaces.",
                "camera_framing_directive": "Frame from camera unit 1 at [4,3] toward unit 3 and look-at cell [4,1] with a wide 90-degree lens. Use broad low-position coverage with the committed steep upward orientation, retaining both the lower structural anchor and upper origin area needed by S1_Shot9 and S2_Shot12.",
                "subject_position_directive": "The surfaced staging commits no visible subject for this BG beyond references to a former or off-camera position. Keep the BG free of invented subjects and reserve the central and upper depth layers for the staged background movement.",
                "state_cue_directive": "Carry transient markers 12, 13, 14, and 15 as the committed state set. For S1_Shot9, preserve the central downward movement toward the lower structural anchor; for S2_Shot12, preserve marker-12 damage at the upper origin and marker-13 activity descending through layered depth. Do not add unlisted state cues.",
                "negative_continuity_directive": "Keep fixed markers 5, 6, 7, 8, 9, 10, and 11 in the positions established by reference L01B03 wherever visible. Exclude overlay markers 16, 17, 18, 19, 20, and 21, and do not redraw units or fixtures outside the unit-1 to unit-3 wide view as if they were necessarily visible."
              },
              "render_action": "render_new_plate",
              "reuse_target_bg_id": "",
              "anchor_shot_id": "",
              "projection_card_id": "",
              "projection_card_hash": "",
              "projection_card_state": "not_applicable",
              "projection_card_fallback_reason": "no_projection_card_target",
              "projection_card_source_bg_id": "L01B02",
              "projection_card_inherited": false,
              "plate_group_id": "L01B02",
              "plate_anchor_bg_id": "L01B02",
              "needs_new_plate": true,
              "plate_anchor_shot_id": "",
              "plate_shareability": "exclusive",
              "render_order_index": 1,
              "ref_tree_parents": [
                "L01B03"
              ],
              "ref_role_per_parent": {
                "L01B03": "space_continuity"
              },
              "max_refs": 2,
              "render_action_source": "geometry_route",
              "partition_fallback_reason": "partition_plan_missing"
            },
            {
              "bg_id": "L01B01",
              "node_index": 2,
              "mode": "same_physical_space_view",
              "is_dwelling_identity_anchor": false,
              "rationale": "L01B01 remains in the physical space established by L01B03 and uses the same unit-4 to unit-2 geometry to support the marker-8-adjacent staging in S2_Shot21 and the related close views. It nevertheless requires a new plate because committed markers 12, 18, 19, and 20 include structural damage or persistent visible alteration, while the remaining surfaced shots require multiple state-specific close and insert cues.",
              "reference_decision": {
                "selected_refs": [
                  {
                    "ref_bg_id": "L01B03",
                    "physical_space_id": "fp_l01_mine_tunnel_space_01",
                    "space_description": "Continuous physical space containing units 1, 2, 3, and 4 and base markers 5 through 11."
                  }
                ],
                "rejected_refs": [
                  {
                    "ref_bg_id": "L01B02",
                    "reason": "It depicts the same physical-space identity rather than a distinct co-visible space and carries overlay markers 13 and 15, which L01B01 explicitly ignores; the clean anchor is the safer single layout reference."
                  }
                ],
                "same_physical_space_dedup_decision": "single_clean_reference_preferred_for_same_space",
                "why_single_ref_or_two_refs": "A single clean reference fixes the shared layout. No consuming shot establishes two distinct physical spaces as co-visible, so a second same-space reference would be redundant.",
                "physical_space_id_per_ref": [
                  "fp_l01_mine_tunnel_space_01"
                ],
                "same_physical_space_low_delta_candidate": false,
                "low_delta_reuse_target_bg_id": "",
                "low_delta_rationale": ""
              },
              "camera_decision": {
                "camera_unit": 4,
                "camera_cell": [
                  4,
                  6
                ],
                "look_at_unit": 2,
                "look_at_cell": [
                  4,
                  9
                ],
                "lens_enum": "normal",
                "fov_deg": 50,
                "framing_notes": "Use the unit-4 camera at [4,6] toward unit 2 and base marker 8 at [4,9]. Neutral coverage establishes the representative marker-8-adjacent view while allowing the committed close and insert framing within that geometry."
              },
              "render_guidance": {
                "visible_space_directive": "Show the unit-4 to unit-2 section with base marker 8 at the look-at cell and preserve the established positions of fixed markers 6, 8, 9, 10, and 11 from L01B03 wherever visible. Other target units are part of the same continuous physical space but are not required to appear in this eastward representative view.",
                "camera_framing_directive": "Frame from camera unit 4 at [4,6] toward unit 2 and look-at cell [4,9] with a normal 50-degree lens. Use neutral coverage for the representative plate, preserving sufficient foreground, middle-distance, and wall-side context for the close and insert compositions committed by S2_Shot21, S2_Shot22, S3_Shot26, S3_Shot30, and S3_Shot31.",
                "subject_position_directive": "Only S3_Shot26 commits a visible subject: place the rigid three-quarter profile in the midground at middle-left, with marker 17 in the adjacent foreground near middle-center and the gaze directed off-screen. The other surfaced shots commit no visible subject; keep those background framings free of invented subjects.",
                "state_cue_directive": "Carry committed transient and state markers 12, 14, 16, 17, 18, 19, 20, and 21. Preserve marker 16 through foreground and middle-distance depth for S2_Shot21, marker 21 in the committed center or lower-center insert regions for S2_Shot22 and S3_Shot31, marker 17 near middle-center for S3_Shot26, and markers 19 and 20 along the diagonal wall-side change in S3_Shot30. Add no unlisted state cues.",
                "negative_continuity_directive": "Keep fixed markers 5, 6, 7, 8, 9, 10, and 11 in the same positions established by L01B03 wherever the chosen view exposes them. Exclude overlay markers 13 and 15, do not inherit those cues from L01B02, and do not invent additional subjects, fixtures, state overlays, or visibility beyond the unit-4 to unit-2 view."
              },
              "render_action": "render_new_plate",
              "reuse_target_bg_id": "",
              "anchor_shot_id": "",
              "projection_card_id": "",
              "projection_card_hash": "",
              "projection_card_state": "not_applicable",
              "projection_card_fallback_reason": "no_projection_card_target",
              "projection_card_source_bg_id": "L01B01",
              "projection_card_inherited": false,
              "plate_group_id": "L01B01",
              "plate_anchor_bg_id": "L01B01",
              "needs_new_plate": true,
              "plate_anchor_shot_id": "",
              "plate_shareability": "exclusive",
              "render_order_index": 2,
              "ref_tree_parents": [
                "L01B03"
              ],
              "ref_role_per_parent": {
                "L01B03": "space_continuity"
              },
              "max_refs": 2,
              "render_action_source": "geometry_route",
              "partition_fallback_reason": "partition_plan_missing"
            }
          ]
        },
        "validators": {
          "required_shape_ok": true,
          "graph_completeness_ok": true,
          "node_index_order_ok": true,
          "dag_ok": true,
          "max_refs_per_bg_ok": true,
          "two_refs_distinct_spaces_ok": true,
          "same_fp_only_ok": true,
          "anchor_exactly_one_ok": true,
          "anchor_in_clean_candidate_set_ok": true,
          "camera_in_candidates_ok": true,
          "rationale_and_mode_ok": true,
          "synthetic_readback_production_clear": true,
          "all_validators_passed": true,
          "diagnostics": [],
          "render_action_routing_ok": true,
          "reuse_plate_count": 0,
          "card_withhold_count": 0,
          "projection_card_state_counts": {
            "not_applicable": 3
          },
          "plate_group_count": 3,
          "plate_shareability_counts": {
            "exclusive": 3
          },
          "dag_node_count": 3,
          "space_partition_applied": false,
          "space_partition_fallback_reason": "partition_plan_missing"
        },
        "real_api_call_counts": {
          "image": 0,
          "llm": 1,
          "vlm": 0
        },
        "readback_status": "ok",
        "production_clear": true,
        "diagnostics": []
      },
      "fp_l02_reclaimed_tunnel": {
        "fp_id": "fp_l02_reclaimed_tunnel",
        "shot_aware_bg_render_plan_status": "ok",
        "graph": {
          "nodes": [
            {
              "bg_id": "L02B01",
              "node_index": 0,
              "mode": "fp_seeded_anchor",
              "is_dwelling_identity_anchor": true,
              "rationale": "L02B01 is the sole supplied clean-anchor candidate and the only render-ready BG, so it establishes dwelling identity directly from the floor plan without a prior reference. A wide view from unit 1 toward unit 4 supports the broad environmental reveal in S4_Shot36 while retaining units 3 and 4 and openings 5 and 6 as the relevant westward background context for the closer consuming shots.",
              "reference_decision": {
                "selected_refs": [],
                "rejected_refs": [],
                "same_physical_space_dedup_decision": "not_applicable_anchor",
                "why_single_ref_or_two_refs": "No same-fp reference is available, and the identity anchor must be rendered directly from the floor plan.",
                "physical_space_id_per_ref": [],
                "same_physical_space_low_delta_candidate": false,
                "low_delta_reuse_target_bg_id": "",
                "low_delta_rationale": ""
              },
              "camera_decision": {
                "camera_unit": 1,
                "camera_cell": [
                  5,
                  5
                ],
                "look_at_unit": 4,
                "look_at_cell": [
                  4,
                  1
                ],
                "lens_enum": "wide",
                "fov_deg": 90,
                "framing_notes": "Use the listed unit-1 camera cell and aim westward toward unit 4 through look-at cell [4,1]. The 90-degree wide framing prioritizes broad coverage of the unit-1-to-unit-4 axis for the environmental shot while allowing tighter consuming shots to crop within the established plate."
              },
              "render_guidance": {
                "visible_space_directive": "From camera unit 1, show the westward physical-space axis toward units 3 and 4 with openings 5 and 6 where exposed by the 90-degree view cone. Preserve base markers 7 and 8 in their committed fixed positions wherever they fall inside this view; do not introduce unit 2 as visible westward context.",
                "camera_framing_directive": "Place the camera at unit 1 cell [5,5] and direct it toward unit 4 using look-at cell [4,1]. Use wide 90-degree coverage to establish the broad damaged section required by S4_Shot36, with enough stable surrounding background for the close framing of S4_Shot32 and the central insert framing of S4_Shot33.",
                "subject_position_directive": "For S4_Shot32, reserve the foreground middle-center for the committed close subject cue viewed from a slightly elevated front three-quarter side. For S4_Shot33, reserve the foreground middle-center for the committed square-on display insert. S4_Shot36 commits no subject, so keep its wide environmental plate free of invented subjects.",
                "state_cue_directive": "Carry overlay markers 10, 11, 12, and 13 as the committed state cues, integrated with numbered elements 1, 3, 4, 5, 6, 7, and 8. Their presentation must support the diagonal environmental reveal committed for S4_Shot36 without adding unlisted state cues.",
                "negative_continuity_directive": "Do not invent additional subjects, fixtures, openings, state overlays, or scenario-specific elements. Keep unit 2 outside the committed westward view, retain openings 5 and 6 and fixed markers 7 and 8 in their floor-plan positions when visible, and do not replace or relocate overlay markers 10, 11, 12, or 13."
              },
              "render_action": "render_new_plate",
              "reuse_target_bg_id": "",
              "anchor_shot_id": "",
              "projection_card_id": "",
              "projection_card_hash": "",
              "projection_card_state": "not_applicable",
              "projection_card_fallback_reason": "no_projection_card_target",
              "projection_card_source_bg_id": "L02B01",
              "projection_card_inherited": false,
              "plate_group_id": "L02B01",
              "plate_anchor_bg_id": "L02B01",
              "needs_new_plate": true,
              "plate_anchor_shot_id": "",
              "plate_shareability": "exclusive",
              "render_order_index": 0,
              "ref_tree_parents": [],
              "ref_role_per_parent": {},
              "max_refs": 2,
              "render_action_source": "geometry_route",
              "partition_fallback_reason": "partition_plan_missing"
            }
          ]
        },
        "validators": {
          "required_shape_ok": true,
          "graph_completeness_ok": true,
          "node_index_order_ok": true,
          "dag_ok": true,
          "max_refs_per_bg_ok": true,
          "two_refs_distinct_spaces_ok": true,
          "same_fp_only_ok": true,
          "anchor_exactly_one_ok": true,
          "anchor_in_clean_candidate_set_ok": true,
          "camera_in_candidates_ok": true,
          "rationale_and_mode_ok": true,
          "synthetic_readback_production_clear": true,
          "all_validators_passed": true,
          "diagnostics": [],
          "render_action_routing_ok": true,
          "reuse_plate_count": 0,
          "card_withhold_count": 0,
          "projection_card_state_counts": {
            "not_applicable": 1
          },
          "plate_group_count": 1,
          "plate_shareability_counts": {
            "exclusive": 1
          },
          "dag_node_count": 1,
          "space_partition_applied": false,
          "space_partition_fallback_reason": "partition_plan_missing"
        },
        "real_api_call_counts": {
          "image": 0,
          "llm": 1,
          "vlm": 0
        },
        "readback_status": "ok",
        "production_clear": true,
        "diagnostics": []
      }
    },
    "real_api_call_counts": {
      "image": 0,
      "llm": 2,
      "vlm": 0
    },
    "llm_provider_attempts_per_fp": {
      "fp_l01_mine_tunnel": 1,
      "fp_l02_reclaimed_tunnel": 1
    },
    "shot_staging_index_diagnostics": {
      "shot_staging_index_explicit_id": 0,
      "shot_staging_index_synthesized_id": 24,
      "shot_staging_index_dropped_no_id": [],
      "shot_staging_index_dropped_bad_index_type": [],
      "shot_staging_index_collisions": []
    }
  },
  "step_id": "shot_aware_bg_render_plan",
  "run_id": "c002bedf-8dc3-48a8-8346-6717dbf5c256",
  "resolved_model": "gpt",
  "updated_at": "2026-09-04T17:35:19.331466+00:00",
  "project_config_snapshot": {}
}