Description
#409 added a task-expires-after
to config.yml
which only applies to non-try tasks, with other tasks defaulting to a hardcoded level of "1 year". This is confusing, because when you look at the configuration all you see is something like:
task-expires-after: 90 days
...which can be fairly interpreted to mean "all tasks expire after 90 days" (I'm not even sure most people would interpret it to mean "by default, unless overridden elsewhere", although that's probably a separate issue.)
To remedy this, I think task-expires-after
should apply to all task defaults, and support being configured at least by-level
and by-tasks-for
(to allow things like try and pull requests to easily have separate expires configured). This would make the behaviour much more obvious to users, and have the benefit of getting rid of fully hardcoded values such as in
taskgraph/src/taskgraph/transforms/task.py
Lines 1084 to 1086 in 649bba5