My users sometimes kick off some long-running background processes (e.g., add 150 records that look like this template, run this batch process, etc.).
Right now, if those processes fail, they are not surfaced well to the users who initiated them. If they succeed, they also never get notified that they are done.
I would love to expose job status and results to the end-user without giving them access to ALL jobs. What is a good approach to this?
Since these tasks are all related to an SObject, I think it makes sense to have an child object that can stand in for that job. That way, on insert, I'd trigger the job and get the Job Id. Then, when the job completes, I can set the status on that child artifact. Does that work? Are there better answers? Surely this is a common problem.