Interface: SolveConstraintResponse
@kortexya/reasoninglayer / SolveConstraintResponse
Interface: SolveConstraintResponse
Section titled “Interface: SolveConstraintResponse”Defined in: src/types/constraints.ts:72
Response from solving arithmetic constraints.
Remarks
Section titled “Remarks”Matches Rust SolveConstraintResponse.
Properties
Section titled “Properties”bindings
Section titled “bindings”bindings:
Record<string,number>
Defined in: src/types/constraints.ts:79
Variable values the constraints force. Empty when unsatisfiable:
bindings that led to a contradiction are no solution.
message?
Section titled “message?”
optionalmessage?:string|null
Defined in: src/types/constraints.ts:83
Human-readable message.
success
Section titled “success”success:
boolean
Defined in: src/types/constraints.ts:74
Whether every constraint is satisfied by bindings.
suspendedConstraintIds
Section titled “suspendedConstraintIds”suspendedConstraintIds:
number[]
Defined in: src/types/constraints.ts:99
Positions of the constraints still suspended: awaiting bindings, or admitting more than one value.
suspendedConstraints
Section titled “suspendedConstraints”suspendedConstraints:
string[]
Defined in: src/types/constraints.ts:81
Human-readable count of the suspended constraints (empty when none).
unsatisfiable
Section titled “unsatisfiable”unsatisfiable:
boolean
Defined in: src/types/constraints.ts:89
Whether the constraints are proven to have no common solution. A refuted
problem is a verdict, not a malformed request: it answers 200 with
success: false.
violatedConstraintIds
Section titled “violatedConstraintIds”violatedConstraintIds:
number[]
Defined in: src/types/constraints.ts:94
Positions (in the request’s constraints list) of the constraints the
forced bindings refute. Non-empty exactly when unsatisfiable.