v0.4.0 sharpens standards fidelity + honesty and hardens the Windows workflow. Clean-room, MIT.
New
- ISO 965-1
fit=tolerance position (allowance) — exact formulae, separate from FDMclearance minor_dcore-diameter override; presets 43 → 101 (full ISO 261 fine + Unified #0–#12 + ¼–1″ UNC/UNF)tq_preset_count()/tq_presets_selfcheck();tq_threads_selftest.scadstandards-table asserts- Wood-screw params (taper/core_d/thread_depth/point/shank) and bottle-thread params (angle/tooth_height/profile/lead_in) — still generic, no standard claimed
- Robust example selection: zero-
-Dexamples/*.scadwrappers + numeric-D PART=n scripts/render_proof.ps1: PASS/FAIL, version+timings, 13 negative tests, exits nonzero (PS 5.1 + pwsh)REFERENCES.md §0fidelity table +PROVENANCE.md(EXACT/DERIVED/FDM/APPROX);ACCEPTANCE-REPORT-v0.4.0.md
Honesty: printable-first, not metrology-grade (single nominal surface; models the tolerance position, not the grade/band). Backward compatible: default angle=60 keeps v0.2/v0.3 geometry bit-for-bit.
Proof: 27/27 (14 render + 13 negative), OpenSCAD 2021.01. See CHANGELOG + acceptance report.