{
  "schemaVersion": "part_modeling_plan_with_functional_faces.v1",
  "partName": "\u6CB9\u6807",
  "partPath": "D:\\Desktop\\\u51CF\u901F\u5668\\\u4E09\u7EF4\\\u6CB9\u6807.SLDPRT",
  "sourceAssembly": {
    "name": "\u4E8C\u7EA7\u51CF\u901F\u5668.SLDASM",
    "path": "D:\\Desktop\\\u51CF\u901F\u5668\\\u4E09\u7EF4\\\u4E8C\u7EA7\u51CF\u901F\u5668.SLDASM"
  },
  "modelingPlan": {
    "planId": "part-feature-audit-\u6CB9\u6807-plan",
    "targetAgent": "solidworks",
    "units": "mm",
    "summary": "Rebuild part from extracted SolidWorks skill flow. steps=30",
    "steps": [
      {
        "id": "step-001",
        "targetAgent": "solidworks",
        "skillName": "create_new_part",
        "name": "\u6CB9\u6807.SLDPRT",
        "description": "\u65B0\u5EFA\u96F6\u4EF6",
        "arguments": {},
        "dependencies": [],
        "acceptance": {}
      },
      {
        "id": "step-002",
        "targetAgent": "solidworks",
        "skillName": "create_front_plane_sketch",
        "name": "\u8349\u56FE1",
        "description": "\u8349\u56FE\u57FA\u51C6=\u524D\u89C6\u57FA\u51C6\u9762 / RefPlane",
        "arguments": {},
        "dependencies": [
          "step-001"
        ],
        "acceptance": {}
      },
      {
        "id": "step-003",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE1",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            0,
            0,
            0
          ],
          "end_model_mm": [
            11,
            0,
            0
          ]
        },
        "dependencies": [
          "step-002"
        ],
        "acceptance": {}
      },
      {
        "id": "step-004",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE1",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            11,
            0,
            0
          ],
          "end_model_mm": [
            11,
            -5,
            0
          ]
        },
        "dependencies": [
          "step-003"
        ],
        "acceptance": {}
      },
      {
        "id": "step-005",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE1",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            11,
            -5,
            0
          ],
          "end_model_mm": [
            4,
            -5,
            0
          ]
        },
        "dependencies": [
          "step-004"
        ],
        "acceptance": {}
      },
      {
        "id": "step-006",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE1",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            4,
            -5,
            0
          ],
          "end_model_mm": [
            4,
            -7,
            0
          ]
        },
        "dependencies": [
          "step-005"
        ],
        "acceptance": {}
      },
      {
        "id": "step-007",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE1",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            4,
            -7,
            0
          ],
          "end_model_mm": [
            6,
            -7,
            0
          ]
        },
        "dependencies": [
          "step-006"
        ],
        "acceptance": {}
      },
      {
        "id": "step-008",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE1",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            6,
            -7,
            0
          ],
          "end_model_mm": [
            6,
            -17,
            0
          ]
        },
        "dependencies": [
          "step-007"
        ],
        "acceptance": {}
      },
      {
        "id": "step-009",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE1",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            6,
            -17,
            0
          ],
          "end_model_mm": [
            0,
            -17,
            0
          ]
        },
        "dependencies": [
          "step-008"
        ],
        "acceptance": {}
      },
      {
        "id": "step-010",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE1",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            0,
            -17,
            0
          ],
          "end_model_mm": [
            0,
            0,
            0
          ]
        },
        "dependencies": [
          "step-009"
        ],
        "acceptance": {}
      },
      {
        "id": "step-011",
        "targetAgent": "solidworks",
        "skillName": "create_revolve_boss_mm",
        "name": "\u65CB\u8F6C1",
        "description": "\u65CB\u8F6C\u51F8\u53F0",
        "arguments": {
          "angle_deg": 360,
          "merge": true,
          "reverse_dir": false,
          "axis_start_model_mm": [
            0,
            -17,
            0
          ],
          "axis_end_model_mm": [
            0,
            0,
            0
          ]
        },
        "dependencies": [
          "step-010"
        ],
        "acceptance": {}
      },
      {
        "id": "step-012",
        "targetAgent": "solidworks",
        "skillName": "select_edges_by_signature",
        "name": "\u5012\u89D21",
        "description": "\u5012\u89D2\u8FB9\u9009\u62E9",
        "arguments": {
          "edge_signatures": [
            {
              "center_mm": [
                0,
                -17,
                0
              ],
              "axis": [
                -0,
                -1,
                -0
              ],
              "radius_mm": 6,
              "curve_type": "circle"
            }
          ],
          "source_feature": "\u5012\u89D21"
        },
        "dependencies": [
          "step-011"
        ],
        "acceptance": {}
      },
      {
        "id": "step-013",
        "targetAgent": "solidworks",
        "skillName": "chamfer_edges_angle_distance_mm",
        "name": "\u5012\u89D21",
        "description": "\u5012\u89D2",
        "arguments": {
          "distance_mm": 1,
          "angle_deg": 45,
          "other_distance_mm": 1,
          "chamfer_type": 1,
          "equal_distance": false
        },
        "dependencies": [
          "step-012"
        ],
        "acceptance": {}
      },
      {
        "id": "step-014",
        "targetAgent": "solidworks",
        "skillName": "create_front_plane_sketch",
        "name": "\u8349\u56FE2",
        "description": "\u8349\u56FE\u57FA\u51C6=\u524D\u89C6\u57FA\u51C6\u9762 / RefPlane",
        "arguments": {},
        "dependencies": [
          "step-013"
        ],
        "acceptance": {}
      },
      {
        "id": "step-015",
        "targetAgent": "solidworks",
        "skillName": "draw_arc_center_start_end_mm",
        "name": "\u8349\u56FE2",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "center_model_mm": [
            11,
            5,
            0
          ],
          "start_model_mm": [
            11,
            10,
            0
          ],
          "end_model_mm": [
            11,
            0,
            0
          ],
          "mid_model_mm": [
            6,
            5,
            0
          ],
          "direction_source": "model_midpoint"
        },
        "dependencies": [
          "step-014"
        ],
        "acceptance": {}
      },
      {
        "id": "step-016",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE2",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            0,
            10,
            0
          ],
          "end_model_mm": [
            13,
            10,
            0
          ]
        },
        "dependencies": [
          "step-015"
        ],
        "acceptance": {}
      },
      {
        "id": "step-017",
        "targetAgent": "solidworks",
        "skillName": "draw_center_line_mm",
        "name": "\u8349\u56FE2",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            0,
            -28.079495,
            0
          ],
          "end_model_mm": [
            0,
            17.069958,
            0
          ]
        },
        "dependencies": [
          "step-016"
        ],
        "acceptance": {}
      },
      {
        "id": "step-018",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE2",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            13,
            10,
            0
          ],
          "end_model_mm": [
            13,
            18,
            0
          ]
        },
        "dependencies": [
          "step-017"
        ],
        "acceptance": {}
      },
      {
        "id": "step-019",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE2",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            13,
            18,
            0
          ],
          "end_model_mm": [
            0,
            18,
            0
          ]
        },
        "dependencies": [
          "step-018"
        ],
        "acceptance": {}
      },
      {
        "id": "step-020",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE2",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            0,
            18,
            0
          ],
          "end_model_mm": [
            0,
            10,
            0
          ]
        },
        "dependencies": [
          "step-019"
        ],
        "acceptance": {}
      },
      {
        "id": "step-021",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE2",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            0,
            5,
            0
          ],
          "end_model_mm": [
            6,
            5,
            0
          ]
        },
        "dependencies": [
          "step-020"
        ],
        "acceptance": {}
      },
      {
        "id": "step-022",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE2",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            0,
            10,
            0
          ],
          "end_model_mm": [
            0,
            0,
            0
          ]
        },
        "dependencies": [
          "step-021"
        ],
        "acceptance": {}
      },
      {
        "id": "step-023",
        "targetAgent": "solidworks",
        "skillName": "draw_line_mm",
        "name": "\u8349\u56FE2",
        "description": "Revolution",
        "arguments": {
          "coordinate_system": "model",
          "start_model_mm": [
            0,
            0,
            0
          ],
          "end_model_mm": [
            11,
            0,
            0
          ]
        },
        "dependencies": [
          "step-022"
        ],
        "acceptance": {}
      },
      {
        "id": "step-024",
        "targetAgent": "solidworks",
        "skillName": "create_revolve_boss_mm",
        "name": "\u65CB\u8F6C2",
        "description": "\u65CB\u8F6C\u51F8\u53F0",
        "arguments": {
          "angle_deg": 360,
          "merge": true,
          "reverse_dir": false,
          "axis_start_model_mm": [
            0,
            -28.079495,
            0
          ],
          "axis_end_model_mm": [
            0,
            17.069958,
            0
          ]
        },
        "dependencies": [
          "step-023"
        ],
        "acceptance": {}
      },
      {
        "id": "step-025",
        "targetAgent": "solidworks",
        "skillName": "select_edges_by_signature",
        "name": "\u5012\u89D22",
        "description": "\u5012\u89D2\u8FB9\u9009\u62E9",
        "arguments": {
          "edge_signatures": [
            {
              "center_mm": [
                0,
                18,
                0
              ],
              "axis": [
                -0,
                -1,
                -0
              ],
              "radius_mm": 13,
              "curve_type": "circle"
            },
            {
              "center_mm": [
                0,
                10,
                0
              ],
              "axis": [
                -0,
                -1,
                -0
              ],
              "radius_mm": 13,
              "curve_type": "circle"
            }
          ],
          "source_feature": "\u5012\u89D22"
        },
        "dependencies": [
          "step-024"
        ],
        "acceptance": {}
      },
      {
        "id": "step-026",
        "targetAgent": "solidworks",
        "skillName": "chamfer_edges_angle_distance_mm",
        "name": "\u5012\u89D22",
        "description": "\u5012\u89D2",
        "arguments": {
          "distance_mm": 1,
          "angle_deg": 45,
          "other_distance_mm": 1,
          "chamfer_type": 1,
          "equal_distance": false
        },
        "dependencies": [
          "step-025"
        ],
        "acceptance": {}
      },
      {
        "id": "step-027",
        "targetAgent": "solidworks",
        "skillName": "create_face_sketch_by_signature",
        "name": "\u8349\u56FE3",
        "description": "\u8349\u56FE\u57FA\u51C6=#6 \u5E73\u9762\u9762 / \u5BBF\u4E3B\u7279\u5F81=\u65CB\u8F6C1",
        "arguments": {
          "reference_kind": "face",
          "reference": "#6 \u5E73\u9762\u9762 / \u5BBF\u4E3B\u7279\u5F81=\u65CB\u8F6C1",
          "face_index": 6,
          "face_index_scope": "SWagent CommonExecutor.ListFaces order",
          "selection_strategy": "create_face_sketch_by_index",
          "host_feature": "\u65CB\u8F6C1",
          "host_step": 2,
          "surface_type": "plane",
          "area_mm2": 65.973446,
          "center_mm": [
            0,
            -17,
            0
          ],
          "box_mm": [
            -5,
            -17,
            -5,
            5,
            -17,
            5
          ],
          "normal": [
            -0,
            -1,
            -0
          ],
          "normal_x": -0,
          "normal_y": -1,
          "normal_z": -0,
          "persist_ref_hex": "983A000003000000FFFEFF0000000000FFFF01000B006D6F466163655265665F6301000000000000000500000000020000000000007DC39425AD49B2547DC39425AD49B2540000FFFF010017006D6F46726F6D536B74456E745375726649645265705F630000FFFF010006006D6F46525F63FFFF01000D006D6F4578744F626A6563745F63FFFF010011006D6F43537472696E6748616E646C655F63FFFEFF1B44003A005C004400650073006B0074006F0070005C00CF511F9068565C00094EF47E5C00B96C07682E0053004C0044005000520054000980FFFEFF02B96C0768020000F2DA255BFFFEFF00FFFEFF00FFFEFF00000020000000000000000000000003000000FFFEFF02D89EA48B0000000000000000C8E0D6985C000000C3DB255B06000000FFFF010013006D6F46696C6C65745375726649645265705F630000058008006500000098DC255B010000000000FFFF01001B006D6F46726F6D536B74456E7433496E745375726649645265705F63000005800800AB000000A3DE255B02000000FFFFFFFF0000000000000000000000000000983A00000000000000000000",
          "entity_type_code": 2,
          "center_x_mm": 0,
          "center_y_mm": -17,
          "center_z_mm": 0,
          "fallback_face_index": 6
        },
        "dependencies": [
          "step-026"
        ],
        "acceptance": {}
      },
      {
        "id": "step-028",
        "targetAgent": "solidworks",
        "skillName": "draw_circle_diameter_mm",
        "name": "\u8349\u56FE3",
        "description": "ICE",
        "arguments": {
          "coordinate_system": "model",
          "center_model_mm": [
            0,
            -17,
            0
          ],
          "diameter_mm": 4
        },
        "dependencies": [
          "step-027"
        ],
        "acceptance": {}
      },
      {
        "id": "step-029",
        "targetAgent": "solidworks",
        "skillName": "exit_sketch",
        "name": "\u8349\u56FE3",
        "description": "\u9000\u51FA\u8349\u56FE",
        "arguments": {},
        "dependencies": [
          "step-028"
        ],
        "acceptance": {}
      },
      {
        "id": "step-030",
        "targetAgent": "solidworks",
        "skillName": "extrude_boss_mm",
        "name": "\u51F8\u53F0-\u62C9\u4F381",
        "description": "\u51F8\u53F0\u62C9\u4F38",
        "arguments": {
          "depth_mm": 90,
          "end_condition_code": 0,
          "direction_source": "ReverseDirection",
          "sketch_normal_model": [
            0,
            -1,
            0
          ],
          "extrude_direction_model": [
            0,
            -1,
            0
          ],
          "direction_coordinate_system": "model",
          "end_condition": "blind"
        },
        "dependencies": [
          "step-029"
        ],
        "acceptance": {}
      }
    ]
  },
  "functionalFaces": [
    {
      "face_role": "cylindrical_mate_face",
      "surface_type": "cylinder",
      "side_tag": "back",
      "source": "verified_from_assembly_mate",
      "verified": true,
      "confidence": 1,
      "source_assembly_component": "\u6CB9\u6807-1",
      "source_mate": "\u540C\u5FC3113",
      "mate_entity_index": 1,
      "source_feature": "mate:\u540C\u5FC3113:1",
      "solidworks_source_feature": "\u65CB\u8F6C1",
      "original_source_assembly_component": "\u6CB9\u6807-1",
      "radius_mm": 6,
      "diameter_mm": 12,
      "area_mm2": 339.292007,
      "center_mm": [
        0,
        -11.5,
        0
      ],
      "axis": [
        -0,
        -1,
        -0
      ],
      "origin_mm": [
        0,
        -17,
        0
      ],
      "axis_point_mm": [
        0,
        -17,
        0
      ],
      "axis_line_point_mm": [
        0,
        -17,
        0
      ],
      "axial_center_mm": 11.5,
      "axial_min_mm": 7,
      "axial_max_mm": 16,
      "bbox_mm": [
        -6,
        -16,
        -6,
        6,
        -7,
        6
      ],
      "geometry_coordinate_system": "part_model",
      "evidence": [
        "mate_type=swMateCONCENTRIC",
        "entity_kind=face",
        "surface_type=cylinder",
        "other_component_text=\u4E0B\u7BB1\u4F53-1 \u4E0B\u7BB1\u4F53"
      ]
    },
    {
      "face_role": "planar_contact_face",
      "surface_type": "plane",
      "side_tag": "back",
      "source": "verified_from_assembly_mate",
      "verified": true,
      "confidence": 1,
      "source_assembly_component": "\u6CB9\u6807-1",
      "source_mate": "\u91CD\u5408105",
      "mate_entity_index": 1,
      "source_feature": "mate:\u91CD\u5408105:1",
      "solidworks_source_feature": "\u65CB\u8F6C1",
      "original_source_assembly_component": "\u6CB9\u6807-1",
      "area_mm2": 329.867229,
      "center_mm": [
        0,
        -5,
        0
      ],
      "normal": [
        -0,
        -1,
        -0
      ],
      "bbox_mm": [
        -11,
        -5,
        -11,
        11,
        -5,
        11
      ],
      "geometry_coordinate_system": "part_model",
      "evidence": [
        "mate_type=swMateCOINCIDENT",
        "entity_kind=face",
        "surface_type=plane",
        "other_component_text=\u4E0B\u7BB1\u4F53-1 \u4E0B\u7BB1\u4F53"
      ]
    }
  ],
  "matePorts": [
    {
      "port_role": "cylindrical_mate_face:back",
      "local_face_role": "cylindrical_mate_face",
      "local_side_tag": "back",
      "mate_type": "Concentric",
      "alignment": "AntiAligned",
      "counterpart_part_name": "\u4E0B\u7BB1\u4F53",
      "counterpart_part_path": "D:\\Desktop\\\u51CF\u901F\u5668\\\u4E09\u7EF4\\\u4E0B\u7BB1\u4F53.SLDPRT",
      "counterpart_face_role": "cylindrical_mate_face",
      "counterpart_side_tag": "left",
      "counterpart_port_role": "cylindrical_mate_face:left",
      "source": "verified_from_assembly_mate",
      "verified": true,
      "confidence": 1,
      "source_assembly_component": "\u6CB9\u6807-1",
      "source_mate": "\u540C\u5FC3113",
      "mate_entity_index": 1,
      "original_source_assembly_component": "\u6CB9\u6807-1"
    },
    {
      "port_role": "planar_contact_face:back",
      "local_face_role": "planar_contact_face",
      "local_side_tag": "back",
      "mate_type": "Coincident",
      "alignment": "AntiAligned",
      "counterpart_part_name": "\u4E0B\u7BB1\u4F53",
      "counterpart_part_path": "D:\\Desktop\\\u51CF\u901F\u5668\\\u4E09\u7EF4\\\u4E0B\u7BB1\u4F53.SLDPRT",
      "counterpart_face_role": "planar_contact_face",
      "counterpart_side_tag": "left",
      "counterpart_port_role": "planar_contact_face:left",
      "source": "verified_from_assembly_mate",
      "verified": true,
      "confidence": 1,
      "source_assembly_component": "\u6CB9\u6807-1",
      "source_mate": "\u91CD\u5408105",
      "mate_entity_index": 1,
      "original_source_assembly_component": "\u6CB9\u6807-1"
    }
  ],
  "note": "functionalFaces and matePorts are verified from assembly mates and written back to the executable part modeling plan for knowledge-base reuse."
}