TransitionGraph — declared at channel.open
when ToolCalled("approve")TerminateTarget("approved")
when ToolCalled("request_revision")AgentTarget(Writer)
when FromSpeaker(User)AgentTarget(Researcher)
when FromSpeaker(Researcher)AgentTarget(Writer)
when FromSpeaker(Writer)AgentTarget(Reviewer)
default_target = TerminateTarget("no_match")   ·   max_turns = 10
workflow graph routes every turn — auto-closes on TerminateTarget invited
👤
User
HumanClient · initial_speaker
🔍
Researcher
facts
✍️
Writer
draft
🔎
Reviewer
request_revision · approve