SM_API surface and skin entry points (SmApiSurfaces.cpp, SmApiPrimitives.cpp):
extrude, sweep, ruled and skinned surfaces are ported and bit-identical to the
C++; skin primitive, skin from faces and surface of revolution validate and
copy their inputs as upstream, then stub SmPrimitiveCreation (deferred).
Adds the C++ shim, FFI binding, difftest runner and upstream-derived fixtures,
and records UB-74 (SmApiCreateSkinFromFaces with no faces segfaults).
difftest: cases=823 passed=774 failed=0 deferred=49
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FsWWaoeGNWKgzeGrF2Pkn5