ensure failed jobs are treated as such even if the failure doesn't have an HTTP code

otherwise a PERMFAIL with 'Unknown failure' and http_status == 0 could be considered a success
set error message when user create job fails
add missing action_set_fail calls

and replace http_status override with a warning