Fixed where we record the audit event for delete service plan visibility

- We had been doing it after running or enqueueing (maybe before the job ran).
- Now we do it immediately after the perform (whether it is synchronous or not).
- We're using `successes, failures = Delayed::Job.new.work_off` in our
tests to force the enqueued jobs to run.

[#62604848]