# Warnings

Every answer carries `warnings`: known traps in this request, found by checks that cost nothing. The answer is returned either way; a warning says where it may be wrong.

| Code | When |
|---|---|
| `no_other_option` | a choice of 3 or more options has no `other` / `none` option, so a state that fits none must still pick one |
| `many_options` | more than 20 options; they are answered in two rounds |
| `degree_words` | score levels written as "low", "medium", "high"; describe each level as a situation |
| `compound_noul` | a yes/no question asks two things at once |
| `criteria_conflict` | a noul's `true` and `false` descriptions are the same, or look swapped (`true` has a negation and `false` has none) |
| `negated_instructions` | a yes/no or choice question whose instructions contain a negation (not, never, no, without, avoid …); phrase it for yes |
| `state_cut` | the engine read only part of the state; see State |
| `state_long` | the state fills most of the window |
| `memory_cut` | the engine read fewer memory lines than were sent (fired rules and recalled lines) |
| `memory_full` | more fired rules and recalled lines than the engine's 64 context lines; computed facts come first, then rules, then recall, and `memory.lines_dropped` counts what was left out |
| `memory_number_rule` | a memory line compares numbers in words; use a rule with `when` |
| `memory_names_option_negatively` | a memory line names an option of this question in a negative rule, which pulls the engine toward it |
| `memory_presence_only` | with `placebo`, this question moved as much with neutral lines as with the memory |

`remember` warns at write time too: `memory_number_rule` and `memory_negative_rule` (a line that says what to avoid).
