Enable all jobs in detached pipelines
When working on an unrelated issue, it became clear that the reason why previously only the `merge_log` and `merge_whitesp` jobs appeared in detached pipelines (the ones that relate to an open MR) was really because they include a `rules` section. It is as though in the absence of a `rules` section, a default one applies, which adds the job to the pipeline only if that pipeline was due to an update of a branch or tag ref. When `rules` was present for a job, it overrides the default, and is evaluated irrespective of the the pipeline trigger. Now, it's useful to have all the jobs present in detached pipelines. The latest detached pipeline state, and its associated artifactes, are displayed at the top of the "Overview" tab of each MR page, and a new one can be easily triggered from the "Run pipeline" button at the top of the MR page's "Pipelines" tab, without having to navigate to the contributor's fork project (which may not even be public). It's also a problem that the `cleanup` job wasn't being run for detached pipelines, since over time that risks filling up the disc space on the runner machine. It turns out all of this can be implemented simply by adding a `workflow` section which defines a new default set of rules, which adds jobs to detached pipelines as well as ones for branches and tags.