Interesting discussion there. I’d say using redis or anything is overkill - a tasks table in the database seems perfectly suitable for now. And contrary to the poster ab632, I think having the task history associated with an album would could be useful.
You could probably drop in a simple tasks table to track imports and add a flag to that command easily enough, but that’s not a super extensible option. Pretend instead that the work is done to implement a tasks system, and the code is refactored so that all CLI commands get translated into tasks (similar to how you refactored the DB code for flexattrs), some of which are interactive and some of which are asynchronous. When do you run the async tasks?
A background process, with a data store and workload management system, and a command line tool for interacting with it… At some point you might find yourself extending AURA to include library management endpoints and refactoring the CLI to just be an API client.