Skip to content

WorkflowPendingRequest

Namespace AgentPrism · Assembly AgentPrism.Abstractions.dll

Represents human input awaited by a workflow run.

public sealed record WorkflowPendingRequest : IEquatable<WorkflowPendingRequest>

objectWorkflowPendingRequest

IEquatable<WorkflowPendingRequest>

object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Pending requests are not stored in a separate table; they are read from the run’s RunEventType.WorkflowRequest events. The event stream is already append-only and tenant-filtered, so a second record path would duplicate data and risk divergence.

A response starts a new run. Responding to a pending request resumes the run from its checkpoint and creates a new runs row. Reopening the same row would violate the event stream’s append-only rule.

public WorkflowPendingRequest()

Gets the input field the UI should display.

public required WorkflowRequestForm Form { get; init; }

WorkflowRequestForm

Gets the identifier of the port that published the request. It maps to a graph node.

public required string PortId { get; init; }

string

Gets the request text shown to the user. For plan approval, this is the plan itself.

public string? Prompt { get; init; }

string?

Gets the request identifier. Send this value when responding; the resumed execution matches it to the request published with the same id.

public required string RequestId { get; init; }

string

Gets the request data type name.

public string? RequestType { get; init; }

string?

Gets the UTC time when the request was published.

public DateTimeOffset RequestedAt { get; init; }

DateTimeOffset

Gets the expected response type name.

public string? ResponseType { get; init; }

string?

Gets the identifier of the run that produced the request.

public required Guid RunId { get; init; }

Guid

public override bool Equals(object? obj)

obj object?

bool

public bool Equals(WorkflowPendingRequest? other)

other WorkflowPendingRequest?

bool

public override int GetHashCode()

int

public override string ToString()

string

operator ==(WorkflowPendingRequest?, WorkflowPendingRequest?)

Section titled “ operator ==(WorkflowPendingRequest?, WorkflowPendingRequest?)”
public static bool operator ==(WorkflowPendingRequest? left, WorkflowPendingRequest? right)

left WorkflowPendingRequest?

right WorkflowPendingRequest?

bool

operator !=(WorkflowPendingRequest?, WorkflowPendingRequest?)

Section titled “ operator !=(WorkflowPendingRequest?, WorkflowPendingRequest?)”
public static bool operator !=(WorkflowPendingRequest? left, WorkflowPendingRequest? right)

left WorkflowPendingRequest?

right WorkflowPendingRequest?

bool