Follow-up to #4238
Completed tasks remain in tasks_to_hold.
E.G. If you hold a task then trigger it it will remain in tasks_to_hold even after it has passed out of the n=1 window. These stuck tasks can be removed by cylc release <flow> --all.
It's a quirk not a bug, I don't think it's a problem or worth the fuss handling differently.
and
There are other ways we could end up with held tasks drifting outside of the n=1 window (e.g. suicide triggers). I think the solution would be to remove the task from tasks_to_hold when the task is removed from the pool.
Follow-up to #4238
and