)]}'
{
  "commit": "e96db013f561f6081e3dbec161d63517457cc98c",
  "tree": "b6a7b32e3f05323bb5dc0f69d1ac3ae9baed56a3",
  "parents": [
    "cf697c698c29a95d19a7accd14eb8e3c651fbe5f"
  ],
  "author": {
    "name": "John \"codefu\" McDole",
    "email": "codefu@google.com",
    "time": "Fri Mar 06 12:36:47 2026 -0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri Mar 06 12:36:47 2026 -0800"
  },
  "message": "feat: do not mark presubmit checkrun as failing if suppressed (#4974)\n\ntowards:\n[flutter/flutter/#180669](https://github.com/flutter/flutter/issues/180669)\n\n- Adds Redis caching of Firestore suppression documents.\n- Adds a summary prepend to the checkrun output for visibility.\n- Marks suppressed failures as neutral to avoid blocking PRs.\n- Updates UpdateSuppressedTest to maintain cache consistency.\n\nTODO: make this work with unified checkruns",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e8f95b014f250edb4500406ee617f2e73354591a",
      "old_mode": 33188,
      "old_path": "app_dart/lib/server.dart",
      "new_id": "a696eb6f13015e42e1e8310f0a6ba9c201c526cd",
      "new_mode": 33188,
      "new_path": "app_dart/lib/server.dart"
    },
    {
      "type": "modify",
      "old_id": "a6dcebfdfdbeec8478db90cdc96a7ca07cc15b6a",
      "old_mode": 33188,
      "old_path": "app_dart/lib/src/request_handlers/presubmit_luci_subscription.dart",
      "new_id": "4b85b5f86a347a786001f3b0cf7ca6e3e51d383a",
      "new_mode": 33188,
      "new_path": "app_dart/lib/src/request_handlers/presubmit_luci_subscription.dart"
    },
    {
      "type": "modify",
      "old_id": "1fe82cfab1cc76a88b047cdee759d5851b180de1",
      "old_mode": 33188,
      "old_path": "app_dart/lib/src/request_handlers/update_suppressed_test.dart",
      "new_id": "41ab9dc758ca14c39fb6c96d1c9633e549fbfd35",
      "new_mode": 33188,
      "new_path": "app_dart/lib/src/request_handlers/update_suppressed_test.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "90981050163f6ca0b516dc83af19f0dba461a323",
      "new_mode": 33188,
      "new_path": "app_dart/lib/src/service/extensions/cache_service_test_suppression.dart"
    },
    {
      "type": "modify",
      "old_id": "bc43392d9c8d2f37d3244095f3ef62954d22edc7",
      "old_mode": 33188,
      "old_path": "app_dart/lib/src/service/github_checks_service.dart",
      "new_id": "4496164a01602b1784c3e0aaed701f1e0eadce73",
      "new_mode": 33188,
      "new_path": "app_dart/lib/src/service/github_checks_service.dart"
    },
    {
      "type": "modify",
      "old_id": "4a71a6a9726ac806c05bec1bfb8a1c8643289468",
      "old_mode": 33188,
      "old_path": "app_dart/test/request_handlers/presubmit_luci_subscription_test.dart",
      "new_id": "206a38bf1d95fd2fac1adacd6af1b1d14f1a8cbd",
      "new_mode": 33188,
      "new_path": "app_dart/test/request_handlers/presubmit_luci_subscription_test.dart"
    },
    {
      "type": "modify",
      "old_id": "feae6971a85e733899db387a2df18db2b2a1c7c7",
      "old_mode": 33188,
      "old_path": "app_dart/test/request_handlers/update_suppressed_test_test.dart",
      "new_id": "62d306fd2e4da8d9c88539f1c3253499ccb29c32",
      "new_mode": 33188,
      "new_path": "app_dart/test/request_handlers/update_suppressed_test_test.dart"
    },
    {
      "type": "modify",
      "old_id": "41bdedaed50a03d1421ba3ccb403a39e73994c75",
      "old_mode": 33188,
      "old_path": "packages/cocoon_integration_test/lib/src/utilities/mocks.mocks.dart",
      "new_id": "bcef0a2e594450e189c128f0bba406543ddfa5ae",
      "new_mode": 33188,
      "new_path": "packages/cocoon_integration_test/lib/src/utilities/mocks.mocks.dart"
    }
  ]
}
