Pre-flight Checks

The deterministic validators that stand between a page and the air.

Behaviour-level checks.

IssueMeans
schemaA unit does not round-trip through validation.
exprAn expression references an undeclared identifier or a non-whitelisted function.
multi-writerTwo or more units write the same path; the message names them.
self-accumulateA formatter or watch rule reads its own output — data:: and poller:: inputs are resolved first. The unit is held and never runs.
overlapping-writesWrite paths nest inside each other (a clock's zero path inside its display, or one unit writing score while another writes score.home). A unit whose own paths nest is held and never runs.
reserved-pathA unit writes under vars or sheets. Those keys are rebuilt from the Variables panel and from bound spreadsheet cells on every edit, so the unit is held and never runs. Change the value with a Variables operation instead.

Run it on demand with POST /api/pages/<id>/unit-check.