{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://cad-agent.local/contracts/solidworks-feature-manager.schema.json", "title": "SolidWorks FeatureManager style feature_tree.json", "type": "object", "required": [ "schema_version", "tree_kind", "model", "source", "feature_manager", "rebuild_contract", "validation" ], "properties": { "schema_version": { "const": "1.0" }, "tree_kind": { "const": "solidworks_feature_manager" }, "model": { "type": "object", "required": ["model_id", "units", "document_type"], "properties": { "model_id": {}, "family": {}, "units": { "type": "string" }, "document_type": { "const": "part" } }, "additionalProperties": true }, "source": { "type": "object", "required": [ "authority", "reconstruction_mode", "history_kind", "claims_original_solidworks_history" ], "properties": { "authority": { "const": "designir-3.0" }, "designir_path": {}, "step_path": {}, "parameters_path": {}, "reconstruction_mode": {}, "history_kind": { "enum": [ "authored_semantic", "hybrid_semantic_surface", "inferred_from_step", "unknown" ] }, "backend": {}, "claims_original_solidworks_history": { "type": "boolean" } }, "additionalProperties": true }, "feature_manager": { "type": "object", "required": ["root_id", "standard_root", "nodes"], "properties": { "root_id": { "type": "string" }, "standard_root": { "type": "object" }, "nodes": { "type": "array", "minItems": 1, "items": { "$ref": "#/$defs/node" } } }, "additionalProperties": false }, "rebuild_contract": { "type": "object", "required": ["kind", "entrypoint"], "properties": { "kind": { "enum": ["feature_manager_native", "surfaceir_imported_feature"] }, "entrypoint": { "type": "string" }, "backend": {}, "payload_node": { "type": "string" }, "payload_encoding": { "const": "gzip+base64+json" }, "payload_sha256": { "type": "string" } }, "additionalProperties": true }, "validation": { "type": "object" } }, "$defs": { "node": { "type": "object", "required": [ "id", "order", "solidworks_type", "display_name", "english_name", "children", "inputs", "parameters", "definition", "dimensions", "references", "selection_sets", "operation_spec", "result", "rebuild", "provenance", "confidence", "rebuildable" ], "properties": { "id": { "type": "string", "minLength": 1 }, "order": { "type": "integer", "minimum": 0 }, "solidworks_type": { "enum": [ "Part", "HistoryFolder", "OriginProfileFeature", "RefPlane", "RefAxis", "ProfileFeature", "BossExtrude", "CutExtrude", "Revolve", "RevolvedCut", "HoleWizard", "Fillet", "Chamfer", "LinearPattern", "CircularPattern", "MirrorPattern", "ImportedFeature", "UnsupportedFeature" ] }, "display_name": { "type": "string" }, "english_name": { "type": "string" }, "children": { "type": "array", "items": { "type": "string" } }, "inputs": { "type": "object" }, "parameters": { "type": "array", "items": { "$ref": "#/$defs/parameter" } }, "definition": { "type": "object" }, "dimensions": { "type": "array", "items": { "$ref": "#/$defs/dimension" } }, "references": { "type": "object", "properties": { "parent": {}, "sketch": {}, "plane": {}, "parent_features": { "type": "array", "items": {"type": "string"} }, "child_features": { "type": "array", "items": {"type": "string"} } }, "additionalProperties": true }, "selection_sets": { "type": "object", "properties": { "selected_faces": {"type": "array"}, "selected_edges": {"type": "array"}, "selected_contours": {"type": "array"} }, "additionalProperties": true }, "operation_spec": { "type": "object" }, "result": { "type": "object" }, "rebuild": { "type": "object", "properties": { "suppressed": {"type": "boolean"}, "rollback_order": {"type": "integer"}, "status": {"type": "string"} }, "additionalProperties": true }, "provenance": { "type": "object" }, "confidence": { "type": ["number", "null"] }, "rebuildable": { "type": "boolean" } }, "additionalProperties": false }, "dimension": { "type": "object", "required": ["id", "name", "display_name"], "properties": { "id": {"type": "string"}, "name": {"type": "string"}, "display_name": {"type": "string"}, "value": {}, "default_value": {}, "unit": {}, "parameter_binding": {}, "driven": {"type": "boolean"} }, "additionalProperties": true }, "parameter": { "type": "object", "required": ["id", "name", "display_name", "binding_id"], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "display_name": { "type": "string" }, "value": {}, "default_value": {}, "unit": {}, "binding_id": { "type": "string" }, "editable": { "type": "boolean" }, "edit_state": {}, "source_pointer": { "type": "string" } }, "additionalProperties": true } }, "additionalProperties": false }