code: def test_always_run_error(client):
      batch = create_batch(client)
      head = batch.create_job(
          DOCKER_ROOT_IMAGE, command=["/bin/sh", "-c", "exit 1"]
      )
      tail = batch.create_job(
          DOCKER_ROOT_IMAGE,
          command=["echo", "tail"],
          parents=[head],
          always_run=True,
      )
      batch.submit()
      batch.wait()
      status = legacy_batch_status(batch)
      assert batch_status_job_counter(status, "Failed") == 1, str(
          (status, batch.debug_info())
      )
      assert batch_status_job_counter(status, "Success") == 1, str(
          (status, batch.debug_info())
      )
  
      for job, ec, state in [(head, 1, "Failed"), (tail, 0, "Success")]:
          status = job.status()
          assert status["state"] == state, str(
              (status, batch.debug_info())
          )
          assert job._get_exit_code(status, "main") == ec, str(
              (status, batch.debug_info())
          )
  
imports: import asyncio
  import os
  import re
  import secrets
  import pytest
  from aiohttp import web
  from hailtop.batch_client import aioclient
  from hailtop.batch_client.client import BatchClient, Job
  from .utils import DOCKER_ROOT_IMAGE, batch_status_job_counter, create_batch, legacy_batch_status
label_desc: Use image node_id 12 for calling a global function with example usage: test_always_run_error(client) without return types