{ "source": "068453.solidworks_evidence_v2.json", "part_id": "068453", "source_status": "complete_with_blockers", "source_self_validation": { "schema": "solidworks.cad_evidence.self_validation.v1", "passed": false, "meaning": "complete reusable extraction; not a claim of backend feature support or 1:1 rebuild", "counts": { "features": 95, "typed_body_features": 11, "direct_semantic_features": 9, "typed_features_requiring_history": 2, "complete_history_features": 2, "spline_segments": 0, "incomplete_splines": 0, "exact_bcurves": 0, "incomplete_bcurves": 0, "exact_bsurfaces": 0, "incomplete_bsurfaces": 0, "exact_trimmed_faces": 0, "incomplete_trimmed_faces": 0, "missing_exact_geometry_catalog_references": 0, "incomplete_topology_records": 0, "skipped_getter_signatures": 0 }, "feature_contracts": [ { "feature": "凸台-拉伸1", "family": "extrude", "passed": true, "blockers": [] }, { "feature": "切除-拉伸1", "family": "extrude", "passed": true, "blockers": [] }, { "feature": "切除-拉伸2", "family": "extrude", "passed": true, "blockers": [] }, { "feature": "切除-拉伸3", "family": "extrude", "passed": true, "blockers": [] }, { "feature": "切除-拉伸4", "family": "extrude", "passed": true, "blockers": [] }, { "feature": "切除-拉伸5", "family": "extrude", "passed": true, "blockers": [] }, { "feature": "切除-拉伸6", "family": "extrude", "passed": true, "blockers": [] }, { "feature": "旋转1", "family": "revolve", "passed": false, "blockers": [ "revolve has no captured semantic selections" ] }, { "feature": "旋转2", "family": "revolve", "passed": false, "blockers": [ "revolve has no captured semantic selections" ] }, { "feature": "切除-拉伸7", "family": "extrude", "passed": true, "blockers": [] }, { "feature": "切除-拉伸8", "family": "extrude", "passed": true, "blockers": [] } ], "blockers": [ "旋转1: revolve has no captured semantic selections", "旋转2: revolve has no captured semantic selections" ] }, "step_inference": { "available": true, "face_count": 58, "surface_counts": { "cylinder": 38, "plane": 18, "torus": 2 }, "axis_count": 38, "repeat_spacings_mm": [ { "spacing_mm": 12.4122, "pair_count": 6 }, { "spacing_mm": 26.9455, "pair_count": 4 }, { "spacing_mm": 25.1806, "pair_count": 4 }, { "spacing_mm": 12.25, "pair_count": 4 }, { "spacing_mm": 22.0, "pair_count": 4 }, { "spacing_mm": 18.0636, "pair_count": 4 }, { "spacing_mm": 29.9715, "pair_count": 4 }, { "spacing_mm": 2.0, "pair_count": 3 }, { "spacing_mm": 24.0, "pair_count": 2 }, { "spacing_mm": 25.0, "pair_count": 2 }, { "spacing_mm": 26.0, "pair_count": 2 }, { "spacing_mm": 36.0694, "pair_count": 2 } ], "metrics": { "bounding_box_mm": [ -22.5, -10.0, -13.0000001, 22.5, 10.0, 13.0000001 ], "volume_mm3": 4485.090183823, "surface_area_mm2": 4849.17864972, "solid_count": 1, "face_count": 58, "edge_count": 168, "vertex_count": 112 }, "error": null, "truth_comparison": { "expected_from_evidence": { "bounding_box_mm": [ -22.5, -10.0, -13.0, 22.5, 10.0, 13.0 ], "volume_mm3": 4485.091170688, "surface_area_mm2": 4849.178857914, "solid_count": 1, "face_count": 44, "edge_count": 116, "vertex_count": 72 }, "comparisons": { "volume_mm3": { "expected": 4485.091170688, "actual": 4485.090183823, "absolute_delta": 0.0009868649995041778, "within_tolerance": true }, "surface_area_mm2": { "expected": 4849.178857914, "actual": 4849.17864972, "absolute_delta": 0.00020819400015170686, "within_tolerance": true }, "bounding_box_mm": { "expected": [ -22.5, -10.0, -13.0, 22.5, 10.0, 13.0 ], "actual": [ -22.5, -10.0, -13.0000001, 22.5, 10.0, 13.0000001 ], "max_absolute_delta": 9.99999993922529e-08, "within_tolerance": true }, "solid_count": { "expected": 1, "actual": 1, "matches": true }, "face_count": { "expected": 44, "actual": 58, "matches": false }, "edge_count": { "expected": 116, "actual": 168, "matches": false }, "vertex_count": { "expected": 72, "actual": 112, "matches": false } }, "numeric_geometry_match": true, "topology_counts_match": false } }, "features": [ { "feature_id": "f_001", "source_name": "前视基准面", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_002", "source_name": "上视基准面", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_003", "source_name": "右视基准面", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_004", "source_name": "凸台-拉伸1", "atomic_id": "extrude_add_two_sided", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_005", "source_name": "切除-拉伸1", "atomic_id": "extrude_cut_blind", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_006", "source_name": "切除-拉伸2", "atomic_id": "extrude_cut_blind", "execution_status": "supported", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_007", "source_name": "基准面4", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_008", "source_name": "切除-拉伸3", "atomic_id": "extrude_cut_blind", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_009", "source_name": "基准面5", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_010", "source_name": "切除-拉伸4", "atomic_id": "extrude_cut_blind", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_011", "source_name": "切除-拉伸5", "atomic_id": "extrude_cut_blind", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_012", "source_name": "切除-拉伸6", "atomic_id": "extrude_cut_blind", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_013", "source_name": "基准面6", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_014", "source_name": "旋转1", "atomic_id": "revolve_add", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_015", "source_name": "旋转2", "atomic_id": "revolve_add", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_016", "source_name": "切除-拉伸7", "atomic_id": "extrude_cut_blind", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_017", "source_name": "切除-拉伸8", "atomic_id": "extrude_cut_blind", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_018", "source_name": "基准面7", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_019", "source_name": "基准面8", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_020", "source_name": "clip_l_to_clip_r XY", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_021", "source_name": "clip_l_to_clip_r XZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_022", "source_name": "clip_l_to_clip_r YZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_023", "source_name": "clip_l_to_clip_r X", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_024", "source_name": "clip_l_to_clip_r Y", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_025", "source_name": "clip_l_to_clip_r Z", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_026", "source_name": "clip_r_to_clip_l XY", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_027", "source_name": "clip_r_to_clip_l XZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_028", "source_name": "clip_r_to_clip_l YZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_029", "source_name": "clip_r_to_clip_l X", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_030", "source_name": "clip_r_to_clip_l Y", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_031", "source_name": "clip_r_to_clip_l Z", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_032", "source_name": "fixed_end_left XY", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_033", "source_name": "fixed_end_left XZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_034", "source_name": "fixed_end_left YZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_035", "source_name": "fixed_end_left X", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_036", "source_name": "fixed_end_left Y", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_037", "source_name": "fixed_end_left Z", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_038", "source_name": "fixed_end_right XY", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_039", "source_name": "fixed_end_right XZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_040", "source_name": "fixed_end_right YZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_041", "source_name": "fixed_end_right X", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_042", "source_name": "fixed_end_right Y", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_043", "source_name": "fixed_end_right Z", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_044", "source_name": "clip_to_dummy XY", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_045", "source_name": "clip_to_dummy XZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_046", "source_name": "clip_to_dummy YZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_047", "source_name": "clip_to_dummy X", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_048", "source_name": "clip_to_dummy Y", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_049", "source_name": "clip_to_dummy Z", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_050", "source_name": "to_bracket_left XY", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_051", "source_name": "to_bracket_left XZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_052", "source_name": "to_bracket_left YZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_053", "source_name": "to_bracket_left X", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_054", "source_name": "to_bracket_left Y", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_055", "source_name": "to_bracket_left Z", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_056", "source_name": "to_bracket_right XY", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_057", "source_name": "to_bracket_right XZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_058", "source_name": "to_bracket_right YZ", "atomic_id": "reference_plane", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_059", "source_name": "to_bracket_right X", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_060", "source_name": "to_bracket_right Y", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 }, { "feature_id": "f_061", "source_name": "to_bracket_right Z", "atomic_id": "reference_axis", "execution_status": "deferred", "unresolved": [], "step_inferred_selector_count": 0 } ], "semantic_validation": { "schema_version": "1.1.0", "feature_count": 61, "sketch_count": 19, "deferred_feature_ids": [ "f_001", "f_002", "f_004", "f_007", "f_009", "f_018", "f_019", "f_003", "f_008", "f_010", "f_011", "f_012", "f_016", "f_017", "f_020", "f_005", "f_013", "f_021", "f_014", "f_015", "f_022", "f_023", "f_024", "f_025", "f_026", "f_027", "f_028", "f_029", "f_030", "f_031", "f_032", "f_033", "f_034", "f_035", "f_036", "f_037", "f_038", "f_039", "f_040", "f_041", "f_042", "f_043", "f_044", "f_045", "f_046", "f_047", "f_048", "f_049", "f_050", "f_051", "f_052", "f_053", "f_054", "f_055", "f_056", "f_057", "f_058", "f_059", "f_060", "f_061" ], "unresolved": [], "future_rebuild_ready": true } }