- geometry: property guard hex nut across-flats (regression guard) - gui tests: rewrite to ASCII + cover _type_name/_mass helper paths - coverage: source=fastengen, omit gui.py (UI headless); total 87% - build: license-files for setuptools, sdist+wheel OK - tasks.md: P4 recorded