actually this is not 100% correct.
it's actually possible to make your own debugger for dotnet core since the interfaces to create one are public and opensource. it's just that the debugger that microsoft has written, is not open source.
the "infrastructure for debugging" is actually open source.