draftwright 0.4.29__tar.gz → 0.4.30__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 (693) hide show
  1. {draftwright-0.4.29 → draftwright-0.4.30}/PKG-INFO +1 -1
  2. {draftwright-0.4.29 → draftwright-0.4.30}/docs/adr/README.md +1 -1
  3. {draftwright-0.4.29 → draftwright-0.4.30}/docs/reference/recogniser-capabilities.md +1 -1
  4. {draftwright-0.4.29 → draftwright-0.4.30}/pyproject.toml +7 -5
  5. draftwright-0.4.30/src/draftwright/_pmi_part21.py +1533 -0
  6. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotations/angular.py +5 -1
  7. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotations/from_model.py +219 -20
  8. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotations/holes.py +3 -0
  9. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotations/leaders.py +77 -17
  10. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/builder.py +100 -34
  11. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/compose.py +18 -9
  12. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/angular.py +62 -2
  13. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/pmi_coverage.py +1 -0
  14. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/quality.py +22 -0
  15. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/model/__init__.py +4 -0
  16. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/model/callout.py +93 -3
  17. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/model/declare.py +118 -5
  18. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/model/detect.py +41 -2
  19. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/model/ir.py +192 -4
  20. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/model/planner.py +14 -1
  21. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/model/pmi_lowering.py +61 -12
  22. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/pmi.py +1412 -102
  23. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/recogniser_contract.py +28 -28
  24. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/sheet.py +49 -8
  25. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/sheet_emit.py +91 -6
  26. draftwright-0.4.30/tests/_burden_report.py +260 -0
  27. draftwright-0.4.30/tests/_corpus_cover.py +114 -0
  28. draftwright-0.4.30/tests/_drawing_helpers.py +65 -0
  29. draftwright-0.4.30/tests/_evidence_contract.py +291 -0
  30. draftwright-0.4.30/tests/_layout_helpers.py +19 -0
  31. draftwright-0.4.30/tests/_parts.py +206 -0
  32. draftwright-0.4.30/tests/_tier_manifest.py +225 -0
  33. draftwright-0.4.30/tests/_unit_manifest.py +31 -0
  34. {draftwright-0.4.29 → draftwright-0.4.30}/tests/conftest.py +207 -29
  35. draftwright-0.4.30/tests/fixtures/issue_1595_whistle_key_lever.step +5407 -0
  36. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_adr0018_view_routing.py +4 -4
  37. draftwright-0.4.30/tests/test_analysis_geometry.py +121 -0
  38. draftwright-0.4.29/tests/test_issue_1504_angle_patterns.py → draftwright-0.4.30/tests/test_angle_patterns.py +3 -2
  39. draftwright-0.4.29/tests/test_issue_1504_angular_references.py → draftwright-0.4.30/tests/test_angular_references.py +123 -0
  40. draftwright-0.4.29/tests/test_issue_1504_angular_rendering.py → draftwright-0.4.30/tests/test_angular_rendering.py +94 -1
  41. draftwright-0.4.30/tests/test_annotation_box_composition.py +131 -0
  42. draftwright-0.4.30/tests/test_annotation_box_corpus.py +81 -0
  43. draftwright-0.4.30/tests/test_axial_dimensions.py +104 -0
  44. draftwright-0.4.30/tests/test_build_drawing_entrypoints.py +99 -0
  45. draftwright-0.4.30/tests/test_burden_report.py +85 -0
  46. draftwright-0.4.29/tests/test_issue_1504_canonical_angles.py → draftwright-0.4.30/tests/test_canonical_angles.py +12 -8
  47. draftwright-0.4.30/tests/test_cli_behavior.py +114 -0
  48. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_clone_budget.py +102 -29
  49. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_compiled_plan_boundary.py +1 -1
  50. draftwright-0.4.30/tests/test_compose_then_pack.py +504 -0
  51. draftwright-0.4.30/tests/test_corpus_cover.py +164 -0
  52. draftwright-0.4.30/tests/test_coverage_mode.py +53 -0
  53. draftwright-0.4.30/tests/test_deferred_edits.py +416 -0
  54. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_deprecation_dates.py +4 -2
  55. draftwright-0.4.30/tests/test_depth_estimators.py +72 -0
  56. draftwright-0.4.30/tests/test_detail_views.py +453 -0
  57. draftwright-0.4.30/tests/test_diameter_deduplication.py +30 -0
  58. draftwright-0.4.30/tests/test_diameter_leaders.py +215 -0
  59. draftwright-0.4.29/tests/test_issue_1542_claim_authority.py → draftwright-0.4.30/tests/test_document_claim_authority.py +1 -1
  60. draftwright-0.4.29/tests/test_issue_1542_document_claims.py → draftwright-0.4.30/tests/test_document_claims.py +2 -2
  61. draftwright-0.4.29/tests/test_issue_1542_document_report.py → draftwright-0.4.30/tests/test_document_report.py +1 -1
  62. draftwright-0.4.29/tests/test_issue_1542_report_authority.py → draftwright-0.4.30/tests/test_document_report_authority.py +1 -1
  63. draftwright-0.4.30/tests/test_drawing_operations.py +116 -0
  64. draftwright-0.4.30/tests/test_drawing_state.py +177 -0
  65. draftwright-0.4.30/tests/test_dynamic_corridors.py +84 -0
  66. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_e2e_standards.py +67 -4
  67. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_export_dxf_curves.py +3 -1
  68. draftwright-0.4.30/tests/test_export_formats.py +327 -0
  69. draftwright-0.4.30/tests/test_export_shape.py +140 -0
  70. draftwright-0.4.30/tests/test_feature_edit_corridors.py +200 -0
  71. draftwright-0.4.30/tests/test_feature_edit_replay.py +226 -0
  72. draftwright-0.4.30/tests/test_feature_edit_verbs.py +376 -0
  73. draftwright-0.4.30/tests/test_feature_provenance.py +289 -0
  74. draftwright-0.4.30/tests/test_feature_queries.py +99 -0
  75. draftwright-0.4.29/tests/test_fits.py → draftwright-0.4.30/tests/test_fit_calculations.py +1 -94
  76. draftwright-0.4.30/tests/test_fits.py +94 -0
  77. draftwright-0.4.30/tests/test_format_selector.py +76 -0
  78. draftwright-0.4.30/tests/test_formatting.py +19 -0
  79. draftwright-0.4.29/tests/test_issue_1372_groove_completeness_evidence.py → draftwright-0.4.30/tests/test_groove_completeness_evidence.py +47 -72
  80. draftwright-0.4.30/tests/test_hole_annotations.py +305 -0
  81. draftwright-0.4.30/tests/test_hole_pattern_callouts.py +136 -0
  82. draftwright-0.4.30/tests/test_hole_table.py +732 -0
  83. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_import_boundaries.py +35 -18
  84. draftwright-0.4.30/tests/test_iso_layout.py +106 -0
  85. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_iso_nts_caption_placement.py +51 -39
  86. draftwright-0.4.30/tests/test_isometric_orientation.py +25 -0
  87. draftwright-0.4.30/tests/test_isometric_placement.py +138 -0
  88. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1006_measurement_comparison.py +16 -2
  89. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1116_ap242_hole_tolerance_lowering.py +78 -14
  90. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1166_cross_pass_feature_leaders.py +104 -56
  91. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1176_quality_fidelity.py +1 -1
  92. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1177_angular_dimensions.py +18 -10
  93. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1190_section_decision.py +6 -4
  94. draftwright-0.4.30/tests/test_issue_1209_linear_pmi_witnesses.py +406 -0
  95. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1215_envelope_tolerance.py +8 -1
  96. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1296_cylindrical_diameter_pmi.py +364 -1
  97. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1299_page_escalation.py +334 -6
  98. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1325_nominal_agreement.py +2 -3
  99. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1352_searchable_pdf_text.py +278 -266
  100. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1357_pmi_frame.py +36 -0
  101. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1370_countersink_completeness_evidence.py +16 -28
  102. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1370_double_d_completeness_evidence.py +55 -30
  103. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1370_hole_pattern_completeness_evidence.py +14 -25
  104. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1371_flat_completeness_evidence.py +25 -55
  105. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1371_polygonal_stock_completeness_evidence.py +16 -34
  106. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1373_plate_completeness_evidence.py +36 -64
  107. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1374_chamfer_completeness_evidence.py +16 -45
  108. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1374_fillet_completeness_evidence.py +16 -45
  109. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1374_turned_step_completeness_evidence.py +84 -45
  110. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1432_oriented_slot_semantics.py +45 -39
  111. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1450_boss_blend_ownership.py +3 -2
  112. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1460_step_inspection.py +1 -1
  113. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1466_dimension_options.py +2 -2
  114. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1466_semantic_sides.py +4 -3
  115. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1479_radius_leader_targets.py +4 -3
  116. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1485_curved_pockets.py +9 -8
  117. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1485_rounded_pockets.py +7 -6
  118. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1505_short_axial_chains.py +12 -5
  119. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1511_turned_boss_heights.py +7 -9
  120. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1516_dimension_text.py +37 -6
  121. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1517_through_indicator.py +37 -15
  122. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1518_explicit_rear.py +19 -7
  123. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1543_schedule_requirements.py +2 -2
  124. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_798_silhouette_lint.py +2 -1
  125. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_883_location_identity.py +17 -18
  126. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_915_dense_case.py +16 -4
  127. draftwright-0.4.30/tests/test_layout_cleanliness.py +89 -0
  128. draftwright-0.4.30/tests/test_layout_constants.py +49 -0
  129. draftwright-0.4.30/tests/test_layout_generalisation.py +177 -0
  130. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_layout_property.py +2 -2
  131. draftwright-0.4.30/tests/test_lint_coverage.py +249 -0
  132. draftwright-0.4.30/tests/test_lint_suggestions.py +178 -0
  133. draftwright-0.4.30/tests/test_lint_summary.py +321 -0
  134. draftwright-0.4.30/tests/test_location_dimensions.py +262 -0
  135. draftwright-0.4.30/tests/test_machined_feature_callouts.py +600 -0
  136. draftwright-0.4.30/tests/test_make_drawing_entrypoints.py +93 -0
  137. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_overall_height_coverage.py +3 -3
  138. draftwright-0.4.29/tests/test_issue_1372_pad_completeness_evidence.py → draftwright-0.4.30/tests/test_pad_completeness_evidence.py +78 -99
  139. draftwright-0.4.30/tests/test_part_classification.py +299 -0
  140. draftwright-0.4.30/tests/test_place_dimension.py +115 -0
  141. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_pmi.py +915 -53
  142. draftwright-0.4.30/tests/test_pmi_common_labels.py +89 -0
  143. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_pmi_datum_lowering.py +17 -0
  144. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_pmi_gtol_lowering.py +35 -0
  145. draftwright-0.4.30/tests/test_pmi_part21.py +1506 -0
  146. draftwright-0.4.29/tests/test_issue_1372_pocket_completeness_evidence.py → draftwright-0.4.30/tests/test_pocket_completeness_evidence.py +43 -53
  147. draftwright-0.4.29/tests/test_issue_1372_pocket_pattern_completeness_evidence.py → draftwright-0.4.30/tests/test_pocket_pattern_completeness_evidence.py +104 -56
  148. draftwright-0.4.29/tests/test_issue_1372_polygonal_boss_completeness_evidence.py → draftwright-0.4.30/tests/test_polygonal_boss_completeness_evidence.py +31 -59
  149. draftwright-0.4.30/tests/test_prismatic_boss_diameter.py +223 -0
  150. draftwright-0.4.30/tests/test_prismatic_classification.py +177 -0
  151. draftwright-0.4.30/tests/test_prismatic_dimensions.py +362 -0
  152. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_private_test_attr_reads.py +2 -0
  153. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_private_test_imports.py +30 -12
  154. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_projection_symbol_default.py +18 -4
  155. draftwright-0.4.30/tests/test_real_part_fixtures.py +32 -0
  156. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_recogniser_capabilities.py +22 -22
  157. draftwright-0.4.30/tests/test_recogniser_policy.py +50 -0
  158. draftwright-0.4.29/tests/test_issue_1382_046_step_inventory.py → draftwright-0.4.30/tests/test_recogniser_step_inventory.py +2 -2
  159. draftwright-0.4.29/tests/test_issue_1471_boundary_failures.py → draftwright-0.4.30/tests/test_recognition_boundary_failures.py +1 -1
  160. draftwright-0.4.29/tests/test_issue_1438_policy_dispositions.py → draftwright-0.4.30/tests/test_recognition_policy_dispositions.py +0 -45
  161. draftwright-0.4.30/tests/test_repair.py +130 -0
  162. draftwright-0.4.29/tests/test_issue_1438_report_projection.py → draftwright-0.4.30/tests/test_report_projection.py +52 -39
  163. draftwright-0.4.29/tests/test_issue_1542_catalog_families.py → draftwright-0.4.30/tests/test_requirement_catalog_families.py +3 -3
  164. draftwright-0.4.30/tests/test_scale_policy.py +68 -0
  165. draftwright-0.4.30/tests/test_scale_selection.py +206 -0
  166. draftwright-0.4.30/tests/test_section_hatching.py +27 -0
  167. draftwright-0.4.29/tests/test_issue_1471_section_recess_pockets.py → draftwright-0.4.30/tests/test_section_recess_pockets.py +2 -3
  168. draftwright-0.4.30/tests/test_shared_drawing_cache.py +107 -0
  169. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_sheet_emit.py +154 -17
  170. draftwright-0.4.30/tests/test_sheet_furniture.py +145 -0
  171. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_slot_completeness.py +2 -2
  172. draftwright-0.4.30/tests/test_slot_recognition.py +513 -0
  173. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_step_analysis_evaluation.py +1 -0
  174. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_strip_layout.py +4 -1
  175. draftwright-0.4.30/tests/test_strip_zones.py +295 -0
  176. draftwright-0.4.30/tests/test_suite_shape.py +63 -0
  177. draftwright-0.4.30/tests/test_tier_manifest.py +105 -0
  178. draftwright-0.4.30/tests/test_turned_diameters.py +766 -0
  179. draftwright-0.4.30/tests/test_turned_lengths.py +299 -0
  180. draftwright-0.4.30/tests/test_two_pass_layout.py +122 -0
  181. draftwright-0.4.30/tests/test_typ_dimensions.py +80 -0
  182. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_version_bump_ci.py +10 -1
  183. draftwright-0.4.30/tests/test_view_blocks.py +137 -0
  184. draftwright-0.4.30/tests/test_view_coordinates.py +162 -0
  185. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_workflows.py +77 -15
  186. draftwright-0.4.29/src/draftwright/_pmi_part21.py +0 -653
  187. draftwright-0.4.29/tests/_evidence_contract.py +0 -61
  188. draftwright-0.4.29/tests/test_issue_1209_linear_pmi_witnesses.py +0 -181
  189. draftwright-0.4.29/tests/test_layout_cleanliness.py +0 -227
  190. draftwright-0.4.29/tests/test_make_drawing.py +0 -11978
  191. draftwright-0.4.29/tests/test_pmi_part21.py +0 -634
  192. {draftwright-0.4.29 → draftwright-0.4.30}/.gitignore +0 -0
  193. {draftwright-0.4.29 → draftwright-0.4.30}/CHANGELOG.md +0 -0
  194. {draftwright-0.4.29 → draftwright-0.4.30}/LICENSE +0 -0
  195. {draftwright-0.4.29 → draftwright-0.4.30}/README.md +0 -0
  196. {draftwright-0.4.29 → draftwright-0.4.30}/docs/reference/sheet.md +0 -0
  197. {draftwright-0.4.29 → draftwright-0.4.30}/docs/research/1062-repeating-radial-profile-evidence.md +0 -0
  198. {draftwright-0.4.29 → draftwright-0.4.30}/skills/SKILL.md +0 -0
  199. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/__init__.py +0 -0
  200. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/_build_profile.py +0 -0
  201. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/_core.py +0 -0
  202. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/_geometry.py +0 -0
  203. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/_warnings.py +0 -0
  204. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/analysis.py +0 -0
  205. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/angular_geometry.py +0 -0
  206. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotate.py +0 -0
  207. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotations/__init__.py +0 -0
  208. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotations/_common.py +0 -0
  209. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotations/balloons.py +0 -0
  210. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotations/gears.py +0 -0
  211. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotations/orchestrator.py +0 -0
  212. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/annotations/sections.py +0 -0
  213. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/audit.py +0 -0
  214. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/blend_contract.py +0 -0
  215. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/cli.py +0 -0
  216. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/document.py +0 -0
  217. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/document_evidence.py +0 -0
  218. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/document_input.py +0 -0
  219. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/drawing.py +0 -0
  220. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/evaluation/__init__.py +0 -0
  221. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/evaluation/step_analysis.py +0 -0
  222. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/export.py +0 -0
  223. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/feature_identity.py +0 -0
  224. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/fits.py +0 -0
  225. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/fonts/IBMPlexMono-Regular.ttf +0 -0
  226. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/fonts/IBMPlexSansCondensed-Regular.ttf +0 -0
  227. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/fonts/LICENSE-IBMPlexMono-OFL.txt +0 -0
  228. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/fonts/LICENSE-IBMPlexSansCondensed-OFL.txt +0 -0
  229. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/fonts/__init__.py +0 -0
  230. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/inspection.py +0 -0
  231. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/inspection_contract.py +0 -0
  232. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/intents.py +0 -0
  233. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/layout.py +0 -0
  234. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/__init__.py +0 -0
  235. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/_registry.py +0 -0
  236. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/angled_step_coverage.py +0 -0
  237. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/blend_coverage.py +0 -0
  238. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/chamfer_coverage.py +0 -0
  239. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/channel_coverage.py +0 -0
  240. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/circular_blind_step_coverage.py +0 -0
  241. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/coverage.py +0 -0
  242. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/evidence.py +0 -0
  243. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/fillet_coverage.py +0 -0
  244. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/flat_coverage.py +0 -0
  245. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/gear_coverage.py +0 -0
  246. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/groove_coverage.py +0 -0
  247. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/hole_coverage.py +0 -0
  248. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/ink_overlap.py +0 -0
  249. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/issues.py +0 -0
  250. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/oriented_slot_coverage.py +0 -0
  251. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/pad_coverage.py +0 -0
  252. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/paired_ramp_step_coverage.py +0 -0
  253. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/passage_coverage.py +0 -0
  254. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/plate_coverage.py +0 -0
  255. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/pocket_coverage.py +0 -0
  256. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/pocket_pattern_coverage.py +0 -0
  257. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/polygonal_boss_coverage.py +0 -0
  258. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/polygonal_stock_coverage.py +0 -0
  259. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/prismatic_pocket_coverage.py +0 -0
  260. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/profiled_bore_coverage.py +0 -0
  261. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/rectangular_blind_slot_coverage.py +0 -0
  262. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/requirements.py +0 -0
  263. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/round_bottom_blind_slot_coverage.py +0 -0
  264. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/schedule_evidence.py +0 -0
  265. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/section_recess_coverage.py +0 -0
  266. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/slot_coverage.py +0 -0
  267. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/structural.py +0 -0
  268. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/suggest.py +0 -0
  269. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/through_step_coverage.py +0 -0
  270. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/linting/turned_step_coverage.py +0 -0
  271. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/location_contract.py +0 -0
  272. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/make_drawing.py +0 -0
  273. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/measurement_support.py +0 -0
  274. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/model/compiled.py +0 -0
  275. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/oriented_slot_contract.py +0 -0
  276. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/plate_correspondence.py +0 -0
  277. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/profile_angles.py +0 -0
  278. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/progress.py +0 -0
  279. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/projection.py +0 -0
  280. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/py.typed +0 -0
  281. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/recogniser_policy.py +0 -0
  282. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/recogniser_schema.py +0 -0
  283. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/recognition/__init__.py +0 -0
  284. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/recognition_cache.py +0 -0
  285. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/recognition_frame.py +0 -0
  286. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/recognition_ownership.py +0 -0
  287. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/registry.py +0 -0
  288. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/repair.py +0 -0
  289. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/reporting.py +0 -0
  290. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/score.py +0 -0
  291. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/section_recess_contract.py +0 -0
  292. {draftwright-0.4.29 → draftwright-0.4.30}/src/draftwright/view_plan.py +0 -0
  293. {draftwright-0.4.29 → draftwright-0.4.30}/tests/_kernel.py +0 -0
  294. {draftwright-0.4.29 → draftwright-0.4.30}/tests/_layout_sig.py +0 -0
  295. {draftwright-0.4.29 → draftwright-0.4.30}/tests/_mutation_corpus.py +0 -0
  296. {draftwright-0.4.29 → draftwright-0.4.30}/tests/_recogniser_public_contract.py +0 -0
  297. {draftwright-0.4.29 → draftwright-0.4.30}/tests/_section_recess_cases.py +0 -0
  298. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/ap242_single_cylinder_diameter.step +0 -0
  299. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/README.md +0 -0
  300. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/ambiguous-open-semicircle.step +0 -0
  301. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/blind-hole.step +0 -0
  302. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/chamfer-asymmetric.step +0 -0
  303. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/chamfer-compound.step +0 -0
  304. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/chamfer-overlap.step +0 -0
  305. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/chamfer-plain.step +0 -0
  306. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/chamfer-planar-x.step +0 -0
  307. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/chamfer-planar-y.step +0 -0
  308. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/chamfer-planar-z.step +0 -0
  309. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/chamfer-topology-a.step +0 -0
  310. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/chamfer-topology-b.step +0 -0
  311. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/chamfer-turned.step +0 -0
  312. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-chamfers-v1.json +0 -0
  313. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-countersinks-v1.json +0 -0
  314. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-double-d-bores-v1.json +0 -0
  315. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-fillets-v1.json +0 -0
  316. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-flats-v1.json +0 -0
  317. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-grooves-v1.json +0 -0
  318. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-hole-patterns-v1.json +0 -0
  319. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-plates-v1.json +0 -0
  320. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-pocket-patterns-v1.json +0 -0
  321. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-pockets-v1.json +0 -0
  322. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-polygonal-bosses-v1.json +0 -0
  323. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-polygonal-stock-v1.json +0 -0
  324. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-rectangular-pads-v1.json +0 -0
  325. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-turned-steps-v1.json +0 -0
  326. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/corpus-v1.json +0 -0
  327. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/countersink-deburr.step +0 -0
  328. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/countersink-external-cone.step +0 -0
  329. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/countersink-mixed-pair.step +0 -0
  330. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/countersink-single.step +0 -0
  331. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/countersink-topology-a.step +0 -0
  332. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/countersink-topology-b.step +0 -0
  333. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/double-d-axis-x.step +0 -0
  334. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/double-d-axis-y.step +0 -0
  335. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/double-d-blind.step +0 -0
  336. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/double-d-coaxial-compound.step +0 -0
  337. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/double-d-opposed-blind.step +0 -0
  338. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/double-d-roll-30.step +0 -0
  339. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/double-d-round-bore.step +0 -0
  340. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/double-d-single-z.step +0 -0
  341. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/double-d-topology-a.step +0 -0
  342. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/double-d-topology-b.step +0 -0
  343. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/fillet-compound.step +0 -0
  344. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/fillet-overlap.step +0 -0
  345. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/fillet-plain.step +0 -0
  346. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/fillet-planar-x.step +0 -0
  347. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/fillet-planar-y.step +0 -0
  348. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/fillet-planar-z.step +0 -0
  349. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/fillet-repeated.step +0 -0
  350. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/fillet-topology-a.step +0 -0
  351. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/fillet-topology-b.step +0 -0
  352. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/fillet-turned.step +0 -0
  353. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/flat-coaxial.step +0 -0
  354. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/flat-double-d.step +0 -0
  355. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/flat-lone-d.step +0 -0
  356. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/flat-nonround.step +0 -0
  357. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/flat-slanted-double-d.step +0 -0
  358. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/flat-topology-a.step +0 -0
  359. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/flat-topology-b.step +0 -0
  360. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/groove-compound.step +0 -0
  361. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/groove-lone-x.step +0 -0
  362. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/groove-lone-y.step +0 -0
  363. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/groove-lone-z.step +0 -0
  364. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/groove-monotonic-negative.step +0 -0
  365. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/groove-narrow.step +0 -0
  366. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/groove-topology-a.step +0 -0
  367. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/groove-topology-b.step +0 -0
  368. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-compound-equal.step +0 -0
  369. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-detached-body-negative.step +0 -0
  370. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-full-span-ledge-negative.step +0 -0
  371. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-nested-staircase-negative.step +0 -0
  372. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-topology-a.step +0 -0
  373. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-topology-b.step +0 -0
  374. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-x-negative.step +0 -0
  375. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-x-positive.step +0 -0
  376. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-y-negative.step +0 -0
  377. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-y-positive.step +0 -0
  378. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-z-negative.step +0 -0
  379. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pad-z-positive.step +0 -0
  380. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pattern-ambiguous.step +0 -0
  381. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pattern-grid.step +0 -0
  382. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pattern-topology-a.step +0 -0
  383. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pattern-topology-b.step +0 -0
  384. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plain-block.step +0 -0
  385. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-compound-equal.step +0 -0
  386. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-cross-topology-a.step +0 -0
  387. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-cross-topology-b.step +0 -0
  388. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-detached-negative.step +0 -0
  389. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-rotational-negative.step +0 -0
  390. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-single-negative.step +0 -0
  391. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-t-xz.step +0 -0
  392. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-t-yz.step +0 -0
  393. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-thick-negative.step +0 -0
  394. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-u-additive.step +0 -0
  395. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/plate-u-cut.step +0 -0
  396. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-compound.step +0 -0
  397. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-edge-anchored.step +0 -0
  398. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-lone.step +0 -0
  399. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-opposed.step +0 -0
  400. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-pattern-ambiguous.step +0 -0
  401. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-pattern-grid.step +0 -0
  402. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-pattern-linear.step +0 -0
  403. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-pattern-pair.step +0 -0
  404. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-pattern-topology-a.step +0 -0
  405. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-pattern-topology-b.step +0 -0
  406. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-prismatic-negative.step +0 -0
  407. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-side.step +0 -0
  408. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-through-negative.step +0 -0
  409. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-topology-a.step +0 -0
  410. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-topology-b.step +0 -0
  411. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/pocket-two-equal.step +0 -0
  412. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-compound-equal.step +0 -0
  413. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-detached-negative.step +0 -0
  414. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-in-plane-rotated.step +0 -0
  415. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-other-protrusions-negative.step +0 -0
  416. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-recess-negative.step +0 -0
  417. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-stock-negative.step +0 -0
  418. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-topology-a.step +0 -0
  419. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-topology-b.step +0 -0
  420. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-x.step +0 -0
  421. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-y.step +0 -0
  422. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-boss-z.step +0 -0
  423. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-compound-negative.step +0 -0
  424. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-cylinder-negative.step +0 -0
  425. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-irregular-negative.step +0 -0
  426. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-octagon-negative.step +0 -0
  427. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-recess-negative.step +0 -0
  428. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-roll17.step +0 -0
  429. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-topology-a.step +0 -0
  430. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-topology-b.step +0 -0
  431. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-translated.step +0 -0
  432. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-x.step +0 -0
  433. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/polygonal-stock-y.step +0 -0
  434. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/topology-a.step +0 -0
  435. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/topology-b.step +0 -0
  436. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/turned-step-axis-x.step +0 -0
  437. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/turned-step-axis-y.step +0 -0
  438. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/turned-step-axis-z.step +0 -0
  439. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/turned-step-compound.step +0 -0
  440. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/turned-step-repeated-lengths.step +0 -0
  441. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/turned-step-through-bore.step +0 -0
  442. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/turned-step-topology-a.step +0 -0
  443. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/turned-step-topology-b.step +0 -0
  444. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/evaluation/turned-step-translated-blind-bore.step +0 -0
  445. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/grm03_thumbwheel_drive_screw.step +0 -0
  446. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/grm03_thumbwheel_drive_screw_ap242_pmi.step +0 -0
  447. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/grm04_drive_plate.step +0 -0
  448. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/if_step_flat_across_cylinder.step +0 -0
  449. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/issue_1058_wheel_rh.step +0 -0
  450. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/issue_1247_angled_blind_step.step +0 -0
  451. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/issue_1595_whistle_key_frame.step +0 -0
  452. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/issue_909_basic_part_design_017_body.step +0 -0
  453. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/issue_915_case_study_2.step +0 -0
  454. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/nist_ctc_01_asme1_ap203.stp +0 -0
  455. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/nist_ctc_01_asme1_ap242.stp +0 -0
  456. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/nist_ctc_02_asme1_ap203.stp +0 -0
  457. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/nist_ctc_02_asme1_ap242.stp +0 -0
  458. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/nist_ctc_03_asme1_ap203.stp +0 -0
  459. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/nist_ctc_03_asme1_ap242.stp +0 -0
  460. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/nist_ctc_04_asme1_ap203.stp +0 -0
  461. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/nist_ctc_04_asme1_ap242.stp +0 -0
  462. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/nist_ctc_05_asme1_ap203.stp +0 -0
  463. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/nist_ctc_05_asme1_ap242.stp +0 -0
  464. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/tuner_jig_blind_obround_pockets.step +0 -0
  465. {draftwright-0.4.29 → draftwright-0.4.30}/tests/fixtures/whistle_frame_reference.step +0 -0
  466. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/bracket_section.json +0 -0
  467. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/centered_rebate.json +0 -0
  468. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/chamfered.json +0 -0
  469. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/filleted.json +0 -0
  470. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/flange_dense.json +0 -0
  471. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/grid_plate.json +0 -0
  472. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/grooved_shaft.json +0 -0
  473. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/hex_bar.json +0 -0
  474. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/holed_slot.json +0 -0
  475. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/pocketed.json +0 -0
  476. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/prismatic_ladder.json +0 -0
  477. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/scattered_plate.json +0 -0
  478. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/side_drilled.json +0 -0
  479. {draftwright-0.4.29 → draftwright-0.4.30}/tests/refactor_golden/turned_stepped.json +0 -0
  480. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_add_dimension.py +0 -0
  481. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_adr0018_view_selection.py +0 -0
  482. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_adr_corpus.py +0 -0
  483. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_agents_guide.py +0 -0
  484. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_api_docs.py +0 -0
  485. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_architecture_docs.py +0 -0
  486. /draftwright-0.4.29/tests/test_adr0018_arrangement_gate.py → /draftwright-0.4.30/tests/test_arrangement_gate.py +0 -0
  487. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_audit_differential.py +0 -0
  488. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_balloon_ring_standoff.py +0 -0
  489. /draftwright-0.4.29/tests/test_issue_1438_boss_ownership.py → /draftwright-0.4.30/tests/test_boss_ownership.py +0 -0
  490. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_build_profile_harness.py +0 -0
  491. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_carve_free_position_callers.py +0 -0
  492. /draftwright-0.4.29/tests/test_issue_1438_channel_ownership.py → /draftwright-0.4.30/tests/test_channel_ownership.py +0 -0
  493. /draftwright-0.4.29/tests/test_issue_1382_circular_blind_step_semantics.py → /draftwright-0.4.30/tests/test_circular_blind_step_semantics.py +0 -0
  494. /draftwright-0.4.29/tests/test_issue_1438_cli_report_sidecar.py → /draftwright-0.4.30/tests/test_cli_report_sidecar.py +0 -0
  495. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_counting_calls.py +0 -0
  496. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_declare.py +0 -0
  497. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_declared_recognition_gate.py +0 -0
  498. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_dense_sheet_canary.py +0 -0
  499. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_detect_once.py +0 -0
  500. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_detect_registry.py +0 -0
  501. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_dimension_role_vocabulary.py +0 -0
  502. /draftwright-0.4.29/tests/test_issue_1542_document.py → /draftwright-0.4.30/tests/test_document_build.py +0 -0
  503. /draftwright-0.4.29/tests/test_issue_1542_document_coverage.py → /draftwright-0.4.30/tests/test_document_coverage.py +0 -0
  504. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_drawing_encapsulation.py +0 -0
  505. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_e2e_slice.py +0 -0
  506. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_export_dxf_zoom.py +0 -0
  507. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_export_reproducible.py +0 -0
  508. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_external_recognition_boundary.py +0 -0
  509. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_fillets_adjacency.py +0 -0
  510. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_flat_completeness.py +0 -0
  511. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_flat_stock_identity.py +0 -0
  512. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_flat_stock_opposition.py +0 -0
  513. /draftwright-0.4.29/tests/test_issue_1382_framed_step_family_evidence.py → /draftwright-0.4.30/tests/test_framed_step_family_evidence.py +0 -0
  514. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_gdt_placement.py +0 -0
  515. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_geometry_graph_spike.py +0 -0
  516. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_grid_lattice_convention.py +0 -0
  517. /draftwright-0.4.29/tests/test_issue_1471_groove_profile.py → /draftwright-0.4.30/tests/test_groove_profile.py +0 -0
  518. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_inspection_contract.py +0 -0
  519. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1000_envelope_reuse.py +0 -0
  520. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1058_wheel_profile.py +0 -0
  521. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1073_cross_body_patterns.py +0 -0
  522. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1082_polygonal_stock.py +0 -0
  523. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1086_declared_gears.py +0 -0
  524. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1126_requesting_less_never_scores_better.py +0 -0
  525. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1130_view_planning_evidence.py +0 -0
  526. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1132_turned_profile_span_is_reported.py +0 -0
  527. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1142_hole_leader_labels.py +0 -0
  528. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1143_hole_completeness.py +0 -0
  529. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1144_transactional_hole_table.py +0 -0
  530. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1146_scale_completeness.py +0 -0
  531. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1147_legibility_pair_aggregation.py +0 -0
  532. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1153_contradictory_dimensions.py +0 -0
  533. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1154_one_owner_per_measurement.py +0 -0
  534. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1155_grm04_sheet_use.py +0 -0
  535. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1157_no_implicit_general_tolerance.py +0 -0
  536. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1187_unroutable_leaders.py +0 -0
  537. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1188_per_view_assignment.py +0 -0
  538. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1196_deterministic_view_names.py +0 -0
  539. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1202_observed_drawing_consumer.py +0 -0
  540. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1204_multiscale_view_issues.py +0 -0
  541. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1215_no_approved_tolerance_is_dropped.py +0 -0
  542. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1216_callout_reservation_measures_ink.py +0 -0
  543. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1216_pairwise_across_scale_groups.py +0 -0
  544. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1217_claimed_representations.py +0 -0
  545. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1217_the_facility_is_shared.py +0 -0
  546. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1219_location_claims_its_own_axis.py +0 -0
  547. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1229_ledger_member_keying.py +0 -0
  548. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1240_iso_above_strip_visibility.py +0 -0
  549. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1245_passage_disposition.py +0 -0
  550. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1246_prismatic_pocket_disposition.py +0 -0
  551. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1247_angled_step_disposition.py +0 -0
  552. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1254_turned_chamfers.py +0 -0
  553. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1260_view_constraints.py +0 -0
  554. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1262_automatic_turned_views.py +0 -0
  555. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1276_turned_leader_targets.py +0 -0
  556. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1281_turned_fillets.py +0 -0
  557. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1298_manufacturing_requirements.py +0 -0
  558. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1308_machined_leader_analytics.py +0 -0
  559. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1312_engine_costs.py +0 -0
  560. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1332_overlap_remedy.py +0 -0
  561. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1332_zone_labels.py +0 -0
  562. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1333_bounded_ink_repair.py +0 -0
  563. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1334_prevent_ink.py +0 -0
  564. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1336_grm03_ap242_pmi_fixture.py +0 -0
  565. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1338_scale_before_page_escalation.py +0 -0
  566. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1349_precision_display.py +0 -0
  567. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1350_detected_takeover.py +0 -0
  568. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1351_structured_note_coverage.py +0 -0
  569. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1353_cnc_authoritative_workflow.py +0 -0
  570. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1357_framed_activation.py +0 -0
  571. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1357_framed_boundary.py +0 -0
  572. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1357_plural_turned_profiles.py +0 -0
  573. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1360_thread_depth.py +0 -0
  574. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1369_hole_completeness_evidence.py +0 -0
  575. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1378_diameter_leader_targets.py +0 -0
  576. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1390_sheet_registration.py +0 -0
  577. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1392_recognisers_048.py +0 -0
  578. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1395_degenerate_iso_region.py +0 -0
  579. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1396_layout_advisories.py +0 -0
  580. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1397_unverifiable_requirement_message.py +0 -0
  581. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1421_rectangular_blind_slot_completeness.py +0 -0
  582. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1421_rectangular_blind_slot_semantics.py +0 -0
  583. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1421_round_bottom_blind_slot_completeness.py +0 -0
  584. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1421_round_bottom_blind_slot_semantics.py +0 -0
  585. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1432_adoption.py +0 -0
  586. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1432_boundary_failures.py +0 -0
  587. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1433_blend_semantics.py +0 -0
  588. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1485_quiddity_024_boundary.py +0 -0
  589. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1505_diameter_coverage.py +0 -0
  590. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1514_projection_safeguard.py +0 -0
  591. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1515_first_angle.py +0 -0
  592. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1524_tolerance_magnitude.py +0 -0
  593. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1530_section_provenance.py +0 -0
  594. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1531_semantic_hole_counts.py +0 -0
  595. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1532_authored_section_examples.py +0 -0
  596. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1533_review_diagnostics.py +0 -0
  597. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1534_build_progress.py +0 -0
  598. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1536_title_overflow.py +0 -0
  599. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1543_feature_schedules.py +0 -0
  600. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1544_frame_document_canary.py +0 -0
  601. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1555_turned_recognition_format_invariance.py +0 -0
  602. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1560_envelope_axes.py +0 -0
  603. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1563_sheet_pmi_reconciliation.py +0 -0
  604. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1585_title_block_date.py +0 -0
  605. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1593_title_block_keepout.py +0 -0
  606. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1596_bolt_circle_corroboration.py +0 -0
  607. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1598_hex_pockets.py +0 -0
  608. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1599_duplicate_slot_widths.py +0 -0
  609. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1601_flat_precision.py +0 -0
  610. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1603_cli_output_paths.py +0 -0
  611. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1604_internal_section.py +0 -0
  612. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1612_frame_sergio_coverage.py +0 -0
  613. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1612_sheet_margins.py +0 -0
  614. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_1613_circular_channel.py +0 -0
  615. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_367_leader_ink.py +0 -0
  616. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_443_grm03_axial_coverage.py +0 -0
  617. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_563_placement_intent.py +0 -0
  618. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_676_polygonal_boss.py +0 -0
  619. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_676_polygonal_boss_declare.py +0 -0
  620. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_740_leader_assignment.py +0 -0
  621. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_798_floor_cardinality.py +0 -0
  622. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_798_material_field.py +0 -0
  623. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_827_real_part_canary.py +0 -0
  624. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_885_prismatic_coverage.py +0 -0
  625. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_909_sloped_profile.py +0 -0
  626. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_916_pocket_leader.py +0 -0
  627. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_917_open_channel.py +0 -0
  628. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_924_zero_length_shoulders.py +0 -0
  629. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_955_height_contingency.py +0 -0
  630. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_issue_958_cross_solid_recognition.py +0 -0
  631. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_label_provenance.py +0 -0
  632. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_layout.py +0 -0
  633. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_layout_hypothesis.py +0 -0
  634. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_leader_footprint.py +0 -0
  635. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_lint_box_cache.py +0 -0
  636. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_lint_ink_overlap.py +0 -0
  637. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_lint_reconciliation.py +0 -0
  638. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_lint_structural.py +0 -0
  639. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_linting.py +0 -0
  640. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_location_vocabulary.py +0 -0
  641. /draftwright-0.4.29/tests/test_issue_1438_nested_ownership.py → /draftwright-0.4.30/tests/test_nested_recognition_ownership.py +0 -0
  642. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_note_verb.py +0 -0
  643. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_object_aspects.py +0 -0
  644. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_occupancy_boxes.py +0 -0
  645. /draftwright-0.4.29/tests/test_issue_1438_occurrence_ownership.py → /draftwright-0.4.30/tests/test_occurrence_recognition_ownership.py +0 -0
  646. /draftwright-0.4.29/tests/test_issue_1382_paired_ramp_semantics.py → /draftwright-0.4.30/tests/test_paired_ramp_semantics.py +0 -0
  647. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_parameter_id.py +0 -0
  648. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_part_model.py +0 -0
  649. /draftwright-0.4.29/tests/test_issue_1438_pattern_ownership.py → /draftwright-0.4.30/tests/test_pattern_ownership.py +0 -0
  650. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_pitch_dim_footprint.py +0 -0
  651. /draftwright-0.4.29/tests/test_issue_1438_plate_ownership.py → /draftwright-0.4.30/tests/test_plate_ownership.py +0 -0
  652. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_pocket_pattern.py +0 -0
  653. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_pocket_pattern_recognition.py +0 -0
  654. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_principal_profile_classifier.py +0 -0
  655. /draftwright-0.4.29/tests/test_issue_1504_profile_angles.py → /draftwright-0.4.30/tests/test_profile_angles.py +0 -0
  656. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_quality_components.py +0 -0
  657. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_recogniser_adoption.py +0 -0
  658. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_recogniser_contract.py +0 -0
  659. /draftwright-0.4.29/tests/test_issue_1471_evidence_schema.py → /draftwright-0.4.30/tests/test_recognition_evidence_schema.py +0 -0
  660. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_recognition_result.py +0 -0
  661. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_refactor_golden.py +0 -0
  662. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_registry.py +0 -0
  663. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_render_seam.py +0 -0
  664. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_repack_geometry_seam.py +0 -0
  665. /draftwright-0.4.29/tests/test_issue_1438_report_writer.py → /draftwright-0.4.30/tests/test_report_writer.py +0 -0
  666. /draftwright-0.4.29/tests/test_issue_1542_applicability.py → /draftwright-0.4.30/tests/test_requirement_applicability.py +0 -0
  667. /draftwright-0.4.29/tests/test_issue_1542_requirement_carriers.py → /draftwright-0.4.30/tests/test_requirement_carriers.py +0 -0
  668. /draftwright-0.4.29/tests/test_issue_1542_catalog.py → /draftwright-0.4.30/tests/test_requirement_catalog.py +0 -0
  669. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_score.py +0 -0
  670. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_script_detail_parity.py +0 -0
  671. /draftwright-0.4.29/tests/test_issue_1471_section_recess_contract.py → /draftwright-0.4.30/tests/test_section_recess_contract.py +0 -0
  672. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_shared_box_memo.py +0 -0
  673. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_sheet_gdt.py +0 -0
  674. /draftwright-0.4.29/tests/test_issue_1438_generation_snapshot.py → /draftwright-0.4.30/tests/test_sheet_generation_snapshot.py +0 -0
  675. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_sheet_identity_invariant.py +0 -0
  676. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_sheet_notes.py +0 -0
  677. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_sheet_of.py +0 -0
  678. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_sheet_section.py +0 -0
  679. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_sheet_tables.py +0 -0
  680. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_slanted_blind_step.py +0 -0
  681. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_slot_pattern.py +0 -0
  682. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_slot_pattern_recognition.py +0 -0
  683. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_soft_deprecation.py +0 -0
  684. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_solve_trace.py +0 -0
  685. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_suppression_ledger.py +0 -0
  686. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_suppression_marks.py +0 -0
  687. /draftwright-0.4.29/tests/test_issue_1438_through_step_ownership.py → /draftwright-0.4.30/tests/test_through_step_ownership.py +0 -0
  688. /draftwright-0.4.29/tests/test_issue_1382_through_step_semantics.py → /draftwright-0.4.30/tests/test_through_step_semantics.py +0 -0
  689. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_tolerances.py +0 -0
  690. /draftwright-0.4.29/tests/test_issue_1438_turned_step_ownership.py → /draftwright-0.4.30/tests/test_turned_step_ownership.py +0 -0
  691. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_turned_steps.py +0 -0
  692. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_view_plan.py +0 -0
  693. {draftwright-0.4.29 → draftwright-0.4.30}/tests/test_witness_label_reconciliation.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: draftwright
3
- Version: 0.4.29
3
+ Version: 0.4.30
4
4
  Summary: Automated technical-drawing generation for build123d
5
5
  Project-URL: Homepage, https://github.com/pzfreo/draftwright
6
6
  Project-URL: Repository, https://github.com/pzfreo/draftwright
@@ -10,7 +10,7 @@ each naming the test that fails if it is — that list is the reason the documen
10
10
  | [2 — Sheet layout and view planning](0002-sheet-layout-and-view-planning.md) | Requirement-driven view planning, compose-then-pack, collect-then-solve placement, Policy B, scale-before-sheet | `test_carve_free_position_callers.py`, `test_layout_cleanliness.py`, `test_issue_1146_scale_completeness.py`, `test_issue_1260_view_constraints.py` |
11
11
  | [3 — The recognition boundary](0003-recognition-boundary.md) | External geometry-only recognition, one run per build, the fail-closed provider join, occurrence ownership, the framed boundary | `test_recogniser_capabilities.py`, `test_declared_recognition_gate.py`, `test_detect_registry.py`, `test_issue_1357_framed_boundary.py` |
12
12
  | [4 — Declared intent](0004-declared-intent.md) | The IR as public input, authored dimension sets, suppression by omission, the compiled-plan boundary, one declarative script | `test_declare.py`, `test_label_provenance.py`, `test_parameter_id.py`, `test_sheet_identity_invariant.py` |
13
- | [5 — Trust and honest failure](0005-trust-and-honest-failure.md) | Determinism, lint as an independent judge, provenance, reports that refuse rather than shrink, absences reported | `test_export_reproducible.py`, `test_render_seam.py`, `test_issue_1215_no_approved_tolerance_is_dropped.py`, `test_issue_1438_report_projection.py` |
13
+ | [5 — Trust and honest failure](0005-trust-and-honest-failure.md) | Determinism, lint as an independent judge, provenance, reports that refuse rather than shrink, absences reported | `test_export_reproducible.py`, `test_render_seam.py`, `test_issue_1215_no_approved_tolerance_is_dropped.py`, `test_report_projection.py` |
14
14
 
15
15
  `archive/` holds the twenty records these replaced, frozen, with their filenames and numbers
16
16
  unchanged. Each is stamped with the live record that now owns its decision. They are the
@@ -308,7 +308,7 @@ axis line and axial band. Missing profile identity retains the geometric ambigui
308
308
  a missing profile in an authored subset cannot redirect the groove to another coaxial body.
309
309
  Generated declarations replace the provider key with the same `profile_group` token used for the
310
310
  owning steps. The keyed nested-body and omission checks live in
311
- `tests/test_issue_1471_groove_profile.py`; they supplement the unchanged authored groove corpus.
311
+ `tests/test_groove_profile.py`; they supplement the unchanged authored groove corpus.
312
312
 
313
313
  ## Rectangular-pad completeness evidence
314
314
 
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "draftwright"
7
- version = "0.4.29"
7
+ version = "0.4.30"
8
8
  description = "Automated technical-drawing generation for build123d"
9
9
  readme = "README.md"
10
10
  license = { file = "LICENSE" }
@@ -90,11 +90,13 @@ timeout = 300
90
90
  # `slow` covers end-to-end integration builds, including the large NIST CTC fixtures
91
91
  # (minutes each), deselected by default. `smoke` is a curated, build-light subset
92
92
  # (~30 s) for a quick local "did I break something obvious" check — run it with
93
- # `uv run pytest -m smoke`. The default run is the full fast tier (`-m 'not slow'`,
94
- # runtime depends on worker count). CI runs bounded real-part canaries before merge,
95
- # the full slow tier after merge, and the fast tier across its compatibility matrix.
93
+ # `uv run pytest -m smoke`. The default run is the full supported-behavior tier
94
+ # (`-m 'not slow and not scheduled'`; runtime depends on worker count). CI runs bounded
95
+ # real-part canaries before merge, the scheduled tier after merge, and the full tier
96
+ # across its compatibility matrix.
96
97
  markers = [
97
98
  "slow: end-to-end integration builds, including CTC fixtures (deselected by default)",
99
+ "scheduled: compatibility and broad-corpus contracts selected by the scheduled tier",
98
100
  "real_part_canary: bounded real STEP semantic/export gate, selected once in PR CI",
99
101
  "smoke: curated build-light subset for a fast local check (~30 s)",
100
102
  "unit: pure-logic inner-loop tier — constructs NO OCC geometry (enforced by conftest, #656)",
@@ -113,7 +115,7 @@ filterwarnings = [
113
115
  ]
114
116
  # Coverage is a CI concern (it adds ~13% locally and instruments every line); the
115
117
  # CI workflow passes the --cov flags explicitly. Keep the local default lean.
116
- addopts = "--tb=short -m 'not slow'"
118
+ addopts = "--tb=short -m 'not slow and not scheduled'"
117
119
 
118
120
  [tool.coverage.run]
119
121
  source = ["src/draftwright"]