This is normal. There is a convention (although i can’t point to a specific source without googling) that stderr is for user-facing output (e.g. error messages, the “Tracked 1 path(s)” message from your example), and stdout is for machine-readable output (e.g. JSON).
Simple command or commands (?) surprisingly writes to strderr, I am expecting stdout.
Please clarify globally.