Skip to content

EveTurnOutcome

NexusLabs.Eve

EveTurnOutcome Class

Aggregates the events and terminal values observed for one eve turn.

public sealed record EveTurnOutcome : System.IEquatable<NexusLabs.Eve.EveTurnOutcome>

Inheritance System.Object → EveTurnOutcome

Implements System.IEquatable<EveTurnOutcome>

Properties

EveTurnOutcome.Data Property

Gets the most recent structured result emitted by the turn.

public System.Nullable<System.Text.Json.JsonElement> Data { get; }

Property Value

System.Nullable<System.Text.Json.JsonElement>

EveTurnOutcome.DeliveryOutcome Property

Gets the version-27 delivery outcome exactly as received, or null for a legacy response.

public string? DeliveryOutcome { get; }

Property Value

System.String

EveTurnOutcome.DeliverySettlement Property

Gets the matching version-27 delivery settlement, including unknown raw fields.

public System.Nullable<System.Text.Json.JsonElement> DeliverySettlement { get; }

Property Value

System.Nullable<System.Text.Json.JsonElement>

EveTurnOutcome.Events Property

Gets all events consumed for the turn.

public System.Collections.Generic.IReadOnlyList<NexusLabs.Eve.EveStreamEvent> Events { get; }

Property Value

System.Collections.Generic.IReadOnlyList<EveStreamEvent>

EveTurnOutcome.Failure Property

Gets the correlated failure payload, including a synthesized delivery failure when required.

public System.Nullable<System.Text.Json.JsonElement> Failure { get; }

Property Value

System.Nullable<System.Text.Json.JsonElement>

EveTurnOutcome.InputRequests Property

Gets all human-input requests emitted during the turn.

public System.Collections.Generic.IReadOnlyList<NexusLabs.Eve.EveInputRequest> InputRequests { get; }

Property Value

System.Collections.Generic.IReadOnlyList<EveInputRequest>

Remarks

Version 27 projects the first question, approval, or budget descriptor per interaction ID. Use Interactions for sign-ins, unknown kinds, and complete raw descriptors.

EveTurnOutcome.InputResolutions Property

Gets all authoritative human-input resolutions emitted while this response was consumed.

public System.Collections.Generic.IReadOnlyList<NexusLabs.Eve.EveInputResolution> InputResolutions { get; }

Property Value

System.Collections.Generic.IReadOnlyList<EveInputResolution>

EveTurnOutcome.InteractionResolutions Property

Gets version-27 interaction settlements without inventing legacy batch coordinates. Version-27 resolutions do not populate InputResolutions.

public System.Collections.Generic.IReadOnlyList<NexusLabs.Eve.EveInteractionResolution> InteractionResolutions { get; }

Property Value

System.Collections.Generic.IReadOnlyList<EveInteractionResolution>

EveTurnOutcome.Interactions Property

Gets first-observed version-27 interaction descriptors, including sign-ins and unknown kinds. Legacy streams leave this collection empty.

public System.Collections.Generic.IReadOnlyList<NexusLabs.Eve.EveInteraction> Interactions { get; }

Property Value

System.Collections.Generic.IReadOnlyList<EveInteraction>

EveTurnOutcome.Message Property

Gets the final completed assistant message text.

public string? Message { get; }

Property Value

System.String

Remarks

The latest completed answer is retained across task and input waits. Messages completed with the tool-calls finish reason do not replace it. Version 27 instead joins text parts named by the matched turn's reply, excluding narration.

EveTurnOutcome.PendingInputRequests Property

Gets requests observed in this response that remain unresolved at its boundary.

public System.Collections.Generic.IReadOnlyList<NexusLabs.Eve.EveInputRequest> PendingInputRequests { get; }

Property Value

System.Collections.Generic.IReadOnlyList<EveInputRequest>

Remarks

Authoritative input.resolved and approval.settled events remove matching requests. The first descriptor for each case-sensitive request identity remains authoritative, and repeated requests do not reopen settled identities within this response. InputRequests retains the complete observed request history.

EveTurnOutcome.PendingInteractions Property

Gets version-27 interactions without an observed settlement.

public System.Collections.Generic.IReadOnlyList<NexusLabs.Eve.EveInteraction> PendingInteractions { get; }

Property Value

System.Collections.Generic.IReadOnlyList<EveInteraction>

EveTurnOutcome.SessionId Property

Gets the runtime-owned session identifier.

public string SessionId { get; }

Property Value

System.String

EveTurnOutcome.Status Property

Gets how the turn ended.

public NexusLabs.Eve.EveTurnStatus Status { get; }

Property Value

EveTurnStatus

Methods

EveTurnOutcome.DeserializeData\<TData>(JsonTypeInfo\<TData>) Method

Deserializes Data with caller-provided source-generated metadata.

public TData? DeserializeData<TData>(System.Text.Json.Serialization.Metadata.JsonTypeInfo<TData> jsonTypeInfo);

Type parameters

TData

The expected structured result type.

Parameters

jsonTypeInfo System.Text.Json.Serialization.Metadata.JsonTypeInfo<TData>

Source-generated JSON metadata for TData.

Returns

TData
The structured result, or the default value when no result was emitted.