Retain internal collection artifacts for the lifetime of the workflow

!814 (merged) flipped the internal workflow retains_artifacts setting to False. This could mean that artifacts get cleaned up while the workflow is still running.

!814 (diffs, comment 487438)

That's not quite correct either. We want internal collections to retain artifacts while the workflow is running... but no longer once the workflow is completed.

Some workflow will have human validation steps and can be "running" for a long time.

Edited by Colin Watson