class_docstr: State machine that computes the next state of a test based on the current state and
  perform actions accordingly during the state transition. For example:
  - passing -[two last results failed]-> failing: create github issue
  - failing -[last result passed]-> passing: close github issue
  - jailed -[latest result passed]-> passing: update the test's oncall
  ...
docstr: Notify github issue owner that the test is jailed
docstr_tok: ["Notify","github","issue","owner","that","the","test","is","jailed"]
code: def _jail_test(self) -> None:
      """
      Notify github issue owner that the test is jailed
      """
      github_issue_number = self.test.get(Test.KEY_GITHUB_ISSUE_NUMBER)
      if not github_issue_number:
          return
      issue = self.ray_repo.get_issue(github_issue_number)
      issue.create_comment(
          "Test has been failing for far too long. Jailing."
      )
      labels = ["jailed-test"] + [
          label.name for label in issue.get_labels()
      ]
      issue.edit(labels=labels)
  
imports: import abc
  from github import Github
  from pybuildkite.buildkite import Buildkite
  from ray_release.test import Test, TestState
  from ray_release.aws import get_secret_token
label_desc: Use image node_id 20 for calling the TestStateMachine obj's underlying member method code with example usage: obj._jail_test() without return types