Since ipykernel>=6.6.0, using the "step over" instruction when debugging top-level code will step into IPython runtime code (see GIF below). This is confusing behavior and definitely not what most users will want or expect.

I believe this regression is due to #812. This also complicates the stack trace by including frames from IPython -- at best this clutters the interface, and at worst this could confuse users as to what code is running or where their code is.