Skip to content

IExperimentResultSink TCase,TOutput

NexusLabs.Foundry.Evaluation

NexusLabs.Foundry.Evaluation.Experiments

IExperimentResultSink<TCase,TOutput> Interface

Publishes a completed canonical experiment result without changing its quality decision.

public interface IExperimentResultSink<TCase,TOutput>

Type parameters

TCase

The caller-owned case value type.

TOutput

The caller-owned output type.

Remarks

Foundry-owned collections are read-only snapshots. Caller-owned case/output values and MEAI evaluation objects cannot be deeply frozen and must be treated as read-only by implementations. Generic retry is not applied; a sink owns retry only for provider operations it can prove idempotent.

Properties

IExperimentResultSink<TCase,TOutput>.IsRequired Property

Gets a value indicating whether failure contributes to aggregate required-publication failure.

bool IsRequired { get; }

Property Value

System.Boolean

IExperimentResultSink<TCase,TOutput>.Name Property

Gets the unique sink name.

string Name { get; }

Property Value

System.String

Methods

IExperimentResultSink<TCase,TOutput>.PublishAsync(ExperimentRunResult<TCase,TOutput>, CancellationToken) Method

Publishes one completed canonical result.

System.Threading.Tasks.ValueTask<NexusLabs.Foundry.Evaluation.Experiments.ExperimentSinkPublicationOperationResult> PublishAsync(NexusLabs.Foundry.Evaluation.Experiments.ExperimentRunResult<TCase,TOutput> result, System.Threading.CancellationToken cancellationToken);

Parameters

result NexusLabs.Foundry.Evaluation.Experiments.ExperimentRunResult<TCase,TOutput>

The read-only canonical quality result.

cancellationToken System.Threading.CancellationToken

The caller cancellation token.

Returns

System.Threading.Tasks.ValueTask<ExperimentSinkPublicationOperationResult>
The structured publication operation result.

Remarks

Throw to let the runner synthesize a structured failed result, or return a conforming failed result when the adapter already owns a provider-specific failure classification.