Skip to main content
InterpretiveState represents what a system currently believes about each field. A field can keep multiple candidate values, each with confidence, while retaining the latest inference that produced or explained an update.

Field shape

InterpretiveFieldState has exactly two fields:
inference is singular. Calling add_inference() again replaces the prior inference for that field. values is a list and get_best_value() returns the candidate with the greatest numeric confidence. The Pydantic boundary type is InterpretiveStateSchema, a root model mapping field paths to InterpretiveFieldState objects. The mutable runtime class is InterpretiveState.

Filled and empty fields

For interpretive state, a field is considered filled when its InterpretiveFieldState.values list is non-empty. The presence of an inference by itself does not fill the field.

Confidence range

ValueConfidence.confidence is validated from -1.0 through 1.0. The concrete LLMMutator prompt asks its model for values between 0.0 and 1.0, but the schema itself permits the wider range. See Canonical state for the resolved representation and Mutator evaluation for expected-versus-actual comparisons.