Stopping job instance is misbehaving
Stopping a job instance works well when jobs are running but are shortcut when jobs are marked stopped in the database.
This means that a job considered stopped due to a crash on the agent but rescheduled by the agent (either because the start date hasn't been reached yet or the job is started with an interval) cannot possibly be stopped using the controller. We need to use the agent API instead or delete
start files on the agent.
This is not ideal and should be improved, especially when stopping a non-existent or already stopped job is gracefully handled by the agent.