Skip to content

IDagRunResult

NexusLabs.Needlr.AgentFramework

NexusLabs.Needlr.AgentFramework.Diagnostics

IDagRunResult Interface

Aggregated result of a DAG workflow run, extending IPipelineRunResult with per-node diagnostics, edge metadata, and parallel branch grouping.

public interface IDagRunResult : NexusLabs.Needlr.AgentFramework.Diagnostics.IPipelineRunResult

Implements IPipelineRunResult

Example

var dagResult = (IDagRunResult)pipelineResult;
foreach (var (nodeId, nodeResult) in dagResult.NodeResults)
{
    Console.WriteLine($"  {nodeId}: {nodeResult.Kind}, " +
        $"{nodeResult.Duration.TotalMilliseconds}ms");
}
foreach (var (branchId, stages) in dagResult.BranchResults)
{
    Console.WriteLine($"  Branch {branchId}: {stages.Count} stages");
}

Remarks

Returned by DAG workflow execution. The base Stages list is preserved for backward compatibility with consumers that expect a flat stage list; NodeResults provides the richer graph-aware view.

Properties

IDagRunResult.BranchResults Property

Gets parallel branch groupings, where each key is a branch identifier and the value is the ordered list of stage results within that branch.

System.Collections.Generic.IReadOnlyDictionary<string,System.Collections.Generic.IReadOnlyList<NexusLabs.Needlr.AgentFramework.Diagnostics.IAgentStageResult>> BranchResults { get; }

Property Value

System.Collections.Generic.IReadOnlyDictionary<System.String,System.Collections.Generic.IReadOnlyList<IAgentStageResult>>

IDagRunResult.NodeResults Property

Gets per-node diagnostics keyed by node ID, including edge connectivity, timing offsets, and the NodeKind discriminator.

System.Collections.Generic.IReadOnlyDictionary<string,NexusLabs.Needlr.AgentFramework.Diagnostics.IDagNodeResult> NodeResults { get; }

Property Value

System.Collections.Generic.IReadOnlyDictionary<System.String,IDagNodeResult>