Yet Bun has Node compatibility.

Probably because node imcompat / fresh start wasn't the only key differentiator for them?? Bun also had/has (in context of a leg up over node and similar to deno):

- typescript support - built in linting - built in package manager command - built in transpiler/bundler

Presumably they like other aspects of Bun, in a world where a clean API is not an option.