feat: unify CAD workflows on DesignIR 3.0

This commit is contained in:
Jerry
2026-07-28 14:41:26 +08:00
parent 6e33bc0e11
commit b5738e9109
36 changed files with 9690 additions and 1305 deletions
@@ -37,7 +37,7 @@ class CadRouterTests(unittest.TestCase):
self.assertEqual(
{
"primary_format": "step",
"editable_contract": "DesignIR 2.0",
"editable_contract": "DesignIR 3.0",
},
result["artifact_contract"],
)
@@ -345,6 +345,26 @@ class CadRouterTests(unittest.TestCase):
self.assertTrue(
plan["experience_query_plan"]["requires_source_inspection"]
)
self.assertEqual(
"DesignIR 3.0", result["artifact_contract"]["editable_contract"]
)
self.assertEqual(
"DesignIR 3.0 / SurfaceIR",
result["execution_adapter"]["runtime"],
)
self.assertEqual(
"surfaceir_runtime_conditioned",
result["experience_context"]["selection_policy"],
)
self.assertGreater(
len(result["experience_context"]["experiences"]), 0
)
def test_execute_requires_step_source_and_task_directory(self) -> None:
args = self.parse("生成一个法兰", "--execute")
result = route_module.route(args)
with self.assertRaisesRegex(ValueError, "requires --edit-source"):
route_module.execute_reconstruction(args, result)
def test_native_generator_is_preferred_for_modification(self) -> None:
result = route_module.route(