Follow-up to the stage_entered field.
Expressing "has been in stage Draft for at least 7 days" needs two things the expression language doesn't have:
a numeric field, e.g. days_in_stage, computed from entered_at and the current time
numeric comparison operators (>=, <=, >, <). ConditionEvaluator currently supports only is, is not, in, not in, has, not has, before, after. Worth confirming the desired semantics first: whether this should be a distinct field type in the UI, and whether it overlaps enough with the existing interval-based scheduling to be redundant.
Follow-up to the stage_entered field.
Expressing "has been in stage Draft for at least 7 days" needs two things the expression language doesn't have:
a numeric field, e.g. days_in_stage, computed from entered_at and the current time
numeric comparison operators (>=, <=, >, <). ConditionEvaluator currently supports only is, is not, in, not in, has, not has, before, after. Worth confirming the desired semantics first: whether this should be a distinct field type in the UI, and whether it overlaps enough with the existing interval-based scheduling to be redundant.