I'm refactoring a codebase with a lot of control flow and asynchrony, and this is one of the issues that I'm running into - I can't tell, and can't find any examples for, how Effect.gen lets you do type guards that would function the same way as early return values or