Status Badge is not updated when job fails

The status badge is not updated even when job fails, for example, when one of our workflow failed for master branch, the status is still PASSED:
Failed job:

The same problem even we specified the branch:

Here is our configuration:

Another question, if one job failed but the current job is still running, what would be the status for the badge?