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: Action performed when test transitions to a different state. This is where we do
  things like creating and closing github issues, trigger bisects, etc.
docstr_tok: ["Action","performed","when","test","transitions","to","a","different","state",".","This","is","where","we","do","things","like","creating","and","closing","github","issues",",","trigger","bisects",",","etc","."]
code: def _move_hook(
      self, from_state: TestState, to_state: TestState
  ) -> None:
      """
      Action performed when test transitions to a different state. This is where we do
      things like creating and closing github issues, trigger bisects, etc.
      """
      pass
  
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 13 for calling the TestStateMachine obj's underlying member method code with example usage: obj._move_hook(from_state, to_state) without return types