react-planning-agentExperimental: makes the ReAct loop typed, bounded, and observable, including how it stops.