ui: geometry.defeature.propose lists the small features with an on/off switch each (#433)

Holes by diameter, fillets by radius, chamfers by distance and bosses by height below
thresholds, or under a geometry.check finding; the reply panel switches each feature
off and on (geometry.defeature) and defeatures the whole proposal.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01UhhZMBTviDQxZvwnyP89fo
This commit is contained in:
jyvikoandClaude Opus 5.5 authored and Irakli Kourtis committed 2026-10-16 18:30:45 -04:00
1 parent 2456912850
commit 5db21aba7b
7 files changed
+280 -16

No files matched your search

+4 -1
View File
@@ -21,7 +21,10 @@ pictures → report.** Never skip a step because the last mesh looked fine.
`size`): short edges, small and sliver faces,
near faces (gaps, overlaps, walls thinner than the gap). Each finding names its faces and a
point `at`, and is marked in pictures. Defeature or resize before meshing; never mesh over a
finding you have not explained.
finding you have not explained. `geometry.defeature.propose {"body", "below": {"hole_diameter",
"fillet_radius", "chamfer", "boss_height"}, "from_check": true}` lists the holes, fillets,
chamfers and bosses below a size or under a finding; `geometry.defeature {"name", "features"}`
takes them out (the design rebuilt without them), `geometry.defeature.delete` puts them back.
3. Take pictures. Headless: `fieldcraft-cli snapshot script.json --out a.png` with
`--view iso|front|top|…` or `--camera '{"yaw":-45,"pitch":30,"target":[x,y,z],"fit":true}'`,
and `--section x|y|z[=VALUE]`. Over MCP: `screenshot {view | camera: {yaw, pitch, target,