Diagnostic codes are stable lookup keys. Survey errors are extensible; the other categories below are the built-in runtime catalog.
definition diagnostics
definition diagnostics| Code | Phase / severity | Meaning |
|---|
unknown-property | warning | A property is not registered; it is preserved verbatim. |
property-type-mismatch | error | A registered property contains a value of the wrong JSON type. |
invalid-child-collection | error | A registered child collection is not an array. |
invalid-element | error | A child entry is neither an object nor an allowed scalar shorthand. |
unknown-element-type | error | A child declares a type that is not valid for its collection. |
undeclared-endpoint | error | A definition references a deployment endpoint the host did not supply. |
invalid-pattern | error | A validation pattern is outside Kajay Pattern Profile v1. |
undeclared-host-value | warning | An expression reads a host value the host did not supply. |
undeclared-blank | error | A fill-in-the-blank template positions a blank its question does not declare. |
unpositioned-blank | warning | A fill-in-the-blank question declares a blank its template never positions. |
non-inline-blank | error | A fill-in-the-blank positions a blank whose type cannot sit inline. |
locale-blank-mismatch | error | A translated fill-in-the-blank template names a different set of blanks. |
reserved-name-sigil | error | An element name starts with the sigil reserved for the host-value scope. |
expression diagnostics
expression diagnostics| Code | Phase / severity | Meaning |
|---|
unterminated-string | parse | A string has no closing quote. |
unterminated-reference | parse | A reference has no closing brace. |
unexpected-character | parse | The tokenizer encountered a character outside the grammar. |
invalid-reference-index | parse | A reference index is not a non-negative integer. |
empty-reference | parse | A reference contains no path. |
empty-expression | parse | The expression is empty. |
unexpected-trailing-input | parse | Valid input is followed by an unexpected token. |
invalid-number | parse | A numeric token is not finite. |
unexpected-end | parse | The expression ended where an operand was required. |
unknown-identifier | parse | A bare identifier is neither a literal nor a function call. |
unexpected-token | parse | A token cannot begin an operand. |
unclosed-group | parse | A group or array is not closed. |
unparsed-expression | evaluate | Evaluation reached an error node produced by parsing. |
unknown-function | evaluate | A call names no registered expression function. |
async-unavailable | evaluate | An asynchronous function was evaluated without an asynchronous value source. |
function-failed | evaluate | An asynchronous expression function rejected or threw. |
dependency diagnostics
dependency diagnostics| Code | Phase / severity | Meaning |
|---|
cycle | Runtime | The dependency graph contains a cycle. |
cascade-limit | Runtime | A dependency transaction exceeded its configured settle limit. |
survey diagnostics
survey diagnostics| Code | Phase / severity | Meaning |
|---|
required | Runtime | A required question has no answer. |
minLength | Runtime | A comment answer is shorter than its minimum. |
maxLength | Runtime | A text or comment answer exceeds its maximum. |
min | Runtime | A numeric or date answer is below its lower bound. |
max | Runtime | A numeric or date answer is above its upper bound. |
numericvalidator | Runtime | The built-in numeric validator failed. |
textvalidator | Runtime | The built-in text validator failed. |
regexvalidator | Runtime | The built-in regular-expression validator failed. |
emailvalidator | Runtime | The built-in email validator failed. |
expressionvalidator | Runtime | The built-in expression validator failed. |
answercountvalidator | Runtime | The built-in answer-count validator failed. |
eachrowunique | Runtime | A matrix row repeats another row's answer. |
filetoolarge | Runtime | An attached file exceeds the authored size limit. |
filewrongtype | Runtime | An attached file does not match the accepted types. |
filetoomany | Runtime | A file answer exceeds the authored file-count limit. |
host | Runtime | A synchronous host validation listener rejected the answer. |
server | Runtime | An asynchronous server validation result rejected the answer. |