As a user, I can clear out downloaded files from on_demand repos
A repository using on_demand will store artifacts locally when they are requested, but there really isn't a way to have pulp delete the locally stored files and free disk space if they are unlikely to be used again.
In the case of something like RHEL repositories, older packages and errata are unlikely to ever be needed again. You may have had dozens of kernels downloaded in your repository over the years, but going forward, only the newest one is likely to be needed. Being able to clear out on_demand content from a repository would allow the user to gain back that space.
After being 'cleaned', i would expect any content that is requested through the content app to download it as if it had never been downloaded before. Essentially the cleaning would take it back to its pre-downloaded state.