usually I approach problems like this in such order:\n\u2022 understand the scope of the problem &amp; user use cases\n\u2022 figure out if it can be achieved in current architecture &amp; primitives with the small tweaks\n\u2022 if not -&gt; what is a good technical solution &amp; alternatives