ConstReadonlyANSWERED: "answered"ReadonlyFAILED: "failed"ReadonlyNO_ANSWER: "no_answer"ReadonlyPARTIAL: "partial"Some of this field's boxes were filled and some were not. Only reachable on a sub-field
answer whose entries carry a per-coordinate status — the row-level status averages the
two together, which is how a group with two answers out of sixteen read ANSWERED and
printed Filled over fourteen blank boxes.
ReadonlyPENDING: "pending"
Per-field outcome the fill drawer renders, derived from the at-rest
form_answers.statusplus the decoded value.Deliberately NOT the raw column: v1 rows only ever hold
completedor SQL NULL, so a null status has to be disambiguated by whether the cell actually carries content. Callers that need the raw string get it alongside this on each answer row.