)]}'
{
  "commit": "c2c5357a25b3115705effc87b4e7fe0fb2a3a10e",
  "tree": "13e36f56faaecaaf86abddc9c2379e81cd79eece",
  "parents": [
    "37574dfdf049a5c4c1e1e25d3ec099f5eb58789e"
  ],
  "author": {
    "name": "Nicholas Shahan",
    "email": "nshahan@google.com",
    "time": "Fri Nov 14 08:53:51 2025 -0800"
  },
  "committer": {
    "name": "Commit Queue",
    "email": "dart-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Fri Nov 14 08:53:51 2025 -0800"
  },
  "message": "[front_end] Add option for expanded invalidation\n\nIn this mode when an edit only touches the body of a mixin\n(not the public API) libraries that apply the mixin will also\nbe invalidated.\n\nAdd mixin invalidation test.\n\nIssue: https://github.com/dart-lang/sdk/issues/61864\nChange-Id: Id4dde67364dcef958ae1e0e0bbf124cec389f5f0\nReviewed-on: https://dart-review.googlesource.com/c/sdk/+/459343\nCommit-Queue: Nicholas Shahan \u003cnshahan@google.com\u003e\nReviewed-by: Jens Johansen \u003cjensj@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b45b6208a7b5cbb94c6dafdc9c82f0bc7e2e911e",
      "old_mode": 33188,
      "old_path": "pkg/dev_compiler/lib/src/kernel/target.dart",
      "new_id": "85cc2b695a64b355f7644ca232eac1e682733a62",
      "new_mode": 33188,
      "new_path": "pkg/dev_compiler/lib/src/kernel/target.dart"
    },
    {
      "type": "modify",
      "old_id": "000fbaffbcffe2dfaf29383517e428d177eaeba8",
      "old_mode": 33188,
      "old_path": "pkg/front_end/lib/src/base/incremental_compiler.dart",
      "new_id": "230fe5321cd7d914264a8a950ae5a55014a6edbb",
      "new_mode": 33188,
      "new_path": "pkg/front_end/lib/src/base/incremental_compiler.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e1d5333266408b02b6247601c7511a1094720ede",
      "new_mode": 33188,
      "new_path": "pkg/front_end/testcases/dartdevc/mixin_collection/main.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cb71cdc4e414bc7a22f3ea19b07611f15578ce8f",
      "new_mode": 33188,
      "new_path": "pkg/front_end/testcases/dartdevc/mixin_collection/main.dart.strong.expect"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cb71cdc4e414bc7a22f3ea19b07611f15578ce8f",
      "new_mode": 33188,
      "new_path": "pkg/front_end/testcases/dartdevc/mixin_collection/main.dart.strong.modular.expect"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cc1ed7b43a001c0fa806c27ba8e830236cf0c85d",
      "new_mode": 33188,
      "new_path": "pkg/front_end/testcases/dartdevc/mixin_collection/main.dart.strong.outline.expect"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cb71cdc4e414bc7a22f3ea19b07611f15578ce8f",
      "new_mode": 33188,
      "new_path": "pkg/front_end/testcases/dartdevc/mixin_collection/main.dart.strong.transformed.expect"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e1d5333266408b02b6247601c7511a1094720ede",
      "new_mode": 33188,
      "new_path": "pkg/front_end/testcases/dartdevc/mixin_collection/main.dart.textual_outline.expect"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e1d5333266408b02b6247601c7511a1094720ede",
      "new_mode": 33188,
      "new_path": "pkg/front_end/testcases/dartdevc/mixin_collection/main.dart.textual_outline_modelled.expect"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2abd8d6940bb47425e1f1b489459b4a39179bad2",
      "new_mode": 33188,
      "new_path": "pkg/front_end/testcases/dartdevc/mixin_collection/main_lib1.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e29fa79f9eb15ebd166b355aa26ce45701ee81bc",
      "new_mode": 33188,
      "new_path": "pkg/front_end/testcases/dartdevc/mixin_collection/main_lib2.dart"
    },
    {
      "type": "modify",
      "old_id": "4c350c5117b7ba7f6a2a342c9b635ca14867b602",
      "old_mode": 33188,
      "old_path": "pkg/frontend_server/test/frontend_server_test.dart",
      "new_id": "204f24e7d99b6afe28ca6052937c944be956f421",
      "new_mode": 33188,
      "new_path": "pkg/frontend_server/test/frontend_server_test.dart"
    },
    {
      "type": "modify",
      "old_id": "add0eba06409c8e8b78b831d0a783cd76cf05379",
      "old_mode": 33188,
      "old_path": "pkg/kernel/lib/target/targets.dart",
      "new_id": "6280aabab03fae4e410c96c8c0e457d9331f9571",
      "new_mode": 33188,
      "new_path": "pkg/kernel/lib/target/targets.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "42bfd9549f75a4636ca4a1b9533657569ae4d90c",
      "new_mode": 33188,
      "new_path": "tests/hot_reload/change_mixin_member_body/class.0.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "837ed4bea2e14ea9c0d1b68069e1d2b4458c5cc9",
      "new_mode": 33188,
      "new_path": "tests/hot_reload/change_mixin_member_body/main.0.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8e66670864adc23ecf7c06746c0a2659876436aa",
      "new_mode": 33188,
      "new_path": "tests/hot_reload/change_mixin_member_body/mixin.0.dart"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9ca7035aeaa7db7b0b2c570f91e8fc263340aa6f",
      "new_mode": 33188,
      "new_path": "tests/hot_reload/change_mixin_member_body/mixin.1.dart"
    }
  ]
}
