The key factor for me, is the ability for the tool to understand the codebase at some level. It needs to be able to tell me where a symbol is used, let me refactor that symbol (e.g. adding a new mandatory argument, or changing the argument order, or renaming the symbol) with as little extra work from me as possible.
Jetbrains tools allow me to do all of that (in PHP at least. I write about as much JS as I eat mud) where no others I've seen do.
Just because VS Code feels lightweight, doesn't mean there is any fundamental limitation preventing it from supporting all the features mentioned in the post. In fact, as the author and others mentioned, you can achieve many of the same features with plugins in VS Code.
Yes, WebStorm is better in the points mentioned by the author, and the JetBrains IDEs are amazing in general. But saying it's because one is the editor and the other an IDE is completely wrong.
I almost don't code JavaScript/TypeScript, it's not very useful in embedded work. I use VSCode, but I have no use for this IDE. This article is meaningless if you're not in the same niche as the author. While VSCode is an editor that is made for any language.
I can’t count all the languages IDEA Ultimate (also JetBrains) supports via plugins.
You would typically point an IDE at a metafile that described the source files, build settings and so forth and it would discover the editable files. All this in a semi opaque manner, bootstrapped by some menus or templates. In contrast in an editor, you might generate the metafile only when your project becomes too big for the defaults to be sufficient.
You're right that the distinction is much more blurred now. For example you can do a lot in Visual Studio now without using a "project" file.