WorkflowAdapter
autogen.beta.network.adapters.workflow.WorkflowAdapter #
Generic orchestrated multi-party session.
Knobs: {"graph": <TransitionGraph.to_dict()>}. Participants: 2+. Default view: :class:WindowedSummary(recent_n=N*2) with N = participant count.
Source code in autogen/beta/network/adapters/workflow.py
manifest instance-attribute #
manifest = SessionManifest(type=WORKFLOW_TYPE, version=1, participants=ParticipantSchema(min=2), knobs_schema={'graph': 'TransitionGraph'}, default_view_policy=name, expectations=[Expectation(name='turn_within', on_violation='warn', params={'seconds': 120}), Expectation(name='turn_within', on_violation='auto_close', params={'seconds': 600})])
initial_state #
Source code in autogen/beta/network/adapters/workflow.py
fold #
Source code in autogen/beta/network/adapters/workflow.py
validate_create #
Source code in autogen/beta/network/adapters/workflow.py
validate_send #
Source code in autogen/beta/network/adapters/workflow.py
on_accepted #
Source code in autogen/beta/network/adapters/workflow.py
default_view_policy #
extract_turn_input #
Decode an inbound substantive envelope into the next speaker's prompt. Workflow handles EV_TEXT and EV_PACKET (concatenates the routing-handoff line with the body).
Source code in autogen/beta/network/adapters/workflow.py
build_round_envelope #
Build the EV_PACKET envelope capturing this round.
Walks the agent's local-stream events to determine routing intent (Handoff result first, then ToolCalled match, else text). select_next resolves the target at fold time for static routing; dynamic Handoff carries its resolved target on the packet's routing.target field.
Returns None for silent rounds (no body and no routing tool fired) — matches pre-packet "no envelope" behaviour.
Source code in autogen/beta/network/adapters/workflow.py
render_envelope #
Project EV_PACKET via :func:_packet_text; defer to :func:default_render_envelope for everything else (notably EV_TEXT for participant text emitted outside the workflow's round-end packet).