I've been spinning my head on a new architecture to a company chatbot / assistant. Not unlike many others are creating. Hoping to get some input on how effect might take a bigger part of this plan, from someone smarter than me.
I'm looking into effect-ts as it fits well with creating stored procedures that can be cancelled among other things. The place I'm more unsure is on signals. As messages comes in, and obviously we want to make quite a bit of routing, decisions based on the state and other things. My initial plan was to keep using an observable store (that we render on the frontend for observability), and then build a decision tree style routing with rxjs and possibly xstate, and then keep all actions and things that happens in effect-ts. As we have an observable store we might use that to emit more signals on specific changes. I realize that it sounds like I'm building a system from (arguably) 3 different stores, and that might be the case. Nevertheless, it would be interesting to hear some thoughts or have some discussioins on how others here would architect something like a complex decision tree with state management for handling bots.