)]}'
{
  "commit": "c5582f49c820cd12603e1fefdebfd845ded4af8e",
  "tree": "18c8bdfe3c8ab65edcc57d6f0eabcb7bc2132f76",
  "parents": [
    "099a3fccd9c2d3384e6430de1ce39534197334db"
  ],
  "author": {
    "name": "Jacob MacDonald",
    "email": "jakemac@google.com",
    "time": "Wed May 28 07:08:24 2025 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed May 28 07:08:24 2025 -0700"
  },
  "message": "Invoke dart/flutter in a more robust way (#143)\n\nCloses https://github.com/dart-lang/ai/issues/33\n\nAdds --dart-sdk and --flutter-sdk arguments to the CLI, falling back on DART_SDK and FLUTTER_SDK environment variables, and finally `Platform.resolvedExecutable`.\n\nThe flutter SDK will also be looked up relative to the Dart SDK, if a location is not given by command line arg or environment.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6050251f582a8d4099a299462e253571e83ec643",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/bin/main.dart",
      "new_id": "351dc72b38ff1d7e818e4fb9fe8731c532978d60",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/bin/main.dart"
    },
    {
      "type": "modify",
      "old_id": "c1e1ead0a1724b439848b70b80764e071fbc9fbd",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/dart_mcp_server.dart",
      "new_id": "badafe8c7c0291b5f7efe2a7c19c2544e244bce3",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/dart_mcp_server.dart"
    },
    {
      "type": "modify",
      "old_id": "da870e7200e493f19cf62c5ff6e860e6fc08ffaf",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/mixins/analyzer.dart",
      "new_id": "10ae558d44f345b8217c2e4b246b15d9d1cdf8e0",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/mixins/analyzer.dart"
    },
    {
      "type": "modify",
      "old_id": "075540b5046053ffd08479728c88d8a0086bddf3",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/mixins/dash_cli.dart",
      "new_id": "605ba1f1303cc5c4f08889c74650fe7e788db895",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/mixins/dash_cli.dart"
    },
    {
      "type": "modify",
      "old_id": "eaca4bce4de82c88a4c0111eb755ba1e5ad3ceee",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/mixins/pub.dart",
      "new_id": "ab4850014e46db22f22b96f26376e82b05acfb71",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/mixins/pub.dart"
    },
    {
      "type": "modify",
      "old_id": "072052ed2f5f2dddfb2f76e13bcdb19c8445893f",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/server.dart",
      "new_id": "d9d573d0e8e2fae256eefa50efd1c927fc0400bc",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/server.dart"
    },
    {
      "type": "modify",
      "old_id": "4fce8b75b528cc836cc1b0a9c98ef448dc8e3cfa",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/lib/src/utils/cli_utils.dart",
      "new_id": "9310546bda8a2c67bc046d894a52ebdefbb1f850",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/utils/cli_utils.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f3f55230f415b6067c13d020c154e6a887d7ce04",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/lib/src/utils/sdk.dart"
    },
    {
      "type": "modify",
      "old_id": "1a9bdae2d76692e5460fd97472846ef023624473",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/test/test_harness.dart",
      "new_id": "a0c0f1c817c1b3f4b721e83f34832f07ca10a0ec",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/test/test_harness.dart"
    },
    {
      "type": "modify",
      "old_id": "9bfdc938f1e0968f7f93c916f89388f1bb5445ab",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/test/tools/dart_cli_test.dart",
      "new_id": "98caf8defa57f68ac1faca2a809c75f91cfe1af7",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/test/tools/dart_cli_test.dart"
    },
    {
      "type": "modify",
      "old_id": "8f1913071ff90b13cd8f2565cd35218630bf487e",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/test/tools/pub_test.dart",
      "new_id": "693b99e6eca9529b9bb863303194204bf04490ba",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/test/tools/pub_test.dart"
    },
    {
      "type": "modify",
      "old_id": "36b97e113bf3280b4281f0079999d6bdc5cbe29b",
      "old_mode": 33188,
      "old_path": "pkgs/dart_mcp_server/test/utils/cli_utils_test.dart",
      "new_id": "2392d30da6759758b91c455672df554937d85c82",
      "new_mode": 33188,
      "new_path": "pkgs/dart_mcp_server/test/utils/cli_utils_test.dart"
    }
  ]
}
