simplecadapi 2.2.4__tar.gz → 2.2.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (783) hide show
  1. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/PKG-INFO +13 -9
  2. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/README.md +12 -8
  3. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/SKILL.md +13 -5
  4. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/editor-collaboration.md +10 -4
  5. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/sketch-and-features.md +4 -0
  6. simplecadapi-2.2.5/docs/updates/2.2.5.md +51 -0
  7. simplecadapi-2.2.5/docs/updates/2.2.5.zh-CN.md +41 -0
  8. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/pyproject.toml +1 -1
  9. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/cli.py +94 -13
  10. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/server.py +69 -6
  11. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/inspect.py +17 -0
  12. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/render.py +3 -0
  13. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/render_worker.py +3 -0
  14. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/_marimo.py +4 -1
  15. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/cli.py +38 -5
  16. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/runner.py +89 -15
  17. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/.gitignore +0 -0
  18. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/LICENSE +0 -0
  19. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/MANIFEST.in +0 -0
  20. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/landing.md +0 -0
  21. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/LICENSE.txt +0 -0
  22. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/README.md +0 -0
  23. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/SDK_OVERVIEW.md +0 -0
  24. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/discipline/assembly-positioning.md +0 -0
  25. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/discipline/datums-and-coordinate-systems.md +0 -0
  26. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/discipline/failure-and-repair.md +0 -0
  27. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/discipline/feature-ordering.md +0 -0
  28. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/discipline/feature-tree-convention.md +0 -0
  29. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/discipline/geometric-validation.md +0 -0
  30. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/discipline/manufacturing-boundaries.md +0 -0
  31. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/discipline/mechanical-modeling.md +0 -0
  32. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/discipline/requirement-and-cad-brief.md +0 -0
  33. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Assembly.md +0 -0
  34. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/AssemblyBuildResult.md +0 -0
  35. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/BRepComparison.md +0 -0
  36. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/BRepEntityError.md +0 -0
  37. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/BRepInspection.md +0 -0
  38. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/BRepModel.md +0 -0
  39. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/BSplineFitResult.md +0 -0
  40. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/CaptureResult.md +0 -0
  41. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/CellReport.md +0 -0
  42. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/CenterDecl.md +0 -0
  43. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Component.md +0 -0
  44. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Connector.md +0 -0
  45. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ConnectorAnchor.md +0 -0
  46. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ConnectorRef.md +0 -0
  47. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Const.md +0 -0
  48. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Constraint.md +0 -0
  49. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ConstraintReport.md +0 -0
  50. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ConstraintResidual.md +0 -0
  51. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/DatumDecl.md +0 -0
  52. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/DimDecl.md +0 -0
  53. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Dimension.md +0 -0
  54. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/DimensionTolerance.md +0 -0
  55. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/DrawingCalibration.md +0 -0
  56. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/DrawingMeasurements.md +0 -0
  57. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/DrawingSectionDimensions.md +0 -0
  58. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/DrawingStrokes.md +0 -0
  59. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/DrawingSummary.md +0 -0
  60. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/DrawingText.md +0 -0
  61. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/EntityInspectionParity.md +0 -0
  62. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/EvaluationConfig.md +0 -0
  63. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Expr.md +0 -0
  64. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ExpressionGraph.md +0 -0
  65. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/FileInput.md +0 -0
  66. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/FreeCADTranslator.md +0 -0
  67. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Fusion360Translator.md +0 -0
  68. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/GeometryRef.md +0 -0
  69. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/GraphSession.md +0 -0
  70. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/InspectionSummaryComparison.md +0 -0
  71. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/LeaderDecl.md +0 -0
  72. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Material.md +0 -0
  73. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/NotebookConfig.md +0 -0
  74. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/NotebookRun.md +0 -0
  75. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Part.md +0 -0
  76. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/PartBuildResult.md +0 -0
  77. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Placement.md +0 -0
  78. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ProductMJCFExportReport.md +0 -0
  79. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ProductOBJExportReport.md +0 -0
  80. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ProductPackage.md +0 -0
  81. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ProductPackageError.md +0 -0
  82. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ProductSTEPExportReport.md +0 -0
  83. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ProductSTLExportReport.md +0 -0
  84. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/PublicConnectorRef.md +0 -0
  85. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/README.md +0 -0
  86. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Resolved.md +0 -0
  87. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ScalarLimit.md +0 -0
  88. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SectionEvaluationConfig.md +0 -0
  89. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SemanticDelta.md +0 -0
  90. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SemanticRef.md +0 -0
  91. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SheetDecl.md +0 -0
  92. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SheetPlan.md +0 -0
  93. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SimpleCADError.md +0 -0
  94. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Sketch.md +0 -0
  95. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SketchConstraint.md +0 -0
  96. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SketchConstraintDiagnostic.md +0 -0
  97. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SketchRef.md +0 -0
  98. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SketchSolveResult.md +0 -0
  99. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SliceSpec.md +0 -0
  100. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SolidWorksTranslator.md +0 -0
  101. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SurfaceBoundary.md +0 -0
  102. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/SurfaceFillingSettings.md +0 -0
  103. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ToleranceAnalysis.md +0 -0
  104. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ToleranceAnalysisError.md +0 -0
  105. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ToleranceCheck.md +0 -0
  106. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ToleranceContribution.md +0 -0
  107. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ToleranceGraph.md +0 -0
  108. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ToleranceReport.md +0 -0
  109. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ToleranceRequirement.md +0 -0
  110. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ToleranceValidationError.md +0 -0
  111. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Unit.md +0 -0
  112. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/UnitValidationError.md +0 -0
  113. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/Var.md +0 -0
  114. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ViewDecl.md +0 -0
  115. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_arc_rsketch.md +0 -0
  116. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_belt_constraint_rassembly.md +0 -0
  117. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_bspline_rsketch.md +0 -0
  118. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_circle_rsketch.md +0 -0
  119. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_component_rassembly.md +0 -0
  120. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_connector_rpart.md +0 -0
  121. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_ellipse_rsketch.md +0 -0
  122. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_fixed_constraint_rassembly.md +0 -0
  123. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_gear_constraint_rassembly.md +0 -0
  124. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_line_rsketch.md +0 -0
  125. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_point_rsketch.md +0 -0
  126. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_prismatic_constraint_rassembly.md +0 -0
  127. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_rack_pinion_constraint_rassembly.md +0 -0
  128. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/add_revolute_constraint_rassembly.md +0 -0
  129. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/analyze_tolerance.md +0 -0
  130. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/and_.md +0 -0
  131. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/apply_tag.md +0 -0
  132. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/apply_tag_rselection.md +0 -0
  133. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/assemble.md +0 -0
  134. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/assess_dimension_rverdict.md +0 -0
  135. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/assign_material_rpart.md +0 -0
  136. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/build_section_annotation_rrecord.md +0 -0
  137. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/calibrate_drawing_scale_rcalibration.md +0 -0
  138. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/canonical_frame.md +0 -0
  139. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/canonical_unit_for_dimension.md +0 -0
  140. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/capture.md +0 -0
  141. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/chamfer_rsolid.md +0 -0
  142. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/check_tolerance.md +0 -0
  143. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/classify_benchmark_result.md +0 -0
  144. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/clear_step_model_cache_rnone.md +0 -0
  145. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_boundary_distance_rdescriptor.md +0 -0
  146. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_entities_rdescriptor.md +0 -0
  147. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_global_properties_rdescriptor.md +0 -0
  148. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_inspections_rinspectionsummarycomparison.md +0 -0
  149. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_material_rdescriptor.md +0 -0
  150. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_material_region_rdescriptor.md +0 -0
  151. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_model_to_inspection_rentityinspectionparity.md +0 -0
  152. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_sections_batch_rdescriptor.md +0 -0
  153. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_sections_rdescriptor.md +0 -0
  154. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_shape_slices_rslicecomparison.md +0 -0
  155. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_shapes_rbrepcomparison.md +0 -0
  156. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_step_slices_rslicecomparison.md +0 -0
  157. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_step_to_inspection_rentityinspectionparity.md +0 -0
  158. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/compare_steps_rbrepcomparison.md +0 -0
  159. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/const_function.md +0 -0
  160. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_angle_rsketch.md +0 -0
  161. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_coincident_rsketch.md +0 -0
  162. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_collinear_rsketch.md +0 -0
  163. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_concentric_rsketch.md +0 -0
  164. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_connect_rsketch.md +0 -0
  165. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_diameter_rsketch.md +0 -0
  166. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_distance_rsketch.md +0 -0
  167. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_distance_x_rsketch.md +0 -0
  168. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_distance_y_rsketch.md +0 -0
  169. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_equal_length_rsketch.md +0 -0
  170. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_equal_radius_rsketch.md +0 -0
  171. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_fix_rsketch.md +0 -0
  172. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_horizontal_rsketch.md +0 -0
  173. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_length_rsketch.md +0 -0
  174. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_line_distance_rsketch.md +0 -0
  175. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_major_radius_rsketch.md +0 -0
  176. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_midpoint_points_rsketch.md +0 -0
  177. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_midpoint_rsketch.md +0 -0
  178. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_minor_radius_rsketch.md +0 -0
  179. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_mirror_rsketch.md +0 -0
  180. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_normal_rsketch.md +0 -0
  181. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_parallel_rsketch.md +0 -0
  182. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_perpendicular_rsketch.md +0 -0
  183. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_point_on_rsketch.md +0 -0
  184. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_points_horizontal_rsketch.md +0 -0
  185. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_points_vertical_rsketch.md +0 -0
  186. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_radius_rsketch.md +0 -0
  187. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_symmetric_rsketch.md +0 -0
  188. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_tangent_rsketch.md +0 -0
  189. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/constrain_vertical_rsketch.md +0 -0
  190. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/convert_value.md +0 -0
  191. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/copy_step_region_rpath.md +0 -0
  192. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/cut_rsolid.md +0 -0
  193. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/draft_rsolid.md +0 -0
  194. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/evaluate_reconstruction_rdescriptor.md +0 -0
  195. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/explain_tag.md +0 -0
  196. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/export_graph_json.md +0 -0
  197. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/export_model_json.md +0 -0
  198. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/export_model_json_to_solidworks_step.md +0 -0
  199. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/export_product_package_to_mjcf.md +0 -0
  200. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/export_product_package_to_obj.md +0 -0
  201. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/export_product_package_to_step.md +0 -0
  202. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/export_product_package_to_stl.md +0 -0
  203. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/export_session_json.md +0 -0
  204. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/expression_uses_units.md +0 -0
  205. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/extract_drawing_primitives_rstrokes.md +0 -0
  206. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/extract_drawing_text_rwords.md +0 -0
  207. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/extrude_rsolid.md +0 -0
  208. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/extrude_taper_rsolid.md +0 -0
  209. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/extrude_until_rsolid.md +0 -0
  210. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/file_input.md +0 -0
  211. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/fill_holes_rshell.md +0 -0
  212. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/fillet_rsolid.md +0 -0
  213. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/fit_cubic_bspline_control_points.md +0 -0
  214. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/fit_face_analytic_rdescriptor.md +0 -0
  215. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/fit_point_grid_rface.md +0 -0
  216. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/free_boundaries_rwirelist.md +0 -0
  217. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/geo.md +0 -0
  218. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/get_active_session.md +0 -0
  219. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/get_sketch_entity_rsketchref.md +0 -0
  220. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/get_sketch_point_rsketchref.md +0 -0
  221. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/get_unit.md +0 -0
  222. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/ground_component_rassembly.md +0 -0
  223. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/helical_sweep_rsolid.md +0 -0
  224. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/identity_placement_rplacement.md +0 -0
  225. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/import_graph_json.md +0 -0
  226. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/import_model_json.md +0 -0
  227. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/import_session_json.md +0 -0
  228. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/index_shape_rbrepmodel.md +0 -0
  229. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/infer_dimension.md +0 -0
  230. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_assembly_constraints_rconstraintreport.md +0 -0
  231. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_benchmark_step.md +0 -0
  232. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_difference_regions_rdescriptor.md +0 -0
  233. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_drawing_coordinates_rreport.md +0 -0
  234. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_drawing_rsummary.md +0 -0
  235. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_face_boundaries_rdescriptor.md +0 -0
  236. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_manufacturing_hints_rdescriptor.md +0 -0
  237. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_nearby_entities_rdescriptor.md +0 -0
  238. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_point_rdescriptor.md +0 -0
  239. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_section_rdescriptor.md +0 -0
  240. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_shape_rbrepinspection.md +0 -0
  241. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_sketch_rsketchresult.md +0 -0
  242. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_step_components_rdescriptorlist.md +0 -0
  243. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_step_entity_rdescriptor.md +0 -0
  244. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_step_rbrepinspection.md +0 -0
  245. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_step_rsummary.md +0 -0
  246. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_topology_neighborhood_rdescriptor.md +0 -0
  247. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/inspect_topology_rdescriptor.md +0 -0
  248. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/intersect_rsolid.md +0 -0
  249. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/linear_pattern_rsolidlist.md +0 -0
  250. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/list_tags.md +0 -0
  251. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/load_brep_region_rshell.md +0 -0
  252. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/load_brep_region_rsolid.md +0 -0
  253. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/load_step_rbrepmodel.md +0 -0
  254. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/load_step_rshape.md +0 -0
  255. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/loft_rshell.md +0 -0
  256. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/loft_rsolid.md +0 -0
  257. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_2d_cut_rface.md +0 -0
  258. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_2d_intersect_rface.md +0 -0
  259. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_2d_union_rface.md +0 -0
  260. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_angle_arc_redge.md +0 -0
  261. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_angle_arc_rwire.md +0 -0
  262. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_assembly_rassembly.md +0 -0
  263. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_bezier_surface_rface.md +0 -0
  264. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_box_rsolid.md +0 -0
  265. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_center_slice_specs_rslicespeclist.md +0 -0
  266. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_circle_redge.md +0 -0
  267. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_circle_rface.md +0 -0
  268. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_circle_rwire.md +0 -0
  269. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_compound_from_assembly_rcompound.md +0 -0
  270. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_cone_rsolid.md +0 -0
  271. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_connector_ref_rconnectorref.md +0 -0
  272. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_cylinder_rsolid.md +0 -0
  273. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_cylindrical_surface_rface.md +0 -0
  274. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_edge_connector_rconnector.md +0 -0
  275. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_ellipse_redge.md +0 -0
  276. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_ellipse_rface.md +0 -0
  277. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_ellipse_rwire.md +0 -0
  278. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_face_connector_rconnector.md +0 -0
  279. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_face_from_sketch_rface.md +0 -0
  280. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_face_from_wire_rface.md +0 -0
  281. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_face_from_wires_rface.md +0 -0
  282. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_gordon_surface_rface.md +0 -0
  283. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_helix_redge.md +0 -0
  284. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_helix_rwire.md +0 -0
  285. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_interpolated_spline_redge.md +0 -0
  286. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_interpolated_spline_rwire.md +0 -0
  287. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_line_redge.md +0 -0
  288. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_material_rmaterial.md +0 -0
  289. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_part_rpart.md +0 -0
  290. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_periodic_spline_rwire.md +0 -0
  291. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_placement_connector_rconnector.md +0 -0
  292. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_placement_rplacement.md +0 -0
  293. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_point_rvertex.md +0 -0
  294. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_polyline_rwire.md +0 -0
  295. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_rectangle_rface.md +0 -0
  296. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_rectangle_rwire.md +0 -0
  297. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_ruled_surface_rface.md +0 -0
  298. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_scalar_limit_rscalarlimit.md +0 -0
  299. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_segment_redge.md +0 -0
  300. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_segment_rwire.md +0 -0
  301. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_sketch_rsketch.md +0 -0
  302. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_solid_from_shell_rsolid.md +0 -0
  303. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_sphere_rsolid.md +0 -0
  304. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_spline_redge.md +0 -0
  305. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_spline_rwire.md +0 -0
  306. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_surface_patch_rface.md +0 -0
  307. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_three_point_arc_redge.md +0 -0
  308. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_three_point_arc_rwire.md +0 -0
  309. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_vertex_connector_rconnector.md +0 -0
  310. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_wire_from_edges_rwire.md +0 -0
  311. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/make_wire_from_sketch_rwire.md +0 -0
  312. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/measure_constraint_residual_rconstraintresidual.md +0 -0
  313. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/measure_drawing_rmeasurements.md +0 -0
  314. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/measure_entity_relation_rdescriptor.md +0 -0
  315. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/measure_model_section_rdimensions.md +0 -0
  316. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/measure_shape_mass_rtuple.md +0 -0
  317. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/meta.md +0 -0
  318. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/mirror_shape.md +0 -0
  319. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/not_.md +0 -0
  320. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/notebook_id.md +0 -0
  321. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/offset_rsolid.md +0 -0
  322. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/operation_event.md +0 -0
  323. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/or_.md +0 -0
  324. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/origin_role.md +0 -0
  325. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/output_role.md +0 -0
  326. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/part_function.md +0 -0
  327. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/place_component_rassembly.md +0 -0
  328. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/placement_frame_mm.md +0 -0
  329. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/placement_from_canonical.md +0 -0
  330. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/placement_ticks.md +0 -0
  331. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/radial_pattern_rsolidlist.md +0 -0
  332. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_drawing_view_rpath.md +0 -0
  333. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_entity_kind_maps_rpath.md +0 -0
  334. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_entity_map_rpath.md +0 -0
  335. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_manufacturing_hints_rpath.md +0 -0
  336. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_model_section_rpath.md +0 -0
  337. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_plan.md +0 -0
  338. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_region_rpath.md +0 -0
  339. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_screenshot_rpath.md +0 -0
  340. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_shape_views_rpath.md +0 -0
  341. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_step_comparison_rpath.md +0 -0
  342. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_step_components_colored_rpath.md +0 -0
  343. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_step_components_rpath.md +0 -0
  344. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/render_step_views_rpath.md +0 -0
  345. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/replay_graph.md +0 -0
  346. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/replay_model_json.md +0 -0
  347. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/revolve_rsolid.md +0 -0
  348. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/rotate_shape.md +0 -0
  349. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/run_comparison_bundle.md +0 -0
  350. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/run_notebook.md +0 -0
  351. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/scale_rsolid.md +0 -0
  352. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/select.md +0 -0
  353. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/select_edges_by_tag.md +0 -0
  354. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/select_faces_by_tag.md +0 -0
  355. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/select_region_entities_rdescriptor.md +0 -0
  356. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/set_public_connector_rassembly.md +0 -0
  357. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/sew_faces_rshell.md +0 -0
  358. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/shell_rsolid.md +0 -0
  359. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/shells.md +0 -0
  360. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/solve_assembly_constraints_rassembly.md +0 -0
  361. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/source_binding.md +0 -0
  362. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/source_topology.md +0 -0
  363. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/summarize_dimension_coverage_rreport.md +0 -0
  364. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/suspend_graph_recording.md +0 -0
  365. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/sweep_multisection_rsolid.md +0 -0
  366. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/sweep_rsolid.md +0 -0
  367. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/tag.md +0 -0
  368. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/track_section_contours_rdescriptor.md +0 -0
  369. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/transform_rsolid.md +0 -0
  370. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/translate_model_json_to_fcstd.md +0 -0
  371. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/translate_model_json_to_freecad_script.md +0 -0
  372. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/translate_model_json_to_solidworks_script.md +0 -0
  373. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/translate_product_package_to_fcstd.md +0 -0
  374. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/translate_product_package_to_freecad_script.md +0 -0
  375. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/translate_product_package_to_fusion360_script.md +0 -0
  376. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/translate_product_package_to_solidworks_script.md +0 -0
  377. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/translate_shape.md +0 -0
  378. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/trim_surface_rface.md +0 -0
  379. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/twisted_sweep_rsolid.md +0 -0
  380. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/unground_component_rassembly.md +0 -0
  381. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/union_rsolid.md +0 -0
  382. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/use.md +0 -0
  383. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/validate_placement_ticks.md +0 -0
  384. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/validate_section_annotations_rreport.md +0 -0
  385. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/validate_step_roundtrip_rdescriptor.md +0 -0
  386. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/value.md +0 -0
  387. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/api/var_function.md +0 -0
  388. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/README.md +0 -0
  389. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/compound.md +0 -0
  390. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/coordinate_system.md +0 -0
  391. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/declarative_constraints.md +0 -0
  392. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/dimension-tolerance-chains.md +0 -0
  393. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/edge.md +0 -0
  394. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/face.md +0 -0
  395. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/operation_graph_json_spec.md +0 -0
  396. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/part_assembly_development_plan.md +0 -0
  397. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/physical-units.md +0 -0
  398. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/rearchitecture_2_0.md +0 -0
  399. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/rearchitecture_2_0_requirements.md +0 -0
  400. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/serialization/README.md +0 -0
  401. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/serialization/expressions-and-replay.md +0 -0
  402. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/serialization/features-booleans-transforms.md +0 -0
  403. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/serialization/primitives-and-profiles.md +0 -0
  404. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/serialization/scalar-fields.md +0 -0
  405. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/shell.md +0 -0
  406. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/simple_workplane.md +0 -0
  407. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/solid.md +0 -0
  408. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/tagged_mixin.md +0 -0
  409. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/vertex.md +0 -0
  410. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/core/wire.md +0 -0
  411. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/guides/README.md +0 -0
  412. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/guides/notebook-runtime.md +0 -0
  413. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/guides/reconstruction-agent-strategy.md +0 -0
  414. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/guides/reconstruction-agent-test-prompt.md +0 -0
  415. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/README.md +0 -0
  416. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/build_ball_bearing.md +0 -0
  417. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_ball_bearing_rassembly.md +0 -0
  418. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_cycloidal_disc_rsolid.md +0 -0
  419. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_helical_gear_rsolid.md +0 -0
  420. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_helical_rack_rsolid.md +0 -0
  421. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_helical_ring_gear_rsolid.md +0 -0
  422. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_herringbone_gear_rsolid.md +0 -0
  423. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_herringbone_rack_rsolid.md +0 -0
  424. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_herringbone_ring_gear_rsolid.md +0 -0
  425. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_spur_gear_rsolid.md +0 -0
  426. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_spur_rack_rsolid.md +0 -0
  427. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_spur_ring_gear_rsolid.md +0 -0
  428. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/docs/stdlib/make_straight_bevel_gear_rsolid.md +0 -0
  429. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/addon-development.md +0 -0
  430. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/assembly-and-product.md +0 -0
  431. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/drawing-inspection.md +0 -0
  432. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/engineering-drawing.md +0 -0
  433. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/export-and-translation.md +0 -0
  434. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/part-modeling.md +0 -0
  435. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/requirement-refinement.md +0 -0
  436. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/standard-parts.md +0 -0
  437. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/domains/step-inspection.md +0 -0
  438. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/inspect/brep-reverse-engineering.md +0 -0
  439. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/ql-playbook.md +0 -0
  440. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/scadpkg-format.md +0 -0
  441. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/workflows/assembly-product-build.md +0 -0
  442. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/workflows/drawing-reconstruction.md +0 -0
  443. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/workflows/engineering-drawing.md +0 -0
  444. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/workflows/export-and-translation.md +0 -0
  445. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/workflows/single-part-modeling.md +0 -0
  446. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/skill/references/workflows/step-reconstruction.md +0 -0
  447. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.0.2.md +0 -0
  448. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.0.2.zh-CN.md +0 -0
  449. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.0.4b1.md +0 -0
  450. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.0.4b1.zh-CN.md +0 -0
  451. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.0.4b2.md +0 -0
  452. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.0.4b2.zh-CN.md +0 -0
  453. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.0.4b3.md +0 -0
  454. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.0.4b3.zh-CN.md +0 -0
  455. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.1.0.md +0 -0
  456. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.1.0.zh-CN.md +0 -0
  457. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.1.1.md +0 -0
  458. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.1.1.zh-CN.md +0 -0
  459. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.1.2.md +0 -0
  460. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.1.2.zh-CN.md +0 -0
  461. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.1.3b1.md +0 -0
  462. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.1.3b1.zh-CN.md +0 -0
  463. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.2.1.md +0 -0
  464. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.2.1.zh-CN.md +0 -0
  465. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.2.2.md +0 -0
  466. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.2.2.zh-CN.md +0 -0
  467. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.2.3.md +0 -0
  468. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.2.3.zh-CN.md +0 -0
  469. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.2.4.md +0 -0
  470. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/2.2.4.zh-CN.md +0 -0
  471. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/docs/updates/step-reverse-migration.md +0 -0
  472. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/examples/u_link_motor_mount/common.py +0 -0
  473. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/examples/u_link_motor_mount/dimensions.py +0 -0
  474. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/examples/u_link_motor_mount/shell.py +0 -0
  475. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/examples/u_link_motor_mount/u_link.py +0 -0
  476. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/examples/u_link_motor_mount/u_link_motor_mount.py +0 -0
  477. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/skillproj.toml +0 -0
  478. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/__init__.py +0 -0
  479. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/_internal/__init__.py +0 -0
  480. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/_internal/brep_region.py +0 -0
  481. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/_internal/canonical_json.py +0 -0
  482. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/_internal/mapping_pickle.py +0 -0
  483. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/_internal/mesh.py +0 -0
  484. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/_internal/os_compat.py +0 -0
  485. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/_internal/semantic.py +0 -0
  486. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/_internal/shape_pickle.py +0 -0
  487. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/_internal/vendor_warning_filters.py +0 -0
  488. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/_internal/workspace.py +0 -0
  489. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/__init__.py +0 -0
  490. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/_toml.py +0 -0
  491. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/cli.py +0 -0
  492. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/descriptor.py +0 -0
  493. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/home.py +0 -0
  494. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/install.py +0 -0
  495. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/platforms.py +0 -0
  496. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/registry.py +0 -0
  497. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/shell.py +0 -0
  498. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/use.py +0 -0
  499. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/addon/versions.py +0 -0
  500. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/__init__.py +0 -0
  501. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/assembly_definition.py +0 -0
  502. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/assembly_io.py +0 -0
  503. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/brep.py +0 -0
  504. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/canonical.py +0 -0
  505. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/feature_graph.py +0 -0
  506. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/geometry_interface.py +0 -0
  507. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/part_definition.py +0 -0
  508. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/part_io.py +0 -0
  509. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/references.py +0 -0
  510. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/topology_snapshot.py +0 -0
  511. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/artifacts/validation.py +0 -0
  512. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/build/__init__.py +0 -0
  513. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/build/assembly_builder.py +0 -0
  514. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/build/definition.py +0 -0
  515. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/build/dependencies.py +0 -0
  516. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/build/keys.py +0 -0
  517. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/build/part_builder.py +0 -0
  518. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/build/results.py +0 -0
  519. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/cli.py +0 -0
  520. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/contracts/assembly-definition-2.schema.json +0 -0
  521. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/contracts/feature-graph-1.schema.json +0 -0
  522. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/contracts/part-definition-2.schema.json +0 -0
  523. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/contracts/product-package-3.schema.json +0 -0
  524. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/core.py +0 -0
  525. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/dxf_engine/__init__.py +0 -0
  526. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/dxf_engine/agent.py +0 -0
  527. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/dxf_engine/hlr.py +0 -0
  528. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/dxf_engine/model.py +0 -0
  529. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/dxf_engine/planner.py +0 -0
  530. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/dxf_engine/render.py +0 -0
  531. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/__init__.py +0 -0
  532. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/apiindex.py +0 -0
  533. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/kernel.py +0 -0
  534. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/selection.py +0 -0
  535. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/templates.py +0 -0
  536. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/webui/assets/index-CLhrIpkh.css +0 -0
  537. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/webui/assets/index-CMwqu9RL.js +0 -0
  538. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/webui/favicon.svg +0 -0
  539. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/webui/icons.svg +0 -0
  540. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/webui/index.html +0 -0
  541. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/editor/ws.py +0 -0
  542. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/errors.py +0 -0
  543. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/example/__init__.py +0 -0
  544. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/example/cli.py +0 -0
  545. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/example/runtime.py +0 -0
  546. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/exporter/__init__.py +0 -0
  547. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/exporter/_surface_mesh.py +0 -0
  548. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/exporter/cli.py +0 -0
  549. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/exporter/mjcf.py +0 -0
  550. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/exporter/obj.py +0 -0
  551. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/exporter/step.py +0 -0
  552. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/exporter/stl.py +0 -0
  553. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/__init__.py +0 -0
  554. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/__init__.py +0 -0
  555. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/compare.py +0 -0
  556. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/diagnostic_state.py +0 -0
  557. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/diagnostics.py +0 -0
  558. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/fitting.py +0 -0
  559. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/io.py +0 -0
  560. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/manufacturing.py +0 -0
  561. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/model.py +0 -0
  562. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/parity.py +0 -0
  563. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/persistence.py +0 -0
  564. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/queries.py +0 -0
  565. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/section_tracking.py +0 -0
  566. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/slices.py +0 -0
  567. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/snapshots.py +0 -0
  568. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/brep/topology_inspection.py +0 -0
  569. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/__init__.py +0 -0
  570. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/_circle_fit.py +0 -0
  571. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/_material_geometry.py +0 -0
  572. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/_measurement_contract.py +0 -0
  573. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/_pdf.py +0 -0
  574. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/_provenance.py +0 -0
  575. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/_pymupdf.py +0 -0
  576. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/_review_evidence.py +0 -0
  577. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/_section_geometry.py +0 -0
  578. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/_section_layout.py +0 -0
  579. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/_section_validation.py +0 -0
  580. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/calibrate.py +0 -0
  581. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/evidence.py +0 -0
  582. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/geometry.py +0 -0
  583. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/material_section.py +0 -0
  584. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/preflight.py +0 -0
  585. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/render.py +0 -0
  586. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/section.py +0 -0
  587. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/summary.py +0 -0
  588. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inspect/drawing/text.py +0 -0
  589. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inverse_engineer/__init__.py +0 -0
  590. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inverse_engineer/brep/__init__.py +0 -0
  591. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inverse_engineer/brep/evaluation.py +0 -0
  592. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/inverse_engineer/brep/worker.py +0 -0
  593. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/__init__.py +0 -0
  594. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_booleans.py +0 -0
  595. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_brep_snapshot.py +0 -0
  596. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_builders.py +0 -0
  597. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_cast.py +0 -0
  598. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_curves.py +0 -0
  599. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_export.py +0 -0
  600. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_features.py +0 -0
  601. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_mesh.py +0 -0
  602. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_properties.py +0 -0
  603. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_surfaces.py +0 -0
  604. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_topology.py +0 -0
  605. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/kernel/ocp_transforms.py +0 -0
  606. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/math.py +0 -0
  607. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/__init__.py +0 -0
  608. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/_diagnostics.py +0 -0
  609. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/_support.py +0 -0
  610. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/boolean.py +0 -0
  611. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/deformation.py +0 -0
  612. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/draft.py +0 -0
  613. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/features.py +0 -0
  614. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/geometry.py +0 -0
  615. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/limited_extrusion.py +0 -0
  616. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/product.py +0 -0
  617. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/section_features.py +0 -0
  618. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/selection.py +0 -0
  619. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/sketch.py +0 -0
  620. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/operators/transform.py +0 -0
  621. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/params/__init__.py +0 -0
  622. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/params/expr.py +0 -0
  623. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/params/frame.py +0 -0
  624. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/params/tolerance.py +0 -0
  625. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/params/units.py +0 -0
  626. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/__init__.py +0 -0
  627. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/assembly.py +0 -0
  628. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/capture.py +0 -0
  629. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/connector.py +0 -0
  630. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/constraint.py +0 -0
  631. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/material.py +0 -0
  632. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/occurrence.py +0 -0
  633. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/packages.py +0 -0
  634. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/part.py +0 -0
  635. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/placement.py +0 -0
  636. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/product/solver.py +0 -0
  637. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/py.typed +0 -0
  638. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/ql.py +0 -0
  639. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/recording/__init__.py +0 -0
  640. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/recording/graph.py +0 -0
  641. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/recording/serializer.py +0 -0
  642. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/recording/source_mapping.py +0 -0
  643. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/__init__.py +0 -0
  644. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/cache.py +0 -0
  645. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/cells.py +0 -0
  646. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/config.py +0 -0
  647. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/deps.py +0 -0
  648. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/executor.py +0 -0
  649. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/live.py +0 -0
  650. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/params.py +0 -0
  651. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/projection.py +0 -0
  652. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/runtime/workspace.py +0 -0
  653. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/__init__.py +0 -0
  654. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/archive.py +0 -0
  655. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/canonical.py +0 -0
  656. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/compiler.py +0 -0
  657. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/profiles/ocp-evaluated-properties-1.profile.json +0 -0
  658. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/profiles/scene-1.0-ocp-glb-2.profile.json +0 -0
  659. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/pseudocode/ocp-evaluated-properties-1.md +0 -0
  660. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/pseudocode/scene-1.0-ocp-glb-2.md +0 -0
  661. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/rules/scene-1.0-rules.json +0 -0
  662. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/schemas/connector-binding-1.0.schema.json +0 -0
  663. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/schemas/entities-1.0.schema.json +0 -0
  664. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/schemas/evaluated-properties-profile-1.schema.json +0 -0
  665. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/schemas/normalized-product-1.schema.json +0 -0
  666. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/schemas/presentation-1.0.schema.json +0 -0
  667. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/schemas/profile-1.schema.json +0 -0
  668. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/schemas/render-profile-2.schema.json +0 -0
  669. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/schemas/rules-1.schema.json +0 -0
  670. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/schemas/scene-1.0.schema.json +0 -0
  671. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/contracts/schemas/scene-2.0.schema.json +0 -0
  672. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/documents.py +0 -0
  673. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/generated/__init__.py +0 -0
  674. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/generated/connector_binding.py +0 -0
  675. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/generated/entities.py +0 -0
  676. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/generated/normalized_product.py +0 -0
  677. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/generated/presentation.py +0 -0
  678. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/generated/scene.py +0 -0
  679. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/glb.py +0 -0
  680. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/glb_writer.py +0 -0
  681. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/preview.py +0 -0
  682. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/product_scene.py +0 -0
  683. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/render_mesh.py +0 -0
  684. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/resources.py +0 -0
  685. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/transforms.py +0 -0
  686. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/scene/validation.py +0 -0
  687. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/sketch.py +0 -0
  688. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/sketch_diagnostics.py +0 -0
  689. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/sketch_solver/__init__.py +0 -0
  690. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/sketch_solver/backend.py +0 -0
  691. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/sketch_solver/py_slvs_backend.py +0 -0
  692. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/skill/__init__.py +0 -0
  693. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/skill/cli.py +0 -0
  694. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/skill/compiler.py +0 -0
  695. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/skill/runtime.py +0 -0
  696. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/std/__init__.py +0 -0
  697. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/std/bearing.py +0 -0
  698. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/std/chain.py +0 -0
  699. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/std/fastener.py +0 -0
  700. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/std/gear.py +0 -0
  701. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/surface.py +0 -0
  702. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/topology/__init__.py +0 -0
  703. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/topology/autotag.py +0 -0
  704. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/topology/model.py +0 -0
  705. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/topology/tagging.py +0 -0
  706. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/topology/tracking.py +0 -0
  707. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/__init__.py +0 -0
  708. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/base.py +0 -0
  709. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/errors.py +0 -0
  710. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/__init__.py +0 -0
  711. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/analysis.py +0 -0
  712. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/api.py +0 -0
  713. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/capabilities.py +0 -0
  714. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/codegen.py +0 -0
  715. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/context.py +0 -0
  716. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/__init__.py +0 -0
  717. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/booleans.py +0 -0
  718. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/features.py +0 -0
  719. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/geometry.py +0 -0
  720. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/primitives.py +0 -0
  721. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/products.py +0 -0
  722. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/registry.py +0 -0
  723. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/selections.py +0 -0
  724. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/sketches.py +0 -0
  725. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/surfaces.py +0 -0
  726. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/emitters/transforms.py +0 -0
  727. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/exporter.py +0 -0
  728. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/__init__.py +0 -0
  729. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/assemblies.py +0 -0
  730. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/curves.py +0 -0
  731. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/expressions.py +0 -0
  732. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/geometry.py +0 -0
  733. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/metadata.py +0 -0
  734. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/occurrences.py +0 -0
  735. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/persistence.py +0 -0
  736. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/products.py +0 -0
  737. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/selections.py +0 -0
  738. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/sketches.py +0 -0
  739. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/runtime/surfaces.py +0 -0
  740. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/semantic.py +0 -0
  741. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/freecad_translator/translator.py +0 -0
  742. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/fusion360_translator/__init__.py +0 -0
  743. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/fusion360_translator/api.py +0 -0
  744. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/fusion360_translator/capabilities.py +0 -0
  745. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/fusion360_translator/compiler.py +0 -0
  746. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/fusion360_translator/translator.py +0 -0
  747. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/geometry_signature.py +0 -0
  748. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/package_units.py +0 -0
  749. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/product_graph.py +0 -0
  750. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/__init__.py +0 -0
  751. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/analysis.py +0 -0
  752. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/api.py +0 -0
  753. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/capabilities.py +0 -0
  754. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/codegen.py +0 -0
  755. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/compiler_compat.py +0 -0
  756. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/context.py +0 -0
  757. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/emitters/__init__.py +0 -0
  758. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/emitters/booleans.py +0 -0
  759. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/emitters/features.py +0 -0
  760. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/emitters/geometry.py +0 -0
  761. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/emitters/primitives.py +0 -0
  762. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/emitters/products.py +0 -0
  763. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/emitters/registry.py +0 -0
  764. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/emitters/selections.py +0 -0
  765. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/emitters/transforms.py +0 -0
  766. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/exporter.py +0 -0
  767. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/loft_geometry.py +0 -0
  768. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/__init__.py +0 -0
  769. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/assemblies.py +0 -0
  770. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/booleans.py +0 -0
  771. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/com_compat.py +0 -0
  772. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/features.py +0 -0
  773. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/geometry.py +0 -0
  774. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/metadata.py +0 -0
  775. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/model.py +0 -0
  776. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/persistence.py +0 -0
  777. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/products.py +0 -0
  778. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/selections.py +0 -0
  779. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/runtime/sketches.py +0 -0
  780. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/semantic.py +0 -0
  781. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/translator.py +0 -0
  782. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/solidworks_translator/versions.py +0 -0
  783. {simplecadapi-2.2.4 → simplecadapi-2.2.5}/src/simplecadapi/translator/types.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: simplecadapi
3
- Version: 2.2.4
3
+ Version: 2.2.5
4
4
  Summary: A simplified OCP-native CAD modeling Python API
5
5
  Project-URL: Homepage, https://github.com/PhySpace/SimpleCADAPI
6
6
  Project-URL: Repository, https://github.com/PhySpace/SimpleCADAPI
@@ -412,18 +412,21 @@ the full crank cycle sweeps clean in the same sim ·
412
412
 
413
413
  ---
414
414
 
415
- ## Update Notes (2.2.4)
415
+ ## Update Notes (2.2.5)
416
416
 
417
417
  > Validate generated definitions, assembly constraints, and manufacturing
418
418
  > geometry before production use.
419
419
 
420
- - **The editor tells you why no model is coming.** A failed build is reported on every run you or
421
- an agent asks for (rerun, `sca cell`, a file change, a module reload), and to a page that opens
422
- or refreshes afterwards — the "building the model" veil lifts with the reason instead of
423
- waiting out its fallback.
424
- - **The header's jump-to-marimo button is gone.**
420
+ - **`sca cell` works behind container proxies.** The editor's discovery record is loopback and
421
+ proxy-proof, an unreachable record is reported instead of silently ignored, and file
422
+ fallbacks say so on stderr.
423
+ - **Cell feedback carries the chain.** put/insert/run return console output and every cell
424
+ left unhealthy, stale dependents are run, and a failing cell names its upstream.
425
+ - **Validate a stage headlessly.** `sca run --through N / --no-product / --timeout`.
426
+ - **Quieter output, shorter prints.** Cache and VTK chatter is gone; a printed
427
+ `BRepInspection` is a one-line summary.
425
428
 
426
- Full notes for this version: [`docs/updates/2.2.4.md`](docs/updates/2.2.4.md).
429
+ Full notes for this version: [`docs/updates/2.2.5.md`](docs/updates/2.2.5.md).
427
430
  Earlier versions: the [changelog](CHANGELOG.md) and [`docs/updates/`](docs/updates/).
428
431
 
429
432
  ---
@@ -444,7 +447,7 @@ in a compact public API for creating solids, applying features, tagging semantic
444
447
  intent, querying topology, exporting manufacturing files, and translating recorded
445
448
  models into FreeCAD workflows.
446
449
 
447
- Current release: `simplecadapi==2.2.4`.
450
+ Current release: `simplecadapi==2.2.5`.
448
451
 
449
452
  ## What It Provides
450
453
 
@@ -959,6 +962,7 @@ and the [STEP reconstruction workflow](docs/skill/references/workflows/step-reco
959
962
 
960
963
  ## Documentation
961
964
 
965
+ - 2.2.5 update notes: [`docs/updates/2.2.5.md`](docs/updates/2.2.5.md)
962
966
  - 2.2.4 update notes: [`docs/updates/2.2.4.md`](docs/updates/2.2.4.md)
963
967
  - 2.2.3 update notes: [`docs/updates/2.2.3.md`](docs/updates/2.2.3.md)
964
968
  - 2.2.2 update notes: [`docs/updates/2.2.2.md`](docs/updates/2.2.2.md)
@@ -149,18 +149,21 @@ the full crank cycle sweeps clean in the same sim ·
149
149
 
150
150
  ---
151
151
 
152
- ## Update Notes (2.2.4)
152
+ ## Update Notes (2.2.5)
153
153
 
154
154
  > Validate generated definitions, assembly constraints, and manufacturing
155
155
  > geometry before production use.
156
156
 
157
- - **The editor tells you why no model is coming.** A failed build is reported on every run you or
158
- an agent asks for (rerun, `sca cell`, a file change, a module reload), and to a page that opens
159
- or refreshes afterwards — the "building the model" veil lifts with the reason instead of
160
- waiting out its fallback.
161
- - **The header's jump-to-marimo button is gone.**
157
+ - **`sca cell` works behind container proxies.** The editor's discovery record is loopback and
158
+ proxy-proof, an unreachable record is reported instead of silently ignored, and file
159
+ fallbacks say so on stderr.
160
+ - **Cell feedback carries the chain.** put/insert/run return console output and every cell
161
+ left unhealthy, stale dependents are run, and a failing cell names its upstream.
162
+ - **Validate a stage headlessly.** `sca run --through N / --no-product / --timeout`.
163
+ - **Quieter output, shorter prints.** Cache and VTK chatter is gone; a printed
164
+ `BRepInspection` is a one-line summary.
162
165
 
163
- Full notes for this version: [`docs/updates/2.2.4.md`](docs/updates/2.2.4.md).
166
+ Full notes for this version: [`docs/updates/2.2.5.md`](docs/updates/2.2.5.md).
164
167
  Earlier versions: the [changelog](CHANGELOG.md) and [`docs/updates/`](docs/updates/).
165
168
 
166
169
  ---
@@ -181,7 +184,7 @@ in a compact public API for creating solids, applying features, tagging semantic
181
184
  intent, querying topology, exporting manufacturing files, and translating recorded
182
185
  models into FreeCAD workflows.
183
186
 
184
- Current release: `simplecadapi==2.2.4`.
187
+ Current release: `simplecadapi==2.2.5`.
185
188
 
186
189
  ## What It Provides
187
190
 
@@ -696,6 +699,7 @@ and the [STEP reconstruction workflow](docs/skill/references/workflows/step-reco
696
699
 
697
700
  ## Documentation
698
701
 
702
+ - 2.2.5 update notes: [`docs/updates/2.2.5.md`](docs/updates/2.2.5.md)
699
703
  - 2.2.4 update notes: [`docs/updates/2.2.4.md`](docs/updates/2.2.4.md)
700
704
  - 2.2.3 update notes: [`docs/updates/2.2.3.md`](docs/updates/2.2.3.md)
701
705
  - 2.2.2 update notes: [`docs/updates/2.2.2.md`](docs/updates/2.2.2.md)
@@ -4,9 +4,9 @@ description: Build, assemble, inspect, reconstruct, and export parametric CAD mo
4
4
  license: Apache-2.0
5
5
  metadata:
6
6
  project: simplecadapi
7
- version: 2.2.4
7
+ version: 2.2.5
8
8
  package-name: simplecadapi
9
- package-version: 2.2.4
9
+ package-version: 2.2.5
10
10
  ---
11
11
 
12
12
  # SimpleCAD SDK Skill
@@ -50,9 +50,10 @@ Paths are relative to this file's directory.
50
50
  selected, and you MUST read
51
51
  `references/domains/editor-collaboration.md` first to see what they
52
52
  see (selection cell, `sca snapshot`, cell references) and how to
53
- hand the work back. While the editor runs, change its notebooks with
54
- `sca cell` (or the file; never both blindly): the editor is the
55
- file's writer.
53
+ hand the work back. While the editor runs, `sca cell` is the only way to
54
+ change a regular cell; edit the file only when no editor is running, or
55
+ for the setup / `@app.function` cells `sca cell` refuses: the editor is
56
+ the file's writer.
56
57
  - Creating, installing, updating, or removing a SimpleCADAPI addon (a
57
58
  third-party skill+tooling package around `.scadpkg`) enters no
58
59
  workflow; you MUST use `references/domains/addon-development.md`
@@ -147,6 +148,13 @@ it and stop that route; never invent an alternative route.
147
148
  them in the editor for a person); never enable
148
149
  marimo's `[tool.marimo.runtime] cache_cells` in the editor, and
149
150
  never commit the generated `__marimo__/` directory.
151
+ 12. Manage the modeling project the way software is managed: put the
152
+ workspace under git from the first file, commit at verified
153
+ milestones (a passed verification, not a wall clock) with messages
154
+ that say what changed and why, and use a branch per design
155
+ direction when alternatives are on the table. Generated state —
156
+ `__marimo__/`, `.sca-editor/`, `out/` — belongs in `.gitignore`,
157
+ never in a commit.
150
158
 
151
159
  ## Boundaries
152
160
 
@@ -12,11 +12,17 @@ tuned value) is also something you can read from disk. Never rely on what the
12
12
  person says they selected when the file or the snapshot can tell you.
13
13
 
14
14
  The editor holds the open notebook in memory and is the one writer of its
15
- file. You have two safe ways to change it while it runs; use the first:
16
-
17
- 1. **`sca cell` (preferred).** It edits through the editor: the page shows the
15
+ file. While it runs, **`sca cell` is the only way to change a regular cell**:
16
+ writing the file behind the editor's back races its next save, and the page's
17
+ version or yours is lost. Edit the file directly only when no editor is
18
+ running (then nothing else holds it), or for the cells `sca cell` refuses
19
+ (the setup cell and `@app.function` cells): the editor takes those file
20
+ changes in.
21
+
22
+ 1. **`sca cell` (always, for regular cells).** It edits through the editor: the page shows the
18
23
  change live (no reload, no flicker), the cell runs, and you get its state back.
19
- 2. **Edit the file.** The editor notices a saved change within a second, compares
24
+ 2. **Edit the file** — only with no editor running, or for a setup / `@app.function` cell. The
25
+ editor notices a saved change within a second, compares
20
26
  it with its cells and applies only what differs (changed cells are edited in
21
27
  place and run again, added or removed cells appear or go away). A change to the
22
28
  setup cell or an `@app.function` cell restarts the kernel instead. A file that
@@ -81,6 +81,10 @@ Read the exact page under `references/docs/api/` for every API used:
81
81
  ## Validation gates
82
82
 
83
83
  - Record plane mapping, closure, solve status, and remaining DOF in the brief.
84
+ - `dof=0` says the constraint system closed, not that the shape is the intended
85
+ one: angle and symmetry constraints can solve to the mirror solution. Verify
86
+ the promoted geometry by measurement (bounding box, area, edge counts), never
87
+ by the solver status alone.
84
88
  - When sketch promotion may change measured geometry, build Wire and Sketch
85
89
  from one parameter source and compare closure/area/bounds/segmentation before
86
90
  promoting.
@@ -0,0 +1,51 @@
1
+ # 2.2.5 Update Notes
2
+
3
+ From a container agent's field report: the editor now works the way agents actually use it,
4
+ and says what happened instead of leaving silence.
5
+
6
+ ## `sca cell` works behind container proxies
7
+
8
+ Before, a container's `http_proxy` swallowed the editor's health check and `sca cell`
9
+ answered "no editor is running" while one was. Now the editor's discovery record always
10
+ carries a loopback url (`--host 0.0.0.0` included), the checks bypass the proxy environment,
11
+ and a record whose server does not answer is reported with its path and url instead of being
12
+ skipped quietly. A record whose pid is gone says "stale record … delete it or restart the
13
+ editor". When `sca cell ls`/`get` fall back to reading the file, they say so on stderr.
14
+
15
+ ## Cell feedback carries the chain
16
+
17
+ `sca cell put/insert/run` now return the console output and every cell left unhealthy by the
18
+ change, and the dependents a write made stale are run instead of waiting. A failing cell's
19
+ report names its upstream cells (the failing ones first), so the error you see can be traced
20
+ to its cause. A write whose rerun takes longer than the call now answers "the edit was
21
+ applied and the rerun is still going; check `sca cell ls`" instead of a raw socket error
22
+ (`SCA_EDITOR_CALL_TIMEOUT` raises the wait, default 300s).
23
+
24
+ ## Validate a stage headlessly
25
+
26
+ ```bash
27
+ sca run stage.py --through 3 --no-product # the first 3 cells, no product needed
28
+ sca run stage.py --timeout 600 # a wall clock for heavy fillets
29
+ ```
30
+
31
+ `--through N` runs the first N cells, numbered the way the editor numbers them; `--no-product`
32
+ runs a work-in-progress notebook that has no product yet; `--timeout` fails a run that takes
33
+ longer (off by default).
34
+
35
+ ## Quieter output, shorter prints
36
+
37
+ The cache loaders' degraded-state warnings (unsigned entries, a value restored as a stub) no
38
+ longer print at WARNING, and the render paths switch VTK's warning display off process-wide —
39
+ this also hides VTK chatter from code you run in the same process. A real failure is still
40
+ raised and named. Printing a `BRepInspection` shows a one-line summary; the per-face records
41
+ are `to_dict()` / `.faces` / `.edges`.
42
+
43
+ ## Skill
44
+
45
+ While an editor runs, `sca cell` is the only way to change a regular cell — the file only when
46
+ no editor runs, or for the setup / `@app.function` cells `sca cell` refuses. `dof=0` says the
47
+ constraint system closed, not that the shape is right (angle constraints can solve to the
48
+ mirror solution): verify by measurement. And a modeling project is managed like software:
49
+ git from the first file, commits at verified milestones.
50
+
51
+ See the [changelog](../../CHANGELOG.md) for the complete list.
@@ -0,0 +1,41 @@
1
+ # 2.2.5 更新说明
2
+
3
+ 来自容器 agent 的实战复盘:编辑器现在按 agent 真实的使用方式工作,并且把发生的事说出来,而不是留下沉默。
4
+
5
+ ## `sca cell` 在容器代理后面也能找到编辑器
6
+
7
+ 以前容器的 `http_proxy` 会吞掉编辑器的健康检查,`sca cell` 在编辑器明明运行时回答"no editor is running"。
8
+ 现在编辑器的发现记录始终携带回环地址(`--host 0.0.0.0` 也是),检查绕过代理环境,应答不了的服务器记录会带着
9
+ 路径和 url 报出来,而不是被悄悄跳过。pid 已消失的记录会说"stale record … delete it or restart the editor"。
10
+ `sca cell ls`/`get` 降级读文件时会在 stderr 上说明。
11
+
12
+ ## cell 反馈带着整条链
13
+
14
+ `sca cell put/insert/run` 现在返回 console 输出和这次修改留下的每一个不健康的 cell,写操作导致的 stale 依赖
15
+ 会被运行而不是晾着。出错 cell 的报告会列出它的上游 cell(先列出同样在报错的),让错误能追溯到根因。重跑超出
16
+ 调用时长的写操作现在回答"the edit was applied and the rerun is still going; check `sca cell ls`"而不是裸的
17
+ socket 错误(`SCA_EDITOR_CALL_TIMEOUT` 可加大等待,默认 300 秒)。
18
+
19
+ ## 按阶段做无头校验
20
+
21
+ ```bash
22
+ sca run stage.py --through 3 --no-product # 只跑前 3 个 cell,不需要产品
23
+ sca run stage.py --timeout 600 # 给重 fillet 一个墙上时钟
24
+ ```
25
+
26
+ `--through N` 只跑前 N 个 cell(按编辑器的编号方式计);`--no-product` 运行还没有产品的半成品 notebook;
27
+ `--timeout` 让超时的运行失败(默认不限时)。
28
+
29
+ ## 更安静的输出、更短的打印
30
+
31
+ 缓存加载器的降级警告(未签名的条目、以 stub 恢复的值)不再以 WARNING 打印,渲染路径进程级关闭 VTK 的警告
32
+ 显示——同一进程里你自己代码的 VTK 警告也会被隐藏。真正的失败仍然会大声报出并点名。打印 `BRepInspection`
33
+ 现在是一行摘要;逐面记录在 `to_dict()` / `.faces` / `.edges`。
34
+
35
+ ## Skill
36
+
37
+ 编辑器运行时,`sca cell` 是修改普通 cell 的唯一方式——直接改文件只在没有编辑器运行时,或用于 `sca cell`
38
+ 拒绝的 setup / `@app.function` cell。`dof=0` 说明约束系统闭合了,不说明形状是对的(角度约束可能解出镜像
39
+ 解):用测量来验证。建模项目按软件工程的方式管理:从第一个文件就用 git,在验证通过的节点提交。
40
+
41
+ 完整列表见[更新日志](../../CHANGELOG.md)。
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "simplecadapi"
3
- version = "2.2.4"
3
+ version = "2.2.5"
4
4
  description = "A simplified OCP-native CAD modeling Python API"
5
5
  readme = "README.md"
6
6
  license = { file = "LICENSE" }
@@ -154,28 +154,79 @@ def _print_json(report: dict[str, Any]) -> None:
154
154
  print(json.dumps(report, indent=2, ensure_ascii=False))
155
155
 
156
156
 
157
+ def _opener() -> Any:
158
+ """An opener that bypasses the proxy environment for the local editor.
159
+
160
+ The editor is on this machine (its url is 127.0.0.1); a container's
161
+ ``http_proxy`` does not know that and swallows the request, which once
162
+ read as "no editor is running" while one was.
163
+ """
164
+ import urllib.request
165
+
166
+ return urllib.request.build_opener(urllib.request.ProxyHandler({}))
167
+
168
+
157
169
  def _find_editor(start: Path) -> tuple[Path, str] | None:
158
- """The running editor whose workspace holds *start*: ``(workspace, base url)``."""
170
+ """The running editor whose workspace holds *start*: ``(workspace, base url)``.
171
+
172
+ A record whose server does not answer is an error, not a stale record to
173
+ skip quietly: "an editor was running here" is exactly the belief that
174
+ must not be dropped in silence. The one definite stale case is a record
175
+ whose process is gone (a crashed editor leaves its server.json behind).
176
+ """
159
177
  import json
160
- import urllib.request
178
+ import os
179
+ import urllib.error
161
180
 
162
181
  here = start.expanduser().resolve()
182
+ unreachable: list[str] = []
183
+ opener = _opener()
163
184
  for directory in (here, *here.parents):
164
185
  record = directory / ".sca-editor" / "server.json"
165
186
  if not record.is_file():
166
187
  continue
167
188
  try:
168
- url = json.loads(record.read_text(encoding="utf-8"))["url"]
169
- with urllib.request.urlopen(f"{url}/api/health", timeout=1.5):
189
+ body = json.loads(record.read_text(encoding="utf-8"))
190
+ url = body["url"]
191
+ except (OSError, ValueError, KeyError) as error:
192
+ unreachable.append(f"{record}: unreadable ({error})")
193
+ continue
194
+ pid = body.get("pid")
195
+ if isinstance(pid, int):
196
+ try:
197
+ os.kill(pid, 0)
198
+ except ProcessLookupError:
199
+ unreachable.append(
200
+ f"stale record {record} (pid {pid} is gone); delete it or restart the editor"
201
+ )
202
+ continue
203
+ except OSError:
204
+ pass # a live process we cannot signal
205
+ try:
206
+ with opener.open(f"{url}/api/health", timeout=1.5):
170
207
  pass
171
- except (OSError, ValueError, KeyError):
172
- continue # a stale record: the editor is gone
208
+ except urllib.error.HTTPError:
209
+ pass # an editor that answers at all is running
210
+ except OSError as error:
211
+ unreachable.append(f"found {record} but {url} is unreachable: {error}")
212
+ continue
173
213
  return directory, str(url)
214
+ if unreachable:
215
+ raise ValueError("; ".join(unreachable))
174
216
  return None
175
217
 
176
218
 
177
- def _call(url: str, path: str, body: dict | None = None) -> dict[str, Any]:
219
+ def _call_timeout() -> float:
220
+ """How long one editor call may take; a heavy downstream rerun is on the
221
+ clock of the write that triggered it. ``SCA_EDITOR_CALL_TIMEOUT`` seconds."""
222
+ import os
223
+
224
+ return float(os.environ.get("SCA_EDITOR_CALL_TIMEOUT", "300"))
225
+
226
+
227
+ def _call(url: str, path: str, body: dict | None = None, timeout: float | None = None) -> dict[str, Any]:
178
228
  import json
229
+ import socket
179
230
  import urllib.error
180
231
  import urllib.request
181
232
 
@@ -183,20 +234,29 @@ def _call(url: str, path: str, body: dict | None = None) -> dict[str, Any]:
183
234
  request = urllib.request.Request(
184
235
  url + path, data=data, headers={"Content-Type": "application/json"}, method="GET" if body is None else "POST"
185
236
  )
237
+ seconds = _call_timeout() if timeout is None else timeout
186
238
  try:
187
- with urllib.request.urlopen(request, timeout=300) as response:
239
+ with _opener().open(request, timeout=seconds) as response:
188
240
  return json.loads(response.read())
189
241
  except urllib.error.HTTPError as error:
190
242
  try:
191
243
  return json.loads(error.read())
192
244
  except ValueError:
193
245
  return {"error": f"editor answered {error.code}"}
246
+ except (socket.timeout, TimeoutError) as error:
247
+ raise TimeoutError(f"the editor did not answer {path} within {seconds:g}s") from error
194
248
 
195
249
 
196
250
  def _session(args: argparse.Namespace, *, write: bool) -> tuple[str | None, Path | None, str]:
197
251
  """``(editor url or None, notebook path or None, relative notebook name)`` for a cell command."""
198
252
  start = args.workspace or (args.notebook.parent if args.notebook else Path.cwd())
199
- found = _find_editor(start)
253
+ try:
254
+ found = _find_editor(start)
255
+ except ValueError as error:
256
+ if write:
257
+ raise
258
+ _warn(f"editor not reached: {error}")
259
+ found = None
200
260
  notebook = args.notebook.expanduser().resolve() if args.notebook else None
201
261
  if found is None:
202
262
  if write:
@@ -206,6 +266,7 @@ def _session(args: argparse.Namespace, *, write: bool) -> tuple[str | None, Path
206
266
  )
207
267
  if notebook is None:
208
268
  raise ValueError("no editor is running here; name the notebook with --notebook")
269
+ _warn(f"no editor is running on this workspace; reading the file: {notebook.name}")
209
270
  return None, notebook, notebook.name
210
271
  workspace, url = found
211
272
  open_path = _call(url, "/api/cells").get("notebook")
@@ -221,9 +282,17 @@ def _session(args: argparse.Namespace, *, write: bool) -> tuple[str | None, Path
221
282
  f"the editor has {open_path} open, not {relative}: edit {relative} directly "
222
283
  "(the editor does not hold it), or open it in the editor first"
223
284
  )
285
+ _warn(f"the editor has {open_path} open; reading {relative} from the file")
224
286
  return None, notebook, relative
225
287
 
226
288
 
289
+ def _warn(message: str) -> None:
290
+ """Say a fallback out loud: silence once read as "the editor agreed"."""
291
+ import sys
292
+
293
+ print(f"warning: {message}", file=sys.stderr)
294
+
295
+
227
296
  def _cells_from_file(notebook: Path) -> list[dict[str, Any]]:
228
297
  from ..runtime._marimo import parse_notebook
229
298
 
@@ -239,7 +308,7 @@ def _cells_from_file(notebook: Path) -> list[dict[str, Any]]:
239
308
  def _slim(report: dict[str, Any], *, code: bool) -> dict[str, Any]:
240
309
  if "cells" not in report:
241
310
  return report
242
- keep = ("index", "key", "name", "title", "status", "errors", "output", "ref", "readonly")
311
+ keep = ("index", "key", "name", "title", "status", "errors", "output", "console", "upstream", "ref", "readonly")
243
312
  return {
244
313
  **report,
245
314
  "cells": [
@@ -285,13 +354,25 @@ def _read_code(args: argparse.Namespace) -> str:
285
354
  def _write_op(args: argparse.Namespace, op: str, body: dict[str, Any]) -> tuple[dict[str, Any], int]:
286
355
  url, _notebook, _name = _session(args, write=True)
287
356
  assert url is not None
288
- report = _call(url, f"/api/cells/{op}", body)
357
+ try:
358
+ report = _call(url, f"/api/cells/{op}", body)
359
+ except TimeoutError:
360
+ # The server took the write and reruns on its own; the clock that ran
361
+ # out is this call's, not the editor's.
362
+ return {
363
+ "error": "the edit was applied and the rerun is still going; check "
364
+ "`sca cell ls` (SCA_EDITOR_CALL_TIMEOUT raises the wait)"
365
+ }, 1
289
366
  if "error" in report:
290
367
  return _slim(report, code=False), 1
291
368
  touched = set(report.get("touched", []))
292
369
  report = _slim(report, code=False)
293
- # What the change did: the touched cells with their state; the rest as a count.
294
- report["cells"] = [c for c in report["cells"] if c.get("index") in touched] or report["cells"]
370
+ # What the change did: the touched cells with their state, plus any cell
371
+ # that is not healthy after the run — a rerun dependent failing is the
372
+ # feedback the edit was after, hiding it once read as "the edit was fine".
373
+ report["cells"] = [
374
+ c for c in report["cells"] if c.get("index") in touched or c.get("errors") or c.get("blocked")
375
+ ] or report["cells"]
295
376
  return report, 0
296
377
 
297
378
 
@@ -37,6 +37,7 @@ from starlette.websockets import WebSocketDisconnect
37
37
 
38
38
  from ..runtime.cells import cell_keys
39
39
  from ..runtime.config import NotebookConfig, read_notebook_config
40
+ from ..runtime._marimo import compile_cell
40
41
  from ..runtime.params import (
41
42
  ParamSpec,
42
43
  commit_field_value,
@@ -601,7 +602,7 @@ class WorkspaceState:
601
602
  # -- the same cell edits, for an agent (``sca cell``) -------------------------
602
603
 
603
604
  def _brief(self, number: int, cell: dict) -> dict:
604
- return {
605
+ brief = {
605
606
  "index": number,
606
607
  "id": cell["id"],
607
608
  "key": cell.get("key"),
@@ -615,13 +616,34 @@ class WorkspaceState:
615
616
  "ref": cell.get("ref"),
616
617
  "code": cell["code"],
617
618
  }
619
+ if cell.get("blocked"):
620
+ # The cell did not itself fail: an ancestor did (its report says which).
621
+ brief["blocked"] = True
622
+ return brief
618
623
 
619
624
  def cells_report(self, *, refresh: bool = True) -> dict:
620
625
  if refresh and self.kernel is not None:
621
626
  self.push_cells()
627
+ upstream = _upstream_of(self.cells)
628
+ place = {cell["id"]: (number, cell) for number, cell in enumerate(self.cells, start=1)}
629
+ briefs = []
630
+ for number, cell in enumerate(self.cells, start=1):
631
+ brief = self._brief(number, cell)
632
+ if brief["errors"] or brief.get("blocked"):
633
+ # The cell the error names is often not the one at fault: say
634
+ # what it reads, the failing ancestors first.
635
+ brief["upstream"] = [
636
+ {
637
+ "index": place[dep][0],
638
+ "name": place[dep][1].get("name"),
639
+ "failing": bool(place[dep][1].get("errors")),
640
+ }
641
+ for dep in sorted(upstream.get(cell["id"], ()), key=lambda cid: place[cid][0])
642
+ ]
643
+ briefs.append(brief)
622
644
  return {
623
645
  "notebook": self.notebook.relative_to(self.workspace).as_posix() if self.notebook else None,
624
- "cells": [self._brief(n, c) for n, c in enumerate(self.cells, start=1)],
646
+ "cells": briefs,
625
647
  }
626
648
 
627
649
  def _find_cell(self, ref: Any) -> dict:
@@ -654,9 +676,16 @@ class WorkspaceState:
654
676
  if body.get("base") is not None and _module_code(str(body["base"])).strip() != _module_code(cell["code"]).strip():
655
677
  return {"error": "conflict: the cell changed since you read it", "theirs": cell["code"]}
656
678
  if code.strip() != _module_code(cell["code"]).strip():
657
- (kernel.edit_cell if body.get("run", True) else kernel.save_cell)(cell["id"], code)
679
+ run = bool(body.get("run", True))
680
+ (kernel.edit_cell if run else kernel.save_cell)(cell["id"], code)
681
+ if run:
682
+ # The edit runs the cell itself; the sweep adds the
683
+ # dependents it made stale — their state is the
684
+ # feedback the caller asked for.
685
+ kernel.wait_idle()
686
+ kernel.run_until_settled([])
658
687
  elif body.get("run", True):
659
- kernel.run_cells([cell["id"]])
688
+ kernel.run_until_settled([cell["id"]])
660
689
  touched = [cell["id"]]
661
690
  elif op == "insert":
662
691
  after = body.get("after")
@@ -668,9 +697,11 @@ class WorkspaceState:
668
697
  anchor = self._find_cell(after)["id"]
669
698
  code = _module_code(str(body.get("code", ""))) or "# new cell"
670
699
  name = str(body["name"]) if body.get("name") else None
671
- created = _created_id(kernel.create_cell_after(anchor, code, name, run=bool(body.get("run", True))))
700
+ created = _created_id(kernel.create_cell_after(anchor, code, name, run=False))
672
701
  if created is None:
673
702
  return {"error": "the kernel did not create the cell"}
703
+ if body.get("run", True):
704
+ kernel.run_until_settled([created])
674
705
  touched = [created]
675
706
  elif op == "delete":
676
707
  cell = self._find_cell(body.get("cell"))
@@ -1430,8 +1461,10 @@ class WorkspaceState:
1430
1461
  directory.mkdir(parents=True, exist_ok=True)
1431
1462
  import os
1432
1463
 
1464
+ # The record is read on this machine, so the url is always the
1465
+ # loopback: a 0.0.0.0 url is no address (and walks into proxies).
1433
1466
  (directory / "server.json").write_text(
1434
- json.dumps({"url": f"http://{host}:{self.port}", "pid": os.getpid(), "workspace": str(self.workspace)}),
1467
+ json.dumps({"url": f"http://127.0.0.1:{self.port}", "pid": os.getpid(), "workspace": str(self.workspace)}),
1435
1468
  encoding="utf-8",
1436
1469
  )
1437
1470
  except OSError:
@@ -1486,6 +1519,36 @@ class WorkspaceState:
1486
1519
  self.hub.broadcast({"type": "status", "exported": str(target)})
1487
1520
 
1488
1521
 
1522
+ def _upstream_of(cells: list[dict]) -> dict[str, set[str]]:
1523
+ """Per cell id: the ids of the cells it (transitively) reads.
1524
+
1525
+ Compiled with marimo's own cell compiler, so a name is a dependency
1526
+ exactly when marimo's dataflow says so; a cell mid-edit (its code does
1527
+ not compile) contributes no edges rather than wrong ones.
1528
+ """
1529
+ owner: dict[str, str] = {}
1530
+ refs: dict[str, frozenset[str]] = {}
1531
+ for cell in cells:
1532
+ try:
1533
+ impl = compile_cell(_module_code(cell["code"]), cell["id"])
1534
+ except Exception:
1535
+ refs[cell["id"]] = frozenset()
1536
+ continue
1537
+ refs[cell["id"]] = impl.refs
1538
+ for name in impl.defs:
1539
+ owner.setdefault(name, cell["id"])
1540
+ direct = {cid: {owner[name] for name in names if name in owner and owner[name] != cid} for cid, names in refs.items()}
1541
+ closure: dict[str, set[str]] = {}
1542
+
1543
+ def walk(cid: str) -> set[str]:
1544
+ if cid not in closure:
1545
+ closure[cid] = set() # marimo forbids cycles; the placeholder guards one anyway
1546
+ closure[cid] = set().union(*(walk(dep) | {dep} for dep in direct.get(cid, ()))) if direct.get(cid) else set()
1547
+ return closure[cid]
1548
+
1549
+ return {cid: walk(cid) for cid in refs}
1550
+
1551
+
1489
1552
  def _module_code(code: str) -> str:
1490
1553
  """marimo's code_mode compiles cell code as a MODULE: a ``return`` in the
1491
1554
  cell's own scope (normal in marimo's file format) is a SyntaxError there.
@@ -46,6 +46,23 @@ class BRepInspection:
46
46
  def to_dict(self) -> dict[str, Any]:
47
47
  return asdict(self)
48
48
 
49
+ def summary(self) -> str:
50
+ """One digest line: the facts an agent checks first, no per-face dump.
51
+
52
+ The full record (tens of thousands of characters on a real part) is
53
+ ``.to_dict()`` / the ``faces`` / ``edges`` lists.
54
+ """
55
+ box = self.bounding_box
56
+ size = [round(box[i + 3] - box[i], 3) for i in range(3)]
57
+ return (
58
+ f"<BRepInspection {self.source or '?'}: valid={self.valid} "
59
+ f"counts={self.counts} volume={self.volume:.6g} area={self.surface_area:.6g} "
60
+ f"size(xyz)={size} surfaces={self.surface_type_counts} edges={self.edge_type_counts}>"
61
+ )
62
+
63
+ def __repr__(self) -> str:
64
+ return self.summary()
65
+
49
66
  def write_json(self, path: str | Path, *, indent: int = 2) -> Path:
50
67
  output = Path(path)
51
68
  output.parent.mkdir(parents=True, exist_ok=True)
@@ -67,6 +67,9 @@ def _vtk_modules():
67
67
  from vtk.util.numpy_support import numpy_to_vtk, numpy_to_vtkIdTypeArray
68
68
  except ImportError as error:
69
69
  raise ImportError("BREP rendering requires VTK") from error
70
+ # VTK's own chatter (a missing X server, driver notes) reads as a render
71
+ # failure; a real one is raised and named here.
72
+ vtk.vtkObject.GlobalWarningDisplayOff()
70
73
  return vtk, numpy_to_vtk, numpy_to_vtkIdTypeArray
71
74
 
72
75
  _OFFSCREEN_WINDOW: Any | None = None
@@ -14,6 +14,9 @@ from typing import Any, Mapping
14
14
  def _read_polydata(path: Path):
15
15
  import vtk
16
16
 
17
+ # VTK's own chatter (a missing X server, driver notes) reads as a render
18
+ # failure; a real one fails the worker and is named by the caller.
19
+ vtk.vtkObject.GlobalWarningDisplayOff()
17
20
  reader = vtk.vtkXMLPolyDataReader()
18
21
  reader.SetFileName(str(path))
19
22
  reader.Update()