Introduced thread specs that will contain thread-type-specific logic. Changed the approach of determining some behaviors by introducing thread traits, e.g. sidebar, or announcement - this will make it easier to introduce new threads and is consistent with other specs.
To do all of this, I had to move some functions from thread-types-enum.
https://linear.app/comm/issue/ENG-10263/introduce-a-thread-protocol-type