Interface: OsfqlDiagnostic
@kortexya/reasoninglayer / OsfqlDiagnostic
Interface: OsfqlDiagnostic
Section titled “Interface: OsfqlDiagnostic”Defined in: src/types/osfql.ts:502
One problem detected while diagnosing an OSFQL program.
Remarks
Section titled “Remarks”kind is a plain string on the wire. The documented values are:
syntax— the program does not parse.rangeis the parser’s own position.compile— the program parses and does not compile.contradiction— incompatible sorts whose lattice meet is bottom, surfaced as a unification failure.clash— a normative conflict between clause Psi-terms;involvednames them.undeclared_feature,type_mismatch,missing_required_feature— a write that its sort’s declaration refuses.limit— the check was abandoned at its deadline or its row cap (see OsfqlDiagnoseRequest), so the contradictions and clashes the program may hold are NOT reported. A deadline breach has norange; a row-cap breach is positioned at the offending statement. Never read an empty list beside alimitdiagnostic as “consistent”.
A switch over kind must keep a default branch: the engine may add a value.
Properties
Section titled “Properties”involved?
Section titled “involved?”
optionalinvolved?:string[]
Defined in: src/types/osfql.ts:504
Display labels of the claims involved (for clash); empty otherwise.
kind:
string
Defined in: src/types/osfql.ts:509
Problem class: syntax, compile, contradiction, clash,
undeclared_feature, type_mismatch, missing_required_feature, or limit.
message
Section titled “message”message:
string
Defined in: src/types/osfql.ts:511
Human-readable explanation.
range?
Section titled “range?”
optionalrange?:OsfqlRange|null
Defined in: src/types/osfql.ts:513
Source range of the offending statement, when it could be localised.