{ "schema_version": "2.0", "routing_policy": { "default_backend": null, "selection_basis": [ "native source continuity", "standard factory coverage", "semantic and replay requirements", "geometry vocabulary coverage", "assembly requirements", "validation requirements" ], "uploaded_step_execution_engine": "surfaceir", "uploaded_step_validation_engines": [ "surfaceir_geometry_acceptance", "simplecadapi_brep_compare" ] }, "backends": { "build123d": { "project": "text-to-cad", "runner_skill": "cad", "source_formats": ["py"], "primary_formats": ["step", "stp"], "strengths": [ "general mechanical parts", "machined features", "source-level assemblies", "freeform profiles, lofts, sweeps, and mixed surface workflows", "geometry measurement and validation" ], "preferred_when": [ "the part is a custom bracket, housing, shaft, flange, fixture, or enclosure", "source-level assembly mates or existing build123d Python must be preserved", "the geometry needs custom profiles or surface-heavy construction not covered by a SimpleCADAPI factory" ], "weak_when": [ "a deterministic SimpleCADAPI standard factory covers the requested part", "operation-graph replay, typed semantic tags, units, or tolerance chains are primary requirements" ], "source_of_truth": "build123d Python generator" }, "simplecadapi": { "project": "SimpleCADAPI", "runner_skill": "simplecadapi", "minimum_version": "2.0.2", "source_formats": ["py", "json"], "primary_formats": ["step", "stp"], "strengths": [ "gears, ring gears, racks, bevel gears, and cycloidal discs", "bearings, bolts, nuts, roller-chain sprockets, reducers, and joint actuators", "replayable ModelResult operation graphs and scene packages", "typed semantic tags, topology lineage, and source mapping", "physical units and tolerance-chain validation", "STEP B-Rep inspection, strict comparison, and slice diagnostics", "FreeCAD, Fusion 360, and SolidWorks translation" ], "preferred_when": [ "a standard mechanical factory directly covers the requested family", "replayable model JSON, semantic edit anchors, units, tolerances, or CAD translation are required", "a reusable mechanical product family should become a deterministic library function" ], "weak_when": [ "the request depends on complex freeform surfaces outside the supported operation vocabulary", "an existing build123d generator or source-level build123d assembly must be preserved" ], "source_of_truth": "SimpleCADAPI Python generator and model JSON" } } }