WorkflowGraph
AgentPrism.Abstractions.dllRepresents a workflow’s compiled graph: nodes, edges, and external request ports.
public sealed record WorkflowGraph : IEquatable<WorkflowGraph>Inheritance
Section titled “Inheritance”Implements
Section titled “Implements”Inherited Members
Section titled “Inherited Members”object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Remarks
Section titled “Remarks”The graph is extracted from the compiled workflow, not the
definition. The reason was measured: built-in patterns add
executors the user did not write (OutputMessages,
Batcher/*, ConcurrentEnd, HandoffStart,
GroupChatHost, MagenticOrchestrator). A graph drawn from
the definition would not show these nodes, and the ExecutorInvoked
events arriving during a run would not match any node.
The type carries no Microsoft Agent Framework type: the HTTP layer does
not depend on the AgentPrism.Workflows package.
Constructors
Section titled “Constructors”WorkflowGraph()
Section titled “ WorkflowGraph()”public WorkflowGraph()Properties
Section titled “Properties”Gets the edges between nodes.
public IReadOnlyList<WorkflowGraphEdge> Edges { get; init; }Property Value
Section titled “Property Value”IReadOnlyList<WorkflowGraphEdge>
Mermaid
Section titled “ Mermaid”Gets the Mermaid text produced by Microsoft Agent Framework.
public required string Mermaid { get; init; }Property Value
Section titled “Property Value”Remarks
Section titled “Remarks”The UI draws the graph itself (bundle budget); this text is for export. Users can copy it to the clipboard and paste it into a document - project convention requires diagrams to be written in Mermaid.
Gets the name of the workflow the graph belongs to.
public required string Name { get; init; }Property Value
Section titled “Property Value”Gets the nodes in the graph.
public IReadOnlyList<WorkflowGraphNode> Nodes { get; init; }Property Value
Section titled “Property Value”IReadOnlyList<WorkflowGraphNode>
StartExecutorId
Section titled “ StartExecutorId”Gets the identifier of the node that receives the input message first.
public required string StartExecutorId { get; init; }Property Value
Section titled “Property Value”Methods
Section titled “Methods”Equals(object?)
Section titled “ Equals(object?)”public override bool Equals(object? obj)Parameters
Section titled “Parameters”obj object?
Returns
Section titled “Returns”Equals(WorkflowGraph?)
Section titled “ Equals(WorkflowGraph?)”public bool Equals(WorkflowGraph? other)Parameters
Section titled “Parameters”other WorkflowGraph?
Returns
Section titled “Returns”GetHashCode()
Section titled “ GetHashCode()”public override int GetHashCode()Returns
Section titled “Returns”ToString()
Section titled “ ToString()”public override string ToString()Returns
Section titled “Returns”Operators
Section titled “Operators”operator ==(WorkflowGraph?, WorkflowGraph?)
Section titled “ operator ==(WorkflowGraph?, WorkflowGraph?)”public static bool operator ==(WorkflowGraph? left, WorkflowGraph? right)Parameters
Section titled “Parameters”left WorkflowGraph?
right WorkflowGraph?
Returns
Section titled “Returns”operator !=(WorkflowGraph?, WorkflowGraph?)
Section titled “ operator !=(WorkflowGraph?, WorkflowGraph?)”public static bool operator !=(WorkflowGraph? left, WorkflowGraph? right)Parameters
Section titled “Parameters”left WorkflowGraph?
right WorkflowGraph?