Earlier quoted context omitted.
Have you tried Flowdock? You've described pretty much their exact approach to threading, which I think is the right one. The biggest downside I've found is some people always forget to use the threading feature and comments fall out of the thread. [EDIT]: I just had a look at Slack's implementation and I think it has some pretty cool ideas. I think being able to follow an individual thread at a high level is useful.…
Yep, I have. It's pretty different from Zulip. Zulip's threading model is much more like a lightweight version of email threading -- when you start a new thread, you pick a short topic for it, and then after that people just reply to the thread.
We used a similar "topic" method and allowed users to fork conversations to have the best of both worlds -- linear chat for most cases and topical chat when a breakout was needed.