Skip to content
Search

How field validations work

A field validation is a condition and a result. While an item’s values match the condition, the item shows the result: a level and a message. When the values stop matching, the result goes away.

The result is worked out again after every change, in the browser. It is not saved on the item.

  • Item page: the results, listed directly above the fields, and a mark beside the field that owns the rule.
  • Rows and cards: one mark for the most severe level, with every message when you point at it.
  • Views: the Validation filter and the Validation column. Both appear once at least one field has a validation.

The levels, from most severe: Error, Warning, Info, Success.

A rule checks every item whose type carries the field that owns the rule. A condition can also test the item’s type, or the values of its direct children.

A result stays hidden from a person who cannot read the field that owns the rule, or any field its condition reads. A rule that tests children stays hidden from a person who cannot read every type, or every field it reads on every type.

A rule on Estimate has the condition “Status is Done and Estimate is empty”. The level is Error, and the message is “Estimate before closing”. A task moved to Done with no estimate shows the error. The error goes away when someone enters an estimate.

  • A result never blocks a change. A person can save an item that shows an error. Imports and the public API are not refused either.
  • A zero counts as empty. For “is empty”, a number 0 and an unticked checkbox both match.
  • A condition reads the item’s own values. A value shown from a parent does not count. A total summed from the children does not count either, so a parent with no estimate of its own is empty. Formula values do not count.
  • A rule that is switched off shows nothing. It stays in the list until you delete it.