RSC and client boundaries: where streamText may run and where useChat must live | Vectle