In the context of Emacs, absolutely. I, for one, love the fact that the completions aren't an opinionated set of rules, and anyone can configure them to their liking. Why would I let anyone upstream dictate how those rules should apply, on
my computer, in
my editor? For example, when working in a Clojure codebase, I don't want to blindly rely on CIDER completions because they work only when you have a connected REPL. I want to leverage LSP completions (if it's connected), and I also want completions for my code snippets, filenames, keywords specific to the language, words in comments, etc.
If tomorrow I wanted to use different rules, applying them dynamically based on some conditions - Emacs provides ways to achieve that.
So yes, for completions specifically, I don't want them to be rigidly embedded in the core of Emacs. I prefer this feature to be an extension. Interestingly, Emacs is so versatile that some extensions are built so well that sometimes you completely forget they are not built-in features or an afterthought; they feel as if the editor was specifically designed to have them.