Skip to content

IExperimentItemScopeProvider TCase,TOutput

NexusLabs.Foundry.Evaluation

NexusLabs.Foundry.Evaluation.Experiments

IExperimentItemScopeProvider<TCase,TOutput> Interface

Creates one provider-neutral lifecycle scope for each statistical trial.

public interface IExperimentItemScopeProvider<TCase,TOutput>

Type parameters

TCase

The caller-owned case value type.

TOutput

The caller-owned output type.

Properties

IExperimentItemScopeProvider<TCase,TOutput>.FailureMode Property

Gets the behavior for entry or activation failure before a task attempt.

NexusLabs.Foundry.Evaluation.Experiments.ExperimentItemScopeFailureMode FailureMode { get; }

Property Value

ExperimentItemScopeFailureMode

IExperimentItemScopeProvider<TCase,TOutput>.IsRequired Property

Gets a value indicating whether publication failure is required for aggregate publication health.

bool IsRequired { get; }

Property Value

System.Boolean

IExperimentItemScopeProvider<TCase,TOutput>.Name Property

Gets the unique provider name used in item publication results.

string Name { get; }

Property Value

System.String

Methods

IExperimentItemScopeProvider<TCase,TOutput>.EnterAsync(ExperimentItemScopeContext<TCase>, CancellationToken) Method

Enters one scope for a statistical trial.

System.Threading.Tasks.ValueTask<NexusLabs.Foundry.Evaluation.Experiments.IExperimentItemScope<TCase,TOutput>> EnterAsync(NexusLabs.Foundry.Evaluation.Experiments.ExperimentItemScopeContext<TCase> context, System.Threading.CancellationToken cancellationToken);

Parameters

context NexusLabs.Foundry.Evaluation.Experiments.ExperimentItemScopeContext<TCase>

The stable trial identity and case data.

cancellationToken System.Threading.CancellationToken

The caller cancellation token.

Returns

System.Threading.Tasks.ValueTask<NexusLabs.Foundry.Evaluation.Experiments.IExperimentItemScope<TCase,TOutput>>
The entered item scope.

Remarks

The runner invokes this once per trial under the caller token and shared concurrency lease, but outside the per-attempt timeout. The returned scope remains alive across retry delays.