[
  {
    "cmd": [],
    "name": "get buildbucket id"
  },
  {
    "cmd": [],
    "name": "RECIPE CRASH (Uncaught exception)",
    "~followup_annotations": [
      "@@@STEP_EXCEPTION@@@",
      "The recipe has crashed at point 'Uncaught exception'!",
      "",
      "Traceback (most recent call last):",
      "  File \"RECIPE_REPO[recipe_engine]/recipe_engine/internal/engine.py\", in run_steps",
      "    raw_result = recipe_obj.run_steps(api, engine)",
      "                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
      "  File \"RECIPE_REPO[recipe_engine]/recipe_engine/internal/recipe_deps.py\", in run_steps",
      "    recipe_result = invoke_with_properties(",
      "                    ^^^^^^^^^^^^^^^^^^^^^^^",
      "  File \"RECIPE_REPO[recipe_engine]/recipe_engine/internal/property_invoker.py\", in invoke_with_properties",
      "    return _invoke_with_properties(callable_obj, all_props, environ, prop_defs,",
      "           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
      "  File \"RECIPE_REPO[recipe_engine]/recipe_engine/internal/property_invoker.py\", in _invoke_with_properties",
      "    return callable_obj(*props, **additional_args)",
      "           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
      "  File \"RECIPE_REPO[flutter]/recipe_modules/monorepo/tests/test_monorepo.py\", line 17, in RunSteps",
      "    build_identifier = api.monorepo.build_identifier",
      "                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^",
      "  File \"RECIPE_REPO[flutter]/recipe_modules/monorepo/api.py\", line 59, in build_identifier",
      "    self.m.step.empty(",
      "  File \"RECIPE_REPO[recipe_engine]/recipe_modules/step/api.py\", in empty",
      "    ret.presentation.status = status",
      "    ^^^^^^^^^^^^^^^^^^^^^^^",
      "  File \"RECIPE_REPO[recipe_engine]/recipe_engine/engine_types.py\", in status",
      "    assert val in self.STATUSES",
      "           ^^^^^^^^^^^^^^^^^^^^",
      "AssertionError"
    ]
  },
  {
    "failure": {
      "humanReason": "Uncaught Exception: AssertionError()"
    },
    "name": "$result"
  }
]