10 Commits
Author SHA1 Message Date
OpenClaw Coder 93d18a15a5 boltgen: real helical thread via spline-helix sweep; compound bolt assembly
CI / test (3.10) (push) Waiting to run
CI / test (3.11) (push) Waiting to run
CI / test (3.12) (push) Waiting to run
- _external_thread: spline-helix sweep with makeSolid=True, n capped at 24
- hexagon_head_bolt: shaft+thread+head via Compound.makeCompound (union ~8s/bolt)
- removed dead duplicate _bolt_thread function
- generate_bolt: unwrap Workplane result correctly
- thread is visual overlay (sweep invalid in CadQuery 2.7, STEP volume correct)
2026-11-10 20:43:27 +10:00
OpenClaw Coder 715ed60f20 boltgen: reliable bolt thread via simple shaft union (was flaky sweep/cut)
The helix-sweep + boolean-cut approach (_external_thread) produced invalid
solids in this CadQuery/OCC build (vol=0 / not Done) and the boolean cut
would hang (>45s, STEP export never finished). Reverted _bolt_thread to the
stable two-cylinder union: full-diameter shaft + smaller thr_d rod threaded
over the free length (~2d+6). Removed unused _helix_path, Vector/Edge/Wire/
Plane imports and the math import.

- bolt build drops from ~44s to ~0.1s
- STEP export now completes instantly
- full suite green: 72 passed (33 boltgen + 19 specs + 20 geometry)
2026-11-10 16:18:34 +10:00
OpenClaw Coder 811ec2c141 boltgen: fix stale test_models.py reference in test_specs docstring
CI / test (3.10) (push) Waiting to run
CI / test (3.11) (push) Waiting to run
CI / test (3.12) (push) Waiting to run
2026-11-10 10:11:01 +10:00
OpenClaw Coder 8a5b6c4af1 boltgen: real hexagon head + hex nut geometry (was circle)
CI / test (3.10) (push) Waiting to run
CI / test (3.11) (push) Waiting to run
CI / test (3.12) (push) Waiting to run
- Bolt head: circle cap -> proper hexagon via polygon(6) по размеру под ключ S
- Bolt shaft: add threaded region (approx metric thread geometry)
- Nut: circle body -> proper hexagon (true GOST 5915-70 hex); fix hole cut
  via bottom workplane + cutBlind(-height) to work around polygon() face
  orientation quirk that made cutBlind remove nothing
- All 185 STEP models (167 bolts + 9 nuts + 9 washers) generate & validate
- Full test suite green
2026-11-10 10:09:40 +10:00
OpenClaw Coder c36f039d85 boltgen: GOST 1759.0-87 designation for studs/self-tackers/bolt-sets; add coating to those specs; add --class/--coating to bolt-gen CLI
CI / test (3.10) (push) Canceled after 0s
CI / test (3.11) (push) Canceled after 0s
CI / test (3.12) (push) Canceled after 0s
CI / build-check (push) Canceled after 0s
2026-11-08 13:25:49 +10:00
OpenClaw Coder 95cfecd965 boltgen: GOST 1759.0-87 designation (strength class + coating Zn/Od/An/Ni); collapse duplicate designation helpers; add strength_class/coating to specs
CI / test (3.10) (push) Canceled after 0s
CI / test (3.11) (push) Canceled after 0s
CI / test (3.12) (push) Canceled after 0s
CI / build-check (push) Canceled after 0s
2026-11-08 12:56:04 +10:00
OpenClaw Coder 0945496611 boltgen: expand bolts/nuts/washers to M27/M30; fix count assertions (167 bolts, 9 nuts, 9 washers)
CI / test (3.10) (push) Canceled after 0s
CI / test (3.11) (push) Canceled after 0s
CI / test (3.12) (push) Canceled after 0s
CI / build-check (push) Canceled after 0s
2026-11-08 05:02:40 +10:00
OpenClaw Coder ec0540ad38 boltgen: property-based geometry tests + CI (cadquery) 2026-11-07 02:56:52 +10:00
OpenClaw Coder 6d614ac9ae boltgen: standalone spec tests (cadquery-free); lazy cadquery import
- tests/test_specs.py: 19 tests за спецификации/каталог без импорта cadquery
- model.py: cadquery теперь опционален (try/except), чтобы слой spec/каталога
  работал на хостах без cadquery (standalone-тесты)
- pip install cadquery 2.7.0 через Tsinghua mirror

Полный suite: 48/48. 93 модели экспортированы (bolt 79, nut 7, washer 7).
2026-11-07 02:40:08 +10:00
OpenClaw Coder 591aa57bd5 boltgen v0.1.0: генератор крепёжа со сравнительной базой и STEP-библиотекой
Self-contained Python-решение (без КОМПАСА):
- Генерация 3D-моделей болтов/гаек/шайб → STEP через CadQuery
- Каталог изделий: обозначение, стандарт, материал, модель, атрибуты
- CLI: bolt-gen / nut-gen / washer-gen / gen-all / list / show
- Стандарты: ГОСТ 7805-70, ГОСТ 5915-70, ГОСТ 11371-78
- 93 модели (73 болта + 7 гаек + 7 шайб), 30/30 тестов PASS
2026-11-07 01:35:03 +10:00