The geometric diff matches faces by their underlying analytic surface (plane,
cylinder, cone, sphere, torus); freeform B-spline faces use a coarser
area + centroid fallback.
cadvm cannot merge two concurrent edits of the same file.
The STL/OBJ mesh diff depends on tessellation and a distance tolerance, so it
is fuzzier than the B-Rep diff.
geom-diff / view need the cadvm-geom helper (OCCT) only for STEP/STP;
STL/OBJ diff in pure Rust. The rest of cadvm works without OCCT.
STL/OBJ support — versioning + mesh metadata, and a pure-Rust
distance-based mesh diff feeding the same 3D viewer (no Open CASCADE).
AI/agent surface — --json diffs, a verify command (assert expected
geometric deltas, exit 0/1), repo-less --files comparison for evals/CI,
a GitHub Action (cadvm-verify) to gate generated CAD, and an MCP
server (cadvm mcp) exposing cadvm as native tools for agents.
Interactive TUI — cadvm ui, and shell completions.
Cross-platform — CI on Linux/macOS/Windows and prebuilt release binaries.
Docs — user guide and API reference published online.