The env_bind hook was copying SX-defined functions (e.g. has-key? from stdlib.sx) into vm_globals, shadowing the native primitives seeded there. CALL_PRIM then called the SX version which broke with wrong arg types. Fix: env_bind hook skips names that are registered primitives. Native implementations are authoritative for CALL_PRIM dispatch. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>