It's your call honestly. What has happened before, though you can't say for sure now is that for example, when the 2000 series and the 3000 series dropped, you could find good pricing on previous generation CPUs.
The 3000 series are definitely good though. For example I have a ryzen 5 3600, which from what I can see is pretty close to an i7 8700. And that's a middle of the road cpu. So I say it's your call. I think the 4000 series will perform better, but just not sure how much.
One thing to keep in mind also, it may be that your board you buy may have sat in a warehouse somewhere, and may not recognize a 4000 series cpu without an update. I would also venture that the 4000 series might be their last release on socket am4 before they move to socket am5 and ddr5 memory.
If you want to wait I see no harm there. But if you have all the other components, I see no issue with getting a 3000 series cpu now. According to an article I just saw it looks like there will be a speech about the new CPUs October 8, and then they get released in a few weeks after. So you could either wait, buy a good 3000 series cpu now, or you could even buy something like a ryzen 5 3600 or ryzen 7 3700x as a placeholder and sell when the new chips come out.
https://www.tomshardware.com/reviews/intel-core-i9-10900k-cpu-review#xenforo-comments-3608634
That should give an idea of the 3950x vs the i9. But the graphs also show CPUs like the 3700x if you are interested. So I guess it depends on when you're wanting to get things set.