> ## Documentation Index
> Fetch the complete documentation index at: https://docs.erna.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# SolveResult

Result of [Schedule.solve](./Schedule#solve).

Feasibility-only solves return hard-feasible assignments when one is found,
but they do not optimize objectives or compute objective-derived metadata.
Cost is therefore only produced for optimized solves.

## Properties

<ResponseField name="assignments" type="ShiftAssignment[]" required>
  Shift assignments (empty when infeasible, invalid, or no solution).
</ResponseField>

<ResponseField name="cost" type="cost?: CostBreakdown">
  Cost breakdown for optimized solves when cost rules are used and a solution is found.
</ResponseField>

<ResponseField name="status" type="&#x22;invalid&#x22; | &#x22;optimal&#x22; | &#x22;feasible&#x22; | &#x22;infeasible&#x22; | &#x22;no_solution&#x22;" required>
  Outcome of the solve attempt.
</ResponseField>

## Methods

### `explain()`

Returns the deterministic schedule explanation for this solve result.

**Returns:** [ScheduleExplanation](ScheduleExplanation)
