)]}'
{
  "commit": "9b007b3996bf6a399e9b5afc0369bc22598f41cf",
  "tree": "bcb332246fd3d74223750fc216f64631727c348f",
  "parents": [
    "c8dc5da316e8b90dbb59c390c236b72d068e660a"
  ],
  "author": {
    "name": "Jacob MacDonald",
    "email": "jakemac@google.com",
    "time": "Mon Jul 07 15:29:05 2025 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Mon Jul 07 22:29:05 2025 +0000"
  },
  "message": "Add failure reasons to tool call analytics events (#219)\n\nThis should help us to understand why tool calls fail, instead of just seeing that they failed.\r\n\r\nIn particular for tests as an example, we can discard the ones that fail due to a non-zero exit code.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "9ae564a3e7d06523b2945cc08df87a1fb2f9180d",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/CHANGELOG.md",
      "new_id": "5c1088ea4e31a0ff4ec636eb2fbfd7ad501ff22e",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/CHANGELOG.md"
    },
    {
      "type": "modify",
      "old_id": "eb0f2fe467618e5079b1810baf77c8dc8d01ad9b",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/mixins/analyzer.dart",
      "new_id": "610ae70347ff3a28dbe47138e3b547f9e7c29001",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/mixins/analyzer.dart"
    },
    {
      "type": "modify",
      "old_id": "cf137adcf5ea57deccae18955af16e9681ad77ee",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/mixins/dash_cli.dart",
      "new_id": "64a5bf7c07531fc9a60bb13a41ab874db3225ef1",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/mixins/dash_cli.dart"
    },
    {
      "type": "modify",
      "old_id": "591f3ab392ff44da85e694f2b96b6e6a7ddc3ae2",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/mixins/dtd.dart",
      "new_id": "89f2ab184b55b6ac07621cd1ab93ed77f938e614",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/mixins/dtd.dart"
    },
    {
      "type": "modify",
      "old_id": "9059a108bd28a75dbba980deb2b5c120817b4dbd",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/mixins/pub.dart",
      "new_id": "31abce98471cd7a51f57783c7a96f1f9b31d9f7f",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/mixins/pub.dart"
    },
    {
      "type": "modify",
      "old_id": "fc5c83eaaf3d2dc057d22cfcd690705b03cfcfa4",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/mixins/pub_dev_search.dart",
      "new_id": "e1642031b050268578f201213df8591c852e54fd",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/mixins/pub_dev_search.dart"
    },
    {
      "type": "modify",
      "old_id": "27374edd1ae159494eeaf290c6db030623d09f2e",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/server.dart",
      "new_id": "4eb854be985024ab8e253499d183884872fe7ef1",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/server.dart"
    },
    {
      "type": "modify",
      "old_id": "9c71dd9a68c9b0a0b37572e270a71de007cb2578",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/utils/analytics.dart",
      "new_id": "f61c81fe870fdbe92db26855f83df2e2d7c5263c",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/utils/analytics.dart"
    },
    {
      "type": "modify",
      "old_id": "af74733c3e0dbf5c17dff61be0773fa5edd76ad8",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/utils/cli_utils.dart",
      "new_id": "4b69d94dd4084a65c2a63a10ce84c936a428548d",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/utils/cli_utils.dart"
    },
    {
      "type": "modify",
      "old_id": "2857be0a15b342a42f741e12e62f88e39e8f4f09",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/test/dart_tooling_mcp_server_test.dart",
      "new_id": "0c703b45e5769a96fb1085ddc2d741c574303f4d",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/test/dart_tooling_mcp_server_test.dart"
    },
    {
      "type": "modify",
      "old_id": "436ac6c19d18d079ffba51854b5541268ab547c4",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/test/tools/pub_dev_search_test.dart",
      "new_id": "ad4e00f7bbe75caab14146cf5fb67e46ac495ddf",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/test/tools/pub_dev_search_test.dart"
    }
  ]
}
