{
  "schema_version": "hardware-structure/v2",
  "unit": "mm",
  "product_id": "creative-009",
  "title": "009 太阳能微型气象站结构概念评审",
  "revision": "engineering-fit-r2-20261016",
  "updated_at": "2026-10-16",
  "coordinate_system": "X=产品宽度，Y=上下，Z=前后；原点位于产品主体外包络中心",
  "case_metadata": {
    "case_id": 9,
    "domain": "环境与农业",
    "name": "太阳能微型气象站",
    "user_value": "在无电源地点长期记录温湿度、气压、PM、紫外线和降雨。",
    "discovery_platform": "Reddit",
    "source_grade": "B",
    "source_url": "https://www.reddit.com/r/arduino/comments/1hmby7c/i_need_some_project_ideas/",
    "mvp_path": "ESP32 深睡；每 5 分钟采样并写 SD；每天通过 Wi-Fi/LoRa 同步；显示电池能量预算。",
    "components": "ESP32、BME680、PMS5003、UV、雨量筒、太阳能充电、LiFePO4",
    "software_stack": "ESP-IDF、InfluxDB/Grafana、LoRa",
    "github_project": "ESP32 WeatherStation",
    "github_url": "https://github.com/SeBassTian23/ESP32-WeatherStation",
    "match_level": "直接",
    "bom_estimate_cny": 980,
    "difficulty": 4,
    "novelty": 4,
    "demand": 4,
    "reuse": 5,
    "risk": 3,
    "differentiation": "强化能量预算、模块化传感器仓和本地校准。",
    "safety_boundary": "户外电池温度范围、防雷与百叶箱结构要验证。",
    "recommendation_score": 69,
    "structural_archetype": "weather_mast",
    "prototype_family": "environment-monitor",
    "prototype_label_zh": "环境监测与采样风道",
    "prototype_label_en": "Environmental monitor and sampling path",
    "prototype_version": "creative-host-assembly/v1",
    "migration_role": "migration_calibration_seed",
    "assembly_topology": [
      "环境宿主",
      "进排气或探测路径",
      "传感舱",
      "主控与供电"
    ],
    "dimension_authority": "design_proposed_and_pending_verification",
    "structure_evidence": [
      {
        "id": "workbook-source-009",
        "url": "https://www.reddit.com/r/arduino/comments/1hmby7c/i_need_some_project_ideas/",
        "kind": "discovery_source",
        "claim": "工作簿记录的创意发现来源；只证明市场灵感，不证明机械尺寸。",
        "application": "idea_provenance_only"
      },
      {
        "id": "netatmo",
        "url": "https://content.netatmo.com/assets/438e1520-c25b-4850-bcef-4910b45581ed.pdf",
        "kind": "manufacturer_datasheet",
        "claim": "室内与室外圆柱模块分别约 45 × 45 × 155 mm 和 45 × 45 × 105 mm。",
        "application": "analogous_structure_reference"
      }
    ],
    "evidence_maturity": "analogous_reference",
    "recognition_parts": [
      "百叶辐射罩",
      "风速风向杯",
      "雨量斗",
      "太阳能板",
      "桅杆抱箍"
    ],
    "geometry_authority": "design_proposed_functional_constraints",
    "geometry_generation_method": "codex_agent_closed_loop",
    "geometry_iteration": 6,
    "geometry_fingerprint": "sha256:be24c32da9215f88ab22b51e61945255d2d8b3a7e49bd69b2d607dcc73a159a7",
    "structure_quality_revision": "structure-visual-r5",
    "structure_quality_remediation": {
      "revision": "structure-visual-r5",
      "date": "2026-09-19",
      "trigger": "independent_blind_concept_review",
      "prior_visual_status": "rework_required",
      "reason": "原渲染退化为圆柱和圆环，太阳能板、百叶罩、风杯和雨量斗无法形成气象站轮廓。",
      "before_metrics": {
        "parts": 10
      },
      "after_metrics": {
        "parts": 24
      },
      "truth_boundary": "本轮只修复概念辨识度；机械尺寸、装配公差、制造性和实物验证仍待工程师审核。"
    },
    "engineering_geometry_authority": "design_proposed_from_functional_constraints",
    "previous_geometry_authority": "concept_photo_primary"
  },
  "envelope": {
    "external": {
      "width": 620,
      "depth": 360,
      "height": 720,
      "center": [
        0,
        0,
        0
      ]
    },
    "internal": {
      "width": 614,
      "depth": 348,
      "height": 708,
      "center": [
        0,
        0,
        0
      ]
    },
    "wall_thickness": 3.0
  },
  "openings": [],
  "prototype_instance": {
    "schema_version": "creative-host-assembly/v1",
    "prototype_family": "environment-monitor",
    "prototype_label_zh": "环境监测与采样风道",
    "prototype_label_en": "Environmental monitor and sampling path",
    "host_strategy": "contextual",
    "shell_strategy": "vented_monitor",
    "assembly_topology": [
      "环境宿主",
      "进排气或探测路径",
      "传感舱",
      "主控与供电"
    ],
    "migration_role": "migration_calibration_seed"
  },
  "assemblies": [
    {
      "id": "blind-review-host",
      "label": "使用宿主与尺度基准",
      "part_ids": [
        "host-surface"
      ]
    },
    {
      "id": "blind-review-product",
      "label": "产品主体与可识别功能件",
      "part_ids": [
        "codex-body",
        "codex-recognition-01",
        "louver-02",
        "louver-03",
        "louver-04",
        "louver-05",
        "codex-recognition-02",
        "anemometer-arm-x",
        "anemometer-arm-z",
        "wind-cup-1",
        "wind-cup-2",
        "wind-cup-3",
        "wind-cup-4",
        "codex-recognition-03",
        "rain-arm",
        "codex-recognition-04",
        "solar-grid-0",
        "solar-grid-1",
        "solar-grid-2",
        "solar-grid-3",
        "solar-grid-4",
        "codex-recognition-05"
      ]
    },
    {
      "id": "blind-review-electronics",
      "label": "内部电子建议布局",
      "part_ids": [
        "codex-main-pcba"
      ]
    },
    {
      "id": "engineering-fit-components",
      "label": "2026-10-16 装配修订实体零件",
      "part_ids": [
        "radiation-top-cap",
        "weather-temperature-probe",
        "weather-control-box",
        "weather-control-cover-front",
        "weather-control-cover-rear",
        "weather-lifepo4-envelope",
        "weather-pm-hood",
        "weather-pm-envelope",
        "solar-mast-bracket"
      ]
    }
  ],
  "parts": [
    {
      "id": "host-surface",
      "label": "户外地面尺度基准",
      "group": "host",
      "type": "box",
      "dimensions": {
        "width": 900,
        "depth": 700,
        "height": 18
      },
      "position": [
        0,
        -360,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "pending_verification",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#758274",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#758274",
      "photo_derived": true,
      "photo_component_id": "host-context",
      "source_target_id": "host-context",
      "source_part_ids": [
        "host-surface"
      ],
      "photo_visible": true,
      "camera_fit": false
    },
    {
      "id": "codex-body",
      "label": "气象站立杆主体",
      "group": "shell",
      "type": "cylinder",
      "dimensions": {
        "diameter": 34,
        "length": 610
      },
      "position": [
        0,
        -35,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "铝合金桅杆概念",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#606d71",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.45
      },
      "color": "#606d71",
      "photo_derived": true,
      "photo_component_id": "product-silhouette",
      "source_target_id": "product-silhouette",
      "source_part_ids": [
        "codex-body"
      ],
      "photo_visible": true
    },
    {
      "id": "codex-recognition-01",
      "label": "百叶辐射罩（通风叶片总成）",
      "group": "shell",
      "type": "cylinder",
      "dimensions": {
        "diameter": 105,
        "length": 118
      },
      "position": [
        0,
        80,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#ecece6",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#ecece6",
      "recognition_role": true,
      "evidence_ids": [
        "workbook-source-009",
        "netatmo"
      ],
      "photo_derived": true,
      "photo_component_id": "recognition-01",
      "source_target_id": "recognition-01",
      "source_part_ids": [
        "codex-recognition-01"
      ],
      "photo_visible": true,
      "render_mode": "metadata_only"
    },
    {
      "id": "louver-02",
      "label": "辐射罩百叶片 2",
      "group": "bracket",
      "type": "ring",
      "dimensions": {
        "outer_diameter": 118,
        "inner_diameter": 42,
        "width": 7
      },
      "position": [
        0,
        45,
        0
      ],
      "rotation_deg": [
        90,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#f4f3ed",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#f4f3ed",
      "section_profile": "rectangular",
      "geometry_representation": "nominal_rectangular_annular_volume"
    },
    {
      "id": "louver-03",
      "label": "辐射罩百叶片 3",
      "group": "bracket",
      "type": "ring",
      "dimensions": {
        "outer_diameter": 118,
        "inner_diameter": 42,
        "width": 7
      },
      "position": [
        0,
        65,
        0
      ],
      "rotation_deg": [
        90,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#f4f3ed",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#f4f3ed",
      "section_profile": "rectangular",
      "geometry_representation": "nominal_rectangular_annular_volume"
    },
    {
      "id": "louver-04",
      "label": "辐射罩百叶片 4",
      "group": "bracket",
      "type": "ring",
      "dimensions": {
        "outer_diameter": 118,
        "inner_diameter": 42,
        "width": 7
      },
      "position": [
        0,
        85,
        0
      ],
      "rotation_deg": [
        90,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#f4f3ed",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#f4f3ed",
      "section_profile": "rectangular",
      "geometry_representation": "nominal_rectangular_annular_volume"
    },
    {
      "id": "louver-05",
      "label": "辐射罩百叶片 5",
      "group": "bracket",
      "type": "ring",
      "dimensions": {
        "outer_diameter": 118,
        "inner_diameter": 42,
        "width": 7
      },
      "position": [
        0,
        105,
        0
      ],
      "rotation_deg": [
        90,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#f4f3ed",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#f4f3ed",
      "section_profile": "rectangular",
      "geometry_representation": "nominal_rectangular_annular_volume"
    },
    {
      "id": "codex-recognition-02",
      "label": "风速风向杯",
      "group": "sensor",
      "type": "cylinder",
      "dimensions": {
        "diameter": 30,
        "length": 42
      },
      "position": [
        0,
        294,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#263237",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#263237",
      "recognition_role": true,
      "evidence_ids": [
        "workbook-source-009",
        "netatmo"
      ],
      "photo_derived": true,
      "photo_component_id": "recognition-02",
      "source_target_id": "recognition-02",
      "source_part_ids": [
        "codex-recognition-02"
      ],
      "photo_visible": true
    },
    {
      "id": "anemometer-arm-x",
      "label": "风杯水平臂",
      "group": "bracket",
      "type": "cylinder",
      "dimensions": {
        "diameter": 8,
        "length": 150
      },
      "position": [
        0,
        310,
        0
      ],
      "rotation_deg": [
        0,
        0,
        90
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#374449",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#374449"
    },
    {
      "id": "anemometer-arm-z",
      "label": "风杯交叉臂",
      "group": "bracket",
      "type": "cylinder",
      "dimensions": {
        "diameter": 8,
        "length": 150
      },
      "position": [
        0,
        310,
        0
      ],
      "rotation_deg": [
        90,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#374449",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#374449"
    },
    {
      "id": "wind-cup-1",
      "label": "风杯 1",
      "group": "sensor",
      "type": "ellipsoid",
      "dimensions": {
        "width": 30,
        "depth": 24,
        "height": 20
      },
      "position": [
        -78,
        310,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#1e2b30",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#1e2b30"
    },
    {
      "id": "wind-cup-2",
      "label": "风杯 2",
      "group": "sensor",
      "type": "ellipsoid",
      "dimensions": {
        "width": 30,
        "depth": 24,
        "height": 20
      },
      "position": [
        78,
        310,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#1e2b30",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#1e2b30"
    },
    {
      "id": "wind-cup-3",
      "label": "风杯 3",
      "group": "sensor",
      "type": "ellipsoid",
      "dimensions": {
        "width": 30,
        "depth": 24,
        "height": 20
      },
      "position": [
        0,
        310,
        -78
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#1e2b30",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#1e2b30"
    },
    {
      "id": "wind-cup-4",
      "label": "风杯 4",
      "group": "sensor",
      "type": "ellipsoid",
      "dimensions": {
        "width": 30,
        "depth": 24,
        "height": 20
      },
      "position": [
        0,
        310,
        78
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#1e2b30",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#1e2b30"
    },
    {
      "id": "codex-recognition-03",
      "label": "雨量斗",
      "group": "sensor",
      "type": "tapered_cylinder",
      "dimensions": {
        "top_diameter": 118,
        "bottom_diameter": 62,
        "length": 92
      },
      "position": [
        145,
        205,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#f0f2ef",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#f0f2ef",
      "recognition_role": true,
      "evidence_ids": [
        "workbook-source-009",
        "netatmo"
      ],
      "photo_derived": true,
      "photo_component_id": "recognition-03",
      "source_target_id": "recognition-03",
      "source_part_ids": [
        "codex-recognition-03"
      ],
      "photo_visible": true
    },
    {
      "id": "rain-arm",
      "label": "雨量斗横臂",
      "group": "bracket",
      "type": "cylinder",
      "dimensions": {
        "diameter": 12,
        "length": 145
      },
      "position": [
        72,
        180,
        0
      ],
      "rotation_deg": [
        0,
        0,
        90
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#5d686c",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#5d686c"
    },
    {
      "id": "codex-recognition-04",
      "label": "太阳能板",
      "group": "bracket",
      "type": "rounded_box",
      "dimensions": {
        "width": 223,
        "height": 274,
        "depth": 4,
        "corner_radius": 1.5
      },
      "position": [
        -160,
        -70,
        42
      ],
      "rotation_deg": [
        -18,
        0,
        -8
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "Voltaic P110 面板包络候选；支架/线缆待确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#234f66",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#234f66",
      "recognition_role": true,
      "evidence_ids": [
        "workbook-source-009",
        "netatmo"
      ],
      "photo_derived": true,
      "photo_component_id": "recognition-04",
      "source_target_id": "recognition-04",
      "source_part_ids": [
        "codex-recognition-04"
      ],
      "photo_visible": true
    },
    {
      "id": "solar-grid-0",
      "label": "太阳能板分格 0",
      "group": "interface",
      "type": "rounded_box",
      "dimensions": {
        "width": 8,
        "depth": 3,
        "height": 120,
        "corner_radius": 2
      },
      "position": [
        -210,
        -67,
        50
      ],
      "rotation_deg": [
        -18,
        0,
        -8
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#6d9bad",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#6d9bad",
      "render_mode": "metadata_only",
      "geometry_role": "legacy_concept_panel_graphic"
    },
    {
      "id": "solar-grid-1",
      "label": "太阳能板分格 1",
      "group": "interface",
      "type": "rounded_box",
      "dimensions": {
        "width": 8,
        "depth": 3,
        "height": 120,
        "corner_radius": 2
      },
      "position": [
        -178,
        -67,
        50
      ],
      "rotation_deg": [
        -18,
        0,
        -8
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#6d9bad",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#6d9bad",
      "render_mode": "metadata_only",
      "geometry_role": "legacy_concept_panel_graphic"
    },
    {
      "id": "solar-grid-2",
      "label": "太阳能板分格 2",
      "group": "interface",
      "type": "rounded_box",
      "dimensions": {
        "width": 8,
        "depth": 3,
        "height": 120,
        "corner_radius": 2
      },
      "position": [
        -146,
        -67,
        50
      ],
      "rotation_deg": [
        -18,
        0,
        -8
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#6d9bad",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#6d9bad",
      "render_mode": "metadata_only",
      "geometry_role": "legacy_concept_panel_graphic"
    },
    {
      "id": "solar-grid-3",
      "label": "太阳能板分格 3",
      "group": "interface",
      "type": "rounded_box",
      "dimensions": {
        "width": 8,
        "depth": 3,
        "height": 120,
        "corner_radius": 2
      },
      "position": [
        -114,
        -67,
        50
      ],
      "rotation_deg": [
        -18,
        0,
        -8
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#6d9bad",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#6d9bad",
      "render_mode": "metadata_only",
      "geometry_role": "legacy_concept_panel_graphic"
    },
    {
      "id": "solar-grid-4",
      "label": "太阳能板分格 4",
      "group": "interface",
      "type": "rounded_box",
      "dimensions": {
        "width": 8,
        "depth": 3,
        "height": 120,
        "corner_radius": 2
      },
      "position": [
        -82,
        -67,
        50
      ],
      "rotation_deg": [
        -18,
        0,
        -8
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#6d9bad",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#6d9bad",
      "render_mode": "metadata_only",
      "geometry_role": "legacy_concept_panel_graphic"
    },
    {
      "id": "codex-recognition-05",
      "label": "桅杆抱箍",
      "group": "bracket",
      "type": "ring",
      "dimensions": {
        "outer_diameter": 64,
        "inner_diameter": 40,
        "width": 22
      },
      "position": [
        0,
        -180,
        0
      ],
      "rotation_deg": [
        90,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "概念结构材料；待工程师确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
      "appearance": {
        "color": "#b5bdbe",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.55
      },
      "color": "#b5bdbe",
      "recognition_role": true,
      "evidence_ids": [
        "workbook-source-009",
        "netatmo"
      ],
      "photo_derived": true,
      "photo_component_id": "recognition-05",
      "source_target_id": "recognition-05",
      "source_part_ids": [
        "codex-recognition-05"
      ],
      "photo_visible": true,
      "section_profile": "rectangular",
      "geometry_representation": "nominal_rectangular_annular_volume"
    },
    {
      "id": "codex-main-pcba",
      "label": "内部主控 PCBA（建议布局）",
      "group": "pcb",
      "type": "box",
      "dimensions": {
        "width": 58,
        "depth": 1.6,
        "height": 36
      },
      "position": [
        120,
        -110,
        -20
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "FR-4；板框、器件高度与固定方式待工程确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 工程装配修订；尺寸为 design_proposed，见 engineering_update.source_constraints，非供应商 CAD 或实物确认。",
      "appearance": {
        "color": "#267554",
        "opacity": 1.0,
        "roughness": 0.48,
        "metalness": 0.04
      },
      "color": "#267554",
      "inside_envelope": true
    },
    {
      "id": "radiation-top-cap",
      "label": "辐射罩顶盖",
      "group": "bracket",
      "type": "cylinder",
      "dimensions": {
        "diameter": 118,
        "length": 7
      },
      "position": [
        0,
        125,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "工程设计建议材料；牌号、尺寸公差与供货待确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 engineering-fit proposal; not vendor CAD or physical verification"
    },
    {
      "id": "weather-temperature-probe",
      "label": "通风温湿度探头包络",
      "group": "sensor",
      "type": "box",
      "dimensions": {
        "width": 10,
        "height": 4,
        "depth": 10
      },
      "position": [
        40,
        75,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "工程设计建议材料；牌号、尺寸公差与供货待确认",
      "quantity": 1,
      "source_status": "pending_verification",
      "source_reference": "2026-10-16 engineering-fit proposal; not vendor CAD or physical verification"
    },
    {
      "id": "weather-control-box",
      "label": "密封控制/电源盒",
      "group": "shell",
      "type": "rounded_frame",
      "dimensions": {
        "width": 130,
        "height": 180,
        "depth": 70,
        "corner_radius": 6,
        "frame_width": 3
      },
      "position": [
        120,
        -150,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "工程设计建议材料；牌号、尺寸公差与供货待确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 engineering-fit proposal; not vendor CAD or physical verification"
    },
    {
      "id": "weather-control-cover-front",
      "label": "电源盒可拆盖 front",
      "group": "shell",
      "type": "box",
      "dimensions": {
        "width": 130,
        "height": 180,
        "depth": 3
      },
      "position": [
        120,
        -150,
        33.5
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "工程设计建议材料；牌号、尺寸公差与供货待确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 engineering-fit proposal; not vendor CAD or physical verification"
    },
    {
      "id": "weather-control-cover-rear",
      "label": "电源盒可拆盖 rear",
      "group": "shell",
      "type": "box",
      "dimensions": {
        "width": 130,
        "height": 180,
        "depth": 3
      },
      "position": [
        120,
        -150,
        -33.5
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "工程设计建议材料；牌号、尺寸公差与供货待确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 engineering-fit proposal; not vendor CAD or physical verification"
    },
    {
      "id": "weather-lifepo4-envelope",
      "label": "LiFePO4 保护电池包预留",
      "group": "sensor",
      "type": "box",
      "dimensions": {
        "width": 80,
        "height": 90,
        "depth": 25
      },
      "position": [
        120,
        -180,
        10
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "LiFePO4 化学体系；容量、最大尺寸及 NTC/保护料号待冻结",
      "quantity": 1,
      "source_status": "pending_verification",
      "source_reference": "2026-10-16 engineering-fit proposal; not vendor CAD or physical verification"
    },
    {
      "id": "weather-pm-hood",
      "label": "独立可维护 PM 防雨罩",
      "group": "shell",
      "type": "rounded_frame",
      "dimensions": {
        "width": 100,
        "height": 70,
        "depth": 70,
        "corner_radius": 5,
        "frame_width": 3
      },
      "position": [
        120,
        70,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "工程设计建议材料；牌号、尺寸公差与供货待确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 engineering-fit proposal; not vendor CAD or physical verification"
    },
    {
      "id": "weather-pm-envelope",
      "label": "PM 传感器及插头预留",
      "group": "sensor",
      "type": "box",
      "dimensions": {
        "width": 70,
        "height": 20,
        "depth": 50
      },
      "position": [
        120,
        70,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "工程设计建议材料；牌号、尺寸公差与供货待确认",
      "quantity": 1,
      "source_status": "pending_verification",
      "source_reference": "现有 SEN0460 为 67×40×14 mm；PMS5003/SEN0460/SPS30 需锁定一个。此 70×50×20 mm 仅为安装预留，不声称兼容所有候选。"
    },
    {
      "id": "solar-mast-bracket",
      "label": "面板至桅杆支架预留",
      "group": "bracket",
      "type": "box",
      "dimensions": {
        "width": 115,
        "height": 8,
        "depth": 30
      },
      "position": [
        -70,
        -105,
        0
      ],
      "rotation_deg": [
        0,
        0,
        0
      ],
      "explode_vector": [
        0,
        0,
        1
      ],
      "material": "工程设计建议材料；牌号、尺寸公差与供货待确认",
      "quantity": 1,
      "source_status": "design_proposed",
      "source_reference": "2026-10-16 engineering-fit proposal; not vendor CAD or physical verification"
    }
  ],
  "patterns": [],
  "relations": [
    {
      "id": "blind-host-installation",
      "type": "installed_on",
      "part_ids": [
        "host-surface",
        "codex-body"
      ],
      "description": "表达概念图中的宿主与安装关系；固定方式和尺寸待工程确认。"
    },
    {
      "id": "blind-feature-layout",
      "type": "located_on",
      "part_ids": [
        "codex-body",
        "codex-recognition-01",
        "louver-02",
        "louver-03",
        "louver-04",
        "louver-05",
        "codex-recognition-02",
        "anemometer-arm-x",
        "anemometer-arm-z",
        "wind-cup-1",
        "wind-cup-2",
        "wind-cup-3",
        "wind-cup-4",
        "codex-recognition-03",
        "rain-arm",
        "codex-recognition-04",
        "solar-grid-0",
        "solar-grid-1",
        "solar-grid-2",
        "solar-grid-3",
        "solar-grid-4",
        "codex-recognition-05"
      ],
      "description": "关键识别件以可读层级布置在产品主体上。"
    },
    {
      "id": "blind-pcba-contained",
      "type": "contained_by",
      "part_ids": [
        "codex-main-pcba",
        "codex-body"
      ],
      "description": "内部主控位置仅为建议包络，待板卡实物复核。"
    }
  ],
  "interfaces": [
    {
      "id": "blind-review-interface",
      "label": "概念人机/传感接口",
      "part_ids": [
        "codex-recognition-02",
        "wind-cup-1",
        "wind-cup-2",
        "wind-cup-3",
        "wind-cup-4",
        "codex-recognition-03",
        "solar-grid-0",
        "solar-grid-1",
        "solar-grid-2",
        "solar-grid-3",
        "solar-grid-4"
      ]
    },
    {
      "id": "weather-pm-air-path",
      "part_ids": [
        "weather-pm-hood",
        "weather-pm-envelope"
      ],
      "purpose": "两端开放可清洁气路、雨檐与向下排水；不在目标颗粒路径加滤尘膜。当前接头和进出气方向待确切 PM 型号。",
      "status": "design_proposed",
      "air_path": {
        "inlet_center_mm": [
          120,
          70,
          35
        ],
        "outlet_center_mm": [
          120,
          70,
          -35
        ],
        "filter_target_particles": false,
        "physical_verified": false
      }
    },
    {
      "id": "weather-sensor-isolation",
      "part_ids": [
        "weather-temperature-probe",
        "radiation-top-cap",
        "louver-03",
        "louver-04",
        "weather-control-box"
      ],
      "purpose": "探头位于两叶片之间，偏离立杆且远离发热控制盒；通风辐射罩不随电源盒灌封。",
      "status": "design_proposed"
    },
    {
      "id": "weather-service-path",
      "part_ids": [
        "codex-recognition-03",
        "weather-control-box",
        "codex-recognition-05"
      ],
      "purpose": "雨杯可拆洗，立杆抱箍可水平调节，长线向下出线并留滴水环；所有夹具和风载需按场地确认。",
      "status": "design_proposed"
    }
  ],
  "cables": [],
  "assembly_steps": [
    {
      "id": "blind-step-01",
      "sequence": 1,
      "label": "按概念关系定位产品与使用宿主",
      "part_ids": [
        "host-surface",
        "codex-body"
      ],
      "direction": [
        0,
        0,
        1
      ],
      "status": "pending_verification"
    },
    {
      "id": "blind-step-02",
      "sequence": 2,
      "label": "装配外观和关键功能件",
      "part_ids": [
        "codex-recognition-01",
        "louver-02",
        "louver-03",
        "louver-04",
        "louver-05",
        "codex-recognition-02",
        "anemometer-arm-x",
        "anemometer-arm-z",
        "wind-cup-1",
        "wind-cup-2",
        "wind-cup-3",
        "wind-cup-4",
        "codex-recognition-03",
        "rain-arm",
        "codex-recognition-04",
        "solar-grid-0",
        "solar-grid-1",
        "solar-grid-2",
        "solar-grid-3",
        "solar-grid-4",
        "codex-recognition-05"
      ],
      "direction": [
        0,
        0,
        1
      ],
      "status": "design_proposed"
    },
    {
      "id": "blind-step-03",
      "sequence": 3,
      "label": "安装主控并复核空间和走线",
      "part_ids": [
        "codex-main-pcba"
      ],
      "direction": [
        0,
        0,
        -1
      ],
      "status": "pending_verification"
    },
    {
      "id": "engineering-step-4",
      "sequence": 4,
      "label": "先安装立杆、抱箍和面板支架；将控制/电池盒与通风探头和 PM 防雨罩分开固定，接线后分别验证能量和气路。",
      "part_ids": [
        "weather-control-box",
        "weather-control-cover-front",
        "weather-control-cover-rear",
        "weather-lifepo4-envelope",
        "weather-pm-hood",
        "weather-pm-envelope",
        "weather-temperature-probe",
        "radiation-top-cap",
        "solar-mast-bracket"
      ],
      "direction": [
        0,
        0,
        1
      ],
      "status": "design_proposed"
    }
  ],
  "validation_rules": [
    {
      "id": "codex-photo-form",
      "type": "photo_form_identity",
      "minimum_score": 85,
      "severity": "error"
    },
    {
      "id": "recognition-parts",
      "type": "photo_component_coverage",
      "minimum_count": 5,
      "severity": "error"
    },
    {
      "id": "assembly-legibility",
      "type": "assembly_relationship_legibility",
      "minimum_score": 85,
      "severity": "error"
    },
    {
      "id": "geometry-uniqueness",
      "type": "cross_case_geometry_uniqueness",
      "minimum_score": 85,
      "severity": "error"
    },
    {
      "id": "weather-control-cavity-fit",
      "type": "part_inside_cavity",
      "cavity_id": "weather-control-cavity",
      "part_ids": [
        "codex-main-pcba",
        "weather-lifepo4-envelope"
      ],
      "minimum_clearance_mm": 0.2,
      "severity": "error",
      "evaluator": "scripts/verify_priority_structure_geometry.py"
    },
    {
      "id": "weather-pm-cavity-fit",
      "type": "part_inside_cavity",
      "cavity_id": "weather-pm-cavity",
      "part_ids": [
        "weather-pm-envelope"
      ],
      "minimum_clearance_mm": 0.2,
      "severity": "error",
      "evaluator": "scripts/verify_priority_structure_geometry.py"
    },
    {
      "id": "weather-battery-board-gap",
      "type": "nonoverlap",
      "part_ids": [
        "weather-lifepo4-envelope",
        "codex-main-pcba"
      ],
      "minimum_clearance_mm": 5,
      "severity": "error",
      "evaluator": "scripts/verify_priority_structure_geometry.py"
    },
    {
      "id": "weather-pm-electronics-separation",
      "type": "nonoverlap",
      "part_ids": [
        "weather-control-box",
        "weather-pm-hood"
      ],
      "minimum_clearance_mm": 10,
      "severity": "error",
      "evaluator": "scripts/verify_priority_structure_geometry.py"
    },
    {
      "id": "weather-air-and-sensor-path",
      "type": "weather_isolation",
      "severity": "error",
      "evaluator": "scripts/verify_priority_structure_geometry.py"
    }
  ],
  "dimension_sources": [
    {
      "id": "concept-photo-form",
      "status": "design_proposed",
      "scope": "可见轮廓、宿主、安装点、零件数量和相对位置",
      "reference": "/hardware-structure/photos/creative-009-photo-v1.jpg"
    },
    {
      "id": "codex-c-loop-geometry",
      "status": "design_proposed",
      "scope": "照片驱动参数几何、内部装配、工作路径和浏览器评审视图",
      "reference": "Codex Agent -> code -> render -> visual review -> patch, iteration 4"
    },
    {
      "id": "hidden-dimensions",
      "status": "pending_verification",
      "scope": "照片不可见的深度、背面、壁厚、紧固、密封、公差和真实材料",
      "reference": "Requires multi-view images, supplier drawings or physical measurement"
    },
    {
      "id": "engineering-fit-20261016",
      "status": "design_proposed",
      "scope": "7 案例的腔体、部件包络、功能基准与装配修订",
      "reference": "docs/engineering/traffic-production-20261016/README.md; engineering_update.source_constraints"
    }
  ],
  "visual_assets": [
    {
      "id": "product-concept-photo",
      "type": "ai_generated_concept_photo",
      "url": "/hardware-structure/photos/creative-009-photo-v1.jpg",
      "source_status": "ai_generated_concept",
      "revision": "photo-v1",
      "truth_boundary": {
        "zh": "AI 生成的产品概念照片，用于表达外观与使用场景，不是量产实物摄影。",
        "en": "AI-generated product concept image for form and use context; not a photograph of a manufactured unit."
      }
    },
    {
      "id": "structure-thumbnail",
      "type": "structure_preview",
      "url": "/hardware-structure/thumbnails/creative-009.svg"
    }
  ],
  "photo_structure_contract": {
    "schema_version": "creative-photo-structure-contract/v1",
    "photo_revision": "photo-v1",
    "structure_revision": "engineering-fit-r2-20261016",
    "prototype_family": "environment-monitor",
    "migration_role": "migration_calibration_seed",
    "host": "户外/种植环境基准",
    "installation": "产品通过安装件与户外/种植环境基准建立可检查的空间关系",
    "scale_reference": "户外/种植环境基准",
    "visual_cues": [
      "百叶辐射罩",
      "风速风向杯",
      "雨量斗",
      "太阳能板",
      "桅杆抱箍"
    ],
    "expected_recognition_parts": [
      "百叶辐射罩",
      "风速风向杯",
      "雨量斗",
      "太阳能板",
      "桅杆抱箍"
    ],
    "pixel_review_status": "photo_geometry_rebuilt_pending_review",
    "truth_boundary": "结构契约验证照片和参数模型共享同一组可识别部件；非像素级 CAD 重建。",
    "quality_status": "reworked_pending_blind_visual_review"
  },
  "assumptions": [
    "单张 AI 概念图只约束可见轮廓和相对关系，不证明毫米尺寸或隐藏结构。",
    "本轮独立盲审只判断概念是否可辨，不构成工程审核、可制造性结论或实物验证。",
    "所有接口开孔、散热、强度、线缆应力和安装公差仍为待确认项。",
    "本次实际装配几何优先于旧照片投影和原型模板；未执行的环境、强度、寿命及校准测试不因名义空间检查通过而完成。"
  ],
  "engineering_boundary": "2026-10-16 工程装配提案：已修正列出的名义几何矛盾并建立可执行空间校验。所有新增/改动尺寸为 design_proposed；不是供应商原生 CAD，不证明公差、材料、强度、热、密封、射频、传感性能或量产放行。现有概念照片仅保留为外观参考，后续需供应商图纸和样机验证。",
  "photo_reconstruction": {
    "schema_version": "creative-photo-reconstruction/v1",
    "product_id": "creative-009",
    "case_id": 9,
    "photo_revision": "photo-v1",
    "structure_input_revision": "codex-geometry-c6",
    "generated_at": "2026-09-03",
    "photo": {
      "url": "/hardware-structure/photos/creative-009-photo-v1.jpg",
      "width_px": 960,
      "height_px": 600,
      "sha256": "d4ff12b405ed558c65060373fd1ae3bab29a4823355c503fea7e7382dd399e51",
      "coordinate_system": "normalized image space 0..1000; origin top-left"
    },
    "targets": [
      {
        "id": "host-context",
        "label": "户外/种植环境基准",
        "role": "host",
        "part_ids": [
          "host-surface"
        ],
        "instruction": "Tight box around the physical host or use surface that establishes installation and scale.",
        "bound_part_ids": [
          "host-surface"
        ]
      },
      {
        "id": "recognition-01",
        "label": "百叶辐射罩",
        "role": "visible_part",
        "part_ids": [
          "codex-recognition-01"
        ],
        "instruction": "Tight box and polygon around this visible photo-defining part or repeated group.",
        "bound_part_ids": [
          "codex-recognition-01"
        ]
      },
      {
        "id": "recognition-02",
        "label": "风速风向杯",
        "role": "visible_part",
        "part_ids": [
          "codex-recognition-02"
        ],
        "instruction": "Tight box and polygon around this visible photo-defining part or repeated group.",
        "bound_part_ids": [
          "codex-recognition-02"
        ]
      },
      {
        "id": "recognition-03",
        "label": "雨量斗",
        "role": "visible_part",
        "part_ids": [
          "codex-recognition-03"
        ],
        "instruction": "Tight box and polygon around this visible photo-defining part or repeated group.",
        "bound_part_ids": [
          "codex-recognition-03"
        ]
      },
      {
        "id": "recognition-04",
        "label": "太阳能板",
        "role": "mount",
        "part_ids": [
          "codex-recognition-04"
        ],
        "instruction": "Tight box and polygon around this visible photo-defining part or repeated group.",
        "bound_part_ids": [
          "codex-recognition-04"
        ]
      },
      {
        "id": "recognition-05",
        "label": "桅杆抱箍",
        "role": "mount",
        "part_ids": [
          "codex-recognition-05"
        ],
        "instruction": "Tight box and polygon around this visible photo-defining part or repeated group.",
        "bound_part_ids": [
          "codex-recognition-05"
        ]
      },
      {
        "id": "product-silhouette",
        "label": "产品主体整体轮廓",
        "role": "product_shell",
        "part_ids": [
          "codex-body"
        ],
        "instruction": "Trace the complete visible product silhouette, excluding the host and background.",
        "bound_part_ids": [
          "codex-body"
        ]
      }
    ],
    "regions": [
      {
        "target_id": "host-context",
        "role": "host",
        "bbox": [
          0,
          0,
          1000,
          1000
        ],
        "polygon": [
          [
            0,
            0
          ],
          [
            1000,
            0
          ],
          [
            1000,
            1000
          ],
          [
            0,
            1000
          ]
        ],
        "visible": true,
        "confidence": 1.0,
        "shape_hint": "cylinder",
        "visual_description": "户外花园种植环境，包含木质花箱、步道、凉亭和植被，作为气象站安装的空间基准与尺度参考"
      },
      {
        "target_id": "recognition-01",
        "role": "visible_part",
        "bbox": [
          508,
          291,
          570,
          413
        ],
        "polygon": [
          [
            510,
            293
          ],
          [
            537,
            291
          ],
          [
            564,
            295
          ],
          [
            568,
            313
          ],
          [
            570,
            340
          ],
          [
            568,
            370
          ],
          [
            564,
            395
          ],
          [
            556,
            410
          ],
          [
            538,
            413
          ],
          [
            522,
            412
          ],
          [
            512,
            400
          ],
          [
            508,
            370
          ],
          [
            508,
            340
          ],
          [
            508,
            313
          ]
        ],
        "visible": true,
        "confidence": 1.0,
        "shape_hint": "cylinder",
        "visual_description": "白色多层百叶辐射罩，圆柱形堆叠结构，用于保护温湿度传感器免受太阳直接辐射，安装于主桅杆中部横臂"
      },
      {
        "target_id": "recognition-02",
        "role": "visible_part",
        "bbox": [
          305,
          55,
          479,
          234
        ],
        "polygon": [
          [
            306,
            57
          ],
          [
            332,
            55
          ],
          [
            348,
            62
          ],
          [
            363,
            58
          ],
          [
            384,
            57
          ],
          [
            390,
            68
          ],
          [
            390,
            85
          ],
          [
            388,
            95
          ],
          [
            384,
            105
          ],
          [
            362,
            108
          ],
          [
            348,
            104
          ],
          [
            334,
            108
          ],
          [
            334,
            125
          ],
          [
            338,
            145
          ],
          [
            338,
            165
          ],
          [
            338,
            185
          ]
        ],
        "visible": true,
        "confidence": 1.0,
        "shape_hint": "cylinder",
        "visual_description": "黑色三杯式风速计与风向标组合，安装于顶部横臂末端，风向标为垂直尾翼结构，风速计为三杯水平旋转装置"
      },
      {
        "target_id": "recognition-03",
        "role": "visible_part",
        "bbox": [
          605,
          186,
          713,
          376
        ],
        "polygon": [
          [
            608,
            189
          ],
          [
            642,
            186
          ],
          [
            678,
            188
          ],
          [
            705,
            193
          ],
          [
            710,
            210
          ],
          [
            710,
            240
          ],
          [
            710,
            280
          ],
          [
            710,
            320
          ],
          [
            713,
            345
          ],
          [
            708,
            360
          ],
          [
            690,
            370
          ],
          [
            665,
            375
          ],
          [
            640,
            375
          ],
          [
            620,
            370
          ],
          [
            608,
            360
          ],
          [
            605,
            340
          ]
        ],
        "visible": true,
        "confidence": 1.0,
        "shape_hint": "cylinder",
        "visual_description": "白色圆柱形雨量斗，顶部黑色边缘，底部锥形收集结构，安装于右侧横臂末端，用于降水测量"
      },
      {
        "target_id": "recognition-04",
        "role": "mount",
        "bbox": [
          432,
          486,
          632,
          636
        ],
        "polygon": [
          [
            434,
            488
          ],
          [
            520,
            486
          ],
          [
            600,
            490
          ],
          [
            630,
            493
          ],
          [
            632,
            510
          ],
          [
            628,
            540
          ],
          [
            624,
            580
          ],
          [
            620,
            620
          ],
          [
            615,
            635
          ],
          [
            580,
            636
          ],
          [
            520,
            636
          ],
          [
            460,
            634
          ],
          [
            435,
            630
          ],
          [
            432,
            600
          ],
          [
            432,
            560
          ],
          [
            432,
            520
          ]
        ],
        "visible": true,
        "confidence": 1.0,
        "shape_hint": "box",
        "visual_description": "矩形太阳能电池板，倾斜安装于主桅杆中下部，表面可见网格状光伏电池纹理，为系统供电"
      },
      {
        "target_id": "recognition-05",
        "role": "mount",
        "bbox": [
          470,
          273,
          497,
          1000
        ],
        "polygon": [
          [
            472,
            275
          ],
          [
            485,
            273
          ],
          [
            495,
            275
          ],
          [
            497,
            300
          ],
          [
            495,
            400
          ],
          [
            493,
            500
          ],
          [
            492,
            600
          ],
          [
            490,
            700
          ],
          [
            488,
            800
          ],
          [
            487,
            900
          ],
          [
            485,
            1000
          ],
          [
            472,
            1000
          ],
          [
            470,
            900
          ],
          [
            470,
            800
          ],
          [
            470,
            700
          ],
          [
            470,
            600
          ]
        ],
        "visible": true,
        "confidence": 1.0,
        "shape_hint": "cylinder",
        "visual_description": "金属主桅杆及抱箍连接系统，垂直支撑结构，多处横臂抱箍固定各类传感器，底部连接控制箱"
      },
      {
        "target_id": "product-silhouette",
        "role": "product_shell",
        "visible": true,
        "bbox": [
          305,
          55,
          713,
          1000
        ],
        "polygon": [
          [
            305,
            55
          ],
          [
            479,
            55
          ],
          [
            479,
            186
          ],
          [
            605,
            186
          ],
          [
            713,
            186
          ],
          [
            713,
            376
          ],
          [
            632,
            376
          ],
          [
            632,
            486
          ],
          [
            632,
            636
          ],
          [
            590,
            636
          ],
          [
            590,
            860
          ],
          [
            490,
            860
          ],
          [
            490,
            1000
          ],
          [
            470,
            1000
          ],
          [
            470,
            860
          ],
          [
            432,
            860
          ]
        ],
        "confidence": 0.9,
        "shape_hint": "cylinder",
        "visual_description": "太阳能微型气象站整体轮廓，包含顶部风速风向传感器、中部百叶辐射罩与雨量斗、倾斜太阳能板及底部控制箱，全部集成于垂直桅杆系统"
      }
    ],
    "product_silhouette": {
      "bbox": [
        305,
        55,
        713,
        1000
      ],
      "polygon": [
        [
          305,
          55
        ],
        [
          479,
          55
        ],
        [
          479,
          186
        ],
        [
          605,
          186
        ],
        [
          713,
          186
        ],
        [
          713,
          376
        ],
        [
          632,
          376
        ],
        [
          632,
          486
        ],
        [
          632,
          636
        ],
        [
          590,
          636
        ],
        [
          590,
          860
        ],
        [
          490,
          860
        ],
        [
          490,
          1000
        ],
        [
          470,
          1000
        ],
        [
          470,
          860
        ],
        [
          432,
          860
        ]
      ],
      "description": "太阳能微型气象站整体轮廓，包含顶部风速风向传感器、中部百叶辐射罩与雨量斗、倾斜太阳能板及底部控制箱，全部集成于垂直桅杆系统"
    },
    "mounting_points": [
      {
        "label": "桅杆底部地埋固定点",
        "point": [
          485,
          1000
        ],
        "host_target_id": "host-context",
        "product_target_id": "recognition-05",
        "confidence": 0.8
      }
    ],
    "connections": [
      {
        "from_target_id": "recognition-02",
        "to_target_id": "recognition-05",
        "type": "routes_to",
        "description": "风速风向传感器通过顶部横臂与抱箍固定于主桅杆"
      },
      {
        "from_target_id": "recognition-01",
        "to_target_id": "recognition-05",
        "type": "routes_to",
        "description": "百叶辐射罩通过中部横臂与抱箍固定于主桅杆"
      },
      {
        "from_target_id": "recognition-03",
        "to_target_id": "recognition-05",
        "type": "routes_to",
        "description": "雨量斗通过右侧横臂与抱箍固定于主桅杆"
      },
      {
        "from_target_id": "recognition-04",
        "to_target_id": "recognition-05",
        "type": "routes_to",
        "description": "太阳能板通过支架与抱箍固定于主桅杆中下部"
      }
    ],
    "camera": {
      "view": "front",
      "yaw_deg": 15,
      "pitch_deg": -10,
      "roll_deg": 0,
      "fov_deg": 45,
      "framing_bbox": [
        0,
        0,
        1000,
        1000
      ]
    },
    "geometry_plan": {
      "strategy": "parameterized",
      "rationale": "Replace ambiguous generic blocks with a case-specific concept silhouette and visible functional cues; engineering dimensions remain pending.",
      "bindings": [
        {
          "target_id": "host-context",
          "asset_mode": "parameterized",
          "depth_order": 0,
          "orientation": "assembly_specific",
          "confidence": 0.82
        },
        {
          "target_id": "product-silhouette",
          "asset_mode": "parameterized",
          "depth_order": 1,
          "orientation": "assembly_specific",
          "confidence": 0.82
        },
        {
          "target_id": "recognition-01",
          "asset_mode": "parameterized",
          "depth_order": 2,
          "orientation": "assembly_specific",
          "confidence": 0.82
        },
        {
          "target_id": "recognition-02",
          "asset_mode": "parameterized",
          "depth_order": 3,
          "orientation": "assembly_specific",
          "confidence": 0.82
        },
        {
          "target_id": "recognition-03",
          "asset_mode": "parameterized",
          "depth_order": 4,
          "orientation": "assembly_specific",
          "confidence": 0.82
        },
        {
          "target_id": "recognition-04",
          "asset_mode": "parameterized",
          "depth_order": 5,
          "orientation": "assembly_specific",
          "confidence": 0.82
        },
        {
          "target_id": "recognition-05",
          "asset_mode": "parameterized",
          "depth_order": 6,
          "orientation": "assembly_specific",
          "confidence": 0.82
        }
      ]
    },
    "uncertainties": [],
    "provenance": {
      "mode": "kimi_vlm",
      "provider": "kimi",
      "model": "kimi-k2.6",
      "operation": "photo-reconstruction.annotate",
      "prompt_template_version": "photo-reconstruction-v1",
      "calls": [
        {
          "provider": "kimi",
          "model_version": "kimi-k2.6",
          "operation": "photo-reconstruction.annotate",
          "prompt_template_version": "photo-reconstruction-v1",
          "request_hash": "bea251b78346f5fa4b1caa9b4c612d209465c83120528e31c63a77a1870e5305",
          "latency_ms": 65708,
          "status": "completed",
          "prompt_tokens": 1450,
          "completion_tokens": 1845,
          "total_tokens": 3295,
          "cached_tokens": 181,
          "error_code": "",
          "error_message": "",
          "fallback_used": false
        }
      ]
    },
    "truth_boundary": {
      "zh": "照片校准层用于验证轮廓、宿主、安装和可见零件；工程零件尺寸、间隙及制造结论仍由原结构层和正式图纸控制。",
      "en": "The photo-calibrated layer checks silhouette, host, installation and visible parts; engineering dimensions, clearances and manufacturing conclusions remain controlled by the engineering layer and released drawings."
    },
    "geometry_proxy_parts": [
      {
        "id": "photo-proxy-host-surface",
        "source_target_id": "host-context",
        "source_part_ids": [
          "host-surface"
        ],
        "label": "户外地面尺度基准",
        "group": "host",
        "type": "box",
        "dimensions": {
          "width": 900,
          "depth": 700,
          "height": 18
        },
        "position": [
          0,
          -360,
          0
        ],
        "rotation_deg": [
          0,
          0,
          0
        ],
        "material": "概念结构材料；待工程师确认",
        "source_status": "pending_verification",
        "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
        "bbox": [],
        "polygon": [],
        "confidence": 0.85,
        "asset_requirement": "parameterized_concept_geometry",
        "camera_fit": false,
        "appearance": {
          "color": "#758274",
          "opacity": 1.0,
          "roughness": 0.48,
          "metalness": 0.04
        },
        "color": "#758274"
      },
      {
        "id": "photo-proxy-codex-body",
        "source_target_id": "product-silhouette",
        "source_part_ids": [
          "codex-body"
        ],
        "label": "气象站立杆主体",
        "group": "shell",
        "type": "cylinder",
        "dimensions": {
          "diameter": 34,
          "length": 610
        },
        "position": [
          0,
          -35,
          0
        ],
        "rotation_deg": [
          0,
          0,
          0
        ],
        "material": "铝合金桅杆概念",
        "source_status": "design_proposed",
        "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
        "bbox": [],
        "polygon": [],
        "confidence": 0.85,
        "asset_requirement": "parameterized_concept_geometry",
        "camera_fit": true,
        "appearance": {
          "color": "#606d71",
          "opacity": 1.0,
          "roughness": 0.48,
          "metalness": 0.45
        },
        "color": "#606d71"
      },
      {
        "id": "photo-proxy-codex-recognition-01",
        "source_target_id": "recognition-01",
        "source_part_ids": [
          "codex-recognition-01"
        ],
        "label": "百叶辐射罩",
        "group": "shell",
        "type": "cylinder",
        "dimensions": {
          "diameter": 105,
          "length": 118
        },
        "position": [
          0,
          80,
          0
        ],
        "rotation_deg": [
          0,
          0,
          0
        ],
        "material": "概念结构材料；待工程师确认",
        "source_status": "design_proposed",
        "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
        "bbox": [],
        "polygon": [],
        "confidence": 0.85,
        "asset_requirement": "parameterized_concept_geometry",
        "camera_fit": true,
        "appearance": {
          "color": "#ecece6",
          "opacity": 1.0,
          "roughness": 0.48,
          "metalness": 0.04
        },
        "color": "#ecece6"
      },
      {
        "id": "photo-proxy-codex-recognition-02",
        "source_target_id": "recognition-02",
        "source_part_ids": [
          "codex-recognition-02"
        ],
        "label": "风速风向杯",
        "group": "sensor",
        "type": "cylinder",
        "dimensions": {
          "diameter": 30,
          "length": 42
        },
        "position": [
          0,
          294,
          0
        ],
        "rotation_deg": [
          0,
          0,
          0
        ],
        "material": "概念结构材料；待工程师确认",
        "source_status": "design_proposed",
        "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
        "bbox": [],
        "polygon": [],
        "confidence": 0.85,
        "asset_requirement": "parameterized_concept_geometry",
        "camera_fit": true,
        "appearance": {
          "color": "#263237",
          "opacity": 1.0,
          "roughness": 0.48,
          "metalness": 0.04
        },
        "color": "#263237"
      },
      {
        "id": "photo-proxy-codex-recognition-03",
        "source_target_id": "recognition-03",
        "source_part_ids": [
          "codex-recognition-03"
        ],
        "label": "雨量斗",
        "group": "sensor",
        "type": "tapered_cylinder",
        "dimensions": {
          "top_diameter": 118,
          "bottom_diameter": 62,
          "length": 92
        },
        "position": [
          145,
          205,
          0
        ],
        "rotation_deg": [
          0,
          0,
          0
        ],
        "material": "概念结构材料；待工程师确认",
        "source_status": "design_proposed",
        "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
        "bbox": [],
        "polygon": [],
        "confidence": 0.85,
        "asset_requirement": "parameterized_concept_geometry",
        "camera_fit": true,
        "appearance": {
          "color": "#f0f2ef",
          "opacity": 1.0,
          "roughness": 0.48,
          "metalness": 0.04
        },
        "color": "#f0f2ef"
      },
      {
        "id": "photo-proxy-codex-recognition-04",
        "source_target_id": "recognition-04",
        "source_part_ids": [
          "codex-recognition-04"
        ],
        "label": "太阳能板",
        "group": "bracket",
        "type": "rounded_box",
        "dimensions": {
          "width": 220,
          "depth": 12,
          "height": 135,
          "corner_radius": 6
        },
        "position": [
          -145,
          -70,
          42
        ],
        "rotation_deg": [
          -18,
          0,
          -8
        ],
        "material": "太阳能板与边框概念",
        "source_status": "design_proposed",
        "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
        "bbox": [],
        "polygon": [],
        "confidence": 0.85,
        "asset_requirement": "parameterized_concept_geometry",
        "camera_fit": true,
        "appearance": {
          "color": "#234f66",
          "opacity": 1.0,
          "roughness": 0.48,
          "metalness": 0.04
        },
        "color": "#234f66"
      },
      {
        "id": "photo-proxy-codex-recognition-05",
        "source_target_id": "recognition-05",
        "source_part_ids": [
          "codex-recognition-05"
        ],
        "label": "桅杆抱箍",
        "group": "bracket",
        "type": "ring",
        "dimensions": {
          "outer_diameter": 64,
          "inner_diameter": 40,
          "width": 22
        },
        "position": [
          0,
          -180,
          0
        ],
        "rotation_deg": [
          90,
          0,
          0
        ],
        "material": "概念结构材料；待工程师确认",
        "source_status": "design_proposed",
        "source_reference": "creative-009 AI concept photo constrains visible form only; this independent visual-remediation pass proposes geometry for concept recognition. Dimensions, hidden construction, materials, fasteners and manufacturability remain unverified.",
        "bbox": [],
        "polygon": [],
        "confidence": 0.85,
        "asset_requirement": "parameterized_concept_geometry",
        "camera_fit": true,
        "appearance": {
          "color": "#b5bdbe",
          "opacity": 1.0,
          "roughness": 0.48,
          "metalness": 0.55
        },
        "color": "#b5bdbe"
      }
    ],
    "engineering_geometry_revision": "engineering-fit-r2-20261016",
    "geometry_fingerprint": "sha256:be24c32da9215f88ab22b51e61945255d2d8b3a7e49bd69b2d607dcc73a159a7",
    "engineering_revision_note": "照片轮廓和旧视觉评分仅作历史证据；当前工程修订待新的视觉与实物复核。",
    "visual_review_status": "pending_current_geometry_review"
  },
  "presentation": {
    "default_view": "iso",
    "iso_view_deg": [
      32,
      20
    ],
    "dimensions_visible_by_default": false,
    "hidden_groups_by_default": [
      "fov"
    ],
    "shell_opacity": 0.9,
    "photo_mode_available": true
  },
  "codex_geometry_refinement": {
    "schema_version": "codex-geometry-refinement/v1",
    "mode": "codex_agent_closed_loop",
    "source_photo_revision": "photo-v1",
    "iteration": 6,
    "status": "render_pending_visual_review",
    "scope": [
      "photo-specific-form",
      "host-and-installation",
      "key-parts",
      "internal-assembly",
      "work-path"
    ],
    "pipeline": [
      "generate_code",
      "render_screenshot",
      "visual_review",
      "patch_code"
    ],
    "truth_boundary": {
      "zh": "结构由单张 AI 概念图反向生成；可见比例受照片约束，隐藏结构和工程尺寸仍需图纸或实物确认。",
      "en": "Geometry is generated from one AI concept image. Visible proportions are image-constrained; hidden construction and engineering dimensions still require drawings or physical verification."
    },
    "quality_status": "reworked_pending_blind_visual_review"
  },
  "photo_derived_structure": {
    "schema_version": "creative-photo-derived-structure/v1",
    "product_id": "creative-009",
    "case_id": 9,
    "photo_revision": "photo-v1",
    "generated_at": "2026-09-03",
    "photo": {
      "url": "/hardware-structure/photos/creative-009-photo-v1.jpg",
      "width_px": 960,
      "height_px": 600,
      "sha256": "d4ff12b405ed558c65060373fd1ae3bab29a4823355c503fea7e7382dd399e51",
      "coordinate_system": "normalized image space 0..1000; origin top-left"
    },
    "product": {
      "bbox": [
        305,
        55,
        713,
        1000
      ],
      "polygon": [
        [
          305,
          55
        ],
        [
          479,
          55
        ],
        [
          479,
          186
        ],
        [
          605,
          186
        ],
        [
          713,
          186
        ],
        [
          713,
          376
        ],
        [
          632,
          376
        ],
        [
          632,
          486
        ],
        [
          632,
          636
        ],
        [
          590,
          636
        ],
        [
          590,
          860
        ],
        [
          490,
          860
        ],
        [
          490,
          1000
        ],
        [
          470,
          1000
        ],
        [
          470,
          860
        ],
        [
          432,
          860
        ]
      ],
      "estimated_dimensions_mm": {
        "width": 480,
        "depth": 360,
        "height": 720
      },
      "dimension_basis": "概念包络；全部毫米值待实物与工程师复核",
      "form_summary": "太阳能微型气象站整体轮廓，包含顶部风速风向传感器、中部百叶辐射罩与雨量斗、倾斜太阳能板及底部控制箱，全部集成于垂直桅杆系统"
    },
    "components": [
      {
        "id": "host-context",
        "label_zh": "户外/种植环境基准",
        "label_en": "户外/种植环境基准",
        "role": "host",
        "bbox": [
          0,
          0,
          1000,
          1000
        ],
        "polygon": [
          [
            0,
            0
          ],
          [
            1000,
            0
          ],
          [
            1000,
            1000
          ],
          [
            0,
            1000
          ]
        ],
        "confidence": 1.0,
        "material_guess": "户外花园种植环境，包含木质花箱、步道、凉亭和植被，作为气象站安装的空间基准与尺度参考"
      },
      {
        "id": "recognition-01",
        "label_zh": "百叶辐射罩",
        "label_en": "百叶辐射罩",
        "role": "visible_part",
        "bbox": [
          508,
          291,
          570,
          413
        ],
        "polygon": [
          [
            510,
            293
          ],
          [
            537,
            291
          ],
          [
            564,
            295
          ],
          [
            568,
            313
          ],
          [
            570,
            340
          ],
          [
            568,
            370
          ],
          [
            564,
            395
          ],
          [
            556,
            410
          ],
          [
            538,
            413
          ],
          [
            522,
            412
          ],
          [
            512,
            400
          ],
          [
            508,
            370
          ],
          [
            508,
            340
          ],
          [
            508,
            313
          ]
        ],
        "confidence": 1.0,
        "material_guess": "白色多层百叶辐射罩，圆柱形堆叠结构，用于保护温湿度传感器免受太阳直接辐射，安装于主桅杆中部横臂"
      },
      {
        "id": "recognition-02",
        "label_zh": "风速风向杯",
        "label_en": "风速风向杯",
        "role": "visible_part",
        "bbox": [
          305,
          55,
          479,
          234
        ],
        "polygon": [
          [
            306,
            57
          ],
          [
            332,
            55
          ],
          [
            348,
            62
          ],
          [
            363,
            58
          ],
          [
            384,
            57
          ],
          [
            390,
            68
          ],
          [
            390,
            85
          ],
          [
            388,
            95
          ],
          [
            384,
            105
          ],
          [
            362,
            108
          ],
          [
            348,
            104
          ],
          [
            334,
            108
          ],
          [
            334,
            125
          ],
          [
            338,
            145
          ],
          [
            338,
            165
          ],
          [
            338,
            185
          ]
        ],
        "confidence": 1.0,
        "material_guess": "黑色三杯式风速计与风向标组合，安装于顶部横臂末端，风向标为垂直尾翼结构，风速计为三杯水平旋转装置"
      },
      {
        "id": "recognition-03",
        "label_zh": "雨量斗",
        "label_en": "雨量斗",
        "role": "visible_part",
        "bbox": [
          605,
          186,
          713,
          376
        ],
        "polygon": [
          [
            608,
            189
          ],
          [
            642,
            186
          ],
          [
            678,
            188
          ],
          [
            705,
            193
          ],
          [
            710,
            210
          ],
          [
            710,
            240
          ],
          [
            710,
            280
          ],
          [
            710,
            320
          ],
          [
            713,
            345
          ],
          [
            708,
            360
          ],
          [
            690,
            370
          ],
          [
            665,
            375
          ],
          [
            640,
            375
          ],
          [
            620,
            370
          ],
          [
            608,
            360
          ],
          [
            605,
            340
          ]
        ],
        "confidence": 1.0,
        "material_guess": "白色圆柱形雨量斗，顶部黑色边缘，底部锥形收集结构，安装于右侧横臂末端，用于降水测量"
      },
      {
        "id": "recognition-04",
        "label_zh": "太阳能板",
        "label_en": "太阳能板",
        "role": "mount",
        "bbox": [
          432,
          486,
          632,
          636
        ],
        "polygon": [
          [
            434,
            488
          ],
          [
            520,
            486
          ],
          [
            600,
            490
          ],
          [
            630,
            493
          ],
          [
            632,
            510
          ],
          [
            628,
            540
          ],
          [
            624,
            580
          ],
          [
            620,
            620
          ],
          [
            615,
            635
          ],
          [
            580,
            636
          ],
          [
            520,
            636
          ],
          [
            460,
            634
          ],
          [
            435,
            630
          ],
          [
            432,
            600
          ],
          [
            432,
            560
          ],
          [
            432,
            520
          ]
        ],
        "confidence": 1.0,
        "material_guess": "矩形太阳能电池板，倾斜安装于主桅杆中下部，表面可见网格状光伏电池纹理，为系统供电"
      },
      {
        "id": "recognition-05",
        "label_zh": "桅杆抱箍",
        "label_en": "桅杆抱箍",
        "role": "mount",
        "bbox": [
          470,
          273,
          497,
          1000
        ],
        "polygon": [
          [
            472,
            275
          ],
          [
            485,
            273
          ],
          [
            495,
            275
          ],
          [
            497,
            300
          ],
          [
            495,
            400
          ],
          [
            493,
            500
          ],
          [
            492,
            600
          ],
          [
            490,
            700
          ],
          [
            488,
            800
          ],
          [
            487,
            900
          ],
          [
            485,
            1000
          ],
          [
            472,
            1000
          ],
          [
            470,
            900
          ],
          [
            470,
            800
          ],
          [
            470,
            700
          ],
          [
            470,
            600
          ]
        ],
        "confidence": 1.0,
        "material_guess": "金属主桅杆及抱箍连接系统，垂直支撑结构，多处横臂抱箍固定各类传感器，底部连接控制箱"
      },
      {
        "id": "product-silhouette",
        "label_zh": "产品主体整体轮廓",
        "label_en": "产品主体整体轮廓",
        "role": "product_shell",
        "bbox": [
          305,
          55,
          713,
          1000
        ],
        "polygon": [
          [
            305,
            55
          ],
          [
            479,
            55
          ],
          [
            479,
            186
          ],
          [
            605,
            186
          ],
          [
            713,
            186
          ],
          [
            713,
            376
          ],
          [
            632,
            376
          ],
          [
            632,
            486
          ],
          [
            632,
            636
          ],
          [
            590,
            636
          ],
          [
            590,
            860
          ],
          [
            490,
            860
          ],
          [
            490,
            1000
          ],
          [
            470,
            1000
          ],
          [
            470,
            860
          ],
          [
            432,
            860
          ]
        ],
        "confidence": 0.9,
        "material_guess": "太阳能微型气象站整体轮廓，包含顶部风速风向传感器、中部百叶辐射罩与雨量斗、倾斜太阳能板及底部控制箱，全部集成于垂直桅杆系统"
      }
    ],
    "relations": [
      {
        "from_target_id": "recognition-02",
        "to_target_id": "recognition-05",
        "type": "routes_to",
        "description": "风速风向传感器通过顶部横臂与抱箍固定于主桅杆"
      },
      {
        "from_target_id": "recognition-01",
        "to_target_id": "recognition-05",
        "type": "routes_to",
        "description": "百叶辐射罩通过中部横臂与抱箍固定于主桅杆"
      },
      {
        "from_target_id": "recognition-03",
        "to_target_id": "recognition-05",
        "type": "routes_to",
        "description": "雨量斗通过右侧横臂与抱箍固定于主桅杆"
      },
      {
        "from_target_id": "recognition-04",
        "to_target_id": "recognition-05",
        "type": "routes_to",
        "description": "太阳能板通过支架与抱箍固定于主桅杆中下部"
      }
    ],
    "camera": {
      "view": "front",
      "yaw_deg": 15,
      "pitch_deg": -10,
      "roll_deg": 0,
      "fov_deg": 45,
      "framing_bbox": [
        0,
        0,
        1000,
        1000
      ]
    },
    "uncertainties": [],
    "provenance": {
      "mode": "codex_agent_closed_loop",
      "operation": "concept-photo-to-parametric-geometry",
      "iteration": 6
    }
  },
  "engineering_update": {
    "revision": "engineering-fit-r2-20261016",
    "supersedes_revision": "codex-geometry-c6",
    "status": "design_proposed",
    "production_ready": false,
    "physical_verified": false,
    "geometry_review_status": "pending_physical_validation",
    "source_constraints": [
      {
        "id": "panel-envelope",
        "url": "https://voltaicsystems.com/10-watt-panel-etfe/",
        "constraint": "P110 公开包络约 223×274×4 mm；本次按该包络预留面板，角度/支架和风载仍是提案。",
        "application": "source_constraint_only_proposed_geometry_not_vendor_drawing"
      },
      {
        "id": "pm-reserve",
        "url": "https://www.dfrobot.com/product-2439.html",
        "constraint": "现有 SEN0460 公开尺寸 67×40×14 mm；历史 PMS5003 身份冲突未解决，预留空间不替代精确型号采购。",
        "application": "source_constraint_only_proposed_geometry_not_vendor_drawing"
      },
      {
        "id": "pm-outdoor-flow",
        "url": "https://sensirion.com/sps30",
        "constraint": "SPS30 为待比较候选；保持代表性、非冷凝气流，传感器不是密封室外盒。",
        "application": "source_constraint_only_proposed_geometry_not_vendor_drawing"
      },
      {
        "id": "lifepo4-power",
        "url": "https://www.ti.com/product/BQ25185",
        "constraint": "LiFePO4 需要兼容的充电设置和热/低温保护；结构只保留对应电池及电源空间，不把旧 BQ24074 当匹配。",
        "application": "source_constraint_only_proposed_geometry_not_vendor_drawing"
      }
    ],
    "remaining_gates": [
      "PM 完整型号/插头和气口位置、UV 物理量与探头、雨量/风校准尚未冻结。",
      "电池最大包络、热、太阳能采能和连续阴天能量预算需测量；没有续航承诺。",
      "防雨气路、密封、冷凝、风载、腐蚀和长线防护需整机验证。",
      "矩形环形网格现在使用完整轴向宽度并保留中心孔；电芯和 FPC 为保守安装包络，壳体/粮桶/食盆为名义设计体，实际截面、倒角、公差、底面连接、开孔与密封仍需原生 CAD 和供应商图。"
    ],
    "check_scope": "仅验证所列名义空间、功能位置和装配关系；不代表完整碰撞、强度、密封、电气或量产验收。",
    "proposal_status": "proposed",
    "design_changes": [
      {
        "id": "fit-change-1",
        "title": "电源与环境采样分舱",
        "summary": "新增密封控制/电池舱、独立PM防雨气路及辐射罩通风间隙中的温湿度探头；PM路径不滤除目标颗粒。",
        "part_ids": [
          "weather-control-box",
          "weather-lifepo4-envelope",
          "weather-pm-hood",
          "weather-pm-envelope",
          "weather-temperature-probe"
        ]
      },
      {
        "id": "fit-change-2",
        "title": "采用可追溯面板包络",
        "summary": "P110候选按223×274×4 mm预留；PM保留至少SEN0460 67×40×14 mm尺寸，型号冲突仍需冻结。",
        "part_ids": [
          "codex-recognition-04",
          "weather-pm-envelope"
        ]
      },
      {
        "id": "fit-change-rectangular-section",
        "title": "环形截面与轴向尺寸一致",
        "summary": "显式采用矩形环形截面和完整轴向宽度，完整环保留中心孔、弧段封闭两端；保守电芯包络不冒充供应商实际外形。",
        "part_ids": [
          "louver-02",
          "louver-03",
          "louver-04",
          "louver-05",
          "codex-recognition-05"
        ]
      }
    ],
    "superseded_visual_review": {
      "status": "pending_review",
      "score": null,
      "geometry_fingerprint": "sha256:744902c8ae106f533d07b2c27ef1179c7c0b33b27c151d45ad37d92a3d7b6604",
      "updated_at": "2026-09-19",
      "reason": "Geometry changed during deterministic structure-quality remediation and requires fresh visual review."
    },
    "renderer_update": {
      "previous_revision": "engineering-fit-r1-20261016",
      "section_profile": "rectangular",
      "axial_extent": "centered_full_dimensions_width",
      "scope": "只对显式标记的环形零件生成矩形环形截面；旧案例的 TorusGeometry 保持不变。",
      "authority": "名义结构体或保守安装包络；不是供应商实际截面、圆角、密封或可制造 CAD。"
    }
  },
  "cavities": [
    {
      "id": "weather-control-cavity",
      "owner_part_id": "weather-control-box",
      "shape": "box",
      "dimensions": {
        "width": 124,
        "height": 174,
        "depth": 64
      },
      "center": [
        120,
        -150,
        0
      ],
      "part_ids": [
        "codex-main-pcba",
        "weather-lifepo4-envelope"
      ],
      "source_status": "design_proposed",
      "wall_and_service_note": "净空按名义尺寸定义；圆角、紧固件、密封及制造公差需后续 CAD/实物确认。"
    },
    {
      "id": "weather-pm-cavity",
      "owner_part_id": "weather-pm-hood",
      "shape": "box",
      "dimensions": {
        "width": 94,
        "height": 64,
        "depth": 64
      },
      "center": [
        120,
        70,
        0
      ],
      "part_ids": [
        "weather-pm-envelope"
      ],
      "source_status": "design_proposed",
      "wall_and_service_note": "净空按名义尺寸定义；圆角、紧固件、密封及制造公差需后续 CAD/实物确认。"
    }
  ]
}
