One typed attribute filter.
`kinds` is not optional and not a hint. A stored value is compared only against a filter that names its kind, which is what keeps the three temporal types three: a date due and a datetime_zoned due are different questions, and a window naming one does not answer the other ([ADR-206](../../../docs/decisions/ADR-201-225.md#adr-206-timemodel--koru-has-three-temporal-types-not-one-with-a-nullable-timezone)). Name every kind the question covers - a due window usually means ["date", "datetime_zoned"] - or the answer silently omits the rest.
Comparison follows the kind: number and datetime_zoned compare as numbers, everything else as its canonical text, which is ISO for the remaining temporal kinds and therefore ordered correctly within one kind.
