Search is currently extremely naive and simply checks for substrings in recent messages. A better search would have metadata filtering support, regex matching, and would search all messages in a channel.
The primary issue is that this would likely need a separate indexing service, which would be a decent amount of work.
Just the metadata support could be done by dynamically building a database query — although mixing that with the abstractions of #2 might be challenging, as we currently don't mandate any details about the backing database.
Search is currently extremely naive and simply checks for substrings in recent messages. A better search would have metadata filtering support, regex matching, and would search all messages in a channel.
The primary issue is that this would likely need a separate indexing service, which would be a decent amount of work.
Just the metadata support could be done by dynamically building a database query — although mixing that with the abstractions of #2 might be challenging, as we currently don't mandate any details about the backing database.