)]}'
{
  "commit": "594604681b2f0a4d2da66d32f13acbd6e2262850",
  "tree": "7231fa13efb5e6cb9ddda085b8373b580fb8b984",
  "parents": [
    "f86b03c3077d6466595a19728bf2f1fefa29a878"
  ],
  "author": {
    "name": "Wei Lee",
    "email": "weilee.rx@gmail.com",
    "time": "Wed Jul 01 20:07:14 2026 +0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Jul 01 14:07:14 2026 +0200"
  },
  "message": "Fix mypy failure on datadog timer wrapped by shared observability Timer (#69202)\n\nThe real_timer parameter accepts any backend timer exposing start/stop\n(pystatsd, dogstatsd), not the shared Timer itself. Typing it against a\nminimal protocol reflects that contract and stops mypy rejecting the\ntyped dogstatsd TimedContextManagerDecorator.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5e4c76434e26ad718a60c91e68a01eb358707bd8",
      "old_mode": 33188,
      "old_path": "shared/observability/src/airflow_shared/observability/metrics/protocols.py",
      "new_id": "fad6e6a570bb6cb5c114f991eaa226ed14b8d0f8",
      "new_mode": 33188,
      "new_path": "shared/observability/src/airflow_shared/observability/metrics/protocols.py"
    }
  ]
}
